发新话题
打印

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

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

如下,这是我写的一个简单的制造满档宠物的npc妖城在线论坛# x' h1 v4 L1 _" `! B2 V0 W  m: V

- l% Z; ~+ v5 m6 q; Qbbs.mocwww.com目的在于把宠物栏第1栏的1级宠物改成满档
+ O% Q( ]( N' ]3 v+ E魔力私服,最新魔力宝贝私服技术交流具体的非1级宠物错误判定、随机档分配什么的就先暂时略去不表,还有以后再考虑添加选择改哪个宠物啥的bbs.mocwww.com0 l& O' F& K7 J3 M. k# D

* J" E* b8 K1 y& a魔力私服,最新魔力宝贝私服技术交流现在最大的问题在于为什么我这么做完以后,创建不出npc呢?—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート5 `& F0 {9 b$ t7 Y: i
init已经做了,最开始没有改宠物bp那一段,只有改档数的时候是能创建出来的,也能成功修改宠物的档数,但加了改bp的那一部分后,就没有npc被创建出来了,求助
6 Y' C! H" `  Q; C- R8 F魔力私服,最新魔力宝贝私服技术交流魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表; D( L4 ~% O  x2 ^1 Q5 I
function PetMake_Init( _MePtr )# n6 |$ `, y$ x: ^: k

. B. c1 c4 r! ~/ B! C3 X+ ^        Char.SetData(_MePtr, %对像_形象%, 101025);    --%对像_形象%
5 @& N, t$ A& @) f  @5 v魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        Char.SetData(_MePtr, %对像_原形%, 101025);    --%对像_原形%
1 N. C4 Z  ^1 I* J2 D魔力私服,最新魔力宝贝私服技术交流        Char.SetData(_MePtr, %对像_地图类型%, 0);     --%对像_地图类型%妖城在线论坛& V6 t! c5 I& @! U. [8 i. p0 Q6 D) ?
        Char.SetData(_MePtr, %对像_地图%, 25000);      --%对像_地图%& C9 \7 t2 ]# j2 |' s9 k9 r( ~; C
        Char.SetData(_MePtr, %对像_X%, 23);          --%对像_X%
! l. V, Q: Q" Y5 \. Y) }魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        Char.SetData(_MePtr, %对像_Y%, 15);           --%对像_Y%妖城在线论坛1 T; R. w) c/ o/ W, `" J- y
        Char.SetData(_MePtr, %对像_方向%, %左下%);    --%对像_方向%, %左下%
0 ^3 w9 e  F- c: Y& D9 `5 g—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        Char.SetData(_MePtr, %对像_原名%, "宠物满档制造者");    --%对像_原名%
  Y+ O& {1 f- {( m5 i7 O* z+ R9 f+ V9 p4 P5 V3 Y
       
! \1 L  U8 H, d8 F" v4 Q7 ^/ Wbbs.mocwww.com        if (Char.SetTalkedEvent(nil, "PetMake_Talked", _MePtr) < 0) thenbbs.mocwww.com( Q( E7 M$ @4 Y0 w$ }
                print("PetMake_Talked 注册事件失败。");0 H3 p" o$ \7 k/ L2 v; L1 E8 y
                return false;6 M5 F) B8 _( I2 P
        end
' T5 L- a) g% I魔力私服,最新魔力宝贝私服技术交流       
% ~2 S5 P: a/ P+ `, ?魔力私服,最新魔力宝贝私服技术交流        return true;
0 v8 i& x# U/ I1 E9 f7 I( W—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートend( n( F* g) j% q" Q2 A5 Y

' P6 @( [+ Z- q! z魔力私服,最新魔力宝贝私服技术交流function PetMake_Talked( _MePtr, _TalkPtr)
$ W4 n6 L2 C- p6 o# h  G' t7 }" ]& j, @魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート8 m: {7 @8 @* j& V& i- T
        if(NLG.CheckInFront(_TalkPtr, _MePtr, 1) == false) then
( m" {# ~/ h# @7 Y妖城在线论坛                return ;
- v) g, g: C8 @& A—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        end 妖城在线论坛) W6 `4 O: t  Q+ U: ]+ q
        妖城在线论坛. k5 [) C. I7 O: @2 I- n4 L1 x
        local PetIndex = Char.GetPetIndex(_TalkPtr, 0);
! @6 b0 l  S4 A: k1 K妖城在线论坛        if (PetIndex>0) then
, L5 G2 n* |. ]$ m—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                for t = 0,4 dobbs.mocwww.com% _2 l4 v& m. [3 y. G/ t8 f# A" D
                        Pet.SetArtRank(PetIndex, t, Pet.FullArtRank(PetIndex, t));
- ^- q  ~7 x, r& ?bbs.mocwww.com                end        魔力私服,最新魔力宝贝私服技术交流8 q! w, C' \. E8 r4 k
                        妖城在线论坛" y5 M8 H  i/ {0 I& q0 d9 u
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;魔力私服,最新魔力宝贝私服技术交流9 D  v  S' x: U" f
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;* b! j7 L# P# T( U  D0 r" @- ?
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表& [. V, D1 g3 }3 s5 `, d6 n( R9 v
                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
# a& f. E% n5 Y. v$ n—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;       
/ D2 s0 H  n7 B魔力私服,最新魔力宝贝私服技术交流        魔力私服,最新魔力宝贝私服技术交流, L5 ~. p4 K1 r) q# Z
                Char.SetData(PetIndex, %对象_体力%, CurVital);
