发新话题
打印

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

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

如下,这是我写的一个简单的制造满档宠物的npc—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート: H( T, }( H; \' g
魔力私服,最新魔力宝贝私服技术交流5 Q( V0 j3 d" K5 z
目的在于把宠物栏第1栏的1级宠物改成满档
5 S6 E. T: @- [+ O/ @0 d—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート具体的非1级宠物错误判定、随机档分配什么的就先暂时略去不表,还有以后再考虑添加选择改哪个宠物啥的bbs.mocwww.com2 V0 A& Q2 u- B0 v' P
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート' K9 P; x# s5 A+ y1 G
现在最大的问题在于为什么我这么做完以后,创建不出npc呢?妖城在线论坛2 p$ m; t+ `8 s; S
init已经做了,最开始没有改宠物bp那一段,只有改档数的时候是能创建出来的,也能成功修改宠物的档数,但加了改bp的那一部分后,就没有npc被创建出来了,求助
- m' \% s: c: C, W魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
/ y7 M( E' K" c8 X5 Vbbs.mocwww.comfunction PetMake_Init( _MePtr )
  ]  c7 f9 f- D5 ~( nbbs.mocwww.com2 T: R# [/ W4 I, {, }' z4 O; D
        Char.SetData(_MePtr, %对像_形象%, 101025);    --%对像_形象%bbs.mocwww.com, x- E. X/ s  H+ S% }3 e
        Char.SetData(_MePtr, %对像_原形%, 101025);    --%对像_原形%魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表1 J9 T& D' v0 s
        Char.SetData(_MePtr, %对像_地图类型%, 0);     --%对像_地图类型%妖城在线论坛/ R8 q/ F4 p3 y% U: O- ]
        Char.SetData(_MePtr, %对像_地图%, 25000);      --%对像_地图%
+ [2 b# j- @/ X) \. n2 B7 b  B& v妖城在线论坛        Char.SetData(_MePtr, %对像_X%, 23);          --%对像_X%妖城在线论坛" g- r0 y9 x3 i* R/ Z3 g$ c
        Char.SetData(_MePtr, %对像_Y%, 15);           --%对像_Y%
$ K- [, R5 c1 `& W$ E  a魔力私服,最新魔力宝贝私服技术交流        Char.SetData(_MePtr, %对像_方向%, %左下%);    --%对像_方向%, %左下%
, ^- C& o3 F: l. [8 I魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        Char.SetData(_MePtr, %对像_原名%, "宠物满档制造者");    --%对像_原名%
2 R1 ^, _6 M+ {9 {% @$ ^- |妖城在线论坛魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表9 M$ f0 e' l5 e( s$ M" C( n  O
        魔力私服,最新魔力宝贝私服技术交流! h9 ]% K3 D+ N+ S9 Y2 v
        if (Char.SetTalkedEvent(nil, "PetMake_Talked", _MePtr) < 0) then
. L7 t/ [) u) i—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                print("PetMake_Talked 注册事件失败。");魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表, c% J2 d, J! G! p; z- o
                return false;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート5 R5 C$ y) Y- R0 N; z8 L
        end
, {/ s9 T6 t% T! i" V1 ubbs.mocwww.com       
7 m: R( _& c! a/ _# h妖城在线论坛        return true;
9 K: G9 G! M0 A5 E—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートend—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート9 o* P. P8 o1 p9 @3 \

& O( B- I, p' S( U  e! t: K5 n+ ~—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートfunction PetMake_Talked( _MePtr, _TalkPtr)—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート% m0 E; Q7 z0 e6 Y) f

+ L) p1 N. s8 F! I5 V6 J6 }7 rbbs.mocwww.com        if(NLG.CheckInFront(_TalkPtr, _MePtr, 1) == false) then魔力私服,最新魔力宝贝私服技术交流/ p' |: m2 T; i7 N. |6 w
                return ;
) A) N* B1 b% s  ~  p3 I魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        end 魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表+ W# |! a7 v" @( c) n0 z% M
        魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表5 x- o7 b& O2 K$ u* G. T4 S
        local PetIndex = Char.GetPetIndex(_TalkPtr, 0);魔力私服,最新魔力宝贝私服技术交流9 Y4 u" K; M  `: V8 w0 n  l
        if (PetIndex>0) then
1 u/ F" b" z/ w+ }% v魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                for t = 0,4 do
0 V0 p0 o' w4 e魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                        Pet.SetArtRank(PetIndex, t, Pet.FullArtRank(PetIndex, t));) [4 `0 x# i  }& r' V" k1 E3 f
                end        —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート3 V# X' c6 v) D; o
                       
8 ^* l( |5 @* @' x7 y, M—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;4 s& n. t3 d& J; D& L7 B; e
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;妖城在线论坛. O  U6 T  ]$ V5 d/ l$ o* e  K. f
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;
8 z& H8 j4 K" `  g: p妖城在线论坛                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
$ n0 ~1 N! d' v; Y5 h$ |                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        : w; |% U" d+ d: p  q3 c
       
2 V, L2 r: R% b: o妖城在线论坛                Char.SetData(PetIndex, %对象_体力%, CurVital);bbs.mocwww.com, j. s! C/ D4 B' }$ p5 `6 B# D7 k
                Char.SetData(PetIndex, %对象_力量%, CurStr);bbs.mocwww.com, Y: c( v' a; M% R* h- s6 h4 D
                Char.SetData(PetIndex, %对象_强度%, CurTough);妖城在线论坛" v. I! h! }/ Q/ h. G) F
                Char.SetData(PetIndex, %对象_速度%, CurQuick);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表/ _  K, Z' ]- _5 N6 v6 e# H
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);
. G( \9 z9 _  S魔力私服,最新魔力宝贝私服技术交流
/ A) ~7 b) V( p0 y; Y—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        else —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート+ \- _6 G) x. [+ s
        end
4 s( t; F. x3 @bbs.mocwww.com
. c3 j) F$ O: f  q) N7 Y) {bbs.mocwww.com        return ;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート2 ]" e/ C3 P3 ^, Y7 o
end—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート8 E" |2 u9 X% Z, n: i
bbs.mocwww.com+ N  P* R& h% V8 g/ n
[ 本帖最后由 法兰CD兔 于 2018-11-14 22:13 编辑 ]

