发新话题
打印

[讨论] 初级魔力lua解析

多谢大神

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

TOP

请大佬继续更新

TOP

求助大神指点一下,GA能用的宠物技能学习卷放到CGMSV上就老提示宠物技能栏已满呢??
+ |% d7 C$ Q  j" ~+ J- R' Z妖城在线论坛) i, E+ K4 F, b( m$ y

# p. V+ q- v. s$ R9 s—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート
' I$ Z$ S) A2 c. B2 `- H$ ]7 L( {' T+ fif _Select==2 or _Seqno==99999 then妖城在线论坛6 \% g3 e% G- }4 a4 y4 R
                return
) _! D% M1 B  Z8 I! B6 o魔力私服,最新魔力宝贝私服技术交流        end妖城在线论坛( H* i3 R/ N" O
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表8 M5 N1 I* o4 d  ]7 s
        if _Seqno==10 then魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表6 s  L0 {5 Q1 A2 E+ p
                --Get Session
8 ]' J5 n* [' ?7 E& M' b4 C! t                SelectPetSlot[_PlayerIndex] = _Data-1—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート* o  Q) n& E! u$ ~
                local tItemSlot = SelectItemSlot[_PlayerIndex]& _' Q. R" O* W2 P. s: P
                local tPetSlot = SelectPetSlot[_PlayerIndex]
" a% H- U5 A; E4 w# l5 z妖城在线论坛                --Get Pet Data
, i7 E' Q+ t3 Y$ g魔力私服,最新魔力宝贝私服技术交流                local tPetIndex = Char.GetPet(_PlayerIndex, tPetSlot)魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表: p. W4 C6 q$ `/ R9 ~) P
                if tPetIndex<0 then
0 Y9 a2 g# ]' W) Y4 O  O妖城在线论坛                        return 0bbs.mocwww.com$ A5 \& i9 p# s3 q/ d3 K
                end—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート+ r! W7 I! y- b. T) H  Q3 L
                local tPetName = Char.GetData(tPetIndex, %对象_名字%)bbs.mocwww.com4 r0 {, y- L7 O1 i2 K! H6 h
                local tPetID = Char.GetData(tPetIndex, 68)妖城在线论坛) s. G7 j+ a7 U! Y6 @/ u0 N
                local tPetLv = Char.GetData(tPetIndex, %对象_等级%)
% K( L' m& t* F$ ]2 L* z魔力私服,最新魔力宝贝私服技术交流                local tPetGetLv = Char.GetData(tPetIndex, %宠物_获取时等级%)妖城在线论坛8 b8 R( f+ p( |5 I
                local tPetTechSlotMax = Char.GetData(tPetIndex, %宠物_技能栏%)
/ H1 o: C7 K8 s6 t6 ?魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                --Get Item Data
6 D3 V# N' X7 ^: _+ |" }bbs.mocwww.com                local tItemIndex = Char.GetItemIndex(_PlayerIndex, tItemSlot)
' z% H6 m  x$ i4 ^, B. i1 B4 E—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                if tItemIndex<0 then妖城在线论坛3 N4 B: f: h2 p$ v8 W' W
                        return 0
) g. _! W9 I2 ~- }—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                end
5 r2 _. ~" z2 ?# i. W- q                local tItemName = Item.GetData(tItemIndex, %道具_名字%)—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート2 X0 |2 [, E! ~: [* f; k9 A
                local tItemID = Item.GetData(tItemIndex, %道具_ID%)
  M9 n" S: Y2 E# cbbs.mocwww.com                local tTechType = Item.GetData(tItemIndex, %道具_特殊类型%) or 0* Q8 F' \4 X5 d: j5 V6 w9 g
                local tTechID = Item.GetData(tItemIndex, %道具_子参一%) or 0妖城在线论坛) n+ U1 o6 x5 t
                local tPreTechID = Item.GetData(tItemIndex, %道具_子参二%) or 0
. G: g" }7 e2 d8 r; @; ]9 s—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                        print("\n=================调试信息====================")
% u6 T" M6 n( J6 L魔力私服,最新魔力宝贝私服技术交流                        print("tItemID=" .. tItemID)
( W4 u: U: N1 c" {5 a+ m—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                        print("tItemName=" .. tItemName)妖城在线论坛; R  V6 x. k" R8 V' C  I
                        print("tTechType=" .. tTechType)
) e8 U; P" f0 B& p8 Y- }! ibbs.mocwww.com                        print("tTechID=" .. tTechID)妖城在线论坛- i2 t7 E* A& r: w
                        print("tPreTechID=" .. tPreTechID)
