- A+
所属分类:源码教程
关于源码中虚拟人数的修改和设置
服务端里其实已经有这个功能了,大家会发现有的端的人数变化很大。有的则人数固定,这里我就提出来讲解下。
首先打开npc_savepoint.c这个文件
搜索
sprintf(temp,"目前线上人数为 %d 人。",abs(StateTable[LOGIN]));
这里我以龙的源码为例
#ifdef _PLAYER_NUM
srand(time(0));
if(getPlayerNum()>0)
sprintf(temp,"目前线上人数为 %d 人。",abs(StateTable[LOGIN])*getPlayerNum());
else
sprintf(temp,"目前线上人数为 %d 人。",abs(StateTable[LOGIN]));
#else
sprintf(temp,"目前线上人数为 %d 人。",abs(StateTable[LOGIN]));
#endif
看到srand(time(0));这句的意思就是当运行后,产生了随机数
if(getPlayerNum()>0) 这句话的意思就是当getPlaterNum()大于0的时候执行下列语句,getPlaterNum为CF自定义里的一个函数sprintf(temp,"目前线上人数为 %d 人。",abs(StateTable[LOGIN]) *getPlayerNum());
abs(StateTable[LOGIN]) 就是实际的在线人数 而getPlayerNum()就是自定义的倍数。
这样说大家应该会明白点吧,当编译好端后,在记录点就会显示你设置的实际人数乘倍数。由于增加了srand(time(0));使得人数会有浮动。当然如果想固定人数的话就把srand(time(0));去掉再编译即可
- 我的微信
- 这是我的微信扫一扫
-
- 我的微信公众号
- 我的微信公众号扫一扫
-