发新话题
打印

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

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

如下,这是我写的一个简单的制造满档宠物的npc
" `* P( k2 w0 D6 `) E魔力私服,最新魔力宝贝私服技术交流bbs.mocwww.com+ n5 W, c- u: E+ [! N3 h
目的在于把宠物栏第1栏的1级宠物改成满档魔力私服,最新魔力宝贝私服技术交流( Q2 ]% x% `1 a4 n: a4 V
具体的非1级宠物错误判定、随机档分配什么的就先暂时略去不表,还有以后再考虑添加选择改哪个宠物啥的
2 ]! s/ J9 r0 m" @% Q妖城在线论坛
7 H1 A  i5 N/ \" ^魔力私服,最新魔力宝贝私服技术交流现在最大的问题在于为什么我这么做完以后,创建不出npc呢?妖城在线论坛% X" x: s: }& ?2 I* t3 v0 |
init已经做了,最开始没有改宠物bp那一段,只有改档数的时候是能创建出来的,也能成功修改宠物的档数,但加了改bp的那一部分后,就没有npc被创建出来了,求助妖城在线论坛. F' ^4 l7 n! G

, Q; N: B$ C7 {5 {# U魔力私服,最新魔力宝贝私服技术交流function PetMake_Init( _MePtr )魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表7 I1 O3 T. s, l2 [! O
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート- `/ p6 M& V- U" M. s. r) }' H
        Char.SetData(_MePtr, %对像_形象%, 101025);    --%对像_形象%魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表8 M8 ~$ ^4 b7 r* L
        Char.SetData(_MePtr, %对像_原形%, 101025);    --%对像_原形%
) L" e7 t5 Y) V! }; h. w+ Q4 u魔力私服,最新魔力宝贝私服技术交流        Char.SetData(_MePtr, %对像_地图类型%, 0);     --%对像_地图类型%
7 F: S* l/ R! _% U魔力私服,最新魔力宝贝私服技术交流        Char.SetData(_MePtr, %对像_地图%, 25000);      --%对像_地图%
( P$ ?* ?9 \' ^  Vbbs.mocwww.com        Char.SetData(_MePtr, %对像_X%, 23);          --%对像_X%—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート0 S5 M3 |1 Z: {8 h  k. \0 f% p
        Char.SetData(_MePtr, %对像_Y%, 15);           --%对像_Y%妖城在线论坛; w  n- w+ e) T6 U: s: p
        Char.SetData(_MePtr, %对像_方向%, %左下%);    --%对像_方向%, %左下%妖城在线论坛7 e, s8 F+ h3 q& W* }  V+ c
        Char.SetData(_MePtr, %对像_原名%, "宠物满档制造者");    --%对像_原名%
# |" I6 \" `) [' T! jbbs.mocwww.com. q& R8 b% x$ K& P
       
- O/ @& `- n" i) w9 R4 `# g- I        if (Char.SetTalkedEvent(nil, "PetMake_Talked", _MePtr) < 0) then
: i/ k5 v6 h6 H7 n                print("PetMake_Talked 注册事件失败。");
* p# S4 ^; L: f( obbs.mocwww.com                return false;魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表( {1 `( U, c  I/ {/ ^2 b+ {" Z
        end
+ O$ m  a4 Y. n/ I+ _+ x$ X—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        / W/ D, C6 R4 S! V; ?" d2 `4 x
        return true;
