发新话题
打印

[讨论] 初级魔力lua解析

多谢大神

虽然不是很明白,但还是灰常感谢

TOP

请大佬继续更新

TOP

求助大神指点一下,GA能用的宠物技能学习卷放到CGMSV上就老提示宠物技能栏已满呢??
/ [9 k( v+ O/ d& Q魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
0 F) K4 ]3 G' F- U$ f  Y魔力私服,最新魔力宝贝私服技术交流
* q9 T/ o0 ?! s$ r2 V妖城在线论坛—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート/ g" }: F3 O2 o  W' \* ?! C
if _Select==2 or _Seqno==99999 then
) l1 u# \- d4 {* h/ _, e6 i# q* \4 B: w魔力私服,最新魔力宝贝私服技术交流                return—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート( G9 s1 ~5 A; W( X- @$ ]
        endbbs.mocwww.com/ n; @- g! s' k+ F, X  L
5 s. X# S; g$ W1 ?( ^
        if _Seqno==10 then
% u1 q9 p$ Z3 H8 I# G; a7 f/ ~bbs.mocwww.com                --Get Session  k( r6 C/ J4 m7 h% y( `* Z
                SelectPetSlot[_PlayerIndex] = _Data-1
# w3 d" O2 a" m+ K% }魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local tItemSlot = SelectItemSlot[_PlayerIndex]
1 x' ?8 C/ B5 M1 ?% h, H—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                local tPetSlot = SelectPetSlot[_PlayerIndex]
6 z: _+ j. P  P* }, J魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                --Get Pet Data
  c" m; x- t' d/ x$ f- d妖城在线论坛                local tPetIndex = Char.GetPet(_PlayerIndex, tPetSlot)魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表- x+ v, v" q& n; T# p& P+ h" U3 T
                if tPetIndex<0 then' P% p3 f6 F7 @* a
                        return 0
