发新话题
打印

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

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

如下,这是我写的一个简单的制造满档宠物的npc
+ |* x+ S' ?1 y, y1 }; |6 z% Fbbs.mocwww.com魔力私服,最新魔力宝贝私服技术交流1 s6 A8 Z4 b2 @  A: Z
目的在于把宠物栏第1栏的1级宠物改成满档
1 l. X+ d* f# {( p( k0 ]& T魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表具体的非1级宠物错误判定、随机档分配什么的就先暂时略去不表,还有以后再考虑添加选择改哪个宠物啥的魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表3 }* r! p' o8 n& b

8 }8 S4 m' H% o+ }妖城在线论坛现在最大的问题在于为什么我这么做完以后,创建不出npc呢?
6 v: ]5 Z) a+ ?4 m魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表init已经做了,最开始没有改宠物bp那一段,只有改档数的时候是能创建出来的,也能成功修改宠物的档数,但加了改bp的那一部分后,就没有npc被创建出来了,求助—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート' Z( J  i3 F/ c- f6 _2 W4 h8 B6 V" f
妖城在线论坛4 ^) n& ~' n& C  \4 I- F
function PetMake_Init( _MePtr )魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表9 o  j) }' K2 ~+ B0 r/ P8 e

/ e  @$ j$ l2 s$ ]1 i* g- I# v7 H        Char.SetData(_MePtr, %对像_形象%, 101025);    --%对像_形象%妖城在线论坛2 }# c3 g* z' ]" C5 A, Q
        Char.SetData(_MePtr, %对像_原形%, 101025);    --%对像_原形%
