在石器服务端ablua里的FreeVsPlayer函数,这个是玩家互相PK的函数,可实现指定地图禁止PK,指定人数才可以PK,这个函数默认是在freevsplayer.lua里的,但这个函数在源码里并没有指定文件名,所以这个函数允许在任何文件名的ablua下进行声明。
下面贴一段禁止指定地图PK,默认下这个lua下都有内容。我只是拿出来讲解。
--meindex指的是自己的索引,toindex指的是对方索引
function FreeVsPlayer( meindex, toindex )
--检索数组循环,
--一直没有讲过table.getn函数的用法,这里提一下,table.getn内的函数必须是数组,获取数组的最大数,即假如数组里有5组数字或者5组字符串,则获取值为5
for i = 1, table.getn(nopkfloor) do
--判断地图号,如果地图号是数组内的任何一个ID
if char.getInt(meindex, "地图号") == nopkfloor[i] then
--进行提示
char.TalkToCli(meindex, -1, "该地图禁止私下PK!", "黄色")
--返回用1,如果通过则用0,根据代码来
return 1
end
end
return 0
end
function main()
--禁止PK的地图ID,以数组形式存在
nopkfloor = {12345, 140, 2000}
end
发表评论
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。