发新话题
打印

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

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

如下,这是我写的一个简单的制造满档宠物的npc
4 p, ]3 }0 u  t, ~
9 b3 T% k. f8 H2 g# F目的在于把宠物栏第1栏的1级宠物改成满档! e$ P" ^% I* \& v- W+ z+ c* ]' W1 {
具体的非1级宠物错误判定、随机档分配什么的就先暂时略去不表,还有以后再考虑添加选择改哪个宠物啥的
( x  f( W  v; @7 X—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート
/ s/ u% J& p4 i6 X- `魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表现在最大的问题在于为什么我这么做完以后,创建不出npc呢?
1 k; ]2 @: }. ?# W% V妖城在线论坛init已经做了,最开始没有改宠物bp那一段,只有改档数的时候是能创建出来的,也能成功修改宠物的档数,但加了改bp的那一部分后,就没有npc被创建出来了,求助; y) d, m4 M5 i. F* N; D

* I7 `; J6 q# Y' `% G4 N5 h8 g3 `7 Z$ tfunction PetMake_Init( _MePtr )魔力私服,最新魔力宝贝私服技术交流, n+ q3 W+ B% q7 |  S

* j+ F! Y1 d! [) F3 Dbbs.mocwww.com        Char.SetData(_MePtr, %对像_形象%, 101025);    --%对像_形象%
4 G4 H% v7 L+ Q# l: [7 z6 ]* S妖城在线论坛        Char.SetData(_MePtr, %对像_原形%, 101025);    --%对像_原形%魔力私服,最新魔力宝贝私服技术交流" W  s# c5 S3 K) I$ N( Y
        Char.SetData(_MePtr, %对像_地图类型%, 0);     --%对像_地图类型%魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表% e4 q; a$ A8 |, |0 B2 e# S
        Char.SetData(_MePtr, %对像_地图%, 25000);      --%对像_地图%
% R! N' }" E) _bbs.mocwww.com        Char.SetData(_MePtr, %对像_X%, 23);          --%对像_X%. x: T+ s0 g2 ^0 [5 O+ L
        Char.SetData(_MePtr, %对像_Y%, 15);           --%对像_Y%
' O: p2 K, [4 \/ S! \bbs.mocwww.com        Char.SetData(_MePtr, %对像_方向%, %左下%);    --%对像_方向%, %左下%—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート# l9 ]" x0 n7 o/ ?
        Char.SetData(_MePtr, %对像_原名%, "宠物满档制造者");    --%对像_原名%
$ m1 S0 h; H' y1 l% G9 E妖城在线论坛
. H; [6 b  w  y) w        —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート- P& h4 u( ]9 @6 N1 S
        if (Char.SetTalkedEvent(nil, "PetMake_Talked", _MePtr) < 0) then% u  A1 u  ?6 M2 H. T
                print("PetMake_Talked 注册事件失败。");
8 z$ f) H8 e1 u" F% J0 J, t( }魔力私服,最新魔力宝贝私服技术交流                return false;
- g4 N( q' M. y5 |$ i" G9 L魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        end
3 H. |, r4 }+ q9 O& B; b2 i1 }bbs.mocwww.com       
$ Z8 t$ B7 `2 E7 f% `4 d' ?' q魔力私服,最新魔力宝贝私服技术交流        return true;妖城在线论坛5 Z' m+ V; R8 S( N: E4 p. B
end
0 N% t4 C( Y& Fbbs.mocwww.com: y: U4 Q# Y& ]$ E: {- B# ?
function PetMake_Talked( _MePtr, _TalkPtr)
: p- c! L2 q& b妖城在线论坛
5 Y7 f+ C. B/ m6 qbbs.mocwww.com        if(NLG.CheckInFront(_TalkPtr, _MePtr, 1) == false) then
+ j, o+ k+ a  D9 M% ]9 K                return ;
' x3 f# [9 Z. P—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        end
0 p5 O% r; ^8 s9 w; l" p魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表       
" j: C$ e' W( a; s6 K—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        local PetIndex = Char.GetPetIndex(_TalkPtr, 0);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表9 R7 M" a! O) ?* `: E0 m  R; i
        if (PetIndex>0) then bbs.mocwww.com- o2 Q1 A! G/ `. z
                for t = 0,4 do