& l, b% c# z1 D, e                        print("NorPreTechID=" .. NorPreTechID)魔力私服,最新魔力宝贝私服技术交流% X& |  w4 e3 M, X  B& b
                        print("TechSlot=" .. #PetTechNpc_GetTechList(tPetIndex) .. "/" .. tPetTechSlotMax)—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート& m9 \. |. h- v6 F* `! }5 w- i
                        print("InTable=" .. PetTechNpc_GetTechPos(tPetIndex, tPreTechID))—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート1 J. S' n" p1 Y" O3 Q+ V2 y# @
                --Check Type* s/ v1 b& Y) J! J
                if tTechType==1 then
) |- v. n/ A9 _2 S—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                        if PetTechNpc_CheckInTable(SPetListA, tPetID)~=true then妖城在线论坛! d0 q/ {/ c2 Z& v$ E& |
                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:特定宠物")妖城在线论坛1 J6 R7 d+ e! u+ ?# Z; W  M( s1 K
                                return 0
3 i# N3 E) t2 c—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                        end
- H0 Z) W, I# A3 I9 A$ C魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                elseif tTechType==2 then
, @: `; W4 u6 G0 U魔力私服,最新魔力宝贝私服技术交流                        if PetTechNpc_CheckInTable(SPetListB, tPetID)~=true then
* G3 |  c: ~* L) [' G& m魔力私服,最新魔力宝贝私服技术交流                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:特定宠物"). u1 @: F4 `, w* b) z6 a
                                return 0bbs.mocwww.com3 O, [  N6 _% {& B! g
                        end魔力私服,最新魔力宝贝私服技术交流. X& m5 U  y$ J; |* W
                elseif tTechType==3 thenbbs.mocwww.com' q, Y# ^; W( s
                        if tPetGetLv>1 then
' ~' s2 G; t% P( y+ S魔力私服,最新魔力宝贝私服技术交流                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:非野生")3 q1 L, l3 ]+ S" a
                                return 0) o0 p2 ~! }9 C9 g; E
                        end
' a; ^7 Y8 Q" _* m, i$ c8 y6 U魔力私服,最新魔力宝贝私服技术交流                elseif tTechType==4 then妖城在线论坛' g( k) l4 l: j
                        if tPetLv<PetMaxLevel then魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表& O5 w$ g6 c: d) n& e" R' a
                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:满级")
2 y1 @0 w" Y9 g$ d0 c                                return 0魔力私服,最新魔力宝贝私服技术交流8 m* f7 a. F- m( M6 U8 |# @) d3 d( R+ p
                        endbbs.mocwww.com6 j( Q+ m+ x) r3 k3 p" X  F
                end