2 H: W' k1 n$ H- W: P6 M% v6 Y9 e6 M                endbbs.mocwww.com, }: |: J. P% B
                local tPetName = Char.GetData(tPetIndex, %对象_名字%)魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表5 e* c: g! C/ ]- j* b  V& A8 w4 c9 p
                local tPetID = Char.GetData(tPetIndex, 68)妖城在线论坛1 d- F6 U) ~( Y: D
                local tPetLv = Char.GetData(tPetIndex, %对象_等级%)
; j9 N* r8 Z2 ]0 u( {+ d8 N  T( pbbs.mocwww.com                local tPetGetLv = Char.GetData(tPetIndex, %宠物_获取时等级%)1 u/ p  J9 Y# w/ ^, k
                local tPetTechSlotMax = Char.GetData(tPetIndex, %宠物_技能栏%)
2 s  U0 o5 M' x) {- @妖城在线论坛                --Get Item Data
" ~, ^- s; @. i: Nbbs.mocwww.com                local tItemIndex = Char.GetItemIndex(_PlayerIndex, tItemSlot)# g3 p; ^  @. Y1 _
                if tItemIndex<0 then
! j- _& m# y- B* [' ]. S1 A/ {—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                        return 03 [* H. Q2 w* e4 N3 U* G
                end
1 n4 @9 ^9 k  P/ l% v魔力私服,最新魔力宝贝私服技术交流                local tItemName = Item.GetData(tItemIndex, %道具_名字%)+ \9 \0 o" s3 ^4 R* w
                local tItemID = Item.GetData(tItemIndex, %道具_ID%)妖城在线论坛1 T/ K# ]9 c- N7 l, M+ F9 ~
                local tTechType = Item.GetData(tItemIndex, %道具_特殊类型%) or 0
. y9 Q( D# O( j2 g% h                local tTechID = Item.GetData(tItemIndex, %道具_子参一%) or 0魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表, V* f  @. O; B
                local tPreTechID = Item.GetData(tItemIndex, %道具_子参二%) or 0
) F4 j& Y+ v7 I( E! W$ M2 ?: M- C% jbbs.mocwww.com                        print("\n=================调试信息====================")
  U7 K3 a1 p: o, Y  d' vbbs.mocwww.com                        print("tItemID=" .. tItemID)妖城在线论坛, u& c# y) J5 T" ~! u+ ~* S, D! C9 `
                        print("tItemName=" .. tItemName)魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表. U+ ?' }: ?5 @( t) U& J
                        print("tTechType=" .. tTechType)—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート9 D) `2 E& n0 h# D1 M" ~8 _' c
                        print("tTechID=" .. tTechID)魔力私服,最新魔力宝贝私服技术交流% J9 M, b2 N2 m! V( A! A
                        print("tPreTechID=" .. tPreTechID)
( L: |( Q* ~7 b# J! O7 Y$ F3 h2 `7 o9 J                        print("NorPreTechID=" .. NorPreTechID)
+ U6 Y; t) |, V9 J- G* ]& q—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                        print("TechSlot=" .. #PetTechNpc_GetTechList(tPetIndex) .. "/" .. tPetTechSlotMax)妖城在线论坛% f( G( ?+ P4 g3 I& E0 K6 F  K, ^
                        print("InTable=" .. PetTechNpc_GetTechPos(tPetIndex, tPreTechID))
8 N0 ^* }7 l) T! v% Z5 Y( w+ w4 f! V4 h                --Check Type
6 t+ ?. M9 q7 W" D—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                if tTechType==1 then魔力私服,最新魔力宝贝私服技术交流9 o2 s5 e8 h  T& m8 ^, B
                        if PetTechNpc_CheckInTable(SPetListA, tPetID)~=true then
8 \% t1 ^8 \3 L$ ^8 T2 M( I) H. ~妖城在线论坛                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:特定宠物")
% w9 w, R1 @+ S, r1 Ubbs.mocwww.com                                return 0
' h/ z9 ^) Y! d1 ?% t) M魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                        end
8 a7 H: \! @, p, S5 \$ y4 H, v( a* O—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                elseif tTechType==2 then
3 i+ `3 D4 t' M! _! d% C: f魔力私服,最新魔力宝贝私服技术交流                        if PetTechNpc_CheckInTable(SPetListB, tPetID)~=true then
! z7 K5 m+ Y. [8 F* `. W3 @+ L1 |; f魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:特定宠物")
' ]. K9 l; t/ ~7 l7 f; c魔力私服,最新魔力宝贝私服技术交流                                return 0魔力私服,最新魔力宝贝私服技术交流/ B2 u2 \6 Z; n
                        endbbs.mocwww.com5 f# v5 M$ C8 H
                elseif tTechType==3 then
! c+ s5 W% A& T7 ^% I( x& b2 `魔力私服,最新魔力宝贝私服技术交流                        if tPetGetLv>1 then妖城在线论坛. a6 c, V! L, \7 g9 X0 J! J. W
                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:非野生")
$ B: _4 \* K3 a妖城在线论坛                                return 0
( [/ G- C% O* A/ I魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                        end
/ h- K  c6 L* A—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                elseif tTechType==4 then
: b' v/ w# o$ t- h) k1 k# ^% v魔力私服,最新魔力宝贝私服技术交流                        if tPetLv<PetMaxLevel then" s' H. j* D% W% G; x
                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:满级")—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート/ ^1 n# N7 l( ?8 v8 F6 l1 [
                                return 0魔力私服,最新魔力宝贝私服技术交流9 f" _: J; x4 s4 E( @1 _5 g! Q& G
                        end魔力私服,最新魔力宝贝私服技术交流  V1 \$ P1 F& B4 F9 E3 J5 \( t' P0 h
                end: A0 u2 K) e5 C  l
                --Check NorPreTechIDbbs.mocwww.com7 n" R# H: |6 V+ D* Z
                if tPreTechID==NorPreTechID and        #PetTechNpc_GetTechList(tPetIndex)>=tPetTechSlotMax and PetTechNpc_GetTechPos(tPetIndex, tPreTechID)<0 then
) O' d& q( R- I妖城在线论坛                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:请先学习【高阶技能栏】技能")妖城在线论坛: u5 O+ O6 D% o
                                return 0
0 M( x* b  [7 Ibbs.mocwww.com                end
6 m5 p4 i' C1 K$ |0 g) C3 {- vbbs.mocwww.com                --Check PreTech
1 b! U$ r. F9 |. s: y—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                if tPreTechID>0 and tPreTechID~=NorPreTechID then—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート+ D3 ?' g5 f7 t6 d  P7 t$ i
                        if PetTechNpc_GetTechPos(tPetIndex, tPreTechID)<0 then
9 t( B/ ~( @) M6 D魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:前置技能")1 p6 Q7 R5 q! n' J* |( ^
                                return 0—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート. c  V5 c% `& \; y& e2 X  F
                        end
6 W4 R0 \6 ?# @2 B- j$ I/ K' d( S" q) g                end
: C8 B  `! f3 |) n9 a                --Check Slot
& p4 n" U$ k( L- n妖城在线论坛                if tPreTechID<=0 and #PetTechNpc_GetTechList(tPetIndex)>=tPetTechSlotMax then魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表# A2 V% d/ h! d3 R' E* z
                        NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:技能栏已满")
8 `: I' `# t+ V6 x# ~! ^- |4 ?6 O4 U7 C—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                        return 0魔力私服,最新魔力宝贝私服技术交流) S' ?7 U: f, r# A
                end
9 H5 i2 M) c8 W" q魔力私服,最新魔力宝贝私服技术交流                --Del PreTech
3 [4 V6 s* S! L2 B3 B1 Q3 g/ K2 d魔力私服,最新魔力宝贝私服技术交流                if tPreTechID>0 then
* F# E2 G5 g  d4 w! @魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                        local tPreTechPos = PetTechNpc_GetTechPos(tPetIndex, tPreTechID)—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート6 D' Q7 v1 C2 _
                        Pet.DelSkill(tPetIndex, tPreTechPos)
5 X: o3 ]; B/ W0 G妖城在线论坛                end
- ?$ L( _/ }, k$ Z& }4 ?) kbbs.mocwww.com                --Add Techbbs.mocwww.com, ?4 _! D% T; W
                local rt = Pet.AddSkill(tPetIndex, tTechID)bbs.mocwww.com. W' n- R7 m& ~0 t, y1 j; _
                if rt~=1 then
