在石器时代利用NetLoopFunction()函数来做功能,这个函数在石器游戏里利用率还是蛮高的,能做的功能也挺多,这个宠物清除比端里自带的效果要好用多了,自带的清除功能必须要玩家重新登陆,如果做登陆清除的话,玩家不下线,宠物就永远不消失。又或者是需要存放到宠物店里才能清除。而用NetLoopFunction()每分钟来循环检查并删除,1分钟后只要是定义过宠物ID的宠物都会被清除,这样好用多了。
代码如下:
function NetLoopFunction() --每分钟开始检查 --检查全部玩家索引 for i = 0, char.getPlayerMaxNum() - 1 do --检查玩家索引是否存在 if char.check(i) == 1 then --0~4位宠物栏位置,代码里是从0开始算起,并非从1 for j=0,4 do --定义petindex这个变量为宠物索引,因为循环5次也就是获取5个宠物栏的全部索引 petindex = char.getCharPet(i, j) --检查宠物栏的宠物是否存在 if char.check(petindex) == 1 then --开始循环下方data()函数内的宠物ID for k = 1, table.getn(nopet) do --如果宠物ID等于下方定义的任意一个ID if char.getInt(petindex, "宠ID") == nopet[k] then --清除所定义的宠物ID char.DelPet(i, petindex) end end end end end end end function data() --宠物ID,可无限扩展,主要这里是enemybase1.txt里的ID nopet = {777,918,933,1140}end function main() data()end
从代码里可以很直观的看出来,是用的语句也不多,却实现了一个很有用的功能,注意宠物ID一定要是enemybase1.txt里的ID,当然这个ID在enemy1.txt里也存在,为了避免出错,还是尽量打开enemybase1.txt来查看ID