2 X8 {* Q7 |' I1 ?. p                --Check NorPreTechID
1 i! z$ N5 f+ b魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                if tPreTechID==NorPreTechID and        #PetTechNpc_GetTechList(tPetIndex)>=tPetTechSlotMax and PetTechNpc_GetTechPos(tPetIndex, tPreTechID)<0 then魔力私服,最新魔力宝贝私服技术交流7 p" g2 g" {5 ?* a5 G; n9 L3 D
                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:请先学习【高阶技能栏】技能"): D; e! E( l$ X# [/ f* {3 F; w
                                return 05 C# ]+ R& V: ?. H# q# f0 X! F
                end
& [& w, b9 _( t: E8 @魔力私服,最新魔力宝贝私服技术交流                --Check PreTech! l/ B5 L9 l/ X' l
                if tPreTechID>0 and tPreTechID~=NorPreTechID then—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート8 P$ d. P5 u; H: q0 v) \" v
                        if PetTechNpc_GetTechPos(tPetIndex, tPreTechID)<0 then—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート: q: l: B5 e$ R# j- v
                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:前置技能")bbs.mocwww.com3 C& w) _' o9 b2 G9 q
                                return 0魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表" ?5 X# f" e0 @% q! P/ q) f7 E2 |
                        end
( b5 C5 K% J, N魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                end
+ Z, t; E5 O" @, Z魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                --Check Slot魔力私服,最新魔力宝贝私服技术交流9 d$ X6 q/ o- N
                if tPreTechID<=0 and #PetTechNpc_GetTechList(tPetIndex)>=tPetTechSlotMax then魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表) |5 f+ X1 i% H5 }8 ?8 u
                        NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:技能栏已满")—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート+ ~5 h% [% s& e1 O
                        return 0
( n! i) ?: ]! _- J. m" \6 d魔力私服,最新魔力宝贝私服技术交流                end1 ~8 }' |4 B& @
                --Del PreTech魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表; ~1 G/ B+ d# X' [+ ^8 J
                if tPreTechID>0 then
$ n2 o: a7 f' s  Fbbs.mocwww.com                        local tPreTechPos = PetTechNpc_GetTechPos(tPetIndex, tPreTechID)妖城在线论坛+ r" ^$ J% B& }$ [  U
                        Pet.DelSkill(tPetIndex, tPreTechPos)
) u7 h' [! Q3 d9 J  U; [1 j妖城在线论坛                end
& b  d) y" c' u" Y1 B                --Add Techbbs.mocwww.com% W2 @3 L3 c6 G& ?( [  Q1 ]
                local rt = Pet.AddSkill(tPetIndex, tTechID)
7 o" v, M2 k5 s" H( l* y6 B5 ~bbs.mocwww.com                if rt~=1 then魔力私服,最新魔力宝贝私服技术交流5 N. |- t0 D$ O: |
                        NLG.SystemMessage(_PlayerIndex, "[错误] 未知原因错误")魔力私服,最新魔力宝贝私服技术交流* L1 i% [$ s$ Z9 X/ d$ |+ @' a
                        return 0" K) L. N, k) I- {1 s8 z
                end
9 n. Q. Y& Y; p妖城在线论坛                --Del Item
- H7 d" ^* h1 v  \魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.DelItem(_PlayerIndex, tItemID, 1)
& D8 N; D; v$ Z* |8 j0 o$ k8 g魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                --Up Pet魔力私服,最新魔力宝贝私服技术交流3 s3 F" _0 _0 w* w& A2 Q, P
                Pet.UpPet(_PlayerIndex, tPetIndex)
  r; z; Z# M) D4 v2 q$ S                NLG.SystemMessage(_PlayerIndex, "你的宠物" .. tPetName .. "学会了新技能。")魔力私服,最新魔力宝贝私服技术交流7 e8 b6 U" @$ f0 q% a6 W  c7 O
        return 1
+ d8 |7 B0 e% S魔力私服,最新魔力宝贝私服技术交流        end
- G/ k" Q( {6 V) c妖城在线论坛end—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート# _* W8 C) w% K+ f

( W+ x/ H) I5 |; p$ k# s! y魔力私服,最新魔力宝贝私服技术交流--使用道具5 X/ |: L2 H% N, m  a. E$ K6 c
NL.RegItemString(nil, "PetTechNpc_ItemUse", "LUA_usePetTech");
6 M) D! o% D; }+ ^3 i妖城在线论坛function PetTechNpc_ItemUse(_PlayerIndex, _ToPlayerIndex, _Slot)
5 u- C5 T  Q- e6 Q—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        SelectItemSlot[_PlayerIndex] = _Slot$ H7 i: C/ N& j0 D5 J
        PetTechNpc_Talked( tbl_LuaNpcIndex["PetTechNpc"], _PlayerIndex, 1)魔力私服,最新魔力宝贝私服技术交流1 ~) _8 w9 a$ O  ]& p3 H3 [& J% g* U
        return 1
) u8 P# @6 G8 A" q! V: W魔力私服,最新魔力宝贝私服技术交流end

TOP

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

TOP

引用:
原帖由 wangjun1127 于 2019-5-30 19:56 发表 bbs.mocwww.com. y' L( L- f9 H2 p# B
求助大神指点一下,GA能用的宠物技能学习卷放到CGMSV上就老提示宠物技能栏已满呢??
! x9 T. m& ~4 O/ ?, _. a: E魔力私服,最新魔力宝贝私服技术交流
' a; j2 z4 k( O+ G/ v  mbbs.mocwww.com魔力私服,最新魔力宝贝私服技术交流9 W8 v* I, _/ I
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表. [& e! {& ^8 ]
if _Select==2 or _Seqno==99999 thenbbs.mocwww.com3 A% H6 q4 B2 s5 Q5 N4 ?
                return
) S, x$ D; {' T# N( k3 u0 I—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        end( Z2 o2 R% X! l' b% I

0 D9 X) P9 z  V% Z魔力私服,最新魔力宝贝私服技术交流        if _Seqno==10 then魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表! Y$ f' U% y6 G4 A# m; V
                --Get Session
