发新话题
打印

[提问] 写了一个简单的制造满档的npc,但进入游戏npc不创建出来

写了一个简单的制造满档的npc,但进入游戏npc不创建出来

如下,这是我写的一个简单的制造满档宠物的npc魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表9 D. y$ T. {- G: T& G* m; [- C; o

$ ]$ R+ Z" n/ P1 p! b, Y/ `bbs.mocwww.com目的在于把宠物栏第1栏的1级宠物改成满档bbs.mocwww.com, _/ m6 t  u/ e) l( q4 _* d
具体的非1级宠物错误判定、随机档分配什么的就先暂时略去不表,还有以后再考虑添加选择改哪个宠物啥的
# C/ a, P& ]& c9 ]6 qbbs.mocwww.com魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表1 \& X1 k& t# K" ]" T* M+ t# f# B
现在最大的问题在于为什么我这么做完以后,创建不出npc呢?
' e2 s& w) S- {4 q( `) S0 n4 ~妖城在线论坛init已经做了,最开始没有改宠物bp那一段,只有改档数的时候是能创建出来的,也能成功修改宠物的档数,但加了改bp的那一部分后,就没有npc被创建出来了,求助魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表# h- \. x/ ]9 T3 D1 b1 X. l5 N
魔力私服,最新魔力宝贝私服技术交流  F$ |" |: @2 e* q
function PetMake_Init( _MePtr )魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表7 r& I  N* v3 s5 h0 w. L

; P) t1 s; S8 w( Q' [3 ^* nbbs.mocwww.com        Char.SetData(_MePtr, %对像_形象%, 101025);    --%对像_形象%—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート. G+ Z" W" [; E! P) p( F( U, d
        Char.SetData(_MePtr, %对像_原形%, 101025);    --%对像_原形%
# v) h6 `" q" B妖城在线论坛        Char.SetData(_MePtr, %对像_地图类型%, 0);     --%对像_地图类型%妖城在线论坛0 ~' J6 ~. W9 J+ T
        Char.SetData(_MePtr, %对像_地图%, 25000);      --%对像_地图%
# l# e0 h3 p; _6 C妖城在线论坛        Char.SetData(_MePtr, %对像_X%, 23);          --%对像_X%—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート. V  c- c" @7 T
        Char.SetData(_MePtr, %对像_Y%, 15);           --%对像_Y%妖城在线论坛+ g8 w6 Y9 h0 E& x0 P# x3 E
        Char.SetData(_MePtr, %对像_方向%, %左下%);    --%对像_方向%, %左下%
/ O! f9 {; N4 j7 G( i9 T妖城在线论坛        Char.SetData(_MePtr, %对像_原名%, "宠物满档制造者");    --%对像_原名%
7 Z1 b  {# c. o8 W0 \# l, I魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
+ O2 [  U1 c/ q5 Z魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        bbs.mocwww.com& ~5 c5 Z" U4 i. c
        if (Char.SetTalkedEvent(nil, "PetMake_Talked", _MePtr) < 0) then
. R9 e1 G) e6 ~; _! D—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                print("PetMake_Talked 注册事件失败。");魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表- Z3 V) }! O7 [; k' |5 P
                return false;
% s: ]  p' R( K0 n+ h3 d! E5 W1 Q魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        end妖城在线论坛$ a$ Q5 y- q: D& O* H1 d
       
- z0 Y5 A7 k2 A% g! ?7 T$ o魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        return true;
- G" z3 A) Z: g1 S妖城在线论坛end( K7 ]' T: s! x- P4 k3 x
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表/ w, o; c9 j* @- Z
function PetMake_Talked( _MePtr, _TalkPtr)
7 g. z! C0 n: V0 q) Lbbs.mocwww.com
4 e/ S! l4 I2 ?0 }3 h% L* ?—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        if(NLG.CheckInFront(_TalkPtr, _MePtr, 1) == false) then
& N; \; F1 B3 v8 @4 mbbs.mocwww.com                return ;: z7 T( h9 j, u" ~1 v* o0 s
        end
2 X4 m: {* m8 @% h# n* J  `—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート/ W9 M' t  a: {7 b. R7 j& v
        local PetIndex = Char.GetPetIndex(_TalkPtr, 0);
1 k: D5 i5 ~4 K魔力私服,最新魔力宝贝私服技术交流        if (PetIndex>0) then bbs.mocwww.com4 Z" |& m1 k/ U  g+ n
                for t = 0,4 do魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表1 S, p9 j+ l# ^3 e5 [$ o( Z, R
                        Pet.SetArtRank(PetIndex, t, Pet.FullArtRank(PetIndex, t));妖城在线论坛/ {; E0 z0 o7 `) z/ Q9 e" k
                end        妖城在线论坛( b% h% A( b$ v% ]" k3 l( n
                        妖城在线论坛( B$ H: ]5 L. l4 R+ Q
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート% ?6 S8 `4 R3 p5 L, L8 \
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート: w6 ]/ L- X; `! t# Q6 z4 L2 E8 Q
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表- D  d# f, K4 Q
                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;妖城在线论坛/ S8 G3 X: f) j9 a7 F/ O
                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        妖城在线论坛& l8 v/ `$ y6 c! x# z2 S# s7 R
       
9 l# J* l, j( |- J- i, e3 h魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_体力%, CurVital);
" q$ R/ T! N" k: `2 Y8 C0 W魔力私服,最新魔力宝贝私服技术交流                Char.SetData(PetIndex, %对象_力量%, CurStr);魔力私服,最新魔力宝贝私服技术交流: s: f/ m* d( R4 E* `
                Char.SetData(PetIndex, %对象_强度%, CurTough);魔力私服,最新魔力宝贝私服技术交流" Z( V& ?: {) X. y2 f6 B) ]% j  q8 r
                Char.SetData(PetIndex, %对象_速度%, CurQuick);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート* p# K) K) ]0 o, F. Z; T5 D5 U2 \
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);
' D# m  f9 C  s% e8 {魔力私服,最新魔力宝贝私服技术交流
0 v/ |3 F; E$ t) d7 k魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        else
: Q: ^) @) Y2 @2 gbbs.mocwww.com        end魔力私服,最新魔力宝贝私服技术交流/ Y; C7 H' |9 A, H5 A4 e$ H, d

