发新话题
打印

[讨论] 初级魔力lua解析

多谢大神

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

TOP

请大佬继续更新

TOP

求助大神指点一下,GA能用的宠物技能学习卷放到CGMSV上就老提示宠物技能栏已满呢??
6 H2 g. D1 q- M; {—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート魔力私服,最新魔力宝贝私服技术交流0 @0 j8 [$ p' u" L  r

2 A! y! H0 t' A) t% Qbbs.mocwww.com
. B7 h# ~  @; j, Z2 c妖城在线论坛if _Select==2 or _Seqno==99999 then
! @% J1 x  b3 {/ s  i3 z, \' x5 E魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                return
8 L4 z% ^1 j* k# i* K! j( s' |8 x, N魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        end妖城在线论坛. h9 s  j8 R2 Q" w  E, _

  F* m4 a) |- h- z: C魔力私服,最新魔力宝贝私服技术交流        if _Seqno==10 then
/ @, h. ?" {0 ~  Y—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                --Get Session—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート" L  P* S4 `: H7 v; L
                SelectPetSlot[_PlayerIndex] = _Data-1+ q/ _! @2 L8 ^3 ~
                local tItemSlot = SelectItemSlot[_PlayerIndex]bbs.mocwww.com% I2 n( a: F/ q' G; T- r; p
                local tPetSlot = SelectPetSlot[_PlayerIndex]
9 M2 b+ z( b$ ]8 z) N2 g% f" ?                --Get Pet Data
6 F+ ~1 I  k3 B1 @' j4 W妖城在线论坛                local tPetIndex = Char.GetPet(_PlayerIndex, tPetSlot)
4 Q; h; N( C/ i0 D2 u0 p妖城在线论坛                if tPetIndex<0 thenbbs.mocwww.com& P1 f8 [3 }: f
                        return 0
0 \8 `; C9 }/ G8 @2 O                endbbs.mocwww.com3 a+ J; x9 d- \8 |$ ~$ n
                local tPetName = Char.GetData(tPetIndex, %对象_名字%)
5 F0 u8 H' U$ c6 r7 K8 x! v妖城在线论坛                local tPetID = Char.GetData(tPetIndex, 68)
7 P: Y, q/ c2 M3 Tbbs.mocwww.com                local tPetLv = Char.GetData(tPetIndex, %对象_等级%)
: N9 I( K! {# G- W3 W妖城在线论坛                local tPetGetLv = Char.GetData(tPetIndex, %宠物_获取时等级%)魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表4 a6 F" K4 O: @+ I) Y
                local tPetTechSlotMax = Char.GetData(tPetIndex, %宠物_技能栏%)
: \+ h% P9 J3 l& d# A魔力私服,最新魔力宝贝私服技术交流                --Get Item Data
9 g! }5 I6 ?; Q* e) L$ y魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local tItemIndex = Char.GetItemIndex(_PlayerIndex, tItemSlot)—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート, h4 m1 Y# i# r5 G1 U' s! \8 e
                if tItemIndex<0 then& e4 T9 v( \- B/ i8 f+ \* J
                        return 0妖城在线论坛. I! e" @/ s4 k$ a0 U( r3 v- D
                end+ X. [( ~# h" q) s  n
                local tItemName = Item.GetData(tItemIndex, %道具_名字%)妖城在线论坛4 F8 d/ u6 V7 t4 @4 {# D
                local tItemID = Item.GetData(tItemIndex, %道具_ID%)魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表& a4 q2 Y6 a9 }1 }) _/ a3 S! ^9 P$ \
                local tTechType = Item.GetData(tItemIndex, %道具_特殊类型%) or 0
; T7 b1 t% O0 ]3 ]魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local tTechID = Item.GetData(tItemIndex, %道具_子参一%) or 0妖城在线论坛8 |3 m5 \$ D; G2 \& e; F
                local tPreTechID = Item.GetData(tItemIndex, %道具_子参二%) or 0
# p6 K; d  r) Y6 E2 \                        print("\n=================调试信息====================")
6 i6 q# ^  g# K0 B妖城在线论坛                        print("tItemID=" .. tItemID)妖城在线论坛1 G* K2 C$ }% `5 ?" T
                        print("tItemName=" .. tItemName)
