搜索

70

主题

72

帖子

556

积分
LV.1萌新来袭

威望:0

金钱:479

贡献:0

发表于 2019-9-8 17:14:48 1239 浏览 0 回复

funciton的应用与for循环

和第章里的内容总结了当服务器启动时只会运行所有lua文件的函数main下所有内容
其他函数的内容,全部自拟并在过程中指定运行

#检测玩家身上道具栏空位总数
首先建立NPC
QQ截图20190908165820.jpg
QQ截图20190908165925.jpg
如果按下"确定",将会触发函数WindowTalked并赋值seqno=0
1.在if seqno == 0 then下做出判断
2.设定变量space等于函数SpaceCheck返回的值
3.在函数SpaceCheck下利用for循环检测身上道具空位
4.函数SpaceCheck返回值赋予变量space


首先设定变量space = 函数SpaceCheck 并赋予参数玩家索引
QQ截图20190908170824.jpg
建立函数SpaceCheck
QQ截图20190908170946.jpg
这里的参数abc值,就是talkerindex的值  --直接赋予玩家索引
QQ截图20190908171621.jpg
设定局部变量num假设为背包空位 --局部变量用法请查看局部变量说明
利用for循环检测身上道具  --背包第一个道具位为编号9,第15个为23
利用char.getItemIndex接口获取玩家背包里指定道具的索引并赋值于变量itemindex
利用item.check接口检测该索引是否在服务器中  --如果是,返回值为1,否则返回0
当返回值为0时(说明该道具栏为空),让变量num+ 1
*最后for循环结束, 由return返回变量num的值
QQ截图20190908172720.jpg
所以整个函数SpaceCheck所得到的,就是函数SpaceCheck变量num的值  --函数返回值必须由return给予
QQ截图20190908174751.jpg
脚本运行步骤
QQ截图20190908174803.jpg

Ps
for语句的格式为 for i=a,b,c do end
a为局部变量i的初始值  --i默认为局部变量,在for循环结束,i的值自动变为nill
b为循环中止的值
c为递增值  --如果c没有内容则默认递增+1
for i=15,10,-2 do end   
--i由初始值15开始 ,每次循环-2 分别是 15,13,11 当i=9时不执行for下的内容直接跳出循环




回复

使用道具 举报

返回列表
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

登录或注册

团队

侧耳倾听

官方客服

客服-Q:8247380

官方QQ群

472109904

扫一扫快速加入

快速回复 返回顶部 返回列表