TOP

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

TOP

回复 沙发 的帖子

if (M__PetMake == nil) thenbbs.mocwww.com3 c7 ~, \- O- y$ f. G$ v
                M__PetMake = NL.CreateNpc("./data/lua/test/PetMake.lua", "PetMake_Init");魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表( m7 f# v  A) k# c
                NLG.UpChar(M__PetMake);
% @: P3 z( ~1 e. y6 K        end妖城在线论坛5 x' S3 G2 a8 m2 k5 X: i4 B

8 ?7 o4 P; M, @魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表是这个吗?init里面的,写了的
: J) b, W9 F2 w+ I9 w6 |* `# Y魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表而且我之前没写—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート0 P- H+ D) H$ }
魔力私服,最新魔力宝贝私服技术交流  E  n" [! R, g4 k  K; B: y" t2 K
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;1 {+ J' g; ?1 Q
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表" {* b) s4 c2 N" Q7 R: `) v
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;
& X6 D  p! ~; Z' H  O7 K8 C—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表- k  {- u* M) G, U
                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        
$ O! k8 b8 f3 k5 z% N. v魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        魔力私服,最新魔力宝贝私服技术交流6 I5 _3 R  I+ ]: n1 I+ O  @
                Char.SetData(PetIndex, %对象_体力%, CurVital);
6 ?3 m9 S+ g. y2 e& r5 abbs.mocwww.com                Char.SetData(PetIndex, %对象_力量%, CurStr);
: G4 f5 S# U2 r6 x3 |妖城在线论坛                Char.SetData(PetIndex, %对象_强度%, CurTough);妖城在线论坛/ l5 h/ W' L: A/ S
                Char.SetData(PetIndex, %对象_速度%, CurQuick);
( n8 P& Y3 @) d—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_魔法%, CurMagic);# W, ?1 N7 y4 ]3 r- @: E: v

8 V6 o/ `- a* e7 a1 wbbs.mocwww.com这一段的时候,npc是有的

TOP

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

TOP

回复 地板 的帖子

不是滴,就是重启服务器,这个npc就不会在地图中出现,我把最后加的代码删掉,再重启服务器,npc就又出现了,所以我猜测是
0 |8 p/ P3 x6 \! k妖城在线论坛                Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 0.21);妖城在线论坛# W* d) P( ^% Z
                Char.SetData(PetIndex, %对象_力量%, ( Pet.GetArtRank(PetIndex, 1) + 2 ) * 0.21);4 L7 v  ^, D  U  \8 I* I) j
                Char.SetData(PetIndex, %对象_强度%, ( Pet.GetArtRank(PetIndex, 2) + 2 ) * 0.21);
7 a0 Q8 w8 e0 @( M—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_速度%, ( Pet.GetArtRank(PetIndex, 3) + 2 ) * 0.21);
. {& e7 \4 e% P, X5 I2 D—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_魔法%, ( Pet.GetArtRank(PetIndex, 4) + 2 ) * 0.21);
' T" ]3 L; m* u/ `" j( x6 Z这一段代码出错
1 T, u9 T9 u' C: ]: y" \—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート
, @( Z  F$ [" tbbs.mocwww.com可是想了半天也觉得没问题……妖城在线论坛; b% p! h  w& j( i

, N" O* @. }! I+ S+ ~$ U; W[ 本帖最后由 法兰CD兔 于 2018-11-15 10:42 编辑 ]

TOP

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

TOP

自己琢磨明白了……

TOP

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

TOP

回复 8楼 的帖子

还不完善,Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 21);妖城在线论坛& }/ [% q9 O  ^+ a
这里的21应该是他的初始bp,比如一般的宠物是20,小使魔是30,但我还没研究出来怎么根据宠物的指针读取它的enemy编号,然后读取数据库里的这个数据,还有包括怎么选择宠物,不是仅仅改第一栏,等我研究完了再说吧魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表- d$ Q- C4 m4 M& K: s
- t* n0 _) e8 n! w7 i& L
而且退一万步说,这个东西真的没啥技术含量,发出来太献丑了

TOP

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

TOP

回复 10楼 的帖子

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

TOP

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

TOP

发新话题