! q/ W  c, O; u( S魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                        print("tTechType=" .. tTechType)1 L4 A2 \5 h" e( N* e) |2 t7 g
                        print("tTechID=" .. tTechID)bbs.mocwww.com6 H8 ^% [. e  V- o7 |
                        print("tPreTechID=" .. tPreTechID)
, t* h' a6 U; `! x6 `* Xbbs.mocwww.com                        print("NorPreTechID=" .. NorPreTechID)
+ M' j. ^6 J* G7 _' O魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                        print("TechSlot=" .. #PetTechNpc_GetTechList(tPetIndex) .. "/" .. tPetTechSlotMax)
% g- U1 @6 x3 Y- Z- r( o+ I% j6 D魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                        print("InTable=" .. PetTechNpc_GetTechPos(tPetIndex, tPreTechID))
4 |2 O" l  s4 q' G; o( X魔力私服,最新魔力宝贝私服技术交流                --Check Type
; Z$ ~2 Q) G! ^4 Q+ P—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                if tTechType==1 then魔力私服,最新魔力宝贝私服技术交流" q0 C6 K( _# ]  G3 x/ }  _( |
                        if PetTechNpc_CheckInTable(SPetListA, tPetID)~=true then
2 S$ |* l5 K  a: W2 a% R/ @—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:特定宠物")魔力私服,最新魔力宝贝私服技术交流+ @% x, N0 o, c# I; C4 n
                                return 0# \/ q, e% H  A% v& I0 h* T
                        end魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表" _, P' X( E$ r! {& U
                elseif tTechType==2 then
+ P4 i+ C/ @7 j7 x$ c魔力私服,最新魔力宝贝私服技术交流                        if PetTechNpc_CheckInTable(SPetListB, tPetID)~=true thenbbs.mocwww.com, `: j1 ?' H/ Q/ v& P8 d$ u( [
                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:特定宠物")妖城在线论坛# K1 W- Y/ H: w$ G/ x
                                return 0
! K' d* M. f  w妖城在线论坛                        end魔力私服,最新魔力宝贝私服技术交流% U2 w* I6 Z, v! T" E
                elseif tTechType==3 then
8 ~2 _9 s1 \- L9 P                        if tPetGetLv>1 then妖城在线论坛! n  e- v9 g; X0 A5 ~+ |
                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:非野生")bbs.mocwww.com0 i# N$ T' L( d, {
                                return 0
& @5 B3 Y( X; J+ |, A. I" ^/ U  y妖城在线论坛                        end魔力私服,最新魔力宝贝私服技术交流3 R! v1 K. [+ K" r+ t8 v5 o
                elseif tTechType==4 then
" ?! M; V% I/ Obbs.mocwww.com                        if tPetLv<PetMaxLevel then妖城在线论坛6 }& g! q+ t5 o# h' P: x
                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:满级")
$ J( Q0 W& R! p6 y; \bbs.mocwww.com                                return 0bbs.mocwww.com% |$ C- _8 n! v* x- C% ?
                        end
- f+ X) O* P& @; h7 {妖城在线论坛                endbbs.mocwww.com2 Z+ Y; W$ O0 x* Y: L" Y7 Y# E
                --Check NorPreTechID- v2 H+ y3 l9 |
                if tPreTechID==NorPreTechID and        #PetTechNpc_GetTechList(tPetIndex)>=tPetTechSlotMax and PetTechNpc_GetTechPos(tPetIndex, tPreTechID)<0 then魔力私服,最新魔力宝贝私服技术交流2 E' |" v( N. b, w/ S6 P+ r
                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:请先学习【高阶技能栏】技能")
4 L0 b0 f+ I; y                                return 0
5 _$ N, P. o7 ?# Rbbs.mocwww.com                end
; g4 F; m. u5 n                --Check PreTech
  [8 f2 j3 G/ b8 r—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                if tPreTechID>0 and tPreTechID~=NorPreTechID then
# ]! {9 ]3 H4 w2 }9 v, T: G/ D—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                        if PetTechNpc_GetTechPos(tPetIndex, tPreTechID)<0 then
- K0 w  {* a3 ^: S—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                                NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:前置技能")
3 j" \/ R5 O  \% ]- L& `( K/ f魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                                return 0
) K2 v" Q- @9 R1 t1 v- L妖城在线论坛                        end妖城在线论坛# M4 s9 d! ?6 m+ U6 f) R) T
                end
5 `  D: L" t; C2 B+ t  D% bbbs.mocwww.com                --Check Slotbbs.mocwww.com: c0 i, I5 ]( \' \
                if tPreTechID<=0 and #PetTechNpc_GetTechList(tPetIndex)>=tPetTechSlotMax then魔力私服,最新魔力宝贝私服技术交流% n% w1 N, i2 j/ P1 _
                        NLG.SystemMessage(_PlayerIndex, "[错误] 你选择的宠物不满足以下学习条件:技能栏已满")
( v5 S) M, p5 E; }0 c' B2 _( U妖城在线论坛                        return 0
1 r/ g/ X3 }3 u* y) Y" T+ F魔力私服,最新魔力宝贝私服技术交流                end妖城在线论坛  B9 R3 l7 A- D* Z
                --Del PreTech
7 |7 }4 h/ K7 u妖城在线论坛                if tPreTechID>0 then
- B: {( u" x3 r妖城在线论坛                        local tPreTechPos = PetTechNpc_GetTechPos(tPetIndex, tPreTechID)—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート5 e: J2 @8 k; s  E5 e' X9 g
                        Pet.DelSkill(tPetIndex, tPreTechPos)—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート' M9 p# ?( M5 j/ q& I
                end
+ r/ M5 Z7 K2 \bbs.mocwww.com                --Add Tech
. a1 t: B( _. l4 Hbbs.mocwww.com                local rt = Pet.AddSkill(tPetIndex, tTechID)
( u+ X$ a  k5 `! f& u, V4 R8 C4 ^                if rt~=1 then) Z7 L9 M. e. Q. m( i
                        NLG.SystemMessage(_PlayerIndex, "[错误] 未知原因错误")
9 y5 C  @8 O2 ]: r                        return 0
4 A8 R" b+ N" S& c' H/ Gbbs.mocwww.com                end妖城在线论坛  [/ b. g9 `5 w
                --Del Item
9 {, C/ C  l9 _; k, u妖城在线论坛                Char.DelItem(_PlayerIndex, tItemID, 1)
) C. d" ~4 ^$ I1 r$ x, s—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                --Up Pet
" w( ~# Q; H, s6 q$ S魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Pet.UpPet(_PlayerIndex, tPetIndex)
) S  ^$ ?) J- I& `- A5 o) {7 |2 [- W妖城在线论坛                NLG.SystemMessage(_PlayerIndex, "你的宠物" .. tPetName .. "学会了新技能。")bbs.mocwww.com' T: p8 c' J  U( s
        return 1
4 x) W" W/ u5 O9 w% v7 H5 F魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        end  d7 L( G( i6 P8 C
end魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表) ]2 Z/ X$ O1 Y; k. Q! o- x
魔力私服,最新魔力宝贝私服技术交流) n' ~) T0 A5 X' B( N" k  g% ]  j
--使用道具
. ?& E5 g4 a; }7 @) m" ]; UNL.RegItemString(nil, "PetTechNpc_ItemUse", "LUA_usePetTech");魔力私服,最新魔力宝贝私服技术交流1 Y' h- }. b8 E) g" \! R
function PetTechNpc_ItemUse(_PlayerIndex, _ToPlayerIndex, _Slot)bbs.mocwww.com- x  N( d+ d% u# r$ b
        SelectItemSlot[_PlayerIndex] = _Slot. Z- v* q$ X) M
        PetTechNpc_Talked( tbl_LuaNpcIndex["PetTechNpc"], _PlayerIndex, 1)魔力私服,最新魔力宝贝私服技术交流3 U. c' i1 N0 g# Z2 i3 z, v
        return 14 m/ b* Q# w; M2 J3 d. b6 l/ k
end

TOP

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

TOP

引用:
原帖由 wangjun1127 于 2019-5-30 19:56 发表 9 D" f4 v- F& S  H: v/ {
求助大神指点一下,GA能用的宠物技能学习卷放到CGMSV上就老提示宠物技能栏已满呢??
( M/ K0 f* E2 @" ]6 J6 P1 \妖城在线论坛bbs.mocwww.com% ~) N" V  ~. _! O' d4 W5 i; Z* v

5 l  Z; v# _7 D3 t- w8 }魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表+ g0 @, t/ h7 ?: i+ ]( ?7 d% \0 p
if _Select==2 or _Seqno==99999 then
' D. s$ G1 c" A6 q4 u—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                return
8 E4 ?! q5 z1 f! q) s魔力私服,最新魔力宝贝私服技术交流        end魔力私服,最新魔力宝贝私服技术交流6 Y5 e. T' v& z7 Q5 v8 W' Y

2 ^0 }. W: g+ J: `妖城在线论坛        if _Seqno==10 then
& k! y0 n1 q$ U* b$ U* G- j                --Get Session
  l# m& l& }' c3 C0 A魔力私服,最新魔力宝贝私服技术交流                SelectPetSlot[_Pla ...
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表- M/ w2 w  X& d* `- A
这是一个luac+lua结合的功能,你只迁移了lua部分,没有迁移luac部分(道具部分)

TOP

6.如何创立MSG指令(例:/1 /2)妖城在线论坛1 w; U- a5 h, }- e
今天先来讲点简单的知识,顺便复习一下旧知识点中比较重要的获取(get)函数和设置(set)函数的区别,本帖停更也是由于深感自身讲的知识点先后顺序有些问题
; s  a( p8 S7 A* K; G9 h6 U' `, |—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート魔力lua包含了三大块知识点—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート& j' I  Q6 n! a
1:lua编程基础知识(不需要太深入的lua技术即可)
6 ^/ ~8 R2 ?4 g魔力私服,最新魔力宝贝私服技术交流2:mysql基础知识(不需要太深入的mysql技术,但要会节省资源和防止疯狂读写)bbs.mocwww.com* o$ E/ a9 `4 b7 M0 h
3:魔力封包知识(高端lua开发必备)魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表2 R; T: ~8 i  R8 a3 T/ v/ F

# ]+ z- v6 J& ^& A" }魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表本帖只讲述lua在魔力中是如何运行的,这三块知识点都需要你们自己去学习—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート# \3 H* x% w7 n7 [1 l+ j5 Y; X

. B; O9 |! V% K* e: B& kbbs.mocwww.com下面我们进入今天的教学
: Q* k7 k0 }7 I' ~—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートlua的远程指令主要依靠NL.RegTalkEvent(Dofile, FuncName)达成—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート5 ~& Y' f9 n( b% l: G
该函数的作用是[创建对话事件],它可以全局框架注册妖城在线论坛( Z4 G* d- S3 j2 ^, ^( w( T# n
一般使用Delegate.RegDelTalkEvent("XXX")创建全局对话事件魔力私服,最新魔力宝贝私服技术交流% [/ B5 u7 ^, p& Q2 {7 y7 h& G4 f; F$ S
NL.RegTalkEvent的返回函数明细:
( I3 j- N. r! O  t* E魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表TalkEventCallBack(CharIndex, Msg, Color, Range, Size)妖城在线论坛5 N" ]1 v) }  G' M: h/ j$ U% ^% e
参数说明
! n! y) c* R' T9 Ibbs.mocwww.comCharIndex: 数值型 响应事件的对象index,该值由Lua引擎传递给本函数。
5 H# K7 j5 b& M  {+ b魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表Msg: 文本型 话的内容,该值由Lua引擎传递给本函数。魔力私服,最新魔力宝贝私服技术交流" j! Q3 G" Q8 L, ~0 Q4 J
Color: 数值型 说话颜色,该值由Lua引擎传递给本函数。—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート" C8 T4 J# V2 n8 v$ `
Range: 数值型 说话音量(范围),该值由Lua引擎传递给本函数。
9 _& B6 y7 A) T+ H$ i- }, _4 N妖城在线论坛Size: 数值型 说话字体大小,该值由Lua引擎传递给本函数。
" N2 n( Q2 L( a# e返回值
/ [) t8 |4 t2 `% ^/ |bbs.mocwww.com返回0拦截说话内容,返回1正常发送- |6 o2 C9 P. m+ r/ t; }

, u4 A/ r" ?6 t8 x妖城在线论坛小知识复习:当形参由lua引擎传递一个可用实参时,你不需要填写形参具体值,并且可以传递给其他函数的空白形参,让其拥有实际数值,传递时候要注意传参的类型,空白形参的函数中,空白形参若只能填写数值型
% w% U* E9 i! g+ q  G5 o2 b+ |—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート传递过来的数值就必须是数值型(这种情况可以先设置一个变量   a=tonumber(lua引擎传递的字符串型传参) 然后把变量a填入空白形参的函数形参中)魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表6 r% b5 x; y5 u, f! z! ?

/ Z% z  n9 [* O; l; Y1 wbbs.mocwww.com文字太过干涩,下面用实例解释今天的知识点魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表% L, i! t! K% f$ T, |! q4 @( l, A6 [
该例实现了用指令整理身上的道具的功能—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート  ~7 S- l& t) V) J# I
魔力私服,最新魔力宝贝私服技术交流3 C* s( ^0 ~+ j; r/ c( b
local zhengli = "/zl"--整理指令,此处需要""把内容定义为字符串
4 L# R2 h4 X' z+ K% _7 ]! C魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表--  ***************************************************************************************************** --魔力私服,最新魔力宝贝私服技术交流: ~* G2 w, i! |( x! N4 d
Delegate.RegDelTalkEvent("zlTalkEvent");--全局注册对话事件函数魔力私服,最新魔力宝贝私服技术交流$ J3 D8 T( [7 j  {
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート% u+ L' ~8 @3 q0 t0 ~
function zlTalkEvent(player,msg,color,range,size)--调用对话事件函数的返回函数' y; h5 W1 q" h4 o( @( T
        if(msg==zhengli) then--检测MSG=整理指令时则执行下述函数块内容魔力私服,最新魔力宝贝私服技术交流, H9 h9 C8 x8 |
                NLG.SortItem(player)--调用GA封装的整理道具函数,其中NLG.SortItem(player)的(player)值由function zlTalkEvent(player,msg,color,range,size)这个返回函数赋予—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート& J( R, m% e0 s; G) a. G
        end妖城在线论坛) v% r# {( ^$ ?) j* p# ]8 H' W
endbbs.mocwww.com4 o$ z* v& r5 z* m4 V' y1 L
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表) P  K5 q! M9 Z- |3 }8 n+ T
上述实例中,如果单独拿NLG.SortItem(player)出来,(player)的值会是nil,是没有任何数值的,它是一个标准的设置函数,需要从获取函数中获得形参的实值(魔力lua的函数的形参分为2种,获取函数(get)和设置函数(set))魔力私服,最新魔力宝贝私服技术交流3 g9 o+ L- ?( Z( f/ V2 H  Z
教学用指令整理道具.7z (453 Bytes) —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート$ d" r; Y; M! i0 Z0 a5 L. D

+ G# T3 o/ n" K. S魔力私服,最新魔力宝贝私服技术交流[ 本帖最后由 王宫召唤士盖兹 于 2019-5-31 02:07 编辑 ]

TOP

6666666666666666

TOP

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

TOP

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

TOP

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

TOP

引用:
原帖由 staki 于 2019-8-3 03:12 发表
: v5 v/ ?1 t& x: E妖城在线论坛建议出个GP的 GA好像在这身败名裂了
8 l+ o& z( X) w+ Y妖城在线论坛
: x8 x! Q+ u) F; b% k& y8 P- s魔力私服,最新魔力宝贝私服技术交流GP没2键端无法操作,只是学lua基础都一样的
' i) I# {9 z. W9 T妖城在线论坛 我不更新就是涉及的具体操作太多,通用性不高,没有更新的必要魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表. e, E5 }6 |1 N3 C- x
我本身秉持授人与鱼不如授人于渔的想法,才写了这个帖子
& @: Y+ Y2 a) F% a! X: m魔力私服,最新魔力宝贝私服技术交流能看懂本帖之前写的内容,足够了
- `7 _' x. F# I$ bbbs.mocwww.com
& h, l% a8 p! M& {+ U7 }: D) y魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表备注:
1 ]4 \, e* e8 Y9 K8 I% B魔力私服,最新魔力宝贝私服技术交流既然回帖了,就再讲一下魔力lua的基础运行流程:bbs.mocwww.com! X8 Q* ]* Y" d2 M) G: U* h8 {
1:GMSV启动时加载GMSV内置的魔力lua模块魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表" r! f; ]- t+ m4 w5 H& B( a6 {
2:GMSV自动加载初始lua-init.lua   该lua是由GMSV自动加载的(无需写dofile加载)
" Z" ~, t+ l6 o7 w$ ]魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表3:init.lua 加载运行内部代码    此时会有大量dofile,一般是加载基础框架相关的东西 有兴趣可以参考init.lua内部代码,包括框架全局注册这类关键脚本,都是此时加载的
( U# u/ _! N0 w! g0 v魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表4:init.lua中有一行dofile(Lua_Path.."Config.lua"),加载Cofig.lua
% g# ~5 k+ C% u1 S5:Cofig.lua加载各种Module文件夹内的lua  (至于Cofig.lua内用于加载lua的Loadlua函数究竟是GA哪个脚本内写的,可以给大家当成一个最后的课后考题,找出他,能找到他,我相信你就会发现魔力LUA的运行逻辑是如此简单)
: {9 g3 U9 F$ u2 H% H- f1 a提示:GP的Loadlua函数在  lua\include\Global.lua 这个文件内. f3 I: r2 H8 e. m
提示2:GA的Loadlua函数在 lua\System某个文件夹内—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート, D/ |: Z' W2 w% I1 X  |' u: S; u

# s; {4 C0 E: p" o5 m( L5 i0 ?魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表[ 本帖最后由 王宫召唤士盖兹 于 2019-8-3 12:59 编辑 ]

TOP

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

TOP

我看了在线修改人物名字的lua ,其实SQL是改数据库的,但是真正起作用的是最后两行,直接改对象的名字。妖城在线论坛5 C; [. p+ k! L, y& }

+ |$ E7 w- G* Q! R4 [魔力私服,最新魔力宝贝私服技术交流                local query = "Update tbl_character set `Name` = '".._data.."' Where Cdkey = '"..Char.GetData(_PlayerIndex,%对象_账号%).."' and Name='"..Char.GetData(_PlayerIndex,%对象_原名%).."'";bbs.mocwww.com  i: f% B2 G# `# y6 F
                local ret = SQL.Run(query);
+ y5 p- W1 u" J( X* a# U" T妖城在线论坛        " Z) W7 D# F* W; J& H8 q
                Char.SetData(_PlayerIndex,%对象_原名%,_data);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表9 a6 j* P9 }9 E  N6 ^+ ]
                NLG.UpChar(_PlayerIndex);bbs.mocwww.com( D, q# m/ C% n9 Y' q0 x& y2 V8 R: ^

# z  ?6 L) ]  h1 ~6 a—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート如果没有最后这两行,SQL改的数据库,人物退出还是原来的名字。妖城在线论坛9 i6 L: S* A, V; V
2 Y, j) d4 Q. p0 S4 |
[ 本帖最后由 rolser 于 2019-8-20 20:52 编辑 ]

TOP

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

TOP

引用:
原帖由 rolser 于 2019-8-20 20:44 发表
6 f4 x2 @/ g3 B  g$ Vbbs.mocwww.com我看了在线修改人物名字的lua ,其实SQL是改数据库的,但是真正起作用的是最后两行,直接改对象的名字。
2 ~: J; s: u8 }妖城在线论坛魔力私服,最新魔力宝贝私服技术交流: s; ^$ M2 g, Z% W' {0 |/ t+ p0 I
                local query = "Update tbl_character set `Name` = '".._data.."' Where Cdkey = '"..Char.GetData(_Pl ...
1 a7 F* Y7 K; H8 F% M. K
" P8 ~( y* |: p/ G2 @" r; U: z1 {
lua修改玩家内存只是修改了GMSV内的内存,在玩家客户端内并没有显示,因此需要用UpChar函数更新玩家客户端显示魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表, A3 r# @' [5 W0 o% Z& |
同理还有NPC创建时候使用的UpChar函数,这个函数如果是由全局注册init来触发的,会导致你即使重载脚本,NPC也加载不出来,必须重启服务器(重新加载init)才行
- _$ }+ U% L) H0 _5 h备注:创建NPC也可以用其他函数或者if,GE不要使用if,会有奇怪的错误—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート" Q8 ~( E/ ]' s3 {. p

! C3 w, W) u# l; H' x0 j; Abbs.mocwww.comGE的教程和GA是互通的,他们只不过是文件夹不一样,文件名不一样,函数名不一样,但运行逻辑都是一样的,只是WIN7和WIN10的区别而已,只要能看懂本帖说的GA的内容,GE和GP自然就懂了* s* i; p: T+ a5 w& U6 P( w

6 J, t; [- @) T9 V# {% d魔力私服,最新魔力宝贝私服技术交流[ 本帖最后由 王宫召唤士盖兹 于 2019-8-30 11:22 编辑 ]

TOP

发新话题