发新话题
打印

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

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

如下,这是我写的一个简单的制造满档宠物的npc
, y( c, z  {" F1 N# E& I& Y. ]
+ i$ T  s) p1 j- S5 ^. r# m1 @7 A/ j4 k魔力私服,最新魔力宝贝私服技术交流目的在于把宠物栏第1栏的1级宠物改成满档
8 X: a- |' m1 A; |4 U8 |. n4 D1 p魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表具体的非1级宠物错误判定、随机档分配什么的就先暂时略去不表,还有以后再考虑添加选择改哪个宠物啥的妖城在线论坛( Q# [" N8 m, b" F. A

. ^# |/ [; L' \2 n$ [3 Dbbs.mocwww.com现在最大的问题在于为什么我这么做完以后,创建不出npc呢?—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート; R/ F; A* {) P$ ^( u: i+ {
init已经做了,最开始没有改宠物bp那一段,只有改档数的时候是能创建出来的,也能成功修改宠物的档数,但加了改bp的那一部分后,就没有npc被创建出来了,求助魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表7 G8 M4 ~' O& {$ b( A

1 l) d( V; i* L/ P8 S2 Efunction PetMake_Init( _MePtr )妖城在线论坛% Z: W+ m5 _& ^9 F! j
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート6 a. c8 z8 @8 \7 e. S1 |. Q
        Char.SetData(_MePtr, %对像_形象%, 101025);    --%对像_形象%( C" c1 C+ _. f5 S
        Char.SetData(_MePtr, %对像_原形%, 101025);    --%对像_原形%
0 x$ p% c/ D2 E! ]7 b$ ]( X魔力私服,最新魔力宝贝私服技术交流        Char.SetData(_MePtr, %对像_地图类型%, 0);     --%对像_地图类型%魔力私服,最新魔力宝贝私服技术交流7 {$ X8 A6 M- m) a- w+ N6 X
        Char.SetData(_MePtr, %对像_地图%, 25000);      --%对像_地图%
, t9 U4 k" ]* p8 y; C( A& vbbs.mocwww.com        Char.SetData(_MePtr, %对像_X%, 23);          --%对像_X%—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート/ g7 b# s0 Z. h' P9 |. e# O
        Char.SetData(_MePtr, %对像_Y%, 15);           --%对像_Y%魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表, P+ f* r7 c* W/ D# I0 p# y
        Char.SetData(_MePtr, %对像_方向%, %左下%);    --%对像_方向%, %左下%2 R: j. b3 A: G+ s. C3 U
        Char.SetData(_MePtr, %对像_原名%, "宠物满档制造者");    --%对像_原名%魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表$ d9 D3 _  A# r  Y3 q
/ x7 }6 r( [3 K' z5 R9 w: |* b
       
# {$ g# o  G9 M8 d( i魔力私服,最新魔力宝贝私服技术交流        if (Char.SetTalkedEvent(nil, "PetMake_Talked", _MePtr) < 0) then
9 y1 z9 }* ]' ?$ P妖城在线论坛                print("PetMake_Talked 注册事件失败。");
( {3 G' J* w8 k* N2 F, \妖城在线论坛                return false;魔力私服,最新魔力宝贝私服技术交流/ C* [& D) U, R0 }
        end3 T% q# ^& [9 d8 Z
        —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート1 q5 U) X7 Q" O
        return true;
% ^* [) s7 }2 T  n3 C% D+ V* Q2 K% k—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートend
) O; |3 W  _& V7 T2 X$ ~, Z$ o9 G4 w* N' ?3 A
function PetMake_Talked( _MePtr, _TalkPtr)魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表" V3 j. K' J& B# s% P

: n" ]7 _( Q8 a, L$ l0 y- `6 `—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        if(NLG.CheckInFront(_TalkPtr, _MePtr, 1) == false) then
; K5 V8 y# ~5 e* J5 h" c$ e魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                return ;
$ Q3 u. T" r; ?% Z' \—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        end 魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表! V' @& s! b9 e7 x
        2 Y" q8 Q. Q8 F# [$ U# h$ I
        local PetIndex = Char.GetPetIndex(_TalkPtr, 0);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表% @5 d% m6 H) V$ w! u
        if (PetIndex>0) then
" }. B3 E) l- V# a1 u7 h* t                for t = 0,4 do魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表4 d: p% N7 p; _6 M
                        Pet.SetArtRank(PetIndex, t, Pet.FullArtRank(PetIndex, t));
& Z3 W) d2 g# \: m8 e' U妖城在线论坛                end        —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート9 K9 C) v% A! [; ^- T* C6 E
                        魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表8 u6 E% |. X# J, K) n, [" z2 ~
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;魔力私服,最新魔力宝贝私服技术交流, Q. o, o3 ?5 p8 _( ^
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;bbs.mocwww.com$ Y& ]. S' K( X5 ?; U: R3 f  \
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;+ B0 Z# a3 V& G
                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
" P, ?9 @8 S7 t! e0 O—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート! {! R8 A$ r5 l
        妖城在线论坛' U( J! O; A  V( C  r  g( Q1 n$ D
                Char.SetData(PetIndex, %对象_体力%, CurVital);
5 i. U2 t: _% O3 A  C- r魔力私服,最新魔力宝贝私服技术交流                Char.SetData(PetIndex, %对象_力量%, CurStr);bbs.mocwww.com2 b; J7 ^; f8 d0 H: D8 N
                Char.SetData(PetIndex, %对象_强度%, CurTough);
