发新话题
打印

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

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

如下,这是我写的一个简单的制造满档宠物的npc
! J' y1 J7 N& g  Abbs.mocwww.com! v5 S0 ~- f2 V- J6 c, k6 g$ ^. ~
目的在于把宠物栏第1栏的1级宠物改成满档—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート1 K) v$ Z. D) G3 y# S; I5 ^
具体的非1级宠物错误判定、随机档分配什么的就先暂时略去不表,还有以后再考虑添加选择改哪个宠物啥的$ K; L0 I! B* u) K- H/ R

/ y1 `; t) S% C" ~, d6 B0 E魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表现在最大的问题在于为什么我这么做完以后,创建不出npc呢?
' Z9 m1 V2 I$ i# l1 t3 Kinit已经做了,最开始没有改宠物bp那一段,只有改档数的时候是能创建出来的,也能成功修改宠物的档数,但加了改bp的那一部分后,就没有npc被创建出来了,求助魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表/ x+ Y8 l* y* V

- x- _/ I& Y  C/ n—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートfunction PetMake_Init( _MePtr )
7 l2 Q9 e# g# u% V1 ]7 |* n魔力私服,最新魔力宝贝私服技术交流
) O4 m9 f; A. ?& o6 {, d魔力私服,最新魔力宝贝私服技术交流        Char.SetData(_MePtr, %对像_形象%, 101025);    --%对像_形象%—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート2 @3 P: |5 C6 }+ z+ H
        Char.SetData(_MePtr, %对像_原形%, 101025);    --%对像_原形%
  |1 F3 H# y  z; W—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        Char.SetData(_MePtr, %对像_地图类型%, 0);     --%对像_地图类型%妖城在线论坛0 V# t4 _" I$ J5 `: |& I
        Char.SetData(_MePtr, %对像_地图%, 25000);      --%对像_地图%
) ~! u! ^5 w0 C- V5 t3 s4 d" N6 F—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        Char.SetData(_MePtr, %对像_X%, 23);          --%对像_X%魔力私服,最新魔力宝贝私服技术交流- D: L% g7 z) K, ~0 K( D
        Char.SetData(_MePtr, %对像_Y%, 15);           --%对像_Y%bbs.mocwww.com, K" U. r; ~+ E$ q+ n8 c$ e
        Char.SetData(_MePtr, %对像_方向%, %左下%);    --%对像_方向%, %左下%
