发新话题
打印

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

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

如下,这是我写的一个简单的制造满档宠物的npc
: T, B+ U$ c1 S( v9 J! Z* a% b—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート
) s; X+ x$ _3 z—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート目的在于把宠物栏第1栏的1级宠物改成满档" c! f% }6 S* z$ v9 V7 L% t2 G8 `
具体的非1级宠物错误判定、随机档分配什么的就先暂时略去不表,还有以后再考虑添加选择改哪个宠物啥的
4 F) ~) L8 o5 x4 v" _魔力私服,最新魔力宝贝私服技术交流$ V7 G( |+ `& L, c7 W5 i9 W
现在最大的问题在于为什么我这么做完以后,创建不出npc呢?
: Q+ `" V3 T; [—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートinit已经做了,最开始没有改宠物bp那一段,只有改档数的时候是能创建出来的,也能成功修改宠物的档数,但加了改bp的那一部分后,就没有npc被创建出来了,求助
( Y/ q1 I% v: p* M5 [4 q魔力私服,最新魔力宝贝私服技术交流—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート1 _& I! \, A9 U6 x3 {9 ^
function PetMake_Init( _MePtr )
8 G# l- J' m! w0 q8 Q% j魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
; p, _* v% j3 @: j魔力私服,最新魔力宝贝私服技术交流        Char.SetData(_MePtr, %对像_形象%, 101025);    --%对像_形象%妖城在线论坛: f$ w$ ?7 h0 V8 I0 ?: J! u
        Char.SetData(_MePtr, %对像_原形%, 101025);    --%对像_原形%
# N9 f5 B3 N) N6 ?  l魔力私服,最新魔力宝贝私服技术交流        Char.SetData(_MePtr, %对像_地图类型%, 0);     --%对像_地图类型%1 z; j9 M( T+ n0 I- k) _
        Char.SetData(_MePtr, %对像_地图%, 25000);      --%对像_地图%
9 c4 K' g) v; h6 v- S1 @' f—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        Char.SetData(_MePtr, %对像_X%, 23);          --%对像_X%7 h* \- ^* a- ]5 h. B$ o, z( z
        Char.SetData(_MePtr, %对像_Y%, 15);           --%对像_Y%
) D4 n$ q+ P4 {8 p: H! K8 c& [$ z        Char.SetData(_MePtr, %对像_方向%, %左下%);    --%对像_方向%, %左下%
$ l9 N3 J! \" b( c, f2 P: y        Char.SetData(_MePtr, %对像_原名%, "宠物满档制造者");    --%对像_原名%—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート- a6 M. |9 Y; k1 ]3 `! N$ V1 j& C/ z
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表# d( c3 }3 Q, n# X
        魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表' F4 K. t  @3 Q+ f/ M1 B$ n
        if (Char.SetTalkedEvent(nil, "PetMake_Talked", _MePtr) < 0) thenbbs.mocwww.com( X% c4 ~5 d/ d, K' K- K
                print("PetMake_Talked 注册事件失败。");
4 V2 Q6 u9 W5 r/ |8 P- l魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                return false;( F# i8 V& j( z" w- O
        end
( ^  P9 T+ K8 a( H; {魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表       
1 X& B# l8 l0 q6 J2 `6 \- @. I魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        return true;
& I  n, n1 c( {3 k5 E魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表endbbs.mocwww.com$ e$ ]$ {* c# F' [: D

" t* o: c* O1 W/ k& ?) e7 i魔力私服,最新魔力宝贝私服技术交流function PetMake_Talked( _MePtr, _TalkPtr)—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート; E6 |1 d, P( v/ m) z
bbs.mocwww.com4 a& d1 `) @/ ~, t. M5 q
        if(NLG.CheckInFront(_TalkPtr, _MePtr, 1) == false) then
: x$ y5 b: d- G, C+ K$ ibbs.mocwww.com                return ;bbs.mocwww.com0 w* w3 Z+ b/ i* p
        end 妖城在线论坛3 M  E: K  H( H1 h* P
        1 E3 a/ |; a# {& M, R+ b9 u
        local PetIndex = Char.GetPetIndex(_TalkPtr, 0);
* w# X( ?# D" T6 q7 a妖城在线论坛        if (PetIndex>0) then 魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表# q, k2 U) m" g+ R' I  S5 s$ b, n
                for t = 0,4 do
7 w: h; N2 D; ]" G8 A3 V魔力私服,最新魔力宝贝私服技术交流                        Pet.SetArtRank(PetIndex, t, Pet.FullArtRank(PetIndex, t));
" f7 ^% P( [0 ?, D6 Z5 a' I2 P# Obbs.mocwww.com                end       
9 f" o+ q5 C; L$ k; y: O  U魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                        —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート3 A  @* j1 Z) k. V2 M' w2 u4 `6 r3 r( e
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;$ w9 h* Y) f0 G2 i
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;bbs.mocwww.com4 F- v8 E8 ]* d2 v* X. }
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表5 m. u! j/ N# W. i- @/ `* w9 o
                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
  Q  f* p% S" l( x3 u7 N* u6 Rbbs.mocwww.com                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;       
* s# i" w" d- H1 [. }! ~0 W妖城在线论坛        妖城在线论坛7 v2 A; p$ G; d
                Char.SetData(PetIndex, %对象_体力%, CurVital);7 x: y$ F: s; y* M
                Char.SetData(PetIndex, %对象_力量%, CurStr);bbs.mocwww.com) U; N3 |1 O  R6 a6 t  D" S
                Char.SetData(PetIndex, %对象_强度%, CurTough);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート4 v! v  ]3 H) s! ^9 F2 R, U
                Char.SetData(PetIndex, %对象_速度%, CurQuick);
- |  S% e* p: M2 I魔力私服,最新魔力宝贝私服技术交流                Char.SetData(PetIndex, %对象_魔法%, CurMagic);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表# c5 `' ]$ _: V* s  X1 U
妖城在线论坛. ?3 Q" A' @+ Y& h! x4 ?  G- l
        else
5 f) x6 \: s! M" {+ s5 T' Z2 Lbbs.mocwww.com        end
2 \; j# z# }7 y6 c/ y* P4 q* ~魔力私服,最新魔力宝贝私服技术交流魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表5 M; v! e' C+ |, B& S6 }5 S
        return ;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート+ o1 [' b- S' Y* i; d3 E: i
end
* m0 e6 a5 p' {4 ^! H0 Y: V妖城在线论坛: K# Z0 O* `4 L1 B* q5 R# \
[ 本帖最后由 法兰CD兔 于 2018-11-14 22:13 编辑 ]

TOP

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

TOP

回复 沙发 的帖子

if (M__PetMake == nil) then
8 y( n4 L% c2 \* I3 |7 a, ~* {bbs.mocwww.com                M__PetMake = NL.CreateNpc("./data/lua/test/PetMake.lua", "PetMake_Init");1 ~, r/ M  D  \* o+ y9 H9 S
                NLG.UpChar(M__PetMake);
' h2 X7 D7 E; L! a4 Z: c" Z- [- i* v4 ^魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        end—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート7 S3 q( B7 _' |8 Y) ~4 D6 E

- s/ x+ E) I4 T. n是这个吗?init里面的,写了的
- G; U, U5 j+ U, a& c妖城在线论坛而且我之前没写9 s: N7 d; ^) Q
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート7 X; ~) J: [4 u: Y/ H4 q
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;
& s! l% o% W+ a                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;
3 j, ^  ?- x) n- Q0 @魔力私服,最新魔力宝贝私服技术交流                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;4 L+ `3 c; _6 E; g5 o
                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表2 V/ L6 k+ b7 j% e0 I& q3 u
                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        
& Y" T5 V1 Z$ a$ x" M; u1 F/ l8 j        
* p- s! W) h* u4 \—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_体力%, CurVital);妖城在线论坛0 X, M% i8 @% C
                Char.SetData(PetIndex, %对象_力量%, CurStr);
2 h% B" t$ b6 ?! S妖城在线论坛                Char.SetData(PetIndex, %对象_强度%, CurTough);
1 K0 f' h. j- l: j% \bbs.mocwww.com                Char.SetData(PetIndex, %对象_速度%, CurQuick);魔力私服,最新魔力宝贝私服技术交流1 E( R/ ^  k# S: S
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);
9 ^! r+ R( c! f. y0 w5 w—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート
) I4 o" l2 j$ @" b: T; G: O—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート这一段的时候,npc是有的

TOP

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

TOP

回复 地板 的帖子

不是滴,就是重启服务器,这个npc就不会在地图中出现,我把最后加的代码删掉,再重启服务器,npc就又出现了,所以我猜测是
  y! b0 y! d( D8 N/ v) K! ]bbs.mocwww.com                Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 0.21);0 [6 K1 R& ?; N3 @1 V% R2 `
                Char.SetData(PetIndex, %对象_力量%, ( Pet.GetArtRank(PetIndex, 1) + 2 ) * 0.21);