* j! f7 |* B: B% u" n* t- J, K魔力私服,最新魔力宝贝私服技术交流end
( ?& ^9 K/ g9 ^1 w! T+ G3 ?- I' V—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート妖城在线论坛+ v" o) u/ J  X  g3 y# ^
function PetMake_Talked( _MePtr, _TalkPtr)—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート$ y: Y( ~/ {: a1 i( \# \. b7 M7 Y
魔力私服,最新魔力宝贝私服技术交流, b) [! K0 L. D) L& s, {+ j
        if(NLG.CheckInFront(_TalkPtr, _MePtr, 1) == false) then
+ V- J  ]9 P; U4 }& j0 K- ?—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                return ;
6 W+ S; ~# ^* W妖城在线论坛        end
# T& I; l) l6 b! e5 j! a/ }% t" A魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        魔力私服,最新魔力宝贝私服技术交流4 ?1 z2 q8 X" U% X+ A, `( z. e
        local PetIndex = Char.GetPetIndex(_TalkPtr, 0);
0 u% O2 q* z+ t. _bbs.mocwww.com        if (PetIndex>0) then —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート% u9 O% X$ |% Z0 h) [
                for t = 0,4 do魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表) {. h, j9 a, N
                        Pet.SetArtRank(PetIndex, t, Pet.FullArtRank(PetIndex, t));
# T; j" z9 m( J/ t1 O魔力私服,最新魔力宝贝私服技术交流                end        8 z5 u, E* Q2 l+ y7 i
                        * Z, O; }2 }( o3 v5 ~
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;
7 J& C6 ~# `$ g2 Q# [6 L4 X—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;
( s4 `! L6 z! s/ {, w* r% ~3 C                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;
6 q8 Y* J# i! I+ L6 Y/ Z                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
8 }  I4 H  L. r$ r1 A4 o                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;       
8 f5 b7 Z7 C* S* M       
; u+ F7 b  J6 y% @! |: t1 L—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_体力%, CurVital);bbs.mocwww.com0 p  y' d! q5 B
                Char.SetData(PetIndex, %对象_力量%, CurStr);; B. O) n( D* ]* M7 x+ e& A7 a0 y
                Char.SetData(PetIndex, %对象_强度%, CurTough);
( k6 U6 ]2 Z8 {+ u2 R魔力私服,最新魔力宝贝私服技术交流                Char.SetData(PetIndex, %对象_速度%, CurQuick);
: I6 \* y: N  Obbs.mocwww.com                Char.SetData(PetIndex, %对象_魔法%, CurMagic);妖城在线论坛# N" a! L& A) n1 F

. e. E4 z  d) x1 X魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        else
  w7 B. r/ m5 G  W) ~魔力私服,最新魔力宝贝私服技术交流        end
* V/ O+ U* Q. P& X/ U妖城在线论坛魔力私服,最新魔力宝贝私服技术交流2 d$ F7 A! Y/ ]- Y, N. f' ^" ?& n
        return ;魔力私服,最新魔力宝贝私服技术交流8 |. o* [$ m" f9 |9 L) W
end—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート3 R, ^! I4 {& _% J. c# s9 e/ X
魔力私服,最新魔力宝贝私服技术交流0 v2 @1 t& X" _7 F1 ~- |% ~
[ 本帖最后由 法兰CD兔 于 2018-11-14 22:13 编辑 ]

TOP

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

TOP

回复 沙发 的帖子

if (M__PetMake == nil) then
" H: K. Q  y& R1 u$ s+ E# ]5 h0 L! ~, {( rbbs.mocwww.com                M__PetMake = NL.CreateNpc("./data/lua/test/PetMake.lua", "PetMake_Init");魔力私服,最新魔力宝贝私服技术交流0 v, I" p6 [4 V
                NLG.UpChar(M__PetMake);
  r% S, P$ j& N6 u0 X: ~0 i) Y魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        end
4 F. E. l: _6 N% T妖城在线论坛
- ^8 o$ p2 Q& v2 l) S! C是这个吗?init里面的,写了的—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート! L8 x" U! ^2 H9 p: @0 s/ Y+ e; z
而且我之前没写魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表& P) @4 Z! o. h) q$ Z, [( K, Q8 H

) V) e) Z, E. l  ?! Q+ j/ ~: S                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;
/ j" V2 b, L( H5 R0 v魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;
4 F& [( d2 d" W, ?bbs.mocwww.com                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;
8 c1 f( E2 K2 E妖城在线论坛                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
- H4 i7 e1 L3 ?, ^: D6 t魔力私服,最新魔力宝贝私服技术交流                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        
3 Z3 g. `. `5 c9 ?3 t. C( t妖城在线论坛        
( D4 n+ _1 [  [3 ^  n& R                Char.SetData(PetIndex, %对象_体力%, CurVital);bbs.mocwww.com/ g  l/ P8 L% v) l& F5 r
                Char.SetData(PetIndex, %对象_力量%, CurStr);" k" K, |4 i" Y
                Char.SetData(PetIndex, %对象_强度%, CurTough);
) m- Z3 y) r& j! e                Char.SetData(PetIndex, %对象_速度%, CurQuick);bbs.mocwww.com8 i2 G( i( t/ S7 B
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);妖城在线论坛2 x) T3 G! ~5 H0 n( M- {' I

" y* M* i, x; c* |1 d' @9 ?& c8 _0 q魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表这一段的时候,npc是有的

TOP

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

TOP

回复 地板 的帖子

不是滴,就是重启服务器,这个npc就不会在地图中出现,我把最后加的代码删掉,再重启服务器,npc就又出现了,所以我猜测是
  u& X4 _% f, K9 _1 d                Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 0.21);
7 `+ {2 z3 f' d; \- @—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_力量%, ( Pet.GetArtRank(PetIndex, 1) + 2 ) * 0.21);妖城在线论坛1 h6 X5 [' M  s1 U# G
                Char.SetData(PetIndex, %对象_强度%, ( Pet.GetArtRank(PetIndex, 2) + 2 ) * 0.21);
/ y" h  t( v/ w—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_速度%, ( Pet.GetArtRank(PetIndex, 3) + 2 ) * 0.21);
  F9 A" ~( [2 M3 ?魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_魔法%, ( Pet.GetArtRank(PetIndex, 4) + 2 ) * 0.21);
' O# \/ C3 R9 z/ r: P- E这一段代码出错bbs.mocwww.com, j$ a; R! X0 D4 z, j8 \

, E# y1 f# u) v( V; g" _5 D; [2 B8 B' _bbs.mocwww.com可是想了半天也觉得没问题……—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート1 r8 q" B/ F5 Q0 D% ?) \2 I

3 {3 f3 A# T3 n; ?! Z& S—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート[ 本帖最后由 法兰CD兔 于 2018-11-15 10:42 编辑 ]

TOP

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

TOP

自己琢磨明白了……

TOP

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

TOP

回复 8楼 的帖子

还不完善,Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 21);
2 }- I2 J" l. g妖城在线论坛这里的21应该是他的初始bp,比如一般的宠物是20,小使魔是30,但我还没研究出来怎么根据宠物的指针读取它的enemy编号,然后读取数据库里的这个数据,还有包括怎么选择宠物,不是仅仅改第一栏,等我研究完了再说吧
" p' q  a0 E7 I* w5 Q, i魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
4 j7 Q: o0 @* l* R6 v3 R# G魔力私服,最新魔力宝贝私服技术交流而且退一万步说,这个东西真的没啥技术含量,发出来太献丑了

TOP

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

TOP

回复 10楼 的帖子

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

TOP

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

TOP

发新话题