& `$ I+ t4 ~: {2 g+ F% p! ?bbs.mocwww.com        return ;魔力私服,最新魔力宝贝私服技术交流2 }% H$ u3 _: x5 j
end9 q# Y# K7 `' x& m5 G

2 j* b+ A1 J8 M, P8 `1 ][ 本帖最后由 法兰CD兔 于 2018-11-14 22:13 编辑 ]

TOP

托管到框架了么?upchar一下?

TOP

回复 沙发 的帖子

if (M__PetMake == nil) then妖城在线论坛8 {, V2 Q" N" P3 u9 q$ m- ~
                M__PetMake = NL.CreateNpc("./data/lua/test/PetMake.lua", "PetMake_Init");
' y1 g! a! W, [; v3 P. J魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                NLG.UpChar(M__PetMake);& W4 ?. G" X: _1 e
        end. ]7 r. a8 h1 O( E% h& L
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート  V+ M$ o- J/ D6 p2 Y: F* V# I6 V
是这个吗?init里面的,写了的魔力私服,最新魔力宝贝私服技术交流1 F' f+ v8 M" G0 u1 f; f& s/ @
而且我之前没写妖城在线论坛* n9 d* ^/ a  v3 O9 ]+ [( B

9 R2 \# |  c1 Y) Z                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート$ i- Q3 Z1 d3 w2 t% C! k7 ^, v
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;
0 h: G4 d6 g, U) c8 Y% E妖城在线论坛                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;
9 Y. G5 B. w) f" R3 M魔力私服,最新魔力宝贝私服技术交流                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
7 |& Z4 M8 n8 L妖城在线论坛                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        魔力私服,最新魔力宝贝私服技术交流. J5 C) a; ~/ Q- Q
        
! D* I4 w* ]. u4 ~" B+ G+ j  K妖城在线论坛                Char.SetData(PetIndex, %对象_体力%, CurVital);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート! C4 u# y  s/ b1 `
                Char.SetData(PetIndex, %对象_力量%, CurStr);