& z5 Y' N" U& R6 O—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_强度%, ( Pet.GetArtRank(PetIndex, 2) + 2 ) * 0.21);妖城在线论坛, r+ ~" F! B# J+ @2 @
                Char.SetData(PetIndex, %对象_速度%, ( Pet.GetArtRank(PetIndex, 3) + 2 ) * 0.21);
& ?: e' H8 ~3 S+ v3 W魔力私服,最新魔力宝贝私服技术交流                Char.SetData(PetIndex, %对象_魔法%, ( Pet.GetArtRank(PetIndex, 4) + 2 ) * 0.21);
' W+ L, }  X0 F: ]1 d0 U妖城在线论坛这一段代码出错魔力私服,最新魔力宝贝私服技术交流) m3 e3 W  m  s. w8 R

: {) d- a% u1 [- c& P7 v6 pbbs.mocwww.com可是想了半天也觉得没问题……bbs.mocwww.com" y+ [8 q7 n, M* K% Y

9 T& T$ k, b; F# ]魔力私服,最新魔力宝贝私服技术交流[ 本帖最后由 法兰CD兔 于 2018-11-15 10:42 编辑 ]

TOP

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

TOP

自己琢磨明白了……

TOP

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

TOP

回复 8楼 的帖子

还不完善,Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 21);
* @- |, Y  V" ?' g魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表这里的21应该是他的初始bp,比如一般的宠物是20,小使魔是30,但我还没研究出来怎么根据宠物的指针读取它的enemy编号,然后读取数据库里的这个数据,还有包括怎么选择宠物,不是仅仅改第一栏,等我研究完了再说吧
! N$ S3 p  ]) T3 q& w. c魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
7 h. h% A8 _. T  D4 u6 Q魔力私服,最新魔力宝贝私服技术交流而且退一万步说,这个东西真的没啥技术含量,发出来太献丑了

TOP

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

TOP

回复 10楼 的帖子

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

TOP

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

TOP

发新话题