发新话题
打印

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

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

首先。。。我不是专业lua程序猿,代码都是拼凑和看cgdev的库然后做出来的
' b0 V) H* ^1 [' [' p1 X+ m魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
: g3 B& @6 H, Y; u+ ]bbs.mocwww.com代码里有些可能是过度的,高手就不要介意了!bbs.mocwww.com& Y; L3 U+ W5 Z

# Y2 o; Y# g# t/ J  Q. M) |—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート总之,用了好多魔力GF内置方法都没能做出一个有效的不遇敌道具。妖城在线论坛$ h0 |" W. h9 \, D

+ D* I9 U- S2 Sbbs.mocwww.com无奈最后只能自己瞎写写了!妖城在线论坛. D& u) ~6 H) ]* Y0 i) V5 s

3 V( p1 k/ i3 L9 _1 u; c魔力私服,最新魔力宝贝私服技术交流我VB做得多。。。所以lua让我烦恼了很久,没有timer没有sleep,不过最后还是曲线解决了- -& J  S: Q7 _6 `* j* q* `$ a

( k6 Q- k5 n! O7 f" N魔力私服,最新魔力宝贝私服技术交流
; W2 `1 p7 N# E4 \魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表我这里是小公益服,人少,测试一周功能正常。
0 X5 P9 H8 N0 ], M4 k; w( H+ j- l魔力私服,最新魔力宝贝私服技术交流
( e( `7 z' ^2 e- C) v魔力私服,最新魔力宝贝私服技术交流各位小伙伴可以测试一下魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表3 ]& d, t) t- b  w* E; X9 I0 }

9 T/ V- r0 A) L. c, C—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート公布代码如下
复制内容到剪贴板
代码:
--本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
启用方法:bbs.mocwww.com- m/ R( L8 H4 l7 }1 L
1、把ngsupport.lua放入服务端目录gmsv\lua\Module中
& ]" p8 W+ ?/ _1 S8 b/ w& \魔力私服,最新魔力宝贝私服技术交流2、服务端目录gmsv\lua中,编辑config.lua,在最后一行新增useModule("ngsupport");bbs.mocwww.com6 Z  O" q& @+ A: s$ M. [" G
3、本内挂热键为/2,若ng.lua中已经有简易版的不遇敌内挂,建议注释掉,以免冲突。高手忽略
% u1 F+ {$ e6 {: i0 U* i
9 h1 }( l2 E2 @5 E1 lbbs.mocwww.com ngsupport.rar (998 Bytes)
; V; _9 Y! D( T8 ^7 T
) ?# r1 x3 x+ O1 P+ k8 G' l魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表[ 本帖最后由 ahsin 于 2018-3-23 00:45 编辑 ]

TOP

已知bug:—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート$ @& ], o( m4 O0 N1 K  e- }
1、下线监视代码没完成,但不影响效果。
- i6 |- Z9 e4 T3 e' }. o/ V2、没找到彻底结束loop的方法,所以30秒监视可能会不准,但对玩家没有影响。假设现在是15分钟有效期,那么玩家可能15分钟后再多30秒后才结束不遇敌。
% I+ W. L5 e  s
' ]7 [+ R  Y0 kbbs.mocwww.com求高手协助完善
, @! U+ z6 A8 F1 B—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート; Q9 F. ~/ {! Z

% @. Y. I6 G# [1 wbbs.mocwww.com
7 t# z3 h2 S. s- d0 Q5 l—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート
9 c: y  x3 j4 q% P: E' a( |魔力私服,最新魔力宝贝私服技术交流$ b# x( w: f" F$ B# A! ?' o
抱歉。。。计步没备份,被覆盖了哈哈哈
9 Y, l/ o* i6 l" xbbs.mocwww.combbs.mocwww.com/ Q" v) D5 x. ?/ }& y8 l' d& b& n3 }
有需要找我,必须免费的!原理是相通的,高手自己改。- Y% ]) B1 Z9 M( @' \

$ D  A1 \% h3 C8 o* S6 B! _妖城在线论坛大致方向为:os.time 替换成 %对象_走次%
5 z& |0 d. k& S% H% W& F/ Jbbs.mocwww.com: Q) ^- m& J# c7 R' f2 d1 K$ ^
[ 本帖最后由 ahsin 于 2018-3-23 01:02 编辑 ]

TOP

引用:
原帖由 262070173 于 2018-3-26 13:36 发表 魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表5 w  Z, T; v3 `8 f+ F- d# z
不能,顶一下,辛苦了...
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表7 E* Q! W: n) R% Q8 ?7 ?/ e. J! ?
额?什么不能?

TOP

发新话题