Board logo

标题: [提问] 写了一个简单的制造满档的npc,但进入游戏npc不创建出来 [打印本页]

作者: 法兰CD兔    时间: 2018-11-14 22:11     标题: 写了一个简单的制造满档的npc,但进入游戏npc不创建出来

如下,这是我写的一个简单的制造满档宠物的npc—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート  L7 t; ^) y! }# J3 h

* ^' L1 T6 D- ^( D7 _( G目的在于把宠物栏第1栏的1级宠物改成满档
9 O. L3 u5 {, M0 O/ O魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表具体的非1级宠物错误判定、随机档分配什么的就先暂时略去不表,还有以后再考虑添加选择改哪个宠物啥的
/ r% M3 q  K3 P5 }魔力私服,最新魔力宝贝私服技术交流
& ?2 i" q2 @& _1 V" c( J—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート现在最大的问题在于为什么我这么做完以后,创建不出npc呢?
6 v% I5 G  r9 h2 m2 D: T6 Pbbs.mocwww.cominit已经做了,最开始没有改宠物bp那一段,只有改档数的时候是能创建出来的,也能成功修改宠物的档数,但加了改bp的那一部分后,就没有npc被创建出来了,求助bbs.mocwww.com" u8 ^7 W) C$ z, E  Q

: _) U4 j/ ?6 m; h2 G6 R. m+ h—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートfunction PetMake_Init( _MePtr )—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート8 Z4 F$ h5 O7 c7 o

( g1 s9 |% m& h2 G魔力私服,最新魔力宝贝私服技术交流        Char.SetData(_MePtr, %对像_形象%, 101025);    --%对像_形象%
8 }) F# u# o) i妖城在线论坛        Char.SetData(_MePtr, %对像_原形%, 101025);    --%对像_原形%
3 ]5 T. X- s# o0 e1 n魔力私服,最新魔力宝贝私服技术交流        Char.SetData(_MePtr, %对像_地图类型%, 0);     --%对像_地图类型%) N0 d( e. B1 {8 y1 y! q" a
        Char.SetData(_MePtr, %对像_地图%, 25000);      --%对像_地图%魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表0 w7 |* k4 V' j2 q: Y, |
        Char.SetData(_MePtr, %对像_X%, 23);          --%对像_X%
: V5 g2 i: R; B/ m; A9 A% h7 qbbs.mocwww.com        Char.SetData(_MePtr, %对像_Y%, 15);           --%对像_Y%bbs.mocwww.com; e  `( P7 s, C4 T- w
        Char.SetData(_MePtr, %对像_方向%, %左下%);    --%对像_方向%, %左下%
' @$ c  [- K) z+ W* L8 y9 w% G9 Q—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        Char.SetData(_MePtr, %对像_原名%, "宠物满档制造者");    --%对像_原名%1 s$ p' T8 Z# N2 f0 `3 {0 r

3 R5 }- A' n$ _1 k       
% S1 U+ b4 Y8 T3 B        if (Char.SetTalkedEvent(nil, "PetMake_Talked", _MePtr) < 0) thenbbs.mocwww.com! c+ e, q" L6 w. d2 r
                print("PetMake_Talked 注册事件失败。");