- |$ I" c/ R: wbbs.mocwww.com        Char.SetData(_MePtr, %对像_地图类型%, 0);     --%对像_地图类型%魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表* z( a# P/ O4 Q8 K; ^2 u
        Char.SetData(_MePtr, %对像_地图%, 25000);      --%对像_地图%妖城在线论坛4 @' @& Z( B: r3 z- {
        Char.SetData(_MePtr, %对像_X%, 23);          --%对像_X%bbs.mocwww.com/ U3 \) }% [" r; H) p
        Char.SetData(_MePtr, %对像_Y%, 15);           --%对像_Y%魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表1 F+ x9 ~+ i) i! r
        Char.SetData(_MePtr, %对像_方向%, %左下%);    --%对像_方向%, %左下%妖城在线论坛4 Z6 |, {% [- j2 ?  l- W$ D
        Char.SetData(_MePtr, %对像_原名%, "宠物满档制造者");    --%对像_原名%
  p& o& \6 F; j, {6 V4 G, R" R; m魔力私服,最新魔力宝贝私服技术交流魔力私服,最新魔力宝贝私服技术交流' H. r. e% _% \0 ~# o+ ~
        —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート' u$ x, b# z$ G" J9 B
        if (Char.SetTalkedEvent(nil, "PetMake_Talked", _MePtr) < 0) then
2 Z! K3 [. Z& ^; C. g5 i! W0 ]4 N魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                print("PetMake_Talked 注册事件失败。");, c  U  {  L  W& R$ o% ^2 |
                return false;
/ b& B% C' D2 s- Z. z: S1 o—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        end
$ c. P% h' D8 Sbbs.mocwww.com        魔力私服,最新魔力宝贝私服技术交流9 R$ d+ ~; f/ [* T* y: q& ?* @
        return true;
' r; j5 h6 t: v9 E3 X' `$ Hbbs.mocwww.comend
' x* `5 l8 S) a1 H! a/ p7 S魔力私服,最新魔力宝贝私服技术交流/ a9 h% A$ u5 K  `
function PetMake_Talked( _MePtr, _TalkPtr)
( [' A- M+ I( S—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート
3 x4 u& f1 U* m0 i4 a魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        if(NLG.CheckInFront(_TalkPtr, _MePtr, 1) == false) then
# w, c; f$ u) V1 G魔力私服,最新魔力宝贝私服技术交流                return ;
% N6 b4 v* Z' f0 ^" X7 X$ y4 O魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        end 魔力私服,最新魔力宝贝私服技术交流) Y) u) k+ |8 B8 a8 K
        魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表6 r  U6 c$ e" N4 ^
        local PetIndex = Char.GetPetIndex(_TalkPtr, 0);
/ V/ G. `1 v1 T4 S; g—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        if (PetIndex>0) then : o! H+ n, [. M
                for t = 0,4 do
: r9 [) E. o+ N! C+ B; k妖城在线论坛                        Pet.SetArtRank(PetIndex, t, Pet.FullArtRank(PetIndex, t));
" S& P5 z) b& W( H# u/ o0 e1 C—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                end        6 t  J3 E0 {" ^1 V
                        魔力私服,最新魔力宝贝私服技术交流- @3 j; ]0 l: ^
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;
+ {3 m  y/ x2 L* F0 |. w魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表- Q2 e7 K+ B$ q/ B
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;
% V) y) h& T: j( n% p0 vbbs.mocwww.com                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
# G: m" R. o  |& D5 u4 M魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;       
% `) J/ p( a. J; Z0 g+ h* X       
7 O/ a0 b. _% z. E: b0 [: _—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_体力%, CurVital);
: X  z' m6 H# {% [1 X. A魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_力量%, CurStr);
, u: g/ v! y/ V" l! ~$ d% l魔力私服,最新魔力宝贝私服技术交流                Char.SetData(PetIndex, %对象_强度%, CurTough);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表5 N/ C0 v, H7 _2 ?; _2 y5 Y, e. z
                Char.SetData(PetIndex, %对象_速度%, CurQuick);
; m; x* ^$ F' ?4 s' P1 f* B                Char.SetData(PetIndex, %对象_魔法%, CurMagic);8 r* P# n' i3 I+ [1 c
bbs.mocwww.com# y! X9 i9 ^3 v$ d% f
        else
; u, U0 j. F) w3 w        end+ v) B$ a5 h6 }- y$ d

9 g6 `8 K- C3 Q$ F9 ~bbs.mocwww.com        return ;2 s7 S# D& Z, ~( G# f6 a" a0 q
end
/ T8 h6 @( y6 g; Z% K—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート& R: O% I" W9 k, \+ x# ]8 K9 }
[ 本帖最后由 法兰CD兔 于 2018-11-14 22:13 编辑 ]

TOP

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

TOP

回复 沙发 的帖子

if (M__PetMake == nil) thenbbs.mocwww.com% Z; Y' {% G9 U$ t- M- @  s! Q, g
                M__PetMake = NL.CreateNpc("./data/lua/test/PetMake.lua", "PetMake_Init");7 |8 F4 z9 s- u9 i3 g! z# x+ L8 u
                NLG.UpChar(M__PetMake);
2 R" t- g% B) X' O/ M魔力私服,最新魔力宝贝私服技术交流        end
2 n! w, a+ _& i0 N( J魔力私服,最新魔力宝贝私服技术交流
9 l$ f" s8 B: ^: @5 o$ ^5 A魔力私服,最新魔力宝贝私服技术交流是这个吗?init里面的,写了的! n! \$ }% S: ]! V$ J6 b
而且我之前没写妖城在线论坛$ Q! i7 n4 L$ R4 @( M! x; v! n

& D2 i. z4 n2 }/ I2 x- Ubbs.mocwww.com                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;
: u. R7 Y; o( u" ~魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;
: s( V/ N2 ^) e魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;妖城在线论坛; c9 |! W, E  c0 j4 X
                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
' }8 ~+ i- E% N0 x: E; z魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        
2 f1 ?* {2 `9 ]. e0 @魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        
$ ?, y- B3 R2 a4 `3 s0 B/ ebbs.mocwww.com                Char.SetData(PetIndex, %对象_体力%, CurVital);
5 L# T2 s& W9 ?$ Z3 O魔力私服,最新魔力宝贝私服技术交流                Char.SetData(PetIndex, %对象_力量%, CurStr);
/ G5 K: A8 `/ A5 q$ G9 ~—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_强度%, CurTough);
8 D& T2 }5 H% m5 Q魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_速度%, CurQuick);
8 T7 H1 P: k; Z2 o妖城在线论坛                Char.SetData(PetIndex, %对象_魔法%, CurMagic);
7 _; @! @% `$ x& N( i- f1 I: n( z魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
) q, b( v! B) k3 u—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート这一段的时候,npc是有的

TOP

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

TOP

回复 地板 的帖子

不是滴,就是重启服务器,这个npc就不会在地图中出现,我把最后加的代码删掉,再重启服务器,npc就又出现了,所以我猜测是! x1 t) q/ K2 _: |
                Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 0.21);
& W, D1 w1 u8 Tbbs.mocwww.com                Char.SetData(PetIndex, %对象_力量%, ( Pet.GetArtRank(PetIndex, 1) + 2 ) * 0.21);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート0 G0 b& J! `0 ?1 U
                Char.SetData(PetIndex, %对象_强度%, ( Pet.GetArtRank(PetIndex, 2) + 2 ) * 0.21);
( V7 j6 Z; e( [* h妖城在线论坛                Char.SetData(PetIndex, %对象_速度%, ( Pet.GetArtRank(PetIndex, 3) + 2 ) * 0.21);( x& ?* W+ k& R! q$ u$ n2 `
                Char.SetData(PetIndex, %对象_魔法%, ( Pet.GetArtRank(PetIndex, 4) + 2 ) * 0.21);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表0 H2 M( Y! M* s9 V7 ?
这一段代码出错1 k) y6 B6 \/ N' `9 E

6 f  ~+ @% ~2 z/ S) \bbs.mocwww.com可是想了半天也觉得没问题……
7 b- a7 P: ?( F—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート
. @" {) p6 U1 A: g0 l+ a4 k妖城在线论坛[ 本帖最后由 法兰CD兔 于 2018-11-15 10:42 编辑 ]

TOP

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

TOP

自己琢磨明白了……

TOP

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

TOP

回复 8楼 的帖子

还不完善,Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 21);  A( s6 j1 x! V; {) L0 h
这里的21应该是他的初始bp,比如一般的宠物是20,小使魔是30,但我还没研究出来怎么根据宠物的指针读取它的enemy编号,然后读取数据库里的这个数据,还有包括怎么选择宠物,不是仅仅改第一栏,等我研究完了再说吧
' t8 T9 o  S$ Z' E4 ?  n# f3 A妖城在线论坛
. v. m2 L# F4 L  a+ d" n! Ybbs.mocwww.com而且退一万步说,这个东西真的没啥技术含量,发出来太献丑了

TOP

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

TOP

回复 10楼 的帖子

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

TOP

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

TOP

发新话题