发新话题
打印

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

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

如下,这是我写的一个简单的制造满档宠物的npc! y$ u. H+ D, z$ u6 ?. }$ ^
魔力私服,最新魔力宝贝私服技术交流0 K( E+ g3 A3 E# H/ y/ J1 r% {6 B! t
目的在于把宠物栏第1栏的1级宠物改成满档
0 e! Q9 Y# A  A! C  {* J2 Abbs.mocwww.com.具体的非1级宠物错误判定、随机档分配什么的就先暂时略去不表,还有以后再考虑添加选择改哪个宠物啥的魔力私服,最新魔力宝贝私服技术交流7 P# {% v0 Z# D( A

8 c  w8 u: z, ~, e3 B1 ~妖城在线论坛现在最大的问题在于为什么我这么做完以后,创建不出npc呢?魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表4 J5 o, N! N+ S6 q1 S$ m
init已经做了,最开始没有改宠物bp那一段,只有改档数的时候是能创建出来的,也能成功修改宠物的档数,但加了改bp的那一部分后,就没有npc被创建出来了,求助
  T9 [8 _" n( q. M9 P4 C妖城在线论坛魔力私服,最新魔力宝贝私服技术交流+ V, l+ F- j/ j3 b* m5 _
function PetMake_Init( _MePtr )魔力私服,最新魔力宝贝私服技术交流9 W- i' S4 W8 ?- R$ @( B- J
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート9 R; o6 [, u; V1 E* O9 p; k3 P7 T7 w
        Char.SetData(_MePtr, %对像_形象%, 101025);    --%对像_形象%妖城在线论坛9 n7 l8 j1 ~. W" K0 ^$ Y
        Char.SetData(_MePtr, %对像_原形%, 101025);    --%对像_原形%魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表' T  m  D! z" j1 b7 X
        Char.SetData(_MePtr, %对像_地图类型%, 0);     --%对像_地图类型%
) \& f- n, J1 K( y        Char.SetData(_MePtr, %对像_地图%, 25000);      --%对像_地图%魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表8 @: X7 p# `" Z" a6 t- Q
        Char.SetData(_MePtr, %对像_X%, 23);          --%对像_X%魔力私服,最新魔力宝贝私服技术交流% K# ?& Y2 m& g, B+ X
        Char.SetData(_MePtr, %对像_Y%, 15);           --%对像_Y%
0 C5 g" t4 }& U4 f9 h, U" I—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        Char.SetData(_MePtr, %对像_方向%, %左下%);    --%对像_方向%, %左下%—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート4 n7 U9 N4 @; [5 \# G, P, V
        Char.SetData(_MePtr, %对像_原名%, "宠物满档制造者");    --%对像_原名%—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート& b- F8 d0 R7 h1 J/ T1 r! ~

1 F% V5 F$ N% O% i  [" c1 D        妖城在线论坛$ k0 ~5 Z' T! ]# f2 \
        if (Char.SetTalkedEvent(nil, "PetMake_Talked", _MePtr) < 0) then
- P' x; J  i9 G" W; o. v* O妖城在线论坛                print("PetMake_Talked 注册事件失败。");
# O' p- V3 s3 l: v+ H4 y7 r4 F! J妖城在线论坛                return false;
2 B% [# W; ]0 z0 A9 P魔力私服,最新魔力宝贝私服技术交流        end
: p) z" f" u" [+ }: A3 R—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート       
) i: j5 u4 v# ]魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        return true;
1 s4 E( `9 Y5 P) ]# n# C  I妖城在线论坛end
4 x) Q, s/ A- \. g2 n—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート
/ I# {8 N) o' a+ p1 D# B$ ^6 f妖城在线论坛function PetMake_Talked( _MePtr, _TalkPtr)妖城在线论坛- u9 ?# N6 I# `& \
魔力私服,最新魔力宝贝私服技术交流/ O  i' a7 I3 ^  t+ C
        if(NLG.CheckInFront(_TalkPtr, _MePtr, 1) == false) then
% m+ o% W3 W+ Z—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                return ;
4 B' H9 U# |1 B  q: t- n魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        end —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート! \, [$ \$ c7 `8 q9 f  _  j
        ; b% r1 T( U" [2 Q
        local PetIndex = Char.GetPetIndex(_TalkPtr, 0);
6 Q4 ^( P' a/ `2 Z5 ~, ^5 k妖城在线论坛        if (PetIndex>0) then
8 c/ H+ n0 U( p8 V—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                for t = 0,4 do魔力私服,最新魔力宝贝私服技术交流( C8 @7 I9 `4 P0 Q: |! r1 W
                        Pet.SetArtRank(PetIndex, t, Pet.FullArtRank(PetIndex, t));妖城在线论坛0 q1 u5 ^( W" W' R1 X" h# n+ k
                end       
! C- I8 c5 r+ y8 a9 k1 Q                       
3 `" U2 C5 Q* T4 {8 W" H( V3 t5 H妖城在线论坛                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表1 _" I! P4 [2 l) M# J
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート% N  r" m1 G0 I0 M$ l5 U" Z+ U
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;魔力私服,最新魔力宝贝私服技术交流9 M1 G: w7 t$ ]0 {' Z) n
                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
6 [$ I. ]. h3 _+ g6 S                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        bbs.mocwww.com.4 s0 u: v' D7 h+ o' W! S. z
       
+ F' g0 Q5 `8 B- @0 O" M—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_体力%, CurVital);bbs.mocwww.com." z6 k7 E- q* x5 p% ~" _
                Char.SetData(PetIndex, %对象_力量%, CurStr);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表/ q8 C8 U: {5 p: k0 g* \0 O) p1 L1 i
                Char.SetData(PetIndex, %对象_强度%, CurTough);
3 c/ N1 x3 s: r3 Y1 tbbs.mocwww.com.                Char.SetData(PetIndex, %对象_速度%, CurQuick);
& D" A8 f, l3 _. }魔力私服,最新魔力宝贝私服技术交流                Char.SetData(PetIndex, %对象_魔法%, CurMagic);
0 H2 J0 `5 v7 o* u& s+ Abbs.mocwww.com.—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート- b* Q) v4 E, C* `/ K0 V
        else
: j+ ?( q, t7 n- {3 d妖城在线论坛        endbbs.mocwww.com.: J$ f# y. z5 g
魔力私服,最新魔力宝贝私服技术交流  ]' o7 P* m4 t0 a$ @
        return ;
" y% H+ u9 n- s# e& E; Mbbs.mocwww.com.end妖城在线论坛  i  a6 s( d# _" B( h8 m. s
妖城在线论坛- E1 o; Z- a% [2 ], B
[ 本帖最后由 法兰CD兔 于 2018-11-14 22:13 编辑 ]

TOP

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

TOP

回复 沙发 的帖子

if (M__PetMake == nil) then
6 r% t) ^4 t$ A5 f2 W+ g                M__PetMake = NL.CreateNpc("./data/lua/test/PetMake.lua", "PetMake_Init");魔力私服,最新魔力宝贝私服技术交流7 B1 Y+ I9 @; w) [6 q
                NLG.UpChar(M__PetMake);
, R0 v; ]9 o* }( E        end魔力私服,最新魔力宝贝私服技术交流+ E( J$ L7 l4 C* p8 U' o2 ?# }* n

7 q; _: L. R) u( j8 j4 {% I魔力私服,最新魔力宝贝私服技术交流是这个吗?init里面的,写了的
: o! z( p7 a3 @. L& ]魔力私服,最新魔力宝贝私服技术交流而且我之前没写妖城在线论坛+ `5 B. N" m4 u8 P% Z! l; J% X
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート1 M5 }- M6 E' J3 e* c
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;bbs.mocwww.com., `/ v1 e7 b9 m4 ]  X
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;魔力私服,最新魔力宝贝私服技术交流6 K. U$ \' J( G( F/ O4 g
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;
) T$ T9 T3 L$ \4 {7 g妖城在线论坛                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート' v6 Q7 N9 _. U: \- H
                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        
/ K" a+ U4 q% m% Y% g6 r( S        妖城在线论坛* O4 M0 L  N7 Y7 m8 N
                Char.SetData(PetIndex, %对象_体力%, CurVital);
7 Y: u$ B! {5 L5 a* v妖城在线论坛                Char.SetData(PetIndex, %对象_力量%, CurStr);3 W% x8 _6 `# p* _1 w7 A
                Char.SetData(PetIndex, %对象_强度%, CurTough);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート2 n* H5 H1 N4 |
                Char.SetData(PetIndex, %对象_速度%, CurQuick);
& z6 n( X1 i* y& `4 S                Char.SetData(PetIndex, %对象_魔法%, CurMagic);
: A# H1 A5 W& m4 U—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート妖城在线论坛! i) x/ i2 }7 L# j$ D$ V- N9 ^" _
这一段的时候,npc是有的

TOP

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

TOP

回复 地板 的帖子

不是滴,就是重启服务器,这个npc就不会在地图中出现,我把最后加的代码删掉,再重启服务器,npc就又出现了,所以我猜测是
' f/ l' p7 U3 j$ B+ C3 r—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 0.21);妖城在线论坛$ F2 S5 E8 ~  V( `7 i
                Char.SetData(PetIndex, %对象_力量%, ( Pet.GetArtRank(PetIndex, 1) + 2 ) * 0.21);
/ I* r$ S) ]. K# g                Char.SetData(PetIndex, %对象_强度%, ( Pet.GetArtRank(PetIndex, 2) + 2 ) * 0.21);
1 K3 k- M. p+ ~& n- l- F妖城在线论坛                Char.SetData(PetIndex, %对象_速度%, ( Pet.GetArtRank(PetIndex, 3) + 2 ) * 0.21);
% I5 V# t6 a  W魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_魔法%, ( Pet.GetArtRank(PetIndex, 4) + 2 ) * 0.21);bbs.mocwww.com.6 i5 B+ \9 s  _/ |) A+ v) g
这一段代码出错bbs.mocwww.com.$ z( Q+ t3 J( z. l9 J) B6 s6 A
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表: J7 C  l* }* _4 x
可是想了半天也觉得没问题……—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート1 ^$ t( a* z9 q  z; x) f# w
. |) R" s4 P& s6 f( G0 c# C
[ 本帖最后由 法兰CD兔 于 2018-11-15 10:42 编辑 ]

TOP

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

TOP

自己琢磨明白了……

TOP

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

TOP

回复 8楼 的帖子

还不完善,Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 21);
% m+ {- _" @/ ~bbs.mocwww.com.这里的21应该是他的初始bp,比如一般的宠物是20,小使魔是30,但我还没研究出来怎么根据宠物的指针读取它的enemy编号,然后读取数据库里的这个数据,还有包括怎么选择宠物,不是仅仅改第一栏,等我研究完了再说吧
7 x0 [" g1 b) a' n2 C$ K魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート3 {7 R9 k3 [. S
而且退一万步说,这个东西真的没啥技术含量,发出来太献丑了

TOP

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

TOP

回复 10楼 的帖子

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

TOP

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

TOP

发新话题