2 `1 @9 z8 P8 I  q! i妖城在线论坛                Char.SetData(PetIndex, %对象_强度%, CurTough);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表* {8 A. E0 Y# m! z
                Char.SetData(PetIndex, %对象_速度%, CurQuick);bbs.mocwww.com% }4 d% \; h+ j$ L3 ~
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);
  Y( e* W) i9 B8 |$ {  ?7 D0 W妖城在线论坛妖城在线论坛. G. P# N; n6 b- u
这一段的时候,npc是有的

TOP

不明真相~~NPC在过程中消失么?

TOP

回复 地板 的帖子

不是滴,就是重启服务器,这个npc就不会在地图中出现,我把最后加的代码删掉,再重启服务器,npc就又出现了,所以我猜测是—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート: S8 c5 s7 p6 z: Y6 b6 C
                Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 0.21);
4 ?: A; K; X0 {8 [) Z$ Q8 A: O3 v                Char.SetData(PetIndex, %对象_力量%, ( Pet.GetArtRank(PetIndex, 1) + 2 ) * 0.21);妖城在线论坛$ n$ p5 |. U  q
                Char.SetData(PetIndex, %对象_强度%, ( Pet.GetArtRank(PetIndex, 2) + 2 ) * 0.21);5 z1 F! R! p1 C3 x7 D7 w2 A
                Char.SetData(PetIndex, %对象_速度%, ( Pet.GetArtRank(PetIndex, 3) + 2 ) * 0.21);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート4 w( r$ G$ n4 g5 X" _. p
                Char.SetData(PetIndex, %对象_魔法%, ( Pet.GetArtRank(PetIndex, 4) + 2 ) * 0.21);bbs.mocwww.com" a; U& z# G6 A& L. u/ ?9 C9 r
这一段代码出错bbs.mocwww.com( `/ A. M$ F* U/ D( \+ P/ T6 G. n

, a1 [0 ^9 N$ Y/ a6 R. V6 ^魔力私服,最新魔力宝贝私服技术交流可是想了半天也觉得没问题……
) z3 x3 U/ ^; E2 h- b4 i魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表bbs.mocwww.com0 z# F% q/ X9 c, k! X% R
[ 本帖最后由 法兰CD兔 于 2018-11-15 10:42 编辑 ]

TOP

纠正一下,都应该是*21,不是*0.21

TOP

自己琢磨明白了……

TOP

哪里问题啊???分享出来哈!!

TOP

回复 8楼 的帖子

还不完善,Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 21);
; S9 U# R2 V8 `1 O5 B—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート这里的21应该是他的初始bp,比如一般的宠物是20,小使魔是30,但我还没研究出来怎么根据宠物的指针读取它的enemy编号,然后读取数据库里的这个数据,还有包括怎么选择宠物,不是仅仅改第一栏,等我研究完了再说吧bbs.mocwww.com3 K: `/ P: v0 B5 H! k! H
" h* L4 x( b7 \( A' U. |0 X
而且退一万步说,这个东西真的没啥技术含量,发出来太献丑了

TOP

我有制作过自定义档次的,想几档就几档,全部自己决定,不过,我忘了放哪里了。

TOP

回复 10楼 的帖子

大佬牛X,这玩意儿自己研究挺有意思的,我再研究研究,也搞成这样的

TOP

有一个问题啊,宠物的成长值是靠PPT值确定的,而只修改一级属性,但宠物的成长还是按原档次来的,需要生成PPT值再保存才行。

TOP

发新话题