: [( X8 B0 k  ?$ w9 W9 }5 g( ^—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_力量%, CurStr);
0 d# c( _. e" \3 b, M& r( Abbs.mocwww.com                Char.SetData(PetIndex, %对象_强度%, CurTough);魔力私服,最新魔力宝贝私服技术交流( m) f- ^' q2 n) n
                Char.SetData(PetIndex, %对象_速度%, CurQuick);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート- C. `; I2 i* w# I1 S, F! r
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);- M$ z( a' h7 h

# D8 W' h+ \$ R! _2 g* Z( }bbs.mocwww.com        else
9 T$ f$ H1 k% w0 ^, U—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        end魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表. p  c5 ~7 ~. Q" g8 r- t

! A1 q9 Z$ G" W9 U. X' _        return ;
6 k3 Y6 o, l9 X: ?& V$ i2 l( s$ |—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートend魔力私服,最新魔力宝贝私服技术交流1 i& G6 T( s6 I! l

, S! l. {! u( Q—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート[ 本帖最后由 法兰CD兔 于 2018-11-14 22:13 编辑 ]

TOP

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

TOP

回复 沙发 的帖子

if (M__PetMake == nil) then
/ P' G4 S0 x. `: b% J妖城在线论坛                M__PetMake = NL.CreateNpc("./data/lua/test/PetMake.lua", "PetMake_Init");
$ N% c. v. o* R魔力私服,最新魔力宝贝私服技术交流                NLG.UpChar(M__PetMake);bbs.mocwww.com) r) W& Y. I8 Y/ Z& S7 R7 P; |
        end
0 Q5 @0 h- R+ P3 ]; G—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表3 _% e& \2 A* A
是这个吗?init里面的,写了的妖城在线论坛- m3 Q: p; ^: |8 B  [! c" T  X2 b
而且我之前没写
- \1 k% @4 z9 R4 f4 x! T0 `妖城在线论坛—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート# I. S# W$ e4 t
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表( Y4 m0 [/ @5 \8 z( Q' H9 V8 C
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;bbs.mocwww.com! B8 z8 b' S5 Y( ]$ i( I$ H: s+ o
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;
( V1 c5 t) u. f% e! \! f妖城在线论坛                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
% _3 ^) `9 s2 B4 C) |—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート! o8 K+ P0 O- W9 q; @0 I
        
9 n3 B' q; ]/ d1 _1 y魔力私服,最新魔力宝贝私服技术交流                Char.SetData(PetIndex, %对象_体力%, CurVital);妖城在线论坛0 `8 a* F  E- i# c
                Char.SetData(PetIndex, %对象_力量%, CurStr);8 I. T0 D5 O9 D
                Char.SetData(PetIndex, %对象_强度%, CurTough);魔力私服,最新魔力宝贝私服技术交流* L5 I1 x' L  p
                Char.SetData(PetIndex, %对象_速度%, CurQuick);
$ S5 y4 b6 B: _( ?9 N% ^妖城在线论坛                Char.SetData(PetIndex, %对象_魔法%, CurMagic);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート' \, {# u' w5 a- C

% d( i# d, {" t" M5 K  D& n; `这一段的时候,npc是有的

TOP

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

TOP

回复 地板 的帖子

不是滴,就是重启服务器,这个npc就不会在地图中出现,我把最后加的代码删掉,再重启服务器,npc就又出现了,所以我猜测是—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート& g7 \, E$ z: t8 n/ n2 t6 I  |
                Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 0.21);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表: k2 n, N/ O1 c  I4 W
                Char.SetData(PetIndex, %对象_力量%, ( Pet.GetArtRank(PetIndex, 1) + 2 ) * 0.21);
5 A* J! U) m, n- r) q/ \4 Q                Char.SetData(PetIndex, %对象_强度%, ( Pet.GetArtRank(PetIndex, 2) + 2 ) * 0.21);
# W4 g7 Y6 k( j" v7 C, o8 Q魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_速度%, ( Pet.GetArtRank(PetIndex, 3) + 2 ) * 0.21);
& X7 i! m( e- J                Char.SetData(PetIndex, %对象_魔法%, ( Pet.GetArtRank(PetIndex, 4) + 2 ) * 0.21);
" O% ^  s3 t7 N2 q) W9 o$ Q/ Y这一段代码出错
, y& U" f& Z# D
$ B# |; |1 L6 f  k8 g魔力私服,最新魔力宝贝私服技术交流可是想了半天也觉得没问题……bbs.mocwww.com  n/ \$ `8 z' D  v( a) ~
bbs.mocwww.com+ n' a7 f" K/ R
[ 本帖最后由 法兰CD兔 于 2018-11-15 10:42 编辑 ]

TOP

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

TOP

自己琢磨明白了……

TOP

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

TOP

回复 8楼 的帖子

还不完善,Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 21);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート6 @0 S& i  N+ a- L5 j
这里的21应该是他的初始bp,比如一般的宠物是20,小使魔是30,但我还没研究出来怎么根据宠物的指针读取它的enemy编号,然后读取数据库里的这个数据,还有包括怎么选择宠物,不是仅仅改第一栏,等我研究完了再说吧魔力私服,最新魔力宝贝私服技术交流' @# I( w! m* d2 A
妖城在线论坛) H+ H* M  ?" j5 W" c" J
而且退一万步说,这个东西真的没啥技术含量,发出来太献丑了

TOP

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

TOP

回复 10楼 的帖子

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

TOP

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

TOP

发新话题