发新话题
打印

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

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

如下,这是我写的一个简单的制造满档宠物的npc妖城在线论坛- ]: o! |( k. ]- C- e2 S
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表8 _' X* X3 t# v. N5 ^1 r( M
目的在于把宠物栏第1栏的1级宠物改成满档bbs.mocwww.com9 T3 x, U# {, }9 L+ J
具体的非1级宠物错误判定、随机档分配什么的就先暂时略去不表,还有以后再考虑添加选择改哪个宠物啥的0 Y3 `# |0 X- M$ `/ c1 E, n
) q& ?/ s7 d% E& f
现在最大的问题在于为什么我这么做完以后,创建不出npc呢?魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表+ k7 g7 T) U! p; r
init已经做了,最开始没有改宠物bp那一段,只有改档数的时候是能创建出来的,也能成功修改宠物的档数,但加了改bp的那一部分后,就没有npc被创建出来了,求助
- A- e% r, p( ^# W% H妖城在线论坛
& s  ]; E: D7 o+ D+ L: N魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表function PetMake_Init( _MePtr )—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート( y+ i* j4 g+ @1 ?- X9 Y

$ K) W* k( V& @. U% A/ z        Char.SetData(_MePtr, %对像_形象%, 101025);    --%对像_形象%
2 Y/ r2 `0 e% j1 I        Char.SetData(_MePtr, %对像_原形%, 101025);    --%对像_原形%
4 W4 u8 p: ?$ Z' _7 ]—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        Char.SetData(_MePtr, %对像_地图类型%, 0);     --%对像_地图类型%—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート# O& R* w# s1 m  L; M1 x$ t
        Char.SetData(_MePtr, %对像_地图%, 25000);      --%对像_地图%
# p: _& ]; J4 B* ^妖城在线论坛        Char.SetData(_MePtr, %对像_X%, 23);          --%对像_X%
, p: n4 V# M6 M* b  t) n4 ^$ r5 F! H: cbbs.mocwww.com        Char.SetData(_MePtr, %对像_Y%, 15);           --%对像_Y%—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート1 A/ R, ?0 z) E5 p# G; k0 V
        Char.SetData(_MePtr, %对像_方向%, %左下%);    --%对像_方向%, %左下%
3 _5 c# }: H* _3 ^0 W0 mbbs.mocwww.com        Char.SetData(_MePtr, %对像_原名%, "宠物满档制造者");    --%对像_原名%bbs.mocwww.com7 p7 M7 T# o  u5 S# `7 F9 K3 `

6 Y0 b, l. Z$ N8 v6 e! w, Cbbs.mocwww.com       
# Z4 O: E3 H  I, a妖城在线论坛        if (Char.SetTalkedEvent(nil, "PetMake_Talked", _MePtr) < 0) then
/ d% A2 a! k/ @- B# x魔力私服,最新魔力宝贝私服技术交流                print("PetMake_Talked 注册事件失败。");
3 d' D% K# o* Z魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                return false;魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表, W/ ~6 d5 k7 t0 x, v6 O
        end
7 W" l; A. F% \" E% V          [  K# c) ?( z6 y: F5 q4 q) p7 n
        return true;
7 j$ D/ H. J' m8 ^3 M. K$ o魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表end—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート9 {+ u1 O9 q; K; w  `: k6 q

( n0 _$ Z  b/ R0 N7 B  c妖城在线论坛function PetMake_Talked( _MePtr, _TalkPtr)
' G1 Q1 d# M% N0 R# Dbbs.mocwww.combbs.mocwww.com! R( [9 }2 P3 H. ~. [2 ^
        if(NLG.CheckInFront(_TalkPtr, _MePtr, 1) == false) then妖城在线论坛  _" L; Z2 l7 m0 W2 s" H5 ?
                return ;
. I- F: ^' U9 ]4 g' h0 fbbs.mocwww.com        end
8 n3 g+ m/ g2 h! e7 O! n( v. ?魔力私服,最新魔力宝贝私服技术交流       
4 s! {& e. }" G, f2 _) g* N, M妖城在线论坛        local PetIndex = Char.GetPetIndex(_TalkPtr, 0);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表6 p, [2 D6 s. K2 ~5 V
        if (PetIndex>0) then # u5 I. U6 i* \: I! V
                for t = 0,4 do魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表+ ~- w9 K& ]9 ^% [. q5 R
                        Pet.SetArtRank(PetIndex, t, Pet.FullArtRank(PetIndex, t));妖城在线论坛& j6 F0 l& r! P( [; B/ d3 T" b0 F4 f
                end       
: q. s  a- q4 C8 z; [魔力私服,最新魔力宝贝私服技术交流                        魔力私服,最新魔力宝贝私服技术交流; k9 J4 k& W" a
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;魔力私服,最新魔力宝贝私服技术交流9 ]- a( Z; j: M- a6 u* N
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表+ {1 V  y# Z% L6 U$ w6 k1 a) S. B
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;
( {2 y! z: [4 z8 }4 S妖城在线论坛                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
2 e) ^' ?) r& Q' t( K3 {+ f5 G魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;       
. N8 @5 `5 t( U) r" h$ r       
% }, H( S* W& d  h1 W4 w0 _bbs.mocwww.com                Char.SetData(PetIndex, %对象_体力%, CurVital);
+ ?6 E( d' @% t0 L/ P6 z. w                Char.SetData(PetIndex, %对象_力量%, CurStr);
+ Y: o7 y( w( z5 @- l" y妖城在线论坛                Char.SetData(PetIndex, %对象_强度%, CurTough);
  V. X4 w) o4 W% ~( I魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_速度%, CurQuick);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート0 l* z9 P8 a7 c7 X; W) ?
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);
8 H6 d+ D- c" \" Z) J3 sbbs.mocwww.com! p/ j6 T. M$ o( z! ~1 i  g
        else 魔力私服,最新魔力宝贝私服技术交流+ H( r' n2 V( F
        end—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート: m/ G, k9 Z) V; @
+ O) w7 G! F- L  j: q- h
        return ;
/ y3 [  T4 p* j" H- s( Mendbbs.mocwww.com, M' w9 w9 q' h/ Z+ o

/ z0 a) X1 t% }4 u0 [—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート[ 本帖最后由 法兰CD兔 于 2018-11-14 22:13 编辑 ]

TOP

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

TOP

回复 沙发 的帖子

if (M__PetMake == nil) then魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表9 ^4 M5 [1 S, v; U# w. J; H& R
                M__PetMake = NL.CreateNpc("./data/lua/test/PetMake.lua", "PetMake_Init");
' Y: L. j" G4 jbbs.mocwww.com                NLG.UpChar(M__PetMake);妖城在线论坛1 ^  `: Q4 w4 ]3 Y5 S3 n
        end
# ]- N2 R5 ?1 v* P—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート
# ~: ~" f+ O# K% B- I! b+ b魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表是这个吗?init里面的,写了的
2 V: t% D9 v7 g* H1 ]; r妖城在线论坛而且我之前没写bbs.mocwww.com: X2 c: Z* l6 _& ?  H0 \. ~, E7 v

: a. A. K# A- J. J; Z2 }5 Pbbs.mocwww.com                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;
" n6 `# T+ P& [$ e                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;
. z7 K1 J, r: J3 U0 o; B                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;. Y7 S$ U* U- d3 p9 X. l
                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
' i: B0 o2 J8 M/ U5 u- E$ r( _妖城在线论坛                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        
; c: _: \$ d) @' `8 ?7 R        bbs.mocwww.com) y/ ~; E3 D2 O9 E$ |) m% I' }
                Char.SetData(PetIndex, %对象_体力%, CurVital);魔力私服,最新魔力宝贝私服技术交流) \/ z2 B: o% P) o% f/ z! b- n
                Char.SetData(PetIndex, %对象_力量%, CurStr);
' k6 m1 c& C- ]+ @. A. {# w妖城在线论坛                Char.SetData(PetIndex, %对象_强度%, CurTough);
& R- ]/ s2 x9 t' S. W魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_速度%, CurQuick);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート! H# [. i3 r8 B% H/ u$ m" q5 A
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート0 ]8 p8 C5 S" e7 d' p

# n3 y0 m) o: T3 W9 @0 s( N这一段的时候,npc是有的

TOP

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

TOP

回复 地板 的帖子

不是滴,就是重启服务器,这个npc就不会在地图中出现,我把最后加的代码删掉,再重启服务器,npc就又出现了,所以我猜测是
+ n- u4 c- k( S8 S—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 0.21);
1 Q) x6 [" ^. |2 ~; A: j7 O+ \3 {魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_力量%, ( Pet.GetArtRank(PetIndex, 1) + 2 ) * 0.21);0 g, J# K& Y8 Y
                Char.SetData(PetIndex, %对象_强度%, ( Pet.GetArtRank(PetIndex, 2) + 2 ) * 0.21);妖城在线论坛6 x0 q. K5 R$ s; z8 d9 t$ l
                Char.SetData(PetIndex, %对象_速度%, ( Pet.GetArtRank(PetIndex, 3) + 2 ) * 0.21);魔力私服,最新魔力宝贝私服技术交流$ ^( K* `& [' e0 d
                Char.SetData(PetIndex, %对象_魔法%, ( Pet.GetArtRank(PetIndex, 4) + 2 ) * 0.21);
  R( X# U) q* N  I—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート这一段代码出错魔力私服,最新魔力宝贝私服技术交流6 G. `/ e: \7 {+ E; k. e

& W$ y: t: S  Q, _! ~魔力私服,最新魔力宝贝私服技术交流可是想了半天也觉得没问题……魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表; e$ C9 p# {5 n% o0 @  Q/ E

7 S+ q6 G9 A( U, A$ t2 }  h[ 本帖最后由 法兰CD兔 于 2018-11-15 10:42 编辑 ]

TOP

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

TOP

自己琢磨明白了……

TOP

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

TOP

回复 8楼 的帖子

还不完善,Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 21);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表3 w6 o: d, {9 c: n2 j
这里的21应该是他的初始bp,比如一般的宠物是20,小使魔是30,但我还没研究出来怎么根据宠物的指针读取它的enemy编号,然后读取数据库里的这个数据,还有包括怎么选择宠物,不是仅仅改第一栏,等我研究完了再说吧
1 z, j3 r+ S' V0 ]2 g) `/ Y妖城在线论坛bbs.mocwww.com, G3 e- g, U* D4 k; F
而且退一万步说,这个东西真的没啥技术含量,发出来太献丑了

TOP

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

TOP

回复 10楼 的帖子

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

TOP

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

TOP

发新话题