& ]  ]0 b( x0 z  G4 l魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                        Pet.SetArtRank(PetIndex, t, Pet.FullArtRank(PetIndex, t));—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート$ j% M# W9 |8 R7 J; _
                end       
5 _6 X1 z: `$ @2 g: ^, c. ^魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                        - ^' c# G) I5 z& D
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表3 P! `  p7 h3 @9 H0 `! ]
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;
7 G* V- _6 Q+ c& k1 B: Y. p2 h—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;bbs.mocwww.com$ l& y# v3 ?( w* j  Z
                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
8 e) s) k; {5 p. r4 B—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        bbs.mocwww.com% X! Y) ]9 a# S! j' C; ?5 D4 q1 J" W
        bbs.mocwww.com( A) C6 g2 X3 Y
                Char.SetData(PetIndex, %对象_体力%, CurVital);魔力私服,最新魔力宝贝私服技术交流- N% Y) r# Z. M
                Char.SetData(PetIndex, %对象_力量%, CurStr);妖城在线论坛0 G* z6 {. G$ I( C; `! O" f" H9 ]8 `
                Char.SetData(PetIndex, %对象_强度%, CurTough);
% I# x6 @- e* ]魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_速度%, CurQuick);
0 U+ F( w7 [! v6 R! r魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_魔法%, CurMagic);魔力私服,最新魔力宝贝私服技术交流9 q3 @! X5 C& Q. b5 c1 M3 Y

! u8 |8 @3 {( Z魔力私服,最新魔力宝贝私服技术交流        else 魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表4 p& T- {0 }. E0 ?4 i
        end
$ Q  \- x' c& @bbs.mocwww.com
5 ~+ z$ R) L  [+ ?5 H) U( W—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        return ;
: E1 a" l/ S: g: g妖城在线论坛end魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表& E  L8 y. M8 D3 f' b; g! h

- D$ f8 w- F# c: ^5 D+ i% |$ ~魔力私服,最新魔力宝贝私服技术交流[ 本帖最后由 法兰CD兔 于 2018-11-14 22:13 编辑 ]

TOP

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

TOP

回复 沙发 的帖子

if (M__PetMake == nil) then
6 ]2 }+ {9 c. V$ W# Q: n, a魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                M__PetMake = NL.CreateNpc("./data/lua/test/PetMake.lua", "PetMake_Init");; _: H9 b7 F$ @# F% F
                NLG.UpChar(M__PetMake);妖城在线论坛% Q7 |( h3 n, ~. F
        end
4 ]5 {. ?% {0 C- o# O7 y! f—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート
) X" H. ~( {9 Y—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート是这个吗?init里面的,写了的
5 e( G4 g1 e* n  h  m—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート而且我之前没写
2 u5 z" W8 K$ ]3 m6 \) g2 W# {—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートbbs.mocwww.com4 \4 H5 K0 O8 _1 a
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;' f1 y8 k* N' `! Q5 Z, ~9 O2 W: j
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;
  V; g- Z% @' q5 Q# |, u' o—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;
1 [2 }- C* E% b7 t$ o—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;魔力私服,最新魔力宝贝私服技术交流+ ?! [% [  u) C
                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート8 O, \, t. x4 m) g1 c8 Y0 S- ~/ z8 K
        
( ], m: c# m9 N& q                Char.SetData(PetIndex, %对象_体力%, CurVital);
# H, X  |* L, e; H/ z魔力私服,最新魔力宝贝私服技术交流                Char.SetData(PetIndex, %对象_力量%, CurStr);
4 X! J# |3 y7 A( C魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_强度%, CurTough);
. D" z0 l* |. M魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_速度%, CurQuick);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート, ~" [( V8 N8 x% k! |% l9 X, q
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);魔力私服,最新魔力宝贝私服技术交流0 V0 f; \% i9 }% c

' S+ r7 F/ G6 Q6 ]4 ^) p7 }—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート这一段的时候,npc是有的

TOP

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

TOP

回复 地板 的帖子

不是滴,就是重启服务器,这个npc就不会在地图中出现,我把最后加的代码删掉,再重启服务器,npc就又出现了,所以我猜测是—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート) u  \: T/ K, f. u$ u5 r0 R
                Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 0.21);
# d+ p0 j2 W+ i1 H1 M9 a—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_力量%, ( Pet.GetArtRank(PetIndex, 1) + 2 ) * 0.21);
) g4 G, B. k/ V( _1 [4 ^                Char.SetData(PetIndex, %对象_强度%, ( Pet.GetArtRank(PetIndex, 2) + 2 ) * 0.21);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート0 a( O5 ^& R( r
                Char.SetData(PetIndex, %对象_速度%, ( Pet.GetArtRank(PetIndex, 3) + 2 ) * 0.21);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表/ v  ~3 a, ~) A& E- m" w' e
                Char.SetData(PetIndex, %对象_魔法%, ( Pet.GetArtRank(PetIndex, 4) + 2 ) * 0.21);bbs.mocwww.com% s; a" E$ P. t; ]
这一段代码出错妖城在线论坛4 G1 H9 |1 l. y: Z1 r" W. z* m0 E- ?8 M: N

2 @) j* f% e5 d2 \妖城在线论坛可是想了半天也觉得没问题……
8 G( N# q# f! _- w$ s/ O
$ ~5 j2 d- Q; p# Z8 h1 M3 x( y[ 本帖最后由 法兰CD兔 于 2018-11-15 10:42 编辑 ]

TOP

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

TOP

自己琢磨明白了……

TOP

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

TOP

回复 8楼 的帖子

还不完善,Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 21);
+ C3 c5 z" J  L; N$ ?8 `! K+ F—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート这里的21应该是他的初始bp,比如一般的宠物是20,小使魔是30,但我还没研究出来怎么根据宠物的指针读取它的enemy编号,然后读取数据库里的这个数据,还有包括怎么选择宠物,不是仅仅改第一栏,等我研究完了再说吧妖城在线论坛( |- H  p8 g, Q# T. m8 t
妖城在线论坛& m/ |( c; ]& T) C: x- w
而且退一万步说,这个东西真的没啥技术含量,发出来太献丑了

TOP

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

TOP

回复 10楼 的帖子

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

TOP

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

TOP

发新话题