! N9 l: u" `  C+ \. p# Y                        NLG.SystemMessage(_PlayerIndex, "[错误] 未知原因错误")
" s: d! T" s' q2 d3 G9 R- L8 {妖城在线论坛                        return 0妖城在线论坛5 g; b& [+ A4 f' _5 s) O; G6 K
                end
- q4 b( a/ V% U* d+ Ybbs.mocwww.com                --Del Item魔力私服,最新魔力宝贝私服技术交流! V3 Q7 ]$ j8 a, m$ _' D+ ?4 C0 I" S
                Char.DelItem(_PlayerIndex, tItemID, 1)5 r2 w0 }$ o9 O% }% `
                --Up Pet
/ v4 u( M0 X- V. i魔力私服,最新魔力宝贝私服技术交流                Pet.UpPet(_PlayerIndex, tPetIndex)
9 y! R3 \0 B+ Z3 u, b9 r' C—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                NLG.SystemMessage(_PlayerIndex, "你的宠物" .. tPetName .. "学会了新技能。")
  J# }8 S: i! L—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        return 1
5 l/ m5 |2 b! T& C2 u" t8 {! e# {魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        endbbs.mocwww.com+ F0 x& q) f& f* D, T
end
6 h/ ], }$ S7 O
5 ?6 h6 j/ a" @  ~" {. Lbbs.mocwww.com--使用道具
/ Y6 w. |  u5 A" l$ r+ I妖城在线论坛NL.RegItemString(nil, "PetTechNpc_ItemUse", "LUA_usePetTech");
& R! f5 o" {0 u1 `/ ebbs.mocwww.comfunction PetTechNpc_ItemUse(_PlayerIndex, _ToPlayerIndex, _Slot)魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表4 o" O+ M; m4 C+ i+ [
        SelectItemSlot[_PlayerIndex] = _Slot