/ V0 v; _8 S7 C8 N. Q3 Xbbs.mocwww.com                Char.SetData(PetIndex, %对象_速度%, CurQuick);
6 h$ E2 I! x2 W: Vbbs.mocwww.com                Char.SetData(PetIndex, %对象_魔法%, CurMagic);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表$ |1 F# P/ o5 J* T" b8 [  |; A' e/ |

, k' l( Z' p* U! U  @魔力私服,最新魔力宝贝私服技术交流        else 魔力私服,最新魔力宝贝私服技术交流2 P0 `4 I2 t- @/ {" @, U7 j
        end
1 \- |7 Y) R( Y4 W+ @魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表bbs.mocwww.com3 K; {- x( l4 d. W5 f
        return ;
: t, P! I8 s  a魔力私服,最新魔力宝贝私服技术交流end妖城在线论坛0 q* d! K# A  ]: u' c. O# F

, f" d" B' J. S! E) t—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート[ 本帖最后由 法兰CD兔 于 2018-11-14 22:13 编辑 ]

TOP

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

TOP

回复 沙发 的帖子

if (M__PetMake == nil) then
0 L4 y( e1 Z" v9 n/ u& U1 {5 q妖城在线论坛                M__PetMake = NL.CreateNpc("./data/lua/test/PetMake.lua", "PetMake_Init");魔力私服,最新魔力宝贝私服技术交流0 C; a" j1 m& e: Z. W4 X+ h, W7 D
                NLG.UpChar(M__PetMake);
2 q1 ?7 M) _: ~! F2 a妖城在线论坛        end
6 \" v1 M. V* @8 j0 V魔力私服,最新魔力宝贝私服技术交流bbs.mocwww.com! m7 }4 v' f+ [9 R  @
是这个吗?init里面的,写了的
$ n  F1 w+ ^; u, G! e1 \而且我之前没写妖城在线论坛( e1 R6 G* z3 m" f0 r/ Y1 W' |

9 \4 |0 S+ u' Q$ Ubbs.mocwww.com                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;妖城在线论坛% M0 h. m* b6 p0 ^6 e" u" K2 C
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;
! Z5 ?4 p  d8 J( z2 z+ Y& b妖城在线论坛                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;" [1 b8 l* T8 P$ \- U
                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
+ ?6 p2 `3 n1 |5 O# D* ?& G妖城在线论坛                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        魔力私服,最新魔力宝贝私服技术交流% [9 Q9 f" T, m0 ?4 d
        妖城在线论坛1 Y2 o! z3 m; A- H$ D& e; n
                Char.SetData(PetIndex, %对象_体力%, CurVital);
* s7 d/ N& [: W* G+ O妖城在线论坛                Char.SetData(PetIndex, %对象_力量%, CurStr);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート: Y6 Y8 v3 S0 _# Q* n+ i) P3 Y- j
                Char.SetData(PetIndex, %对象_强度%, CurTough);bbs.mocwww.com1 J) T; |: U) l0 B# M
                Char.SetData(PetIndex, %对象_速度%, CurQuick);
+ f% F# g! ]  G6 j8 h                Char.SetData(PetIndex, %对象_魔法%, CurMagic);
9 \4 G) \* w6 Z0 t) C0 ?妖城在线论坛; U4 j, a. i) p" K% B, K
这一段的时候,npc是有的

TOP

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

TOP

回复 地板 的帖子

不是滴,就是重启服务器,这个npc就不会在地图中出现,我把最后加的代码删掉,再重启服务器,npc就又出现了,所以我猜测是妖城在线论坛. d/ s0 ~8 {, Q7 ~4 J5 L& t
                Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 0.21);
. o+ D5 l( {$ D0 Tbbs.mocwww.com                Char.SetData(PetIndex, %对象_力量%, ( Pet.GetArtRank(PetIndex, 1) + 2 ) * 0.21);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート5 i: I6 q1 @0 Y2 D
                Char.SetData(PetIndex, %对象_强度%, ( Pet.GetArtRank(PetIndex, 2) + 2 ) * 0.21);
$ D) [9 X- e1 K5 ~" Vbbs.mocwww.com                Char.SetData(PetIndex, %对象_速度%, ( Pet.GetArtRank(PetIndex, 3) + 2 ) * 0.21);魔力私服,最新魔力宝贝私服技术交流% {$ Q/ d; a9 A* ?' I
                Char.SetData(PetIndex, %对象_魔法%, ( Pet.GetArtRank(PetIndex, 4) + 2 ) * 0.21);妖城在线论坛$ H+ F- v- }1 B0 W. l" G2 u
这一段代码出错
6 U" a& D7 t! `+ ]9 P: `魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表妖城在线论坛: B7 F) p4 r" a1 d. w
可是想了半天也觉得没问题……
0 z. z  A# D3 U3 Bbbs.mocwww.com妖城在线论坛9 ~5 o- \. _. H& x! A; a# d
[ 本帖最后由 法兰CD兔 于 2018-11-15 10:42 编辑 ]

TOP

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

TOP

自己琢磨明白了……

TOP

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

TOP

回复 8楼 的帖子

还不完善,Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 21);
* N" I: G$ _4 l2 M% H; O这里的21应该是他的初始bp,比如一般的宠物是20,小使魔是30,但我还没研究出来怎么根据宠物的指针读取它的enemy编号,然后读取数据库里的这个数据,还有包括怎么选择宠物,不是仅仅改第一栏,等我研究完了再说吧bbs.mocwww.com1 x9 U/ \" C3 F9 m3 B4 u" z( i

9 X2 \% s' _& t( x# e" G% c+ R; |魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表而且退一万步说,这个东西真的没啥技术含量,发出来太献丑了

TOP

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

TOP

回复 10楼 的帖子

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

TOP

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

TOP

发新话题