用ABLUA写一个宠物锁

直接看代码即可,注释都有,主要功能就是让宠物绑定再身上防止被盗,虽然很鸡肋。

function petlock(itemindex, charaindex, toindex, haveitemindex)
	--循环开始0~4为宠物栏位置1-5
	for i = 0, 4 do
		--toindex设定为宠物索引,这里是获取人物身上宠物的全部索引
		if toindex == char.getCharPet(charaindex, i) then
			--检查身上第(i+1)个位置宠物是否存在
			if char.check(toindex) == 1 then
				--取宠物的名字
				petname = char.getChar(toindex, "名字")
				--系统提示,为何要把提示放在前面是因为宠物上锁是要给名字加*符号,提示是会提示名字的
				--如果放在后面,则会把*符号显示出来
				char.TalkToCli(charaindex, -1, "成功为" .. char.getChar(toindex, "名字") .. "上锁!", "黄色")
				--把带有*符号和名字一起重新写入到名字里
				char.setChar(toindex, "名字", "*"..petname)
				--更新客户端的字符显示,即更新宠物名字,让客户端显示修改后的名字
				char.sendStatusString(charaindex, "K" .. i)
				--删除该道具,当然如果你不需要删除可屏蔽这句话
				char.DelItem(charaindex, haveitemindex)
				--这里返回是必须的,如果不进行返回,系统会直接提示到下面的话
				return
			end
		end
	end
	char.TalkToCli(charaindex, -1, "该物品只能给宠物使用!", "红色")
end



function main()
	item.addLUAListFunction( "ITEM_PETLOCK", "petlock", "")
end

发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。