发新话题
打印

[讨论] 初级魔力lua解析

多谢大神

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

TOP

请大佬继续更新

TOP

求助大神指点一下,GA能用的宠物技能学习卷放到CGMSV上就老提示宠物技能栏已满呢??妖城在线论坛  u9 h$ @" ]/ m3 q5 H' r! V, J

1 C4 K$ \2 ?( M5 _
; s- [) Z9 ]: y* e. q—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート
. a5 ^+ r, f0 M; M—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートif _Select==2 or _Seqno==99999 then妖城在线论坛/ L1 ~8 J  u9 h5 s% [- h0 w
                return魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表, `+ c# I: I3 [
        end
  W. n8 j! f' h1 p2 ?  j# m4 P4 j妖城在线论坛( N( P$ e9 i# A' Q( |) o
        if _Seqno==10 thenbbs.mocwww.com/ H& O+ ?5 v/ o2 i& {2 b
                --Get Session
4 F4 y' O* Q3 o# ~" D—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                SelectPetSlot[_PlayerIndex] = _Data-1魔力私服,最新魔力宝贝私服技术交流3 m2 \; p2 @) ~1 \6 B
                local tItemSlot = SelectItemSlot[_PlayerIndex]—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート0 J/ Y$ [$ ]0 r$ H
                local tPetSlot = SelectPetSlot[_PlayerIndex]bbs.mocwww.com) N; }7 J3 E) u
                --Get Pet Data
! ]9 U$ T. m: h! u6 x  d魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local tPetIndex = Char.GetPet(_PlayerIndex, tPetSlot)魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表5 h" a: P( {( G# ?
                if tPetIndex<0 then
! Q  c2 v; O, o  d- _妖城在线论坛                        return 0妖城在线论坛9 M* y  r  Q' [$ j8 m; j% H' o
                endbbs.mocwww.com( d7 R; T, a- d7 ^4 Z6 o
                local tPetName = Char.GetData(tPetIndex, %对象_名字%)魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表0 X7 s- ?" C3 C; {( S
                local tPetID = Char.GetData(tPetIndex, 68)
1 Q# t. @0 [; u. f: b; W* _( V3 e魔力私服,最新魔力宝贝私服技术交流                local tPetLv = Char.GetData(tPetIndex, %对象_等级%)—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート8 Z0 f. q9 {1 z9 P( w; E! A
                local tPetGetLv = Char.GetData(tPetIndex, %宠物_获取时等级%)bbs.mocwww.com' U# ~3 A5 ^5 j# G7 q1 x
                local tPetTechSlotMax = Char.GetData(tPetIndex, %宠物_技能栏%)
' h3 @1 f" n/ b. F4 T5 @bbs.mocwww.com                --Get Item Data
/ D1 \9 y# [9 T1 }                local tItemIndex = Char.GetItemIndex(_PlayerIndex, tItemSlot)
  ]( Q; M' e4 r, R" \9 {魔力私服,最新魔力宝贝私服技术交流                if tItemIndex<0 then
2 ^$ Q6 T! b9 m3 d  u4 \/ H% |+ f魔力私服,最新魔力宝贝私服技术交流                        return 0
% P4 R# L" G; ~, Q3 o$ K, v+ V9 }妖城在线论坛                end
) j2 ]5 K! c) T! y  k7 ~—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                local tItemName = Item.GetData(tItemIndex, %道具_名字%)妖城在线论坛2 k# B! o/ Y- n. x3 a+ M! ?
                local tItemID = Item.GetData(tItemIndex, %道具_ID%)
) t# b" M. |' @7 \魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local tTechType = Item.GetData(tItemIndex, %道具_特殊类型%) or 0魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表8 \* q* j! j, c# p( ]5 F
                local tTechID = Item.GetData(tItemIndex, %道具_子参一%) or 0- ~* P6 h3 i) E- ^
                local tPreTechID = Item.GetData(tItemIndex, %道具_子参二%) or 0
7 y& x$ \7 [0 b8 }3 Z7 ^9 l' s# \bbs.mocwww.com                        print("\n=================调试信息====================")魔力私服,最新魔力宝贝私服技术交流% M6 {! n) `1 X( C
                        print("tItemID=" .. tItemID); B$ m* Z" J6 b  i, Y
                        print("tItemName=" .. tItemName)—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート$ W" l* u+ e; N+ t; w. p
                        print("tTechType=" .. tTechType)魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表( }! r# c8 Y/ h/ D3 y7 j; I' v
                        print("tTechID=" .. tTechID)
& x5 M! b, x1 `3 r6 @( Q                        print("tPreTechID=" .. tPreTechID)
3 E/ a8 b( q  X, t1 O2 u  g妖城在线论坛                        print("NorPreTechID=" .. NorPreTechID)
9 h/ O' d' L7 q- E                        print("TechSlot=" .. #PetTechNpc_GetTechList(tPetIndex) .. "/" .. tPetTechSlotMax)
: M7 `* h; |  @- w5 B魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                        print("InTable=" .. PetTechNpc_GetTechPos(tPetIndex, tPreTechID))—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート, H- K0 `: B( L
                --Check Type魔力私服,最新魔力宝贝私服技术交流- L  G  v; i1 p. h
                if tTechType==1 then魔力私服,最新魔力宝贝私服技术交流; K4 i7 l0 M1 }" s7 E
                        if PetTechNpc_CheckInTable(SPetListA, tPetID)~=true then
% F0 u4 Y3 m6 e, {+ X魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:特定宠物")魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表7 O  h  Y. t+ N  c
                                return 0
9 p3 c& v0 [3 m魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                        end
% \: a( H8 n9 }& Y% U4 s魔力私服,最新魔力宝贝私服技术交流                elseif tTechType==2 then妖城在线论坛5 Y# C  N. x4 q$ O, s1 N( x' ]
                        if PetTechNpc_CheckInTable(SPetListB, tPetID)~=true then
: i1 d: J2 |' O3 E9 C0 W- Hbbs.mocwww.com                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:特定宠物")
- h- R+ H& a- R9 X2 g                                return 0bbs.mocwww.com0 D9 m& Q$ C" }. }  \# X: T9 N
                        endbbs.mocwww.com; p/ H. Z! X4 [: X+ a" o. E4 L1 ^' Q
                elseif tTechType==3 then
1 K& t- `( L+ O1 r6 o. H1 ?妖城在线论坛                        if tPetGetLv>1 then
, f7 I; J; I- b9 S魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:非野生")
' ]9 R, `8 Y. r) x魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                                return 0妖城在线论坛2 d" @2 K' I7 o% u/ q+ d. i
                        end
1 V/ K7 z  u! W, k魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                elseif tTechType==4 then
# X- i2 F, b. F妖城在线论坛                        if tPetLv<PetMaxLevel then
* w8 a3 \8 M0 `; xbbs.mocwww.com                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:满级")妖城在线论坛9 s& W5 V6 Q8 b
                                return 0
( p! Z. P; B& q/ V9 H! Bbbs.mocwww.com                        end—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート* o0 M* o0 c$ w$ l0 @/ a! x" _
                end
0 h. B. I/ {2 q魔力私服,最新魔力宝贝私服技术交流                --Check NorPreTechID—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート8 |6 E0 g2 l0 L7 X
                if tPreTechID==NorPreTechID and        #PetTechNpc_GetTechList(tPetIndex)>=tPetTechSlotMax and PetTechNpc_GetTechPos(tPetIndex, tPreTechID)<0 then
+ Q! \0 K$ S. ~& X! H—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:请先学习【高阶技能栏】技能")
: O5 B2 w0 \% {0 c) H( N妖城在线论坛                                return 0
( H, B) W$ R8 z) q2 O4 w# [& f                end魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表. I  m8 f) o! K/ g5 ~( t
                --Check PreTech魔力私服,最新魔力宝贝私服技术交流; H0 H) |: e7 R' ]
                if tPreTechID>0 and tPreTechID~=NorPreTechID then
; v' g& Y' j3 L—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                        if PetTechNpc_GetTechPos(tPetIndex, tPreTechID)<0 then
6 R8 x( M) k! `* q. {7 Q—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:前置技能")妖城在线论坛8 W" m0 z' B0 ^: a6 g6 c, F6 U3 C& L
                                return 0
# `2 ^7 Y* }$ V+ Z" {                        end
# Z. r. P1 [/ Q7 Dbbs.mocwww.com                end
# e/ g% p$ C! l: I                --Check Slot
- q* [5 K3 t% h& V9 e* ~0 Q1 T1 w                if tPreTechID<=0 and #PetTechNpc_GetTechList(tPetIndex)>=tPetTechSlotMax thenbbs.mocwww.com7 N5 q# r. {1 x: _# n2 i
                        NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:技能栏已满")妖城在线论坛  I' U6 _5 c. `6 \, p/ E' A  A
                        return 0魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表  A) D7 c' G; `  e& G1 J
                end
, x& C& l- N  J, p1 B# ]魔力私服,最新魔力宝贝私服技术交流                --Del PreTech) Q8 t) X3 X7 \1 H
                if tPreTechID>0 then
4 Y7 k" k  e! R  U/ b- hbbs.mocwww.com                        local tPreTechPos = PetTechNpc_GetTechPos(tPetIndex, tPreTechID)
" x  w4 v, g: A9 o( r—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                        Pet.DelSkill(tPetIndex, tPreTechPos)- i. ^) p5 B* @' Z) J3 X
                end
$ A2 P- F/ {; Z& [/ a/ Jbbs.mocwww.com                --Add Tech
  C" X6 A- h! X% s' M3 p' C& @+ ?魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local rt = Pet.AddSkill(tPetIndex, tTechID)—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート6 w1 F# c) ^! t
                if rt~=1 then
8 h) _5 i* F2 X8 h3 [—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                        NLG.SystemMessage(_PlayerIndex, "[错误] 未知原因错误")—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート% G+ d% D' j7 K, C
                        return 0
2 v$ U6 @( g$ ?% O6 K—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                end魔力私服,最新魔力宝贝私服技术交流$ @! W' k) Q2 Q( F  |# o
                --Del Item
9 B* A# a+ ^& v; E5 v  e9 C                Char.DelItem(_PlayerIndex, tItemID, 1)bbs.mocwww.com; k  J4 \  G# @7 g7 ~+ U& J
                --Up Pet—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート% T' |4 w! X% c8 Y. d, G" K
                Pet.UpPet(_PlayerIndex, tPetIndex)魔力私服,最新魔力宝贝私服技术交流! k$ [! [/ v0 H5 ?
                NLG.SystemMessage(_PlayerIndex, "你的宠物" .. tPetName .. "学会了新技能。")魔力私服,最新魔力宝贝私服技术交流& p3 w5 i+ @# L
        return 1—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート8 H. ~( C5 \5 b7 r7 I5 J" c
        end—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート; W& w' M  I0 b, N; Q, E
end魔力私服,最新魔力宝贝私服技术交流3 A; C2 F( {  b, w9 h# F

; P7 V6 O$ N7 H+ \3 W4 P" K0 v/ i8 ebbs.mocwww.com--使用道具
, ]$ l% F8 w( y6 Z# ^魔力私服,最新魔力宝贝私服技术交流NL.RegItemString(nil, "PetTechNpc_ItemUse", "LUA_usePetTech");, H4 x6 L% D9 b
function PetTechNpc_ItemUse(_PlayerIndex, _ToPlayerIndex, _Slot)妖城在线论坛4 \4 x4 p3 y  a
        SelectItemSlot[_PlayerIndex] = _Slot. [0 n& O- i8 R! E. c
        PetTechNpc_Talked( tbl_LuaNpcIndex["PetTechNpc"], _PlayerIndex, 1)—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート. @/ h, ^0 T- L& g0 W
        return 1
* m6 W. E: c7 i2 e" z. Q, Fbbs.mocwww.comend

TOP

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

TOP

引用:
原帖由 wangjun1127 于 2019-5-30 19:56 发表 妖城在线论坛# |7 d9 ^9 _& g2 [  K
求助大神指点一下,GA能用的宠物技能学习卷放到CGMSV上就老提示宠物技能栏已满呢??
% C/ m/ o+ g) d1 ^1 J魔力私服,最新魔力宝贝私服技术交流
5 h! \& @7 R6 o魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
$ Q0 M0 n4 @$ q# v8 ^. ?- S妖城在线论坛
( n9 a$ Q: D( M2 Wbbs.mocwww.comif _Select==2 or _Seqno==99999 then
5 e' Z1 w+ W7 @7 V* n. W) Gbbs.mocwww.com                returnbbs.mocwww.com- L) O5 @( n; L& L
        end
. T6 A: f- b# D6 x5 y$ x" u  a! D魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表, g3 B8 }7 V; ~' u2 U2 O1 v( O2 D
        if _Seqno==10 then—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート/ Q) t. N3 }" F% S- K
                --Get Session—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート/ ?0 a' t0 Z  ?& }8 t% N
                SelectPetSlot[_Pla ...
) P( @1 Y2 F2 k" u2 \- Y魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表这是一个luac+lua结合的功能,你只迁移了lua部分,没有迁移luac部分(道具部分)

TOP

6.如何创立MSG指令(例:/1 /2)
. l) B0 ~% j* P/ h& s* q—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート今天先来讲点简单的知识,顺便复习一下旧知识点中比较重要的获取(get)函数和设置(set)函数的区别,本帖停更也是由于深感自身讲的知识点先后顺序有些问题魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表$ B* y) T5 i# H2 ^
魔力lua包含了三大块知识点魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表$ p8 K# g3 u: I2 }# s% c* J
1:lua编程基础知识(不需要太深入的lua技术即可)
, l8 S+ l/ F0 a7 f2:mysql基础知识(不需要太深入的mysql技术,但要会节省资源和防止疯狂读写)
0 [: p% X+ e- S+ L# h, J* pbbs.mocwww.com3:魔力封包知识(高端lua开发必备)
. d7 r  D' j% ?: _妖城在线论坛
3 F' ?) c+ `4 o- u, _: y2 r7 Jbbs.mocwww.com本帖只讲述lua在魔力中是如何运行的,这三块知识点都需要你们自己去学习
5 X" U, d' n5 v魔力私服,最新魔力宝贝私服技术交流—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート4 @+ c: t; [. L) G, b
下面我们进入今天的教学
. V/ n" g8 V% Z+ S—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートlua的远程指令主要依靠NL.RegTalkEvent(Dofile, FuncName)达成
- _, t1 u* x- k  u/ ?# y$ {妖城在线论坛该函数的作用是[创建对话事件],它可以全局框架注册
( k5 Z9 z  C) l妖城在线论坛一般使用Delegate.RegDelTalkEvent("XXX")创建全局对话事件—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート4 L3 R/ S/ ^9 L- k. a! ~8 ?: M
NL.RegTalkEvent的返回函数明细:—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート2 `% ], e* u4 j
TalkEventCallBack(CharIndex, Msg, Color, Range, Size)
! P! `$ L3 Z- v+ H/ {+ P) N参数说明1 u2 \0 s2 [4 P0 M3 ~& Y1 m  H
CharIndex: 数值型 响应事件的对象index,该值由Lua引擎传递给本函数。
, C# Z  B& \* A  F$ Z, Q1 S魔力私服,最新魔力宝贝私服技术交流Msg: 文本型 话的内容,该值由Lua引擎传递给本函数。bbs.mocwww.com$ G1 N8 x) K! X6 m. N7 ?
Color: 数值型 说话颜色,该值由Lua引擎传递给本函数。
- L* x5 F- h) B. V; _3 `—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートRange: 数值型 说话音量(范围),该值由Lua引擎传递给本函数。妖城在线论坛% P. k: M0 C- J' }) W* `
Size: 数值型 说话字体大小,该值由Lua引擎传递给本函数。
" r. t. Y1 I* ]) Z返回值
- t3 Y! Q3 H* A8 ^# |. x妖城在线论坛返回0拦截说话内容,返回1正常发送魔力私服,最新魔力宝贝私服技术交流6 H- V! {$ L1 b. _

. v, Q7 }: Z5 g4 P+ B魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表小知识复习:当形参由lua引擎传递一个可用实参时,你不需要填写形参具体值,并且可以传递给其他函数的空白形参,让其拥有实际数值,传递时候要注意传参的类型,空白形参的函数中,空白形参若只能填写数值型
" S4 Z7 G: p) |% ]  S7 k+ K妖城在线论坛传递过来的数值就必须是数值型(这种情况可以先设置一个变量   a=tonumber(lua引擎传递的字符串型传参) 然后把变量a填入空白形参的函数形参中)
: {8 y8 n, Z8 E# H( C% `3 W: a: E妖城在线论坛
/ p9 t8 S" y4 y& h$ s0 Dbbs.mocwww.com文字太过干涩,下面用实例解释今天的知识点
  B  z, d2 d/ t妖城在线论坛该例实现了用指令整理身上的道具的功能魔力私服,最新魔力宝贝私服技术交流) y  ^! y. X# D

# p! L- E& v2 z# J9 i" K! h魔力私服,最新魔力宝贝私服技术交流local zhengli = "/zl"--整理指令,此处需要""把内容定义为字符串
: e$ Y2 H3 k- ?6 v- G! R) j! w—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート--  ***************************************************************************************************** --
0 [' I5 s/ A( [5 M! G3 X—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートDelegate.RegDelTalkEvent("zlTalkEvent");--全局注册对话事件函数妖城在线论坛$ q; M7 c: Q2 n, b

( }( N3 H4 x; q7 t& f魔力私服,最新魔力宝贝私服技术交流function zlTalkEvent(player,msg,color,range,size)--调用对话事件函数的返回函数
  j) S$ ^- E! X/ [: \妖城在线论坛        if(msg==zhengli) then--检测MSG=整理指令时则执行下述函数块内容
2 h$ v* E1 l# D5 m) N) R8 r妖城在线论坛                NLG.SortItem(player)--调用GA封装的整理道具函数,其中NLG.SortItem(player)的(player)值由function zlTalkEvent(player,msg,color,range,size)这个返回函数赋予
0 E+ C% g# ^( M& Q妖城在线论坛        end
5 ?; ]4 D6 L) u1 X& D( K—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートend
( n; T+ Y: {* U. n  Q1 M3 f
8 F/ I6 G, b; u: c魔力私服,最新魔力宝贝私服技术交流上述实例中,如果单独拿NLG.SortItem(player)出来,(player)的值会是nil,是没有任何数值的,它是一个标准的设置函数,需要从获取函数中获得形参的实值(魔力lua的函数的形参分为2种,获取函数(get)和设置函数(set))魔力私服,最新魔力宝贝私服技术交流, ^+ ^4 {) ~; F  w  G! Y# K2 J, T
教学用指令整理道具.7z (453 Bytes)
. A6 F$ H. |7 R: b" z& D. U魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
8 H0 N3 n. l+ X5 P, R: p) U% h妖城在线论坛[ 本帖最后由 王宫召唤士盖兹 于 2019-5-31 02:07 编辑 ]

TOP

6666666666666666

TOP

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

TOP

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

TOP

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

TOP

引用:
原帖由 staki 于 2019-8-3 03:12 发表
* ]* F" S# K' I& O8 K7 t! m建议出个GP的 GA好像在这身败名裂了
; P1 c7 z# M4 C' h$ c妖城在线论坛
9 v3 o+ ?! d- C2 t/ w, I! R# cbbs.mocwww.comGP没2键端无法操作,只是学lua基础都一样的bbs.mocwww.com; s* j6 i4 u# z# `) O
我不更新就是涉及的具体操作太多,通用性不高,没有更新的必要魔力私服,最新魔力宝贝私服技术交流) O& b: n1 [1 z+ I. ^
我本身秉持授人与鱼不如授人于渔的想法,才写了这个帖子
! y: b/ z0 e- n/ x9 a魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表能看懂本帖之前写的内容,足够了魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表9 o& l+ k+ k2 B% `/ \! F

" h( N4 e8 W$ U1 \  i魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表备注:
) r+ M3 a1 |1 A9 G5 N* H- Ibbs.mocwww.com既然回帖了,就再讲一下魔力lua的基础运行流程:bbs.mocwww.com" G/ n* s& V3 o' Z" H6 o0 Z
1:GMSV启动时加载GMSV内置的魔力lua模块bbs.mocwww.com! J8 \: u; s, j( A4 ?
2:GMSV自动加载初始lua-init.lua   该lua是由GMSV自动加载的(无需写dofile加载)妖城在线论坛+ A- Y1 D9 [$ z; d
3:init.lua 加载运行内部代码    此时会有大量dofile,一般是加载基础框架相关的东西 有兴趣可以参考init.lua内部代码,包括框架全局注册这类关键脚本,都是此时加载的—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート# d) g1 ^. C6 _7 k: ^
4:init.lua中有一行dofile(Lua_Path.."Config.lua"),加载Cofig.lua
, J- T0 o% k+ P$ Nbbs.mocwww.com5:Cofig.lua加载各种Module文件夹内的lua  (至于Cofig.lua内用于加载lua的Loadlua函数究竟是GA哪个脚本内写的,可以给大家当成一个最后的课后考题,找出他,能找到他,我相信你就会发现魔力LUA的运行逻辑是如此简单)
( B) U- O+ w$ v0 P—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート提示:GP的Loadlua函数在  lua\include\Global.lua 这个文件内' ]+ P2 j5 |& B: _6 m
提示2:GA的Loadlua函数在 lua\System某个文件夹内
9 U/ r! r; i3 A+ Y) e- L魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
% s6 ~! s+ m0 o, S( X魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表[ 本帖最后由 王宫召唤士盖兹 于 2019-8-3 12:59 编辑 ]

TOP

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

TOP

我看了在线修改人物名字的lua ,其实SQL是改数据库的,但是真正起作用的是最后两行,直接改对象的名字。
& K" b4 g# F4 L* ]5 _. M魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート" D7 T7 h5 I: I6 d2 I+ [2 U( y! V* e
                local query = "Update tbl_character set `Name` = '".._data.."' Where Cdkey = '"..Char.GetData(_PlayerIndex,%对象_账号%).."' and Name='"..Char.GetData(_PlayerIndex,%对象_原名%).."'";bbs.mocwww.com1 c, M6 l2 A1 n0 v' D+ W& t8 H" @
                local ret = SQL.Run(query);
0 w1 F; k- n' D) c魔力私服,最新魔力宝贝私服技术交流       
8 r: I: M+ g2 X7 ?, O! G魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(_PlayerIndex,%对象_原名%,_data);
7 _; Q% S  h5 q" P3 J# \bbs.mocwww.com                NLG.UpChar(_PlayerIndex);bbs.mocwww.com7 Y2 b6 {8 |8 b" I) M" p2 F' P
bbs.mocwww.com" ^7 j$ N5 f/ c/ h* @/ c
如果没有最后这两行,SQL改的数据库,人物退出还是原来的名字。—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート. X# e0 K% a7 Q7 Z

6 p2 o' f/ l& C3 dbbs.mocwww.com[ 本帖最后由 rolser 于 2019-8-20 20:52 编辑 ]

TOP

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

TOP

引用:
原帖由 rolser 于 2019-8-20 20:44 发表
6 [7 N! {# r* H  Y我看了在线修改人物名字的lua ,其实SQL是改数据库的,但是真正起作用的是最后两行,直接改对象的名字。bbs.mocwww.com0 L) e' j( C/ N( M% [+ E
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート( h8 _! ^! e7 W/ M
                local query = "Update tbl_character set `Name` = '".._data.."' Where Cdkey = '"..Char.GetData(_Pl ...
魔力私服,最新魔力宝贝私服技术交流  E* I1 c# E) @

8 k  M% v+ L$ n( d% zbbs.mocwww.comlua修改玩家内存只是修改了GMSV内的内存,在玩家客户端内并没有显示,因此需要用UpChar函数更新玩家客户端显示
+ }, w  x( R/ r) {同理还有NPC创建时候使用的UpChar函数,这个函数如果是由全局注册init来触发的,会导致你即使重载脚本,NPC也加载不出来,必须重启服务器(重新加载init)才行妖城在线论坛9 g( {, N9 @( ^0 M
备注:创建NPC也可以用其他函数或者if,GE不要使用if,会有奇怪的错误妖城在线论坛9 i7 O* L3 h3 e% L3 F3 l

# z, E7 a9 r* R, g' V2 z0 q6 O魔力私服,最新魔力宝贝私服技术交流GE的教程和GA是互通的,他们只不过是文件夹不一样,文件名不一样,函数名不一样,但运行逻辑都是一样的,只是WIN7和WIN10的区别而已,只要能看懂本帖说的GA的内容,GE和GP自然就懂了—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート( G, G- @$ v  k3 l$ E

) v. l" n6 G  x. w" j妖城在线论坛[ 本帖最后由 王宫召唤士盖兹 于 2019-8-30 11:22 编辑 ]

TOP

发新话题