4 [6 s* Y: [. I9 B$ E6 I& P8 @魔力私服,最新魔力宝贝私服技术交流        PetTechNpc_Talked( tbl_LuaNpcIndex["PetTechNpc"], _PlayerIndex, 1)bbs.mocwww.com+ Y9 O9 J6 n+ `, J
        return 1bbs.mocwww.com+ k7 ?8 v6 q) l1 n6 R
end

TOP

收藏了,得空学一学,感谢

TOP

引用:
原帖由 wangjun1127 于 2019-5-30 19:56 发表 魔力私服,最新魔力宝贝私服技术交流. Z" r, F0 F# X+ Q0 d
求助大神指点一下,GA能用的宠物技能学习卷放到CGMSV上就老提示宠物技能栏已满呢??妖城在线论坛0 P0 s7 r: l* y6 g# G  _+ s  P
bbs.mocwww.com$ I2 ^/ y- L4 Z1 x+ K; y% k

! K* _- ~3 T* F( kbbs.mocwww.com妖城在线论坛4 }: z" y- t) s1 i- ^# l8 B& E% s
if _Select==2 or _Seqno==99999 then妖城在线论坛0 |) {3 p1 p& w) V3 w: N
                return妖城在线论坛) j( R$ n. E0 ]+ D2 e2 x; }! y) B
        end
: w8 r5 M4 O- i" l+ [0 T  x魔力私服,最新魔力宝贝私服技术交流魔力私服,最新魔力宝贝私服技术交流6 d* K  C$ ^( A( x, Q
        if _Seqno==10 then
- m1 d* s, h8 m+ N7 E- P. Z—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                --Get Session
; z* ~- g9 k" p8 K+ ~! V3 L( C" H                SelectPetSlot[_Pla ...
' e# c/ j+ c: k2 ~2 m( F" k: ~
这是一个luac+lua结合的功能,你只迁移了lua部分,没有迁移luac部分(道具部分)

TOP

6.如何创立MSG指令(例:/1 /2)妖城在线论坛' d) s; W: q5 ~/ s+ R6 p3 V3 D- x
今天先来讲点简单的知识,顺便复习一下旧知识点中比较重要的获取(get)函数和设置(set)函数的区别,本帖停更也是由于深感自身讲的知识点先后顺序有些问题bbs.mocwww.com$ a  Y3 @2 x, r
魔力lua包含了三大块知识点
$ C; H9 \3 b/ L/ Z( J/ E; E妖城在线论坛1:lua编程基础知识(不需要太深入的lua技术即可)bbs.mocwww.com' w) n9 A) k& i* p
2:mysql基础知识(不需要太深入的mysql技术,但要会节省资源和防止疯狂读写)
7 f1 r% o) i) o) i4 N% @3:魔力封包知识(高端lua开发必备)
) W9 Y% l3 e2 R) ^' j魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
4 o. Q0 R* \4 Z7 i$ r( N4 h—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート本帖只讲述lua在魔力中是如何运行的,这三块知识点都需要你们自己去学习妖城在线论坛0 C# [1 x" c* Q: {' e# z2 z' Z
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表$ y6 D8 K9 ~) c3 q/ l7 w! j
下面我们进入今天的教学
9 k7 s9 Z8 j& ], hlua的远程指令主要依靠NL.RegTalkEvent(Dofile, FuncName)达成
/ _$ o% A6 A! ^魔力私服,最新魔力宝贝私服技术交流该函数的作用是[创建对话事件],它可以全局框架注册魔力私服,最新魔力宝贝私服技术交流" o) n% a! \5 _, P% J4 Y
一般使用Delegate.RegDelTalkEvent("XXX")创建全局对话事件
" k9 d- |8 }) \$ _% k' R* l& B& T魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表NL.RegTalkEvent的返回函数明细:
/ d; R$ m  c: z3 W3 g魔力私服,最新魔力宝贝私服技术交流TalkEventCallBack(CharIndex, Msg, Color, Range, Size)—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート. d, B8 L7 @% R2 W
参数说明
7 }5 L" e* G  c3 h2 K  t5 d魔力私服,最新魔力宝贝私服技术交流CharIndex: 数值型 响应事件的对象index,该值由Lua引擎传递给本函数。
: `/ f! T, e( d9 h+ P7 G# O魔力私服,最新魔力宝贝私服技术交流Msg: 文本型 话的内容,该值由Lua引擎传递给本函数。
6 ]: U( I7 o; P8 K- H* nColor: 数值型 说话颜色,该值由Lua引擎传递给本函数。" u9 x4 a7 J: F; N
Range: 数值型 说话音量(范围),该值由Lua引擎传递给本函数。
2 ~. T( |/ T, w8 `& ^- v( _9 ^bbs.mocwww.comSize: 数值型 说话字体大小,该值由Lua引擎传递给本函数。bbs.mocwww.com7 E, C: _5 R3 Q# @/ y$ F
返回值: v8 A3 _  V8 G9 I" R9 i* j& c7 X
返回0拦截说话内容,返回1正常发送魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表) X$ m* \* E' S: G

! R' u6 P# w3 z/ t; Ibbs.mocwww.com小知识复习:当形参由lua引擎传递一个可用实参时,你不需要填写形参具体值,并且可以传递给其他函数的空白形参,让其拥有实际数值,传递时候要注意传参的类型,空白形参的函数中,空白形参若只能填写数值型
) n2 s' l7 y- o7 F, Z2 F4 i魔力私服,最新魔力宝贝私服技术交流传递过来的数值就必须是数值型(这种情况可以先设置一个变量   a=tonumber(lua引擎传递的字符串型传参) 然后把变量a填入空白形参的函数形参中)魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表0 [- Y4 N$ G" a: H3 N5 _5 U
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表! p) o" D8 y5 i" A" ?' `
文字太过干涩,下面用实例解释今天的知识点
; M$ ]3 p+ Y2 f; L# ?! l4 {! \妖城在线论坛该例实现了用指令整理身上的道具的功能
5 l+ o6 e4 B5 S( p3 Wbbs.mocwww.com
/ u7 \# j/ r7 _' n魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表local zhengli = "/zl"--整理指令,此处需要""把内容定义为字符串
7 g& t  @  M. L2 g--  ***************************************************************************************************** --( ~, l' J- C: p2 R! c6 C2 G- X/ d
Delegate.RegDelTalkEvent("zlTalkEvent");--全局注册对话事件函数
/ d- l5 N: l7 h, Q( G, C- k妖城在线论坛
4 I) T5 N8 K. d+ b7 G8 u1 P魔力私服,最新魔力宝贝私服技术交流function zlTalkEvent(player,msg,color,range,size)--调用对话事件函数的返回函数bbs.mocwww.com$ @' z9 J( G4 X% f
        if(msg==zhengli) then--检测MSG=整理指令时则执行下述函数块内容—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート; l5 W( o6 S) l1 O% C! j1 q
                NLG.SortItem(player)--调用GA封装的整理道具函数,其中NLG.SortItem(player)的(player)值由function zlTalkEvent(player,msg,color,range,size)这个返回函数赋予
) F# [5 X; P- D' s" T0 m        endbbs.mocwww.com) }' s- ^5 S9 t6 m
end
# y" h! _* p: Cbbs.mocwww.com9 i  g6 }7 W4 Z) x3 g
上述实例中,如果单独拿NLG.SortItem(player)出来,(player)的值会是nil,是没有任何数值的,它是一个标准的设置函数,需要从获取函数中获得形参的实值(魔力lua的函数的形参分为2种,获取函数(get)和设置函数(set))
) T# _+ q  B& }* i魔力私服,最新魔力宝贝私服技术交流 教学用指令整理道具.7z (453 Bytes) 魔力私服,最新魔力宝贝私服技术交流+ S& i4 E8 z1 [# L: w3 s9 `
bbs.mocwww.com3 [% E1 h% g7 a
[ 本帖最后由 王宫召唤士盖兹 于 2019-5-31 02:07 编辑 ]

TOP

6666666666666666

TOP

提示lua道具被重复注册怎么处理啊????

TOP

这种好帖子真的不多了!!!!

TOP

建议出个GP的 GA好像在这身败名裂了

TOP

引用:
原帖由 staki 于 2019-8-3 03:12 发表 妖城在线论坛6 n+ q. u6 B: o! P+ g
建议出个GP的 GA好像在这身败名裂了
魔力私服,最新魔力宝贝私服技术交流1 `. J( _% E+ s# Y8 `

6 B1 C, ^$ k; E2 L: ~1 zbbs.mocwww.comGP没2键端无法操作,只是学lua基础都一样的
# q3 `0 A! K" |妖城在线论坛 我不更新就是涉及的具体操作太多,通用性不高,没有更新的必要
" _6 X7 f8 M% g. O9 ]- S3 V6 `2 n魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表我本身秉持授人与鱼不如授人于渔的想法,才写了这个帖子
( N9 k3 T4 m( c' l& Q妖城在线论坛能看懂本帖之前写的内容,足够了妖城在线论坛- v- b* [. }% g0 V6 J& R/ k1 U
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表1 z8 R7 h" V5 Z) X+ R' W: l9 W8 b
备注:
8 ]/ E/ W# I: P3 k- l$ U6 F妖城在线论坛既然回帖了,就再讲一下魔力lua的基础运行流程:妖城在线论坛3 I/ n( S  B9 Y9 V  h( C! m
1:GMSV启动时加载GMSV内置的魔力lua模块bbs.mocwww.com8 b  `4 Y( Y; Z  b% J
2:GMSV自动加载初始lua-init.lua   该lua是由GMSV自动加载的(无需写dofile加载)
+ v2 t; a- z7 E: h魔力私服,最新魔力宝贝私服技术交流3:init.lua 加载运行内部代码    此时会有大量dofile,一般是加载基础框架相关的东西 有兴趣可以参考init.lua内部代码,包括框架全局注册这类关键脚本,都是此时加载的
1 g4 q% f+ O: r9 c* t% `魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表4:init.lua中有一行dofile(Lua_Path.."Config.lua"),加载Cofig.lua魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表8 w2 k) q. Z0 t- @5 w
5:Cofig.lua加载各种Module文件夹内的lua  (至于Cofig.lua内用于加载lua的Loadlua函数究竟是GA哪个脚本内写的,可以给大家当成一个最后的课后考题,找出他,能找到他,我相信你就会发现魔力LUA的运行逻辑是如此简单)
7 T' d9 ]. [  @4 w7 T! z魔力私服,最新魔力宝贝私服技术交流提示:GP的Loadlua函数在  lua\include\Global.lua 这个文件内bbs.mocwww.com- b+ X3 M( O2 u/ Z
提示2:GA的Loadlua函数在 lua\System某个文件夹内bbs.mocwww.com. \* o" d1 P* C

& x" i% d9 b- i- F9 q3 F; ?魔力私服,最新魔力宝贝私服技术交流[ 本帖最后由 王宫召唤士盖兹 于 2019-8-3 12:59 编辑 ]

TOP

GE  用Run(SQL脚本),Update tbl_character 数据库是修改成功了,但是人物退出,又变成修改前的数据了。数据库保存是人物最后退出的状态。

TOP

我看了在线修改人物名字的lua ,其实SQL是改数据库的,但是真正起作用的是最后两行,直接改对象的名字。
. h1 e) T; O! Y, h—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表% x8 R% u" e1 A6 _; @* T; u
                local query = "Update tbl_character set `Name` = '".._data.."' Where Cdkey = '"..Char.GetData(_PlayerIndex,%对象_账号%).."' and Name='"..Char.GetData(_PlayerIndex,%对象_原名%).."'";
8 i3 g& I  ?) q* v! Y                local ret = SQL.Run(query);
& Z. d2 {# [: O- b9 |        —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート0 e; |# w0 V( b5 d
                Char.SetData(_PlayerIndex,%对象_原名%,_data);
/ `8 A" w% k. g* G1 _, Cbbs.mocwww.com                NLG.UpChar(_PlayerIndex);
* o, V" j, a1 {: a! b妖城在线论坛魔力私服,最新魔力宝贝私服技术交流1 L9 d4 g, G4 [& o
如果没有最后这两行,SQL改的数据库,人物退出还是原来的名字。
! ]' Z, F6 ?" l4 i: B妖城在线论坛妖城在线论坛  y) n" e; D% P6 M# p
[ 本帖最后由 rolser 于 2019-8-20 20:52 编辑 ]

TOP

受教了!希望更新关于GE方面的

TOP

引用:
原帖由 rolser 于 2019-8-20 20:44 发表
5 b6 S6 W2 D0 j- R妖城在线论坛我看了在线修改人物名字的lua ,其实SQL是改数据库的,但是真正起作用的是最后两行,直接改对象的名字。+ Q% q. i3 ~5 w- {5 c. f- Z+ p
bbs.mocwww.com( k9 A2 Y, B: {% U! y" G! f
                local query = "Update tbl_character set `Name` = '".._data.."' Where Cdkey = '"..Char.GetData(_Pl ...
妖城在线论坛  U$ }, c# @/ y1 V
妖城在线论坛) s. P) H, [5 p  h( M# n% H
lua修改玩家内存只是修改了GMSV内的内存,在玩家客户端内并没有显示,因此需要用UpChar函数更新玩家客户端显示
: |7 P: H) Z5 q9 n/ [) N  ~% S—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート同理还有NPC创建时候使用的UpChar函数,这个函数如果是由全局注册init来触发的,会导致你即使重载脚本,NPC也加载不出来,必须重启服务器(重新加载init)才行—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート- F  o: y) T5 [; X. g; ?# f; F
备注:创建NPC也可以用其他函数或者if,GE不要使用if,会有奇怪的错误
$ M. ?  B( l. o- r魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート& X) _& a' `$ f0 Y, O
GE的教程和GA是互通的,他们只不过是文件夹不一样,文件名不一样,函数名不一样,但运行逻辑都是一样的,只是WIN7和WIN10的区别而已,只要能看懂本帖说的GA的内容,GE和GP自然就懂了妖城在线论坛5 R4 T5 b% c' a+ T9 l7 Q) d

* Z5 C$ [% v. R' l- e9 M+ G! ^- F[ 本帖最后由 王宫召唤士盖兹 于 2019-8-30 11:22 编辑 ]

TOP

发新话题