发新话题
打印

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

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

如下,这是我写的一个简单的制造满档宠物的npc
) z+ C- O0 P; t魔力私服,最新魔力宝贝私服技术交流
, s9 Z0 }8 b2 G—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート目的在于把宠物栏第1栏的1级宠物改成满档0 U7 p8 |0 t( t4 d
具体的非1级宠物错误判定、随机档分配什么的就先暂时略去不表,还有以后再考虑添加选择改哪个宠物啥的妖城在线论坛  _. s! E8 C, e5 J' w7 l

' N& j2 @/ G0 ^7 g魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表现在最大的问题在于为什么我这么做完以后,创建不出npc呢?bbs.mocwww.com0 P/ P" I& M6 ^6 X9 A; g/ P
init已经做了,最开始没有改宠物bp那一段,只有改档数的时候是能创建出来的,也能成功修改宠物的档数,但加了改bp的那一部分后,就没有npc被创建出来了,求助魔力私服,最新魔力宝贝私服技术交流& q/ A6 p5 K$ N7 q( B
魔力私服,最新魔力宝贝私服技术交流7 d" L. z) n9 F1 {
function PetMake_Init( _MePtr )
' s3 S/ _4 c) t8 |6 W5 K魔力私服,最新魔力宝贝私服技术交流妖城在线论坛6 k2 t( {6 b' a3 p- I- p
        Char.SetData(_MePtr, %对像_形象%, 101025);    --%对像_形象%魔力私服,最新魔力宝贝私服技术交流- i* H# D( n8 _$ c$ ^! Y) `8 E
        Char.SetData(_MePtr, %对像_原形%, 101025);    --%对像_原形%. p" G, A' H+ [
        Char.SetData(_MePtr, %对像_地图类型%, 0);     --%对像_地图类型%
; K0 K( |  Q% T6 [% m5 z9 p, C2 L/ J% [2 ?. Bbbs.mocwww.com        Char.SetData(_MePtr, %对像_地图%, 25000);      --%对像_地图%( I5 w  x4 L+ s$ S0 w  A
        Char.SetData(_MePtr, %对像_X%, 23);          --%对像_X%魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表. u% O! [. ^7 k" Z% ]  {* ^! i
        Char.SetData(_MePtr, %对像_Y%, 15);           --%对像_Y%
4 V/ S4 s+ |# K1 `魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        Char.SetData(_MePtr, %对像_方向%, %左下%);    --%对像_方向%, %左下%
! x5 Z' i5 g8 p8 o; S+ A4 Y% K—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        Char.SetData(_MePtr, %对像_原名%, "宠物满档制造者");    --%对像_原名%
& w) y2 ~( W- w/ R) h! e! Q魔力私服,最新魔力宝贝私服技术交流
6 m, m  k# U/ \, ]  _: i! ]bbs.mocwww.com       
9 f& l9 v/ p5 _妖城在线论坛        if (Char.SetTalkedEvent(nil, "PetMake_Talked", _MePtr) < 0) then妖城在线论坛# Y. r$ R) Z! q* b2 U
                print("PetMake_Talked 注册事件失败。");魔力私服,最新魔力宝贝私服技术交流" H* |8 s' |1 Z1 y, B- i
                return false;
% v" T5 u& A$ @/ E( T3 c3 A. ]        end
* I2 j. S9 o, f! ]. w6 G" |/ E       
! R3 a8 u0 O" y3 W" \' j4 F1 J+ Q3 J魔力私服,最新魔力宝贝私服技术交流        return true;
6 a* w* B) i% r  o魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表end
) Z: S4 d% h7 {3 i1 W* O2 J—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート
" s) S3 k6 L- P$ k* @; G魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表function PetMake_Talked( _MePtr, _TalkPtr)
! Y, N9 B1 J0 n3 i  J5 ~魔力私服,最新魔力宝贝私服技术交流
4 o3 _' @  _/ a( M% _6 z3 X        if(NLG.CheckInFront(_TalkPtr, _MePtr, 1) == false) thenbbs.mocwww.com  P) Z% U. R  X
                return ;魔力私服,最新魔力宝贝私服技术交流8 Y: a: m2 C* ]: b5 `2 M4 j" o
        end 魔力私服,最新魔力宝贝私服技术交流- c2 ~- o: J( v! d  G
       
& c. U2 y" Z. e4 @5 W魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        local PetIndex = Char.GetPetIndex(_TalkPtr, 0);
: M) q; |/ [- C3 }魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        if (PetIndex>0) then
6 T3 x. R8 e* B# {% t& E0 u, W魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                for t = 0,4 do& B2 I9 i1 t/ ?. N7 v* ^
                        Pet.SetArtRank(PetIndex, t, Pet.FullArtRank(PetIndex, t));
( `: M# W/ }/ |& H2 R( Z魔力私服,最新魔力宝贝私服技术交流                end        bbs.mocwww.com* g6 X9 `. V" H4 s+ w
                       
3 L: |( Y) X) Q- M9 e魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;魔力私服,最新魔力宝贝私服技术交流2 s. U$ }" q* O8 s  V
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;
8 O! I8 X0 I' |9 K6 B8 B! \妖城在线论坛                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;
% e8 p3 D9 [+ o% s2 O; X                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
3 j9 v9 x0 U) E% I; B9 h) ]bbs.mocwww.com                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        魔力私服,最新魔力宝贝私服技术交流2 i9 m8 t* i9 y+ N  O
        魔力私服,最新魔力宝贝私服技术交流5 c3 ^$ k5 a; W3 {9 i2 f8 O9 X
                Char.SetData(PetIndex, %对象_体力%, CurVital);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート0 D! ]: s: g* S. z; ~5 [
                Char.SetData(PetIndex, %对象_力量%, CurStr);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート# \7 Z' c: s/ \& R5 e
                Char.SetData(PetIndex, %对象_强度%, CurTough);
& z& r7 \) h& x. K( ?妖城在线论坛                Char.SetData(PetIndex, %对象_速度%, CurQuick);bbs.mocwww.com: c% `/ m4 e' e9 I# {7 j5 E
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);妖城在线论坛( P" f0 l* t4 j3 l8 H5 r

4 s1 j$ u9 T0 p: |/ _, O妖城在线论坛        else bbs.mocwww.com. x) N% n2 c; \6 G, x- }5 o
        end妖城在线论坛. g6 ?% H! v; ^: r) }$ L) b0 y

. u' v4 G* o0 s) ]7 ~( ]/ B1 |—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        return ;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート# D2 E% t* R, f; n, A5 [9 b- g1 L
end
  _5 E+ m" S2 X* n8 y# f' m0 b- j, v$ e  C! p. A
[ 本帖最后由 法兰CD兔 于 2018-11-14 22:13 编辑 ]

TOP

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

TOP

回复 沙发 的帖子

if (M__PetMake == nil) then—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート" _  s: F$ q& B4 j6 e
                M__PetMake = NL.CreateNpc("./data/lua/test/PetMake.lua", "PetMake_Init");
1 O5 \) k* I+ h* K—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                NLG.UpChar(M__PetMake);
3 P8 D7 b6 J+ p- T, X+ `5 V& G  [' }bbs.mocwww.com        end—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート: x; }! M9 P2 i1 _

; |5 G0 g) e" H; T$ s+ R% V, s% \妖城在线论坛是这个吗?init里面的,写了的bbs.mocwww.com4 K% K" H" W  p
而且我之前没写bbs.mocwww.com6 m$ L- B" P, }9 E3 S& i) L. Y/ P7 e

5 X( ?. r) `4 X. n# a, ?                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;魔力私服,最新魔力宝贝私服技术交流9 N: w, k& y$ ?. o( H. p* }4 f6 l
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;
! M3 ^" i* d5 D7 A. O                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート1 |  }: P) i. c6 K6 Y2 m8 w
                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表( D- E6 j$ ^% q/ N% t3 Y) G% x
                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        
0 W6 s# t4 H: V) G魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        
: y  z* z% ^* O0 b0 t妖城在线论坛                Char.SetData(PetIndex, %对象_体力%, CurVital);
+ r% g1 R; b5 d魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_力量%, CurStr);魔力私服,最新魔力宝贝私服技术交流) \( w( n, X" t( B0 k
                Char.SetData(PetIndex, %对象_强度%, CurTough);妖城在线论坛- z5 B/ C1 Y6 F: H1 Z8 _
                Char.SetData(PetIndex, %对象_速度%, CurQuick);
( J# m! e/ e& ^( A* X% W妖城在线论坛                Char.SetData(PetIndex, %对象_魔法%, CurMagic);
. w3 L- U# U# B8 y- @bbs.mocwww.com妖城在线论坛% e1 Q8 t4 M$ \) @" f* C6 |5 S
这一段的时候,npc是有的

TOP

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

TOP

回复 地板 的帖子

不是滴,就是重启服务器,这个npc就不会在地图中出现,我把最后加的代码删掉,再重启服务器,npc就又出现了,所以我猜测是—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート* ]# {# b+ R1 [# [4 q+ f; \$ u& Y
                Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 0.21);
1 J/ A. {" ]/ R+ m妖城在线论坛                Char.SetData(PetIndex, %对象_力量%, ( Pet.GetArtRank(PetIndex, 1) + 2 ) * 0.21);
0 d1 a6 w/ A3 W6 D) @—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_强度%, ( Pet.GetArtRank(PetIndex, 2) + 2 ) * 0.21);
  K5 s* f7 K6 \7 D* Z—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_速度%, ( Pet.GetArtRank(PetIndex, 3) + 2 ) * 0.21);
" t( B" l. C, `  @" J                Char.SetData(PetIndex, %对象_魔法%, ( Pet.GetArtRank(PetIndex, 4) + 2 ) * 0.21);' }  O4 o0 z- \# Y) }) C
这一段代码出错
# M( z3 |4 _. Y0 r; U: Obbs.mocwww.com魔力私服,最新魔力宝贝私服技术交流( s* q& x2 u8 A- J( [' P
可是想了半天也觉得没问题……
5 m5 n! V0 J7 @+ `" N3 l魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
; A4 {. H# t& Q. T- Z魔力私服,最新魔力宝贝私服技术交流[ 本帖最后由 法兰CD兔 于 2018-11-15 10:42 编辑 ]

TOP

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

TOP

自己琢磨明白了……

TOP

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

TOP

回复 8楼 的帖子

还不完善,Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 21);
( H4 F$ E! A8 T—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート这里的21应该是他的初始bp,比如一般的宠物是20,小使魔是30,但我还没研究出来怎么根据宠物的指针读取它的enemy编号,然后读取数据库里的这个数据,还有包括怎么选择宠物,不是仅仅改第一栏,等我研究完了再说吧
: a: \% I/ s! t0 J4 H' b6 C+ W
9 T* H. b! D0 I5 t% p9 b1 S—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート而且退一万步说,这个东西真的没啥技术含量,发出来太献丑了

TOP

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

TOP

回复 10楼 的帖子

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

TOP

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

TOP

发新话题