发新话题
打印

[讨论] 做了个收魔币、计时/计步,不遇敌lua内挂。gmsv.exe适用

做了个收魔币、计时/计步,不遇敌lua内挂。gmsv.exe适用

首先。。。我不是专业lua程序猿,代码都是拼凑和看cgdev的库然后做出来的
" Q  s0 a2 O2 M" i妖城在线论坛妖城在线论坛4 G3 @3 ^+ A% Q; e8 m
代码里有些可能是过度的,高手就不要介意了!
' `* a/ ~4 G; i3 j" s—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートbbs.mocwww.com8 M' H3 h9 k% q7 D, C5 C/ u
总之,用了好多魔力GF内置方法都没能做出一个有效的不遇敌道具。9 r: J( B5 {$ K

& }; F' U9 Y/ `5 o9 C魔力私服,最新魔力宝贝私服技术交流无奈最后只能自己瞎写写了!
7 [: y6 a/ F( a5 F1 V! X
) f/ B% y( J4 {" [4 E9 \—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート我VB做得多。。。所以lua让我烦恼了很久,没有timer没有sleep,不过最后还是曲线解决了- -
) F- Z* J! o7 }& K魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表5 i( G- ^' n1 l! u% ?1 v% A+ l
5 M7 J( M8 a  U8 i; i2 S# X5 R' h
我这里是小公益服,人少,测试一周功能正常。魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表3 ?9 I- l& H2 o3 i8 x: |' O
妖城在线论坛1 K+ `. N4 L& T' G
各位小伙伴可以测试一下魔力私服,最新魔力宝贝私服技术交流3 d1 w: S, @4 f0 J$ s

; y; w8 g' f& H; X魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表公布代码如下
复制内容到剪贴板
代码:
--本lua由ahsinsoft.com编写 QQ230236979
if type(Players)~="table" then Players={} end
if type(tab_msg)~="table" then tab_msg={} end
if type(tab_return)~="table" then tab_return={} end
if type(tab_buyudi)~="table" then tab_buyudi={} end
local bydgold= 5555--支付价格
local bydsj= 900--不遇敌有效时间,秒


NL.RegTalkEvent(nil,"ngsupport_TalkEvent");--监视玩家说话内容是否含有关键字
NL.RegLogoutEvent(nil,"ngsupport_LogoutEvent");--监视玩家是否登出,是则清空所有功能参数
--Delegate.
--NL.RegDropEvent(nil,"ngsupport_DropEvent");--监视玩家是否掉线、下线,是则清空所有功能参数

function ngsupport_TalkEvent(player,msg,color,range,size)
       
        if(msg == "/2" or msg == "、2")then
        local CdKey = Char.GetData(player,%对象_账号%);
                if  (Char.GetData(player,%对象_金币%)<bydgold) then
                        NLG.SystemMessage(player, "[系统] 魔币不足["..bydgold.."],无法使用!")
                        return 0
                end
                local kg = Char.GetData(player,%对象_不遇敌开关%);
                if(kg == 0)then
                        Char.AddGold(player,-bydgold);
                        Char.SetData(player,%对象_不遇敌开关%,1);
                        NLG.SystemMessage(player,"不遇敌已经开启,当前时效限定为15分钟!");
                        zoucia = os.time();
                        Char.SetLoopEvent(nil, "bydoff", player, 30000);--伪timer 开启,参数为毫秒
                else
                        Char.SetData(player,%对象_不遇敌开关%,0);
                        zoucia = nil
                        zoucib = nil
                        zoucic = nil
                        Char.SetLoopEvent(nil, "bydoff", player, nil);--伪timer 关闭
                        NLG.SystemMessage(player,"玩家已经主动关闭不遇敌!");
                        return 0
                end
        end
end

function bydoff(player)
--local CdKey = Char.GetData(player,%对象_账号%);
local kgs = Char.GetData(player,%对象_不遇敌开关%);
                zoucib = os.time();
                --zoucic = nil
                if(kgs == 0)then
                        zoucia = nil
                        zoucib = nil
                        zoucic = nil
                        Char.SetLoopEvent(nil, "bydoff", player, nil);--伪timer 关闭
                        return 0
                end
                if(kgs == 1 and zoucib - zoucia > bydsj)then
                        zoucia = nil
                        zoucib = nil
                        zoucic = nil
                        Char.SetLoopEvent(nil, "bydoff", player, nil);--伪timer 关闭
                        Char.SetData(player,%对象_不遇敌开关%,0);
                        NLG.SystemMessage(player,"不遇敌功能有效时间已过,不遇敌关闭!");
                        return 0
                else--if(kgs == 1)then
                        zoucic = zoucib - zoucia
                        zoucid = bydsj - zoucic
                        NLG.SystemMessage(player,"不遇敌功能将在 "..zoucid.." 秒后失效。   -=刷新率:30秒");
                end
end



function ngsupport_LogoutEvent(palyer)
local kgss = Char.GetData(player,%对象_不遇敌开关%);
                if(kgss == 1)then
                        Char.SetData(player,%对象_不遇敌开关%,0);
                        zoucia = nil
                        zoucib = nil
                        zoucic = nil
                        Char.SetLoopEvent(nil, "bydoff", player, nil);--伪timer 关闭
                        NLG.SystemMessage(player,"玩家登出,不遇敌关闭!");
                end
  --return 0;
end
启用方法:
1 S# f& I$ n9 P7 d1、把ngsupport.lua放入服务端目录gmsv\lua\Module中妖城在线论坛) N- b2 K5 |5 }% ~
2、服务端目录gmsv\lua中,编辑config.lua,在最后一行新增useModule("ngsupport");
: W/ R. j0 |' H魔力私服,最新魔力宝贝私服技术交流3、本内挂热键为/2,若ng.lua中已经有简易版的不遇敌内挂,建议注释掉,以免冲突。高手忽略
+ j1 e4 P) G; ~# ybbs.mocwww.com
6 Y  a( ^/ o8 Z7 X妖城在线论坛 ngsupport.rar (998 Bytes)
$ E$ K2 |: D' V; }! O' f5 c& J! vbbs.mocwww.combbs.mocwww.com3 V8 C  Z) J: ]' m+ ]* F
[ 本帖最后由 ahsin 于 2018-3-23 00:45 编辑 ]

TOP

已知bug:
6 t8 J# D0 p% L; |妖城在线论坛1、下线监视代码没完成,但不影响效果。魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表8 q, _# V' w3 A  c& [/ Q4 P- _* o
2、没找到彻底结束loop的方法,所以30秒监视可能会不准,但对玩家没有影响。假设现在是15分钟有效期,那么玩家可能15分钟后再多30秒后才结束不遇敌。—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート" I% A# n1 ^6 b* L. j
妖城在线论坛. M. J1 `! ~3 M6 ^. _; k( Z' ]
求高手协助完善1 M# X2 c: ~, ]( K! X
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート/ X  U- v' m0 S
bbs.mocwww.com; N9 `. h9 R, [0 [( z! a& Q! _3 R) G

+ O. c) e! |8 obbs.mocwww.com
" Q" `% I* l4 C5 b妖城在线论坛魔力私服,最新魔力宝贝私服技术交流& f0 @$ _+ B3 w: q
抱歉。。。计步没备份,被覆盖了哈哈哈魔力私服,最新魔力宝贝私服技术交流2 l) M4 y$ q; T+ |0 R! P
: F9 c2 D  l8 @
有需要找我,必须免费的!原理是相通的,高手自己改。
- B6 e6 v0 V6 o0 t$ m9 Obbs.mocwww.com妖城在线论坛7 V2 y! Q4 P' E
大致方向为:os.time 替换成 %对象_走次%bbs.mocwww.com+ F. n2 z% l* P

8 h% H% @) r' Q1 V# m—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート[ 本帖最后由 ahsin 于 2018-3-23 01:02 编辑 ]

TOP

引用:
原帖由 262070173 于 2018-3-26 13:36 发表
- n, f- w9 L( \7 J—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート不能,顶一下,辛苦了...
妖城在线论坛. ~1 g4 _' B' Z0 J
额?什么不能?

TOP

发新话题