, d& {; \& }& @4 W) w% y( r$ c' r妖城在线论坛        Char.SetData(_MePtr, %对像_原名%, "宠物满档制造者");    --%对像_原名%魔力私服,最新魔力宝贝私服技术交流3 q# T1 U$ _+ W* w3 n6 n
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表3 y9 d7 H5 i2 L5 ^# y8 _, v7 S
        - {% _$ a9 N: _, |+ X0 |
        if (Char.SetTalkedEvent(nil, "PetMake_Talked", _MePtr) < 0) then—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート2 a7 U" L4 N* o6 K2 `5 N- c7 \
                print("PetMake_Talked 注册事件失败。");
* T3 v5 Y8 a& @3 ^& o魔力私服,最新魔力宝贝私服技术交流                return false;妖城在线论坛, C( q+ |, h" B6 X7 k% P
        end
( g' M+ ]" E' Q3 s+ n* V$ g魔力私服,最新魔力宝贝私服技术交流        妖城在线论坛! ~& ?  `* c5 q
        return true;妖城在线论坛+ J7 x# J$ I, L3 s$ \
end
; t: K; O4 _" p' i7 Cbbs.mocwww.com
" l( @( c$ M1 ^( j' [! X; m8 A$ C( y妖城在线论坛function PetMake_Talked( _MePtr, _TalkPtr)* Y" G* ]- r# h0 ]8 j2 o

& h5 z3 q: F) v* ^, N魔力私服,最新魔力宝贝私服技术交流        if(NLG.CheckInFront(_TalkPtr, _MePtr, 1) == false) then
5 u6 p- ^( s) x6 m4 T1 G1 X6 p# G—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                return ;
0 e1 i* B: E; h魔力私服,最新魔力宝贝私服技术交流        end 魔力私服,最新魔力宝贝私服技术交流0 `; r3 C% G- s! Q3 [6 g) R) `2 u) Z
        魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表/ Q4 _1 f4 l. t" A# f  ]
        local PetIndex = Char.GetPetIndex(_TalkPtr, 0);
, t1 |' r# e8 y4 a: W) S# w魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        if (PetIndex>0) then
6 d5 L( Q- e, S! D魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                for t = 0,4 do
+ }5 x$ ]0 r" g) ~                        Pet.SetArtRank(PetIndex, t, Pet.FullArtRank(PetIndex, t));
0 o2 {# w  ]; H; T5 Q3 A                end       
$ p+ n  G& p# P8 a9 Q4 g9 `& q                       
, X5 K. ?, F8 d魔力私服,最新魔力宝贝私服技术交流                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;
* x- C- G; u' c: e8 }& B* l# e—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;魔力私服,最新魔力宝贝私服技术交流% P( N0 A) U- ]: \8 _
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;妖城在线论坛" O+ F) b; J! q) U; f
                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
* u8 J1 J' ~- ^8 F2 h, y1 q: V魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表3 [' G- c$ ]. Z& ]" @
       
4 y8 m3 e; s" `+ h0 P. O' `2 y' p/ T                Char.SetData(PetIndex, %对象_体力%, CurVital);* I8 L  K6 B3 H% d* B
                Char.SetData(PetIndex, %对象_力量%, CurStr);bbs.mocwww.com, r9 {2 c& {/ a) i
                Char.SetData(PetIndex, %对象_强度%, CurTough);bbs.mocwww.com, x% V% X; `, _5 h
                Char.SetData(PetIndex, %对象_速度%, CurQuick);魔力私服,最新魔力宝贝私服技术交流  b7 _- s3 P( Z( H' ?& k
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);
6 ]: ?/ f4 ?  D8 J9 w5 ~) z6 ]( [魔力私服,最新魔力宝贝私服技术交流bbs.mocwww.com2 {- F- P! E9 y2 [! j2 b
        else
# B6 w0 @# @& ]7 V" x" d4 Z& |! k        end魔力私服,最新魔力宝贝私服技术交流+ l  j" u+ `' P& F* N

# l7 H2 L* A0 H* \妖城在线论坛        return ;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート' p& _* o4 u, c/ J
end
% m5 v$ U" u! Q" Q6 R. lbbs.mocwww.com! D5 f7 u9 x+ C: F4 A
[ 本帖最后由 法兰CD兔 于 2018-11-14 22:13 编辑 ]

TOP

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

TOP

回复 沙发 的帖子

if (M__PetMake == nil) then妖城在线论坛; ?3 N% A9 \. G3 J
                M__PetMake = NL.CreateNpc("./data/lua/test/PetMake.lua", "PetMake_Init");$ g$ J1 x/ n% {. p( K( w3 B
                NLG.UpChar(M__PetMake);
4 V. _0 ]* C% B, t% |' E魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        end
5 ~0 f* y* q, k7 J; O魔力私服,最新魔力宝贝私服技术交流
# m% }! x# P+ I; H. D魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表是这个吗?init里面的,写了的
+ T6 x3 v; Y2 Q/ h1 ^1 I妖城在线论坛而且我之前没写
! }. r" z  U- y- Kbbs.mocwww.com魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表  A# \0 G; }% `% D: N# D
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;妖城在线论坛5 t: F+ I( l& o) M, T
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;
( _) X2 T5 [/ k4 K" P- ?) E5 q( w                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;
2 s9 v# s$ x  k4 ^' `/ }                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;bbs.mocwww.com8 w9 E4 D9 S$ h2 g) N  ]: C
                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        
- s8 c* B6 L! N: T7 v6 v        
( N  A, G6 @2 X, h1 w/ b妖城在线论坛                Char.SetData(PetIndex, %对象_体力%, CurVital);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表) \: y. J! D/ C) X& M4 o5 g* B, |
                Char.SetData(PetIndex, %对象_力量%, CurStr);
3 B; ^+ T- }* w& X4 h1 ^1 c7 f' n妖城在线论坛                Char.SetData(PetIndex, %对象_强度%, CurTough);
& V4 W' [3 j- t: L  i3 s                Char.SetData(PetIndex, %对象_速度%, CurQuick);4 a, W- U- A' K' e0 |' V
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);妖城在线论坛$ N+ I) J2 g8 ?" G# L
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表  a% f7 @3 e) i; V6 B1 s
这一段的时候,npc是有的

TOP

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

TOP

回复 地板 的帖子

不是滴,就是重启服务器,这个npc就不会在地图中出现,我把最后加的代码删掉,再重启服务器,npc就又出现了,所以我猜测是
6 }; e1 }/ b/ `3 _3 X) P$ `魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 0.21);
1 P" }5 A1 F0 V( J! W( |, c魔力私服,最新魔力宝贝私服技术交流                Char.SetData(PetIndex, %对象_力量%, ( Pet.GetArtRank(PetIndex, 1) + 2 ) * 0.21);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表1 A( E+ A, a) k* C( ?; ^
                Char.SetData(PetIndex, %对象_强度%, ( Pet.GetArtRank(PetIndex, 2) + 2 ) * 0.21);
+ c- T0 K. U+ L& K' E—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_速度%, ( Pet.GetArtRank(PetIndex, 3) + 2 ) * 0.21);
! D4 A* N& N$ G! d7 W妖城在线论坛                Char.SetData(PetIndex, %对象_魔法%, ( Pet.GetArtRank(PetIndex, 4) + 2 ) * 0.21);bbs.mocwww.com+ ~+ A0 T$ b# |( O& X& Q$ L
这一段代码出错
* T7 I- x" @& u* j4 Y5 c* @7 l魔力私服,最新魔力宝贝私服技术交流. E; s# l+ u+ j' k
可是想了半天也觉得没问题……魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表$ g8 u/ I+ p6 w

" `6 H7 d2 _( k. d  x0 Tbbs.mocwww.com[ 本帖最后由 法兰CD兔 于 2018-11-15 10:42 编辑 ]

TOP

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

TOP

自己琢磨明白了……

TOP

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

TOP

回复 8楼 的帖子

还不完善,Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 21);
) I9 H7 O  S; ]魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表这里的21应该是他的初始bp,比如一般的宠物是20,小使魔是30,但我还没研究出来怎么根据宠物的指针读取它的enemy编号,然后读取数据库里的这个数据,还有包括怎么选择宠物,不是仅仅改第一栏,等我研究完了再说吧魔力私服,最新魔力宝贝私服技术交流. k0 ~5 C, I* h
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表) g; R0 B' ^  z% B, J
而且退一万步说,这个东西真的没啥技术含量,发出来太献丑了

TOP

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

TOP

回复 10楼 的帖子

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

TOP

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

TOP

发新话题