找回密码
 注册/Sign up
搜索
查看: 2716|回复: 6

不遇敌道具,lua分享,不使用tohelos

[复制链接]

发表于 2022-3-24 23:42:37 | 显示全部楼层 |阅读模式
非驱魔香,不使用tohelos.lua一系列代码

所有地图可用的,倒计时不遇敌


1、修改ng.lua,顶部空白处添加,其中88920是不遇敌道具,自己做,持有即可,使其可叠加较多即可
  1. local yddj = 88920; --不遇敌道具--/2--no encount item
复制代码


2、修改ng.lua,talkevent中添加,代码中可修改单个道具生效时间,改后记得在计时处,把20000改成对应秒。1000=1秒
  1. if(msg == "/2" or msg == "、2") then--不遇敌
  2.                 local bydname1 = Char.GetData(player,%对象_名字%)
  3.                 local byd4 = Char.GetData(player,%对象_不遇敌开关%);
  4.                 local byd888 = Char.HaveItem(player,yddj);
  5.                 local byd999 = byd888 * 20--每个道具生效20秒
  6.                 local byd000 = byd888 - 1
  7.                 if Char.GetData(player,%对象_香步数%) ~= 0 then
  8.                         NLG.SystemMessage(player,"你正在使用步步遇敌,无法使用驱魔香水!");
  9.                 elseif byd4 == 1 then
  10.                         Char.SetData(player,%对象_不遇敌开关%,0);
  11.                         NLG.SystemMessage(player,"不遇敌功能关闭!");
  12.                 else
  13.                         if (Char.HaveItem(player,yddj) == 0) then
  14.                                 Char.SetData(player,%对象_不遇敌开关%,0);
  15.                                 NLG.SystemMessage(player,"你没有驱魔香水,无法使用不遇敌!请到哔哩免税店购买触发道具。");
  16.                                 else
  17.                                 NLG.Say(-1,-1,"玩家"..bydname1.."使用了驱魔香水,不遇敌计时开始!",1,2)
  18.                                 Char.SetData(player,%对象_不遇敌开关%,1);
  19.                                 Char.DelItem(player,yddj,1);
  20.                                 --NLG.SystemMessage(player,"不遇敌已经开启!");
  21.                                 Char.SetLoopEvent(nil,"jbyd_LoopEvent",player,20000)--计时
  22.                                 NLG.SystemMessage(player,"你有"..byd888.."瓶驱魔香水,剩余"..byd000.."瓶。预计可使用约"..byd999.."秒,不遇敌开始!");
  23.                                 --Char.SetBonusEncountRate(player,10)
  24.                         end
  25.                 end
  26.         end
复制代码


3、修改ng.lua,底部空白处添加
  1. function jbyd_LoopEvent(player)
  2.         local CdKey = Char.GetData(player,%对象_CDK%)
  3.         local Name = Char.GetData(player,%对象_名字%)
  4.         local bydnmb = Char.HaveItem(player,yddj);
  5.         local bydnmb3 = Char.GetData(player,%对象_不遇敌开关%);
  6.         if bydnmb3 == 0 then
  7.                 Char.SetLoopEvent(nil,"jbyd_LoopEvent",player,0)
  8.                 Char.SetData(player,%对象_不遇敌开关%,0);
  9.                 --NLG.SystemMessage(player,"不遇敌时间已到,恢复正常遇敌。");
  10.         elseif bydnmb > 0 then
  11.                 Char.SetData(player,%对象_不遇敌开关%,1);
  12.                 Char.DelItem(player,yddj,1);
  13.                 local bydnmb2 = bydnmb - 1
  14.                 if bydnmb2 == 0 then
  15.                 NLG.SystemMessage(player,"驱魔香水剩余"..bydnmb2.."瓶,不遇敌最后一次生效中...");
  16.                 else
  17.                 NLG.SystemMessage(player,"驱魔香水剩余"..bydnmb2.."瓶,不遇敌继续生效中...");
  18.                 end
  19.         else
  20.                 Char.SetLoopEvent(nil,"jbyd_LoopEvent",player,0)
  21.                 Char.SetLoopEvent(nil,"jbyd_LoopEvent",player,0)
  22.                 Char.SetData(player,%对象_不遇敌开关%,0);
  23.                 --Char.DelItem(player,yddj,1);
  24.                 NLG.SystemMessage(player,"驱魔香水用尽,恢复正常遇敌。");
  25.                 Char.SetLoopEvent(nil,"jbyd_LoopEvent",player,0)
  26.         end
  27. end
复制代码


发表于 2022-3-25 01:30:36 | 显示全部楼层
感谢大佬分享!!!!!!!!

发表于 2022-3-25 02:05:46 | 显示全部楼层
欣哥你的变数名有点酷

 楼主| 发表于 2022-3-25 02:32:13 | 显示全部楼层
麻利小六 发表于 2022-3-25 02:05
欣哥你的变数名有点酷

哈哈哈,这叫不要遵行美国人民的意志。杀死英语

发表于 2022-4-2 20:25:08 | 显示全部楼层
自己做的脚本就要这么命名才有味道

发表于 2022-4-8 15:42:04 | 显示全部楼层
新人表示看不懂。。。。。。。。。。

发表于 2022-4-9 22:03:37 | 显示全部楼层
888999000:)
您需要登录后才可以回帖 登录 | 注册/Sign up

本版积分规则

手机版|cgmsv引擎论坛

GMT+8, 2026-6-5 10:39 , Processed in 0.032753 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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