发新话题
打印

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

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

如下,这是我写的一个简单的制造满档宠物的npc
+ j1 J2 J+ }' n% W魔力私服,最新魔力宝贝私服技术交流
# n, J) r* m5 d3 U! d4 I* \& c' S: o—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート目的在于把宠物栏第1栏的1级宠物改成满档—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート6 w) t& H/ @3 s' Y) ^' n9 {
具体的非1级宠物错误判定、随机档分配什么的就先暂时略去不表,还有以后再考虑添加选择改哪个宠物啥的
# ?/ b9 z9 X* ]4 H+ m4 [bbs.mocwww.com9 g! u) d- u4 H7 n1 f: A; ]* P
现在最大的问题在于为什么我这么做完以后,创建不出npc呢?—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート/ ]' Z. I1 @, ?! o4 b4 K* g
init已经做了,最开始没有改宠物bp那一段,只有改档数的时候是能创建出来的,也能成功修改宠物的档数,但加了改bp的那一部分后,就没有npc被创建出来了,求助—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート  ~4 ?* h' R* x/ l8 m
) c. Z1 W% k1 P8 d: V/ ?; M: h
function PetMake_Init( _MePtr )
* t' A5 w2 n& g  a4 y* k" _0 z魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表妖城在线论坛5 i1 f1 G* z4 ]  }. l9 f9 @( F
        Char.SetData(_MePtr, %对像_形象%, 101025);    --%对像_形象%
