发新话题
打印

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

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

如下,这是我写的一个简单的制造满档宠物的npc魔力私服,最新魔力宝贝私服技术交流- q% I* Q5 [1 m- M; _

/ C* B. m; Z/ x: I# _6 }魔力私服,最新魔力宝贝私服技术交流目的在于把宠物栏第1栏的1级宠物改成满档# g6 O. ^+ s" I; Z' h! _2 T- R
具体的非1级宠物错误判定、随机档分配什么的就先暂时略去不表,还有以后再考虑添加选择改哪个宠物啥的
8 X- ~, S% n" p妖城在线论坛9 r! y$ e; ~- [
现在最大的问题在于为什么我这么做完以后,创建不出npc呢?bbs.mocwww.com# ?3 D) J2 o3 j) l; v) t0 P7 O
init已经做了,最开始没有改宠物bp那一段,只有改档数的时候是能创建出来的,也能成功修改宠物的档数,但加了改bp的那一部分后,就没有npc被创建出来了,求助# g6 p# h0 X$ l. H4 s

8 i5 m2 Q- J; |: _—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートfunction PetMake_Init( _MePtr )( l. X- |/ R, B. v- o

6 G) A, f( ?5 w妖城在线论坛        Char.SetData(_MePtr, %对像_形象%, 101025);    --%对像_形象%妖城在线论坛8 g  U& z( F4 ~! R: @9 F5 I
        Char.SetData(_MePtr, %对像_原形%, 101025);    --%对像_原形%
3 Z/ v( }$ f9 x1 I" n5 J7 L        Char.SetData(_MePtr, %对像_地图类型%, 0);     --%对像_地图类型%—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート1 Z3 z: a5 }- O- x. [1 h
        Char.SetData(_MePtr, %对像_地图%, 25000);      --%对像_地图%
0 P# |1 J% q' ?7 D$ B—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        Char.SetData(_MePtr, %对像_X%, 23);          --%对像_X%魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表$ N& w$ }$ m9 y4 W
        Char.SetData(_MePtr, %对像_Y%, 15);           --%对像_Y%
* a) s4 x; {, ]! |' |- \8 x魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        Char.SetData(_MePtr, %对像_方向%, %左下%);    --%对像_方向%, %左下%
$ X' {4 t3 a- ]+ V- A1 lbbs.mocwww.com        Char.SetData(_MePtr, %对像_原名%, "宠物满档制造者");    --%对像_原名%妖城在线论坛. v& Y2 ]9 N4 Z+ @% k

* @9 j  L% [7 W2 `* kbbs.mocwww.com        —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート. ?# `7 ^. V. A
        if (Char.SetTalkedEvent(nil, "PetMake_Talked", _MePtr) < 0) then
! d. x/ _% T* G—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                print("PetMake_Talked 注册事件失败。");
5 l5 E+ ^+ u0 U% i' E0 `魔力私服,最新魔力宝贝私服技术交流                return false;妖城在线论坛$ a: i4 Y" y% y6 j
        end
' L% S4 s, I% b; g1 f3 W魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート% E( W5 u5 ]3 Y2 [
        return true;魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表% W, ?% j- T1 [* U$ l( u" l+ E
end
( \" q- t" C9 j" o* V- j  Q( l  Nbbs.mocwww.com( X+ K/ d- W; ?8 v. A
function PetMake_Talked( _MePtr, _TalkPtr)
1 X/ G7 j; I9 t8 t2 q$ A) r魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表1 K. W9 ?$ B5 s7 x  _+ Q; h
        if(NLG.CheckInFront(_TalkPtr, _MePtr, 1) == false) then0 c+ E  {, {/ b8 z. k/ f
                return ;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート$ `1 |' C2 f# o, M& v( }
        end
! g3 x& `8 J0 G) C! K9 t; z—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート       
  G( a/ B! G. [! b+ W' F3 r9 l        local PetIndex = Char.GetPetIndex(_TalkPtr, 0);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート3 e( S+ m* c- j) {8 d% U
        if (PetIndex>0) then
7 S) H- q( g: U  @/ Q妖城在线论坛                for t = 0,4 do
, C- z7 i' s7 `3 C/ W* D; o6 m魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                        Pet.SetArtRank(PetIndex, t, Pet.FullArtRank(PetIndex, t));
8 K! R+ E# q) q$ |* nbbs.mocwww.com                end       
8 e/ d( S1 ]- T/ {6 s/ zbbs.mocwww.com                        魔力私服,最新魔力宝贝私服技术交流. g* p: X" Q9 F) Z6 q
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;
% m( ~/ F5 H" _3 p! w2 U, C7 \—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;: q  B/ r- A2 M, E9 j' C
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;% j, X1 \! M, W, c' N
                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
( `. ?' |* Y. T  [4 N& z魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;       
5 n" ?* a  h: @# P3 |" S+ Z        魔力私服,最新魔力宝贝私服技术交流( C$ Y& O; V' o2 k4 `
                Char.SetData(PetIndex, %对象_体力%, CurVital);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表0 w3 l0 q( D1 U" _; h+ G! K2 ]* C
                Char.SetData(PetIndex, %对象_力量%, CurStr);
$ s8 T8 j/ G& @# b妖城在线论坛                Char.SetData(PetIndex, %对象_强度%, CurTough);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表, ]( w- x! T, s1 y
                Char.SetData(PetIndex, %对象_速度%, CurQuick);
% P  z3 |$ ?- r9 M- O, K—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_魔法%, CurMagic);
) |# H1 m9 V1 F' g, w2 M妖城在线论坛
' Q% X  o: j% l# S; `* Z! M3 M# z魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        else 3 H1 v" R8 [" r% m
        end妖城在线论坛: F3 F' t& g8 t% u

7 Z4 T  d' X. R—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        return ;
5 m& {" [: g$ k! A% Z3 ~魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表end
% e$ C1 T) ?1 l/ T! _/ V* d—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート魔力私服,最新魔力宝贝私服技术交流: A2 B2 {) y/ S
[ 本帖最后由 法兰CD兔 于 2018-11-14 22:13 编辑 ]

TOP

回复 沙发 的帖子

if (M__PetMake == nil) then
3 J( e; E( k& F1 p% Z+ h  k                M__PetMake = NL.CreateNpc("./data/lua/test/PetMake.lua", "PetMake_Init");$ G* P4 E, |+ u/ _$ z
                NLG.UpChar(M__PetMake);
: D% V' B/ W! t. a* V2 [        end—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート" E' }1 W: j# r6 G2 k

4 G1 h3 D# a% i* g1 x—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート是这个吗?init里面的,写了的
: J% i, d  A5 ~. a/ t% K$ B3 D$ H妖城在线论坛而且我之前没写
" X5 R0 w. T8 w: B* C$ Vbbs.mocwww.com—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート1 [9 \+ N8 \; x+ R) `# u
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;
. O0 D, X, E/ z5 a( A% K# Gbbs.mocwww.com                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;
, `2 A/ b6 f2 _' o- T—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート1 ^2 p2 s/ F$ I/ ^
                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
" G  D+ m% T" m2 f, [1 i魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        
& T  O3 N' P1 N" d* r1 J* J! i魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        
4 F- M: u  Y, l- o/ T. M5 wbbs.mocwww.com                Char.SetData(PetIndex, %对象_体力%, CurVital);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート0 o+ r+ ?' j- F
                Char.SetData(PetIndex, %对象_力量%, CurStr);
" H* N+ |, X: @8 g$ M, K( u—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_强度%, CurTough);bbs.mocwww.com% Z, a. Y. b% ~& x' D* }3 o
                Char.SetData(PetIndex, %对象_速度%, CurQuick);妖城在线论坛/ @5 K6 Y) w( g) T4 x. J0 W- c
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);
1 j/ y+ r) I" M—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート
, }* W6 f+ l# S7 W4 Q魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表这一段的时候,npc是有的

TOP

回复 地板 的帖子

不是滴,就是重启服务器,这个npc就不会在地图中出现,我把最后加的代码删掉,再重启服务器,npc就又出现了,所以我猜测是
% d: |* F* P5 Q" ]魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 0.21);
1 \6 n% {7 u0 G* m. R—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_力量%, ( Pet.GetArtRank(PetIndex, 1) + 2 ) * 0.21);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート% i" ]9 ^5 j% N
                Char.SetData(PetIndex, %对象_强度%, ( Pet.GetArtRank(PetIndex, 2) + 2 ) * 0.21);
: v+ e7 {; ^5 u0 ^6 O- X( b魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_速度%, ( Pet.GetArtRank(PetIndex, 3) + 2 ) * 0.21);
0 @3 E$ ~; N& y; |' E3 E—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_魔法%, ( Pet.GetArtRank(PetIndex, 4) + 2 ) * 0.21);
+ H" z8 `) h7 r5 P4 d; Kbbs.mocwww.com这一段代码出错魔力私服,最新魔力宝贝私服技术交流- j$ R2 \5 u8 y0 I/ q; f
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表# A( Y) x( g* D: h7 H
可是想了半天也觉得没问题……
  S1 w# C/ l# J魔力私服,最新魔力宝贝私服技术交流
2 K5 r) }# L5 B' f魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表[ 本帖最后由 法兰CD兔 于 2018-11-15 10:42 编辑 ]

TOP

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

TOP

自己琢磨明白了……

TOP

回复 8楼 的帖子

还不完善,Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 21);
; e0 I) y; J/ [& V魔力私服,最新魔力宝贝私服技术交流这里的21应该是他的初始bp,比如一般的宠物是20,小使魔是30,但我还没研究出来怎么根据宠物的指针读取它的enemy编号,然后读取数据库里的这个数据,还有包括怎么选择宠物,不是仅仅改第一栏,等我研究完了再说吧
5 w0 H8 G. }9 Rbbs.mocwww.com' }9 Z- x* F* U3 C3 w$ w' f' K
而且退一万步说,这个东西真的没啥技术含量,发出来太献丑了

TOP

回复 10楼 的帖子

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

TOP

发新话题