石器ABLUA在NetLoopFunction()写一个清除宠物的功能

2019-11-0610:20石器战报石器

石器时代利用NetLoopFunction()函数来做功能,这个函数在石器游戏里利用率还是蛮高的,能做的功能也挺多,这个宠物清除比端里自带的效果要好用多了,自带的清除功能必须要玩家重新登陆,如果做登陆清除的话,玩家不下线,宠物就永远不消失。又或者是需要存放到宠物店里才能清除。而用NetLoopFunction()每分钟来循环检查并删除,1分钟后只要是定义过宠物ID的宠物都会被清除,这样好用多了。

代码如下:

C
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


石器时代历史 PC端石器任务 石器时代俱乐部 石器cc 石器时代7.5