+ D) p5 W- b8 w; d魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                SelectPetSlot[_Pla ...
# X7 x2 v" f& Q; Y: nbbs.mocwww.com这是一个luac+lua结合的功能,你只迁移了lua部分,没有迁移luac部分(道具部分)

TOP

6.如何创立MSG指令(例:/1 /2)魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表+ B: [! `6 ?( `2 M3 @9 `
今天先来讲点简单的知识,顺便复习一下旧知识点中比较重要的获取(get)函数和设置(set)函数的区别,本帖停更也是由于深感自身讲的知识点先后顺序有些问题—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート! j8 \' ^" p, X/ q( W  X
魔力lua包含了三大块知识点( L6 B/ _8 r. R
1:lua编程基础知识(不需要太深入的lua技术即可)
/ g8 l2 [+ s- }. m/ L3 r6 d4 |bbs.mocwww.com2:mysql基础知识(不需要太深入的mysql技术,但要会节省资源和防止疯狂读写)妖城在线论坛3 f9 H1 I7 Y6 H. v
3:魔力封包知识(高端lua开发必备)魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表& i+ N& g, s2 O& O% d/ Z; s% _

1 O" H8 X; Z( ], i; \本帖只讲述lua在魔力中是如何运行的,这三块知识点都需要你们自己去学习
+ \" n" w. g' t: B4 [—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート
. V4 J2 q# _9 N' l! b4 V魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表下面我们进入今天的教学魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表" I8 k- U# S; F  h( i1 f
lua的远程指令主要依靠NL.RegTalkEvent(Dofile, FuncName)达成
% D+ [1 p0 o1 _2 x8 e7 s6 i7 ?—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート该函数的作用是[创建对话事件],它可以全局框架注册妖城在线论坛6 `2 A3 Q7 a* W* q( F/ _0 i: E
一般使用Delegate.RegDelTalkEvent("XXX")创建全局对话事件bbs.mocwww.com# Y% w7 X. o% P* Z* ]8 z
NL.RegTalkEvent的返回函数明细:魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表6 _- Y" w  A, @4 R5 F1 X
TalkEventCallBack(CharIndex, Msg, Color, Range, Size)
- ^8 q* T3 {# S$ ^% o1 `魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表参数说明魔力私服,最新魔力宝贝私服技术交流' Y& g* e$ X" k( G: X" X
CharIndex: 数值型 响应事件的对象index,该值由Lua引擎传递给本函数。
6 T! a2 N* t6 M/ l& M/ d& }Msg: 文本型 话的内容,该值由Lua引擎传递给本函数。bbs.mocwww.com# j& f1 O2 q3 N
Color: 数值型 说话颜色,该值由Lua引擎传递给本函数。bbs.mocwww.com) e( P6 Q" F$ V8 K& S; @
Range: 数值型 说话音量(范围),该值由Lua引擎传递给本函数。
3 B5 o& h$ w1 }8 dSize: 数值型 说话字体大小,该值由Lua引擎传递给本函数。bbs.mocwww.com  r! g% v- L9 F% b, ^
返回值—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート( A" }6 P0 c9 ]7 H/ [0 B2 Y7 ~$ X& D" p
返回0拦截说话内容,返回1正常发送
5 _2 Q$ x1 r$ v) q妖城在线论坛# s( n* x( ?! J4 |5 M
小知识复习:当形参由lua引擎传递一个可用实参时,你不需要填写形参具体值,并且可以传递给其他函数的空白形参,让其拥有实际数值,传递时候要注意传参的类型,空白形参的函数中,空白形参若只能填写数值型魔力私服,最新魔力宝贝私服技术交流( [* h# P6 B  Z/ A. q' I
传递过来的数值就必须是数值型(这种情况可以先设置一个变量   a=tonumber(lua引擎传递的字符串型传参) 然后把变量a填入空白形参的函数形参中)
, f& O; S3 c( {) c: A8 `" Z妖城在线论坛
- r: O0 H' \, M4 v—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート文字太过干涩,下面用实例解释今天的知识点bbs.mocwww.com$ H$ t+ E' b8 X
该例实现了用指令整理身上的道具的功能
! k' @# J+ y0 Q+ @
* T/ Y, a4 N  @- E: q5 u# x0 {2 ?魔力私服,最新魔力宝贝私服技术交流local zhengli = "/zl"--整理指令,此处需要""把内容定义为字符串—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート7 {0 J. o6 x# o, a; J$ v, i6 t
--  ***************************************************************************************************** --' h+ n0 `  k6 ^2 p& w- n" q
Delegate.RegDelTalkEvent("zlTalkEvent");--全局注册对话事件函数
) \" U$ x* D9 j0 }2 E魔力私服,最新魔力宝贝私服技术交流—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート  e3 U+ H3 r* I; s
function zlTalkEvent(player,msg,color,range,size)--调用对话事件函数的返回函数bbs.mocwww.com0 x: J6 Q/ F. o: I5 E
        if(msg==zhengli) then--检测MSG=整理指令时则执行下述函数块内容妖城在线论坛! Z8 _8 O+ N( F& l5 H2 ?/ o. `2 w. h
                NLG.SortItem(player)--调用GA封装的整理道具函数,其中NLG.SortItem(player)的(player)值由function zlTalkEvent(player,msg,color,range,size)这个返回函数赋予
  n5 L. `  B# }3 `' C9 d妖城在线论坛        endbbs.mocwww.com. z2 z# t8 K# W3 q
endbbs.mocwww.com* E* i" g* v3 a; h- X0 H
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート# b7 x6 {5 z3 n3 W& s; i1 \$ v
上述实例中,如果单独拿NLG.SortItem(player)出来,(player)的值会是nil,是没有任何数值的,它是一个标准的设置函数,需要从获取函数中获得形参的实值(魔力lua的函数的形参分为2种,获取函数(get)和设置函数(set))妖城在线论坛; A7 D% o7 O9 ?: }$ C+ U: q$ y' |
教学用指令整理道具.7z (453 Bytes)
# h6 D8 u4 l! M, U; {! @; Dbbs.mocwww.com
5 w3 `- S4 @$ S" h- t[ 本帖最后由 王宫召唤士盖兹 于 2019-5-31 02:07 编辑 ]

TOP

6666666666666666

TOP

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

TOP

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

TOP

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

TOP

引用:
原帖由 staki 于 2019-8-3 03:12 发表 妖城在线论坛2 p* ~* d# W, w. n# U8 ~
建议出个GP的 GA好像在这身败名裂了
妖城在线论坛5 `/ L, S7 r! n
bbs.mocwww.com$ ]( |8 f- `  Y8 Q) H/ `
GP没2键端无法操作,只是学lua基础都一样的
5 J; E7 }8 U3 Q) i- P0 ^1 ~妖城在线论坛 我不更新就是涉及的具体操作太多,通用性不高,没有更新的必要魔力私服,最新魔力宝贝私服技术交流! O% c9 Y& b7 r/ J
我本身秉持授人与鱼不如授人于渔的想法,才写了这个帖子
/ L. g# y; u$ ]魔力私服,最新魔力宝贝私服技术交流能看懂本帖之前写的内容,足够了
* Z8 i9 i  @2 _- [魔力私服,最新魔力宝贝私服技术交流0 }; [$ k; U6 f3 T- k. o
备注:
, @6 v& y* {* h2 R魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表既然回帖了,就再讲一下魔力lua的基础运行流程:—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート- |, P5 l- v6 G. k1 y2 \
1:GMSV启动时加载GMSV内置的魔力lua模块
. Y& W* c- S0 z* D/ y妖城在线论坛2:GMSV自动加载初始lua-init.lua   该lua是由GMSV自动加载的(无需写dofile加载)妖城在线论坛( h) p1 s' o* L$ {
3:init.lua 加载运行内部代码    此时会有大量dofile,一般是加载基础框架相关的东西 有兴趣可以参考init.lua内部代码,包括框架全局注册这类关键脚本,都是此时加载的
8 L- w' i! y% U. Q1 X1 }$ b  b魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表4:init.lua中有一行dofile(Lua_Path.."Config.lua"),加载Cofig.lua
" k  }, o2 f5 r+ F) o9 o& O% M9 jbbs.mocwww.com5:Cofig.lua加载各种Module文件夹内的lua  (至于Cofig.lua内用于加载lua的Loadlua函数究竟是GA哪个脚本内写的,可以给大家当成一个最后的课后考题,找出他,能找到他,我相信你就会发现魔力LUA的运行逻辑是如此简单)
  [" I4 G& C) a! E( W—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート提示:GP的Loadlua函数在  lua\include\Global.lua 这个文件内% e, w" y+ R4 e1 r, D
提示2:GA的Loadlua函数在 lua\System某个文件夹内
; Z: ~& k9 F# i2 D魔力私服,最新魔力宝贝私服技术交流+ D  u, r( Z" }* W* W; B1 j
[ 本帖最后由 王宫召唤士盖兹 于 2019-8-3 12:59 编辑 ]

TOP

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

TOP

我看了在线修改人物名字的lua ,其实SQL是改数据库的,但是真正起作用的是最后两行,直接改对象的名字。
4 b2 m4 l' h) i! o9 q9 `4 T# L—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート
9 M$ J9 N# m% I. Dbbs.mocwww.com                local query = "Update tbl_character set `Name` = '".._data.."' Where Cdkey = '"..Char.GetData(_PlayerIndex,%对象_账号%).."' and Name='"..Char.GetData(_PlayerIndex,%对象_原名%).."'";
  |' i& U0 u' O. Z5 R( E魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local ret = SQL.Run(query);
5 d5 y+ Y5 F4 ?( z; B, u' l妖城在线论坛        魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表9 _  k. \- p+ i! F8 e. a
                Char.SetData(_PlayerIndex,%对象_原名%,_data);
( t$ }6 f0 w. A# R& e- Sbbs.mocwww.com                NLG.UpChar(_PlayerIndex);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表4 o, |6 H  B4 A

9 t: @& a- K8 l/ x. [; z魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表如果没有最后这两行,SQL改的数据库,人物退出还是原来的名字。
: ?+ u, f$ ?, ]  S9 V: _# m4 W" g  V妖城在线论坛妖城在线论坛( N; ?2 `6 Y6 P$ l$ o$ x
[ 本帖最后由 rolser 于 2019-8-20 20:52 编辑 ]

TOP

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

TOP

引用:
原帖由 rolser 于 2019-8-20 20:44 发表
: l3 D4 c7 ?+ O6 J$ kbbs.mocwww.com我看了在线修改人物名字的lua ,其实SQL是改数据库的,但是真正起作用的是最后两行,直接改对象的名字。魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表) a; D; W0 t/ d, h- S

* s0 j, W1 i* v7 L" u                local query = "Update tbl_character set `Name` = '".._data.."' Where Cdkey = '"..Char.GetData(_Pl ...
魔力私服,最新魔力宝贝私服技术交流" d8 P/ e6 S' }
" i  I& l) o" r' ~
lua修改玩家内存只是修改了GMSV内的内存,在玩家客户端内并没有显示,因此需要用UpChar函数更新玩家客户端显示—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート9 r3 {5 `5 O1 w! o3 ]7 u6 M
同理还有NPC创建时候使用的UpChar函数,这个函数如果是由全局注册init来触发的,会导致你即使重载脚本,NPC也加载不出来,必须重启服务器(重新加载init)才行
0 w$ C- u- m$ q. X! @妖城在线论坛备注:创建NPC也可以用其他函数或者if,GE不要使用if,会有奇怪的错误
& k5 {. X+ Y% }6 `bbs.mocwww.com魔力私服,最新魔力宝贝私服技术交流. X% I% Y" h/ D1 n! Q' U
GE的教程和GA是互通的,他们只不过是文件夹不一样,文件名不一样,函数名不一样,但运行逻辑都是一样的,只是WIN7和WIN10的区别而已,只要能看懂本帖说的GA的内容,GE和GP自然就懂了魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表/ [& M" K( v# S- ]7 R3 Q- l: `

% w, c0 s1 |, i: j  A5 D魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表[ 本帖最后由 王宫召唤士盖兹 于 2019-8-30 11:22 编辑 ]

TOP

发新话题