: [0 N. A( v2 V! x* \" w. G8 F魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        Char.SetData(_MePtr, %对像_原形%, 101025);    --%对像_原形%
, {( H7 L0 U, p- G        Char.SetData(_MePtr, %对像_地图类型%, 0);     --%对像_地图类型%妖城在线论坛7 W/ U0 g& @, R2 z
        Char.SetData(_MePtr, %对像_地图%, 25000);      --%对像_地图%
' o7 U$ ]3 P- r/ z# u妖城在线论坛        Char.SetData(_MePtr, %对像_X%, 23);          --%对像_X%
# u7 x( S; n# Y2 {4 D—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        Char.SetData(_MePtr, %对像_Y%, 15);           --%对像_Y%bbs.mocwww.com) s$ L7 Y% k& a) n
        Char.SetData(_MePtr, %对像_方向%, %左下%);    --%对像_方向%, %左下%魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表& V+ t3 `, ?1 k; k. W
        Char.SetData(_MePtr, %对像_原名%, "宠物满档制造者");    --%对像_原名%魔力私服,最新魔力宝贝私服技术交流" L3 c% l- X! c; C$ W& Y

  {& t* Y$ Q% O/ O7 F! @2 f* L—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート       
- q3 J) x, [6 q5 F& _$ f. _7 C魔力私服,最新魔力宝贝私服技术交流        if (Char.SetTalkedEvent(nil, "PetMake_Talked", _MePtr) < 0) then魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表; J! v$ {4 e( m
                print("PetMake_Talked 注册事件失败。");bbs.mocwww.com& o3 p0 a& b0 i1 Q0 a1 d8 d) l& X
                return false;
' K/ T8 V" D/ A( w% N7 j. k, wbbs.mocwww.com        end
! P+ @. j7 h8 F0 U, [$ z        —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート4 C6 q2 X: D  F
        return true;魔力私服,最新魔力宝贝私服技术交流  t* V" c) H5 ?9 G; B8 ^; d
end妖城在线论坛+ q9 [" |8 O+ f& L

# n; ?4 M6 @8 ~3 A8 P* E/ |" ~' s魔力私服,最新魔力宝贝私服技术交流function PetMake_Talked( _MePtr, _TalkPtr)
' c9 k; m6 N* a: ~6 V妖城在线论坛魔力私服,最新魔力宝贝私服技术交流7 u9 o+ j2 i( m. E  f1 i
        if(NLG.CheckInFront(_TalkPtr, _MePtr, 1) == false) then
" R. E( D1 ~: A, f7 E魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                return ;bbs.mocwww.com  ?3 [; ]! U6 Y- F
        end - O! p+ y( }2 O& h. |' s5 S
       
1 `' A, @" Z7 C0 c. I' |6 ~魔力私服,最新魔力宝贝私服技术交流        local PetIndex = Char.GetPetIndex(_TalkPtr, 0);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表" F  K) z3 n' C4 q) s
        if (PetIndex>0) then
% D- x& O6 H# {) J8 O                for t = 0,4 do妖城在线论坛( _/ T2 s- C. I" a! x
                        Pet.SetArtRank(PetIndex, t, Pet.FullArtRank(PetIndex, t));
- i8 \" U  m& \—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                end       
) S* i% i" ?; o# g0 y                        bbs.mocwww.com( j1 M7 Q+ }4 G4 b
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;
- t- K: U2 s1 @* n/ Z' m, K魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;% O7 D; C) |+ y! D2 L( y# m* S+ y
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;
- F( a8 v0 r; ~* Q  \* ?% v8 B4 i魔力私服,最新魔力宝贝私服技术交流                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
) `: z2 W( [2 a, Xbbs.mocwww.com                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表# G- I) _7 q/ v) y+ [6 b. d
        ) p6 Z9 G; I3 n9 Y/ j4 g8 ?
                Char.SetData(PetIndex, %对象_体力%, CurVital);
- C7 X& b/ T# O$ r3 H& j魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_力量%, CurStr);魔力私服,最新魔力宝贝私服技术交流( C8 t3 W, c. o0 z* W
                Char.SetData(PetIndex, %对象_强度%, CurTough);
6 ]# \- o7 C9 M/ Y& }妖城在线论坛                Char.SetData(PetIndex, %对象_速度%, CurQuick);魔力私服,最新魔力宝贝私服技术交流3 S8 ]$ V5 i& o" x# e
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);
: U# j# J, O% c- V魔力私服,最新魔力宝贝私服技术交流
$ [' N4 [4 q- Z7 @( O—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        else
2 n/ G9 c% N$ B3 c1 p魔力私服,最新魔力宝贝私服技术交流        end
5 v( E3 x" Q" c6 e6 L' w, o$ qbbs.mocwww.com魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表  k" ^5 [' C  a1 V/ q
        return ;
: T- h$ v8 v% y( N) |. y魔力私服,最新魔力宝贝私服技术交流endbbs.mocwww.com9 |% q, @. b& i2 e6 _

4 t, D: p1 F5 {. B# l5 \. }+ p0 Tbbs.mocwww.com[ 本帖最后由 法兰CD兔 于 2018-11-14 22:13 编辑 ]

TOP

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

TOP

回复 沙发 的帖子

if (M__PetMake == nil) then
4 S8 o2 U4 P2 r8 P, u; e魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                M__PetMake = NL.CreateNpc("./data/lua/test/PetMake.lua", "PetMake_Init");
6 @7 |* l" V4 v魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                NLG.UpChar(M__PetMake);
1 N5 L. L8 G; |0 [, i# R妖城在线论坛        end—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート1 w2 ^+ O: h. o

. n, D6 V- u5 T( P* n5 e0 p. u: ybbs.mocwww.com是这个吗?init里面的,写了的
2 d& H9 {- M  `0 `/ C而且我之前没写
$ P8 n6 R- J. X% K# b5 v' \—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートbbs.mocwww.com$ R. v/ g0 ]% |  U( p
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;bbs.mocwww.com' t1 m. j$ c& N
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート0 B$ C7 f4 h% C
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表' X! Y5 d, Z0 n" U
                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
6 k# v: E& h2 N" Q& H—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        魔力私服,最新魔力宝贝私服技术交流9 W) S) |8 T% I6 X( d1 Q& I& W7 b
        
( C3 H' R( o; Z; a% l  W, I魔力私服,最新魔力宝贝私服技术交流                Char.SetData(PetIndex, %对象_体力%, CurVital);
0 u8 m* R$ s9 k# S+ d7 r6 V魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_力量%, CurStr);
! a; n1 U' a$ R魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_强度%, CurTough);
, g6 [" T% q! n9 a4 a# m7 V# l. A. Sbbs.mocwww.com                Char.SetData(PetIndex, %对象_速度%, CurQuick);3 @; [9 K9 b, l1 b3 i  C
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表; Q3 d' z+ y- Y- j0 T

8 W! y+ t. x# {; f  e# B7 C8 G9 c妖城在线论坛这一段的时候,npc是有的

TOP

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

TOP

回复 地板 的帖子

不是滴,就是重启服务器,这个npc就不会在地图中出现,我把最后加的代码删掉,再重启服务器,npc就又出现了,所以我猜测是妖城在线论坛% D" P# e2 y: }4 z# v2 {. |0 ^- A
                Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 0.21);
4 s* `. m% S3 t; s) xbbs.mocwww.com                Char.SetData(PetIndex, %对象_力量%, ( Pet.GetArtRank(PetIndex, 1) + 2 ) * 0.21);
5 `; p$ b  Z; }, D魔力私服,最新魔力宝贝私服技术交流                Char.SetData(PetIndex, %对象_强度%, ( Pet.GetArtRank(PetIndex, 2) + 2 ) * 0.21);
3 P4 o- a. }3 |2 u—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_速度%, ( Pet.GetArtRank(PetIndex, 3) + 2 ) * 0.21);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート, R) R0 J4 ]2 k+ a
                Char.SetData(PetIndex, %对象_魔法%, ( Pet.GetArtRank(PetIndex, 4) + 2 ) * 0.21);魔力私服,最新魔力宝贝私服技术交流! y: G5 j  d4 m6 X& B8 c
这一段代码出错
+ N) Y! U/ K4 m魔力私服,最新魔力宝贝私服技术交流—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート0 c& f1 ?8 H( a4 ]
可是想了半天也觉得没问题……
6 n0 I( o4 w- W, }) @6 Q7 Dbbs.mocwww.com妖城在线论坛4 @9 F# B  J/ x7 H- @1 m* Y" _% {
[ 本帖最后由 法兰CD兔 于 2018-11-15 10:42 编辑 ]

TOP

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

TOP

自己琢磨明白了……

TOP

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

TOP

回复 8楼 的帖子

还不完善,Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 21);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表) v- A7 \5 O4 d% O
这里的21应该是他的初始bp,比如一般的宠物是20,小使魔是30,但我还没研究出来怎么根据宠物的指针读取它的enemy编号,然后读取数据库里的这个数据,还有包括怎么选择宠物,不是仅仅改第一栏,等我研究完了再说吧
  v7 \1 s1 P4 r6 Z) N  H魔力私服,最新魔力宝贝私服技术交流
; |6 Q$ p  ]% |6 z8 Y2 v. @; L而且退一万步说,这个东西真的没啥技术含量,发出来太献丑了

TOP

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

TOP

回复 10楼 的帖子

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

TOP

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

TOP

发新话题