发新话题
打印

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

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

如下,这是我写的一个简单的制造满档宠物的npc
, v5 }6 V* ?8 |4 L" X魔力私服,最新魔力宝贝私服技术交流
, A; f# o, N% Q, obbs.mocwww.com目的在于把宠物栏第1栏的1级宠物改成满档
; p  l, Z& I8 ?. U' hbbs.mocwww.com具体的非1级宠物错误判定、随机档分配什么的就先暂时略去不表,还有以后再考虑添加选择改哪个宠物啥的—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート; h* b! }; k+ r, K3 N0 g2 k

: e/ z3 p& i2 h' [- R0 G现在最大的问题在于为什么我这么做完以后,创建不出npc呢?—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート. I! `' R& u) R2 g
init已经做了,最开始没有改宠物bp那一段,只有改档数的时候是能创建出来的,也能成功修改宠物的档数,但加了改bp的那一部分后,就没有npc被创建出来了,求助魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表8 L7 u4 o( \6 f  Z  |) b4 q

+ C1 S; ^% u% v3 E( j6 M0 C5 hfunction PetMake_Init( _MePtr )魔力私服,最新魔力宝贝私服技术交流% O( O" w: ^9 E

4 d1 p; Z5 Q* I) G3 V/ y; _; E7 Z魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        Char.SetData(_MePtr, %对像_形象%, 101025);    --%对像_形象%妖城在线论坛# v! j# i9 O2 p0 O8 L! P  x
        Char.SetData(_MePtr, %对像_原形%, 101025);    --%对像_原形%/ i* m! p, w+ P6 n& G
        Char.SetData(_MePtr, %对像_地图类型%, 0);     --%对像_地图类型%
0 A6 q" n! L8 h5 y) |4 l2 h  a        Char.SetData(_MePtr, %对像_地图%, 25000);      --%对像_地图%
, Q( R! I$ Z: p& g+ r* [妖城在线论坛        Char.SetData(_MePtr, %对像_X%, 23);          --%对像_X%
0 H  ^  _( a6 ~# \' K魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        Char.SetData(_MePtr, %对像_Y%, 15);           --%对像_Y%( Y( e& k5 A  O3 j: A+ u: T
        Char.SetData(_MePtr, %对像_方向%, %左下%);    --%对像_方向%, %左下%—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート+ Y+ r/ v" v( O6 q& W2 N1 Q
        Char.SetData(_MePtr, %对像_原名%, "宠物满档制造者");    --%对像_原名%魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表+ a4 I* p3 e1 U2 d

; `+ f) ~4 Y/ T+ s妖城在线论坛       
: e% W8 r" x- ~1 J魔力私服,最新魔力宝贝私服技术交流        if (Char.SetTalkedEvent(nil, "PetMake_Talked", _MePtr) < 0) then
, H# I: r) m. w( V魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                print("PetMake_Talked 注册事件失败。");
- |( A9 w$ [) R$ V0 J妖城在线论坛                return false;魔力私服,最新魔力宝贝私服技术交流! f; |- N! o. ~8 e
        end妖城在线论坛; Z$ @: @6 u8 {5 ~! k/ l& S  m: X5 c
        —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート  `" Q+ `" J+ w; Q1 H& E" g6 I
        return true;
& j2 F# P; E. O% ?4 L" A/ V( J魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表endbbs.mocwww.com, U. X/ d$ O6 |# d! g

0 u& z" u0 p$ i9 y* t. O$ X* z—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートfunction PetMake_Talked( _MePtr, _TalkPtr)—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート- J  X, P! l% A
魔力私服,最新魔力宝贝私服技术交流% {4 t; h& E- Y' n4 A
        if(NLG.CheckInFront(_TalkPtr, _MePtr, 1) == false) then
2 l/ }5 w1 z8 O0 z妖城在线论坛                return ;
3 q& d/ t" b0 L5 ]魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        end
; k, ~; `2 E- Ebbs.mocwww.com        魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表4 @9 U! Y- h2 \
        local PetIndex = Char.GetPetIndex(_TalkPtr, 0);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表! Y$ }% G: S& {8 |- G) f; e( a
        if (PetIndex>0) then
- }9 b9 e5 F0 m' j0 o* `, H魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                for t = 0,4 do—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート! o. Z6 ~5 }6 q6 B
                        Pet.SetArtRank(PetIndex, t, Pet.FullArtRank(PetIndex, t));
: n2 f  }+ s! T8 T: z魔力私服,最新魔力宝贝私服技术交流                end       
! p; p  S; I/ d' z2 u魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                        bbs.mocwww.com) X. c) r, f! t
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;魔力私服,最新魔力宝贝私服技术交流/ d1 H1 L: W. E" B
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表0 U; U- d% t! V2 [* `( `3 G$ y
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート! _4 E. |  b9 R. L7 g3 |
                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;妖城在线论坛3 j# S' G  l" Y  ^; n* s; ^8 `
                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;       
5 o4 b3 A6 s! i% S, F# J       
" K. d5 X. Q* p+ S: @8 \魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_体力%, CurVital);bbs.mocwww.com- l% {  y, W, s
                Char.SetData(PetIndex, %对象_力量%, CurStr);
! M% [7 [; u, s  T6 S' Z9 Y—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_强度%, CurTough);
: |+ u0 D& T7 X2 i/ r2 E                Char.SetData(PetIndex, %对象_速度%, CurQuick);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート% X0 s8 E* t) X" U4 e
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);
# S3 ?" ~& U. k: d1 X妖城在线论坛妖城在线论坛' C" Z+ z; \2 O$ Q
        else
$ i- o6 Y2 i0 W8 G4 O  I魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        end
8 W1 O7 b; y3 h5 }! y- l" L魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート" k0 z: K/ s/ _5 n4 g* A
        return ;妖城在线论坛& C" _$ S' q4 y1 t
end
5 N1 C; Z' s" J4 }& Y; p' S8 _—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート
  H$ L8 B- `/ J/ F魔力私服,最新魔力宝贝私服技术交流[ 本帖最后由 法兰CD兔 于 2018-11-14 22:13 编辑 ]

TOP

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

TOP

回复 沙发 的帖子

if (M__PetMake == nil) then魔力私服,最新魔力宝贝私服技术交流2 F- h9 P5 d# p; R5 j, G
                M__PetMake = NL.CreateNpc("./data/lua/test/PetMake.lua", "PetMake_Init");
. e" K3 @. `  l5 N魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                NLG.UpChar(M__PetMake);* ~" Q) D/ B9 O( h
        end
; a7 Z- X9 t" \; R魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
; f2 x+ c( |, I1 s) a! H' S5 ?是这个吗?init里面的,写了的bbs.mocwww.com4 ]+ w3 ^: B( g0 U
而且我之前没写—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート  Q. h: C0 C& o
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート* y1 ?$ r7 v7 i; t
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;妖城在线论坛' R8 H; ^3 }; |' z  Y
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;
: Y! U: N' S: x8 n, }+ A. `3 i魔力私服,最新魔力宝贝私服技术交流                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;
5 F. J, T5 z4 [$ ]& F7 T魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;魔力私服,最新魔力宝贝私服技术交流$ H7 T/ T$ {3 r3 I2 m
                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        
, A* S  z& z" `bbs.mocwww.com        4 P* o' {( y5 c
                Char.SetData(PetIndex, %对象_体力%, CurVital);
# P7 d3 F& G4 j                Char.SetData(PetIndex, %对象_力量%, CurStr);
8 B5 p& p& @! ~, S1 z5 P1 ]魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_强度%, CurTough);
5 N* m) `  p) Z; E) x3 qbbs.mocwww.com                Char.SetData(PetIndex, %对象_速度%, CurQuick);魔力私服,最新魔力宝贝私服技术交流5 H5 i2 k8 n( e% S/ N1 e! V
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表/ z2 k: P# i* Y3 D6 E. e
2 c0 V0 T5 I$ H0 i
这一段的时候,npc是有的

TOP

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

TOP

回复 地板 的帖子

不是滴,就是重启服务器,这个npc就不会在地图中出现,我把最后加的代码删掉,再重启服务器,npc就又出现了,所以我猜测是
5 v; H2 M# Z# ~- J0 l—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 0.21);
9 p" Z, X) a; b- J6 M# M* q4 V妖城在线论坛                Char.SetData(PetIndex, %对象_力量%, ( Pet.GetArtRank(PetIndex, 1) + 2 ) * 0.21);
8 G/ Z6 _# P0 O0 J! _/ P8 G2 X& o( @妖城在线论坛                Char.SetData(PetIndex, %对象_强度%, ( Pet.GetArtRank(PetIndex, 2) + 2 ) * 0.21);妖城在线论坛& {0 k/ \4 x3 r% v/ y
                Char.SetData(PetIndex, %对象_速度%, ( Pet.GetArtRank(PetIndex, 3) + 2 ) * 0.21);
2 V& k% |  E5 ^, b" W+ B$ _妖城在线论坛                Char.SetData(PetIndex, %对象_魔法%, ( Pet.GetArtRank(PetIndex, 4) + 2 ) * 0.21);魔力私服,最新魔力宝贝私服技术交流3 Z8 H8 P+ c" ~/ @; s# g+ }
这一段代码出错
9 R# r( q+ B+ c魔力私服,最新魔力宝贝私服技术交流
6 w' H5 Q5 ~2 |& J7 obbs.mocwww.com可是想了半天也觉得没问题……魔力私服,最新魔力宝贝私服技术交流$ w+ T; O( K, P* [' ]
妖城在线论坛2 |& l/ V. N; n. l4 h) k3 G
[ 本帖最后由 法兰CD兔 于 2018-11-15 10:42 编辑 ]

TOP

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

TOP

自己琢磨明白了……

TOP

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

TOP

回复 8楼 的帖子

还不完善,Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 21);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表- w5 c& M2 P: K, o
这里的21应该是他的初始bp,比如一般的宠物是20,小使魔是30,但我还没研究出来怎么根据宠物的指针读取它的enemy编号,然后读取数据库里的这个数据,还有包括怎么选择宠物,不是仅仅改第一栏,等我研究完了再说吧
& x3 b7 q4 \+ u9 U8 |. t0 C9 nbbs.mocwww.com
6 ^7 k, C' x2 @bbs.mocwww.com而且退一万步说,这个东西真的没啥技术含量,发出来太献丑了

TOP

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

TOP

回复 10楼 的帖子

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

TOP

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

TOP

发新话题