发新话题
打印

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

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

如下,这是我写的一个简单的制造满档宠物的npcbbs.mocwww.com. l+ F, @( {2 n

  [" M% c8 r3 x, ?2 M; k5 j7 F0 k魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表目的在于把宠物栏第1栏的1级宠物改成满档魔力私服,最新魔力宝贝私服技术交流# P: K, J5 g) |. [* j
具体的非1级宠物错误判定、随机档分配什么的就先暂时略去不表,还有以后再考虑添加选择改哪个宠物啥的' f) d: N) _, m: d4 n) q% n2 i

! P! U! V" T. u# D—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート现在最大的问题在于为什么我这么做完以后,创建不出npc呢?
6 B( E9 V5 n/ W& a5 o9 kinit已经做了,最开始没有改宠物bp那一段,只有改档数的时候是能创建出来的,也能成功修改宠物的档数,但加了改bp的那一部分后,就没有npc被创建出来了,求助
" ^2 |- {) P' j$ `8 q) }妖城在线论坛魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表! q; C% r- ~7 z  I# _
function PetMake_Init( _MePtr )—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート  ]+ p5 G1 u. m$ U2 a4 I7 k

2 s: s: b9 S0 V# x3 l4 G魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        Char.SetData(_MePtr, %对像_形象%, 101025);    --%对像_形象%妖城在线论坛; }3 [9 p( S( o0 L' m0 K
        Char.SetData(_MePtr, %对像_原形%, 101025);    --%对像_原形%
! U% d8 C5 [7 K$ X# t0 A魔力私服,最新魔力宝贝私服技术交流        Char.SetData(_MePtr, %对像_地图类型%, 0);     --%对像_地图类型%
4 J. f- m- W! Q魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        Char.SetData(_MePtr, %对像_地图%, 25000);      --%对像_地图%
* E% q' j6 t8 n, Z. _8 ^魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        Char.SetData(_MePtr, %对像_X%, 23);          --%对像_X%妖城在线论坛# P. [" n/ P8 s4 q
        Char.SetData(_MePtr, %对像_Y%, 15);           --%对像_Y%
9 j5 G# G) U0 B( B6 T2 B: C魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        Char.SetData(_MePtr, %对像_方向%, %左下%);    --%对像_方向%, %左下%
9 x* `/ R3 c, O7 k& l* A, Y妖城在线论坛        Char.SetData(_MePtr, %对像_原名%, "宠物满档制造者");    --%对像_原名%1 r' h, c/ o. k3 L+ \4 _  j
魔力私服,最新魔力宝贝私服技术交流( N9 E7 c/ l+ p2 R- _
       
3 g7 i" t$ A3 @: O—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        if (Char.SetTalkedEvent(nil, "PetMake_Talked", _MePtr) < 0) thenbbs.mocwww.com  `$ R7 T% n- }
                print("PetMake_Talked 注册事件失败。");
' o) ~6 H# D* O% a% H4 y妖城在线论坛                return false;
% N: N9 B. A; B$ M. v- Y妖城在线论坛        end魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表* `7 }9 ?# r9 j6 d% p) [& _- g
       
% n$ g! C: _& V, L魔力私服,最新魔力宝贝私服技术交流        return true;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート% e4 s$ y& g3 I9 g
end魔力私服,最新魔力宝贝私服技术交流% r, g: R9 V. J* s$ Y) ?6 K6 y
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表) y3 `) A% u& c9 l, ~) y
function PetMake_Talked( _MePtr, _TalkPtr)& U5 q* P( @9 T
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表. o+ O- p5 h4 d6 J! \
        if(NLG.CheckInFront(_TalkPtr, _MePtr, 1) == false) then
; |6 l8 R; y, N3 L; Y魔力私服,最新魔力宝贝私服技术交流                return ;
+ D4 v6 M: \( @8 t- B魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        end
; {/ j5 z  G% t妖城在线论坛       
6 x/ f; W. @3 c  E        local PetIndex = Char.GetPetIndex(_TalkPtr, 0);- D' n+ `' B$ ^2 i" F
        if (PetIndex>0) then
. m) i" `' }1 h  u! z# S妖城在线论坛                for t = 0,4 do
+ r7 `& C" W4 h. `: U. A5 K7 e$ D                        Pet.SetArtRank(PetIndex, t, Pet.FullArtRank(PetIndex, t));
% j9 f' O# f2 b9 X- ?, v魔力私服,最新魔力宝贝私服技术交流                end        妖城在线论坛0 ^; ~2 e4 ?+ p4 D2 S
                        妖城在线论坛1 j$ V) s, Z% e
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;
6 q4 Z0 r* h2 ^, X( k魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表: W" D; l! a5 w: X2 {
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;魔力私服,最新魔力宝贝私服技术交流6 z/ d- T1 b/ Y6 N  Y
                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
+ N* B0 q) @9 i' R/ n) j! s/ ^妖城在线论坛                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表  I/ T8 c; d/ t; d9 ?
        魔力私服,最新魔力宝贝私服技术交流6 G1 |" q$ D, l5 [
                Char.SetData(PetIndex, %对象_体力%, CurVital);魔力私服,最新魔力宝贝私服技术交流( K  \( M" w- g$ B/ `/ B/ N9 a1 H
                Char.SetData(PetIndex, %对象_力量%, CurStr);妖城在线论坛# E0 s9 b8 a( u3 Z+ _3 @
                Char.SetData(PetIndex, %对象_强度%, CurTough);
; X# T- y" A; z# x8 @魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_速度%, CurQuick);
& ?9 ^- Z7 o6 J0 c* u" i魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_魔法%, CurMagic);魔力私服,最新魔力宝贝私服技术交流, l! j2 P2 D0 j3 A. m

" k7 H: ~% P- b+ g. X魔力私服,最新魔力宝贝私服技术交流        else
) y* m; J/ @& b1 M—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        end
; M& R! l6 Q# j魔力私服,最新魔力宝贝私服技术交流
- U2 |! I. t7 \8 p—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        return ;
* }/ N: I. [! _% m4 b, ?妖城在线论坛end妖城在线论坛( i. b3 w# d& o7 x
bbs.mocwww.com0 `4 U$ d2 \0 }6 Z) L, S
[ 本帖最后由 法兰CD兔 于 2018-11-14 22:13 编辑 ]

TOP

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

TOP

回复 沙发 的帖子

if (M__PetMake == nil) then/ ]6 M  F& _7 K+ ^
                M__PetMake = NL.CreateNpc("./data/lua/test/PetMake.lua", "PetMake_Init");
) G! r% a+ V0 h1 Y, \5 \8 H魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                NLG.UpChar(M__PetMake);
8 ?# |) `' o& s% J; C4 w魔力私服,最新魔力宝贝私服技术交流        end妖城在线论坛) Y# W! h' s0 a1 e! b! l* a
bbs.mocwww.com9 J. K4 r% Y. b
是这个吗?init里面的,写了的—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート  ~, t/ y/ ?9 K* j. ]2 X. ~
而且我之前没写妖城在线论坛4 f$ J3 s' a/ Y
/ ~/ [3 {$ [$ o" x
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;
# M; G- S  t  T4 f* \: G0 B! ~魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;5 Z/ [: f& J) b' }  h6 r
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;
$ _' s/ T% a$ m) _0 O—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
! |  F' g+ `' \7 e; n7 D( R! F* _8 w' d—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        妖城在线论坛& o' U7 ~" x. j, v' r
        
8 g. E/ ]4 ?& Q" U  }: g9 e# R妖城在线论坛                Char.SetData(PetIndex, %对象_体力%, CurVital);
8 Y/ U+ d  [4 ]& f—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_力量%, CurStr);
$ J; o6 @# `5 g3 }$ @妖城在线论坛                Char.SetData(PetIndex, %对象_强度%, CurTough);  N! C# V2 w/ S
                Char.SetData(PetIndex, %对象_速度%, CurQuick);妖城在线论坛5 g0 G" @: Z3 |3 `  J
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表! l1 g+ k4 w1 ?( [

& x  p% _; J3 u" h- Z魔力私服,最新魔力宝贝私服技术交流这一段的时候,npc是有的

TOP

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

TOP

回复 地板 的帖子

不是滴,就是重启服务器,这个npc就不会在地图中出现,我把最后加的代码删掉,再重启服务器,npc就又出现了,所以我猜测是
: t$ e( \- L# d2 V                Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 0.21);妖城在线论坛. ~9 t- ]1 V' [$ F% }- P- x9 v) F
                Char.SetData(PetIndex, %对象_力量%, ( Pet.GetArtRank(PetIndex, 1) + 2 ) * 0.21);
0 H4 \. Z; n5 w7 T# y+ Sbbs.mocwww.com                Char.SetData(PetIndex, %对象_强度%, ( Pet.GetArtRank(PetIndex, 2) + 2 ) * 0.21);
1 P) J/ M  p9 Z—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_速度%, ( Pet.GetArtRank(PetIndex, 3) + 2 ) * 0.21);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表; [' [8 }- q" `3 S( |7 H5 ~
                Char.SetData(PetIndex, %对象_魔法%, ( Pet.GetArtRank(PetIndex, 4) + 2 ) * 0.21);bbs.mocwww.com1 b# P. [1 G' R; h% a
这一段代码出错魔力私服,最新魔力宝贝私服技术交流$ ?4 H1 w# S. x- l, D

* U4 Z) J+ k7 Q5 S, W/ J可是想了半天也觉得没问题……
+ T, w8 w. K& m- o; i# Q4 S妖城在线论坛魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表( J+ ^1 |; h6 V! G) Q
[ 本帖最后由 法兰CD兔 于 2018-11-15 10:42 编辑 ]

TOP

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

TOP

自己琢磨明白了……

TOP

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

TOP

回复 8楼 的帖子

还不完善,Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 21);
: C! p+ ?; G, m4 I" n" e' A  W—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート这里的21应该是他的初始bp,比如一般的宠物是20,小使魔是30,但我还没研究出来怎么根据宠物的指针读取它的enemy编号,然后读取数据库里的这个数据,还有包括怎么选择宠物,不是仅仅改第一栏,等我研究完了再说吧
7 `5 @1 o" x9 n$ ?6 V妖城在线论坛魔力私服,最新魔力宝贝私服技术交流3 m& e$ {& Z8 X& m( z6 d* l( W
而且退一万步说,这个东西真的没啥技术含量,发出来太献丑了

TOP

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

TOP

回复 10楼 的帖子

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

TOP

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

TOP

发新话题