# A& T5 y+ ^) v5 ]bbs.mocwww.com                return false;
4 r0 n$ ^  `  e魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        end
5 B. ~. L# j8 B/ Z$ L2 i* r% j6 d0 [妖城在线论坛        魔力私服,最新魔力宝贝私服技术交流" U7 H, y7 n& x& F
        return true;
  i* i: P- T( X2 F& [( w魔力私服,最新魔力宝贝私服技术交流end
  e& ?8 X( Q% m. M妖城在线论坛
5 ^8 j% Y! Z. i. D2 C* Tbbs.mocwww.comfunction PetMake_Talked( _MePtr, _TalkPtr)
/ j& g6 W( d( b) ~" K, X7 p魔力私服,最新魔力宝贝私服技术交流魔力私服,最新魔力宝贝私服技术交流- G9 k( k5 q3 k1 x5 F
        if(NLG.CheckInFront(_TalkPtr, _MePtr, 1) == false) then
6 w+ Z* s0 ^$ ]/ x# H! L; Z$ x魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                return ;魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表1 L( [6 {0 c; J; W& w; ~5 s
        end * q. k! }6 B$ X; c) ^$ q1 R1 g
       
: C+ ^6 \8 \, @7 c! m魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        local PetIndex = Char.GetPetIndex(_TalkPtr, 0);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート5 k$ D- ~7 O8 A& |( U! S0 I( g/ v
        if (PetIndex>0) then 魔力私服,最新魔力宝贝私服技术交流1 ]3 t/ q1 Q  c* Y+ N6 C
                for t = 0,4 dobbs.mocwww.com- @8 t2 B2 |) i' M' j
                        Pet.SetArtRank(PetIndex, t, Pet.FullArtRank(PetIndex, t));—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート! S  t4 O: R9 L
                end        魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表* R- h& L4 V0 l2 q
                        妖城在线论坛$ c& w( G- V2 R& \" l
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;魔力私服,最新魔力宝贝私服技术交流3 H" K  j7 A' L0 U. c
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;魔力私服,最新魔力宝贝私服技术交流9 ^6 ^' A/ Z; N* H" H  z
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;bbs.mocwww.com) Y$ Z( H$ z' Z6 ^0 L- Z
                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
$ C  S2 b9 v9 X' q3 e2 b* Nbbs.mocwww.com                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;       
' N4 Z+ G  H; M8 b( l1 M, K* |bbs.mocwww.com        3 G/ E! t( \3 ?5 ]4 j' z
                Char.SetData(PetIndex, %对象_体力%, CurVital);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート+ Z  d& J7 }- a0 a5 x4 z' k7 w
                Char.SetData(PetIndex, %对象_力量%, CurStr);妖城在线论坛& E2 B! H3 z# v
                Char.SetData(PetIndex, %对象_强度%, CurTough);4 [$ p2 G' U$ v
                Char.SetData(PetIndex, %对象_速度%, CurQuick);
" P+ J" Y3 w$ n8 Vbbs.mocwww.com                Char.SetData(PetIndex, %对象_魔法%, CurMagic);魔力私服,最新魔力宝贝私服技术交流" G4 ^/ A& g. D* D/ Y7 b/ u! B
. z4 A$ U' y# A, s, j
        else
3 ~  a4 u" X) n; t% Z( `; I1 h" t- t妖城在线论坛        end
. I$ C& w. }7 M  U( X—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート
1 x; K7 t6 K% f$ Z4 o' {魔力私服,最新魔力宝贝私服技术交流        return ;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート7 _$ P: X5 ^) E8 D- e% R  e
end—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート* p" i) _, [7 t8 B; o8 e7 K
9 H* Z0 T- \5 Q/ X7 I
[ 本帖最后由 法兰CD兔 于 2018-11-14 22:13 编辑 ]
作者: 毛毛虫    时间: 2018-11-14 22:37

托管到框架了么?upchar一下?
作者: 法兰CD兔    时间: 2018-11-14 22:47     标题: 回复 沙发 的帖子

if (M__PetMake == nil) then
2 Q3 q* `6 U% L0 A5 h* N* y2 S—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                M__PetMake = NL.CreateNpc("./data/lua/test/PetMake.lua", "PetMake_Init");—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート( c# Z' T1 m5 [) G1 O1 ?" M  E
                NLG.UpChar(M__PetMake);妖城在线论坛4 k1 o, A6 u) E- u7 r1 k( ?/ Y' D" \4 a
        end4 P8 N3 O9 L& I+ p

9 X( W( r& ]6 g5 abbs.mocwww.com是这个吗?init里面的,写了的魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表/ f( ?% y( ?# c; e! @# J
而且我之前没写—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート- K) {, _/ d. g) t+ \' Y4 r6 f
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート4 `6 X7 w% }, F( @- B
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;
- ~( u4 H- j$ d' d. B, m妖城在线论坛                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;
9 q! w$ I4 M4 r2 h% obbs.mocwww.com                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;
' Z& i- [1 _# A! S8 f魔力私服,最新魔力宝贝私服技术交流                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
. m: [1 _4 H7 r9 u8 {; Ibbs.mocwww.com                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        
9 l6 h' J; K) h4 c- H9 b—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        
; |( h5 ?' N5 E$ ]魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_体力%, CurVital);bbs.mocwww.com' J9 }* v1 H$ r
                Char.SetData(PetIndex, %对象_力量%, CurStr);) c1 @  ^1 n2 F! I4 B  H% D  j
                Char.SetData(PetIndex, %对象_强度%, CurTough);魔力私服,最新魔力宝贝私服技术交流2 w0 X9 ?0 J7 |5 y- H; ^  F# V
                Char.SetData(PetIndex, %对象_速度%, CurQuick);bbs.mocwww.com9 v$ k3 `) F' a1 ~1 x
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);! Q$ e2 c( w* O  H

( u( ~) b* X; m( h1 u6 U魔力私服,最新魔力宝贝私服技术交流这一段的时候,npc是有的
作者: 毛毛虫    时间: 2018-11-15 09:14

不明真相~~NPC在过程中消失么?
作者: 法兰CD兔    时间: 2018-11-15 09:52     标题: 回复 地板 的帖子

不是滴,就是重启服务器,这个npc就不会在地图中出现,我把最后加的代码删掉,再重启服务器,npc就又出现了,所以我猜测是
" `: l  k% y8 C# q! d. g% D—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 0.21);
( b1 U& X: {! E) ?% nbbs.mocwww.com                Char.SetData(PetIndex, %对象_力量%, ( Pet.GetArtRank(PetIndex, 1) + 2 ) * 0.21);妖城在线论坛# R3 C& O9 ~' ^& ^( C- t6 C7 E
                Char.SetData(PetIndex, %对象_强度%, ( Pet.GetArtRank(PetIndex, 2) + 2 ) * 0.21);魔力私服,最新魔力宝贝私服技术交流' B7 ~5 @2 x! b4 f; w- y
                Char.SetData(PetIndex, %对象_速度%, ( Pet.GetArtRank(PetIndex, 3) + 2 ) * 0.21);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート6 ]6 J5 a2 U" l: g) o! L/ `9 S
                Char.SetData(PetIndex, %对象_魔法%, ( Pet.GetArtRank(PetIndex, 4) + 2 ) * 0.21);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート& w5 _+ ?$ p! [, v! A
这一段代码出错—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート, j- _& _# ~) M) j& J5 i8 O* w0 {/ Y! z
bbs.mocwww.com: a" l) `2 [+ e
可是想了半天也觉得没问题……
' _  `. z$ K" x7 P妖城在线论坛
  A5 H/ M0 g- p- z$ N+ q[ 本帖最后由 法兰CD兔 于 2018-11-15 10:42 编辑 ]
作者: 法兰CD兔    时间: 2018-11-15 10:42

纠正一下,都应该是*21,不是*0.21
作者: 法兰CD兔    时间: 2018-11-15 10:57

自己琢磨明白了……
作者: wangjun1127    时间: 2018-11-17 01:01

哪里问题啊???分享出来哈!!
作者: 法兰CD兔    时间: 2018-11-18 09:54     标题: 回复 8楼 的帖子

还不完善,Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 21);魔力私服,最新魔力宝贝私服技术交流. B; ^& J( b, W$ N/ @% ^. z
这里的21应该是他的初始bp,比如一般的宠物是20,小使魔是30,但我还没研究出来怎么根据宠物的指针读取它的enemy编号,然后读取数据库里的这个数据,还有包括怎么选择宠物,不是仅仅改第一栏,等我研究完了再说吧
; r3 ^2 [) R: T' F魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表$ V  b1 w6 e) {
而且退一万步说,这个东西真的没啥技术含量,发出来太献丑了
作者: orochi0531    时间: 2018-11-18 17:41

我有制作过自定义档次的,想几档就几档,全部自己决定,不过,我忘了放哪里了。
作者: 法兰CD兔    时间: 2018-11-18 22:37     标题: 回复 10楼 的帖子

大佬牛X,这玩意儿自己研究挺有意思的,我再研究研究,也搞成这样的
作者: 老鸟十三    时间: 2020-2-15 11:32

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




欢迎光临 妖城在线论坛 (http://bbs.mocwww.com/) Powered by Discuz! 6.0.0