发新话题
打印

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

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

如下,这是我写的一个简单的制造满档宠物的npc魔力私服,最新魔力宝贝私服技术交流9 c# ?  y5 F. O! l# r- m
bbs.mocwww.com) y: }/ _- g: Q& K5 ^) T* w
目的在于把宠物栏第1栏的1级宠物改成满档
5 K. `% y) N: R4 q4 _—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート具体的非1级宠物错误判定、随机档分配什么的就先暂时略去不表,还有以后再考虑添加选择改哪个宠物啥的
) B! U7 @, [% h% z9 k魔力私服,最新魔力宝贝私服技术交流—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート4 w" o, b4 c6 N. Z; F. r+ v6 L
现在最大的问题在于为什么我这么做完以后,创建不出npc呢?妖城在线论坛1 b9 W  h$ _8 m$ ?' D) E1 I) R) M
init已经做了,最开始没有改宠物bp那一段,只有改档数的时候是能创建出来的,也能成功修改宠物的档数,但加了改bp的那一部分后,就没有npc被创建出来了,求助
# h8 X7 @* U2 L0 m4 p3 e. i; I9 U
, w. G/ x, H3 p+ Q! `1 E$ }4 f妖城在线论坛function PetMake_Init( _MePtr )
) x6 j. I# H! |8 J8 O—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート2 x/ g& w5 c/ R2 X4 A" n
        Char.SetData(_MePtr, %对像_形象%, 101025);    --%对像_形象%
/ l: Q& ^! l% G. J4 H* J0 H        Char.SetData(_MePtr, %对像_原形%, 101025);    --%对像_原形%
; i: A% v# l! m5 r        Char.SetData(_MePtr, %对像_地图类型%, 0);     --%对像_地图类型%魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表+ f, ]/ \/ a! X
        Char.SetData(_MePtr, %对像_地图%, 25000);      --%对像_地图%
  n- r# k. y) w, Q3 [& D) Q& s        Char.SetData(_MePtr, %对像_X%, 23);          --%对像_X%
* s$ m  T9 X- _8 s$ p9 p% [' {魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        Char.SetData(_MePtr, %对像_Y%, 15);           --%对像_Y%妖城在线论坛; z- [! C8 @7 L1 V. I) K
        Char.SetData(_MePtr, %对像_方向%, %左下%);    --%对像_方向%, %左下%
' L: C# I9 L( zbbs.mocwww.com        Char.SetData(_MePtr, %对像_原名%, "宠物满档制造者");    --%对像_原名%3 d/ V  y4 a% q. H
魔力私服,最新魔力宝贝私服技术交流  b8 l6 g4 K: i) {4 E% O
        妖城在线论坛' [2 t( i0 @+ q5 p5 g# E3 w
        if (Char.SetTalkedEvent(nil, "PetMake_Talked", _MePtr) < 0) then
, _: h8 x5 W3 n! v' x妖城在线论坛                print("PetMake_Talked 注册事件失败。");
" M9 r1 |1 h, k4 v% w—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                return false;bbs.mocwww.com! ]4 }/ q! k9 x$ {# V0 b/ x0 _. V
        end
5 B) U! u" T5 l  O% x妖城在线论坛       
: }4 Q+ u, @& F: a9 K—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        return true;bbs.mocwww.com2 L4 [2 w/ j( X; ]% ^* S
end—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート* c, v+ N) I3 H' G7 }% a$ b: C
魔力私服,最新魔力宝贝私服技术交流7 T( l7 b+ @' f) I$ J( j
function PetMake_Talked( _MePtr, _TalkPtr)bbs.mocwww.com: n% A8 F) D/ }! g1 ~7 S3 Y1 `+ N

+ Y5 B- [6 o0 D+ }        if(NLG.CheckInFront(_TalkPtr, _MePtr, 1) == false) thenbbs.mocwww.com; a+ {. ]5 _6 P3 |! z4 z, c
                return ;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート/ o% L, _' M9 |% H: ^; b' J5 ?) i
        end
3 o) o/ p8 u2 ]: a妖城在线论坛        妖城在线论坛1 ^! P" C9 u8 ]0 i4 {- e6 _
        local PetIndex = Char.GetPetIndex(_TalkPtr, 0);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート7 {7 [& @$ Z4 o8 ~$ C
        if (PetIndex>0) then bbs.mocwww.com; h' j  @; W3 z- V3 E2 H
                for t = 0,4 do魔力私服,最新魔力宝贝私服技术交流3 [/ Y* e$ D  J- G9 O
                        Pet.SetArtRank(PetIndex, t, Pet.FullArtRank(PetIndex, t));
' m. o0 ^3 H& K6 I4 [/ u- E" ]魔力私服,最新魔力宝贝私服技术交流                end        魔力私服,最新魔力宝贝私服技术交流7 n1 c8 t* M3 W4 X$ o: @
                        # L0 S$ P7 N; {: C6 o4 c, g
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;
' E6 I4 I% P. _' t& }9 j9 @妖城在线论坛                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;bbs.mocwww.com9 M0 O, Q( w2 t% s* \1 q7 g) u
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;
+ U- Q' F6 k, y0 }6 A—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
1 E1 w* s6 h& zbbs.mocwww.com                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;       
7 b+ m7 B9 n7 {7 E$ W  q魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        魔力私服,最新魔力宝贝私服技术交流2 z; p9 J6 S& _7 Z$ n4 ]$ X& J9 I; u
                Char.SetData(PetIndex, %对象_体力%, CurVital);9 w4 X( m$ F7 H$ o+ L
                Char.SetData(PetIndex, %对象_力量%, CurStr);魔力私服,最新魔力宝贝私服技术交流  r! n. |0 X8 E  ]3 l
                Char.SetData(PetIndex, %对象_强度%, CurTough);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表" g/ ^# D/ i9 x& `& N
                Char.SetData(PetIndex, %对象_速度%, CurQuick);! f; |. m; }( {9 b
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);
) Y1 b+ Z. \; v# E8 e! b—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート% ^( u& S8 x+ `' d1 d. Q" a4 p
        else
2 `7 z( l( i5 d4 w- pbbs.mocwww.com        end
2 N# X4 `+ {5 O& y* k魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
6 I* y5 e& |7 w—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        return ;
* f* Z! L% z# y* q) ~: q' Y4 x( v妖城在线论坛end—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート4 `# z* G& O/ t2 T/ A8 Z5 L
妖城在线论坛4 Q9 U6 j& K2 s
[ 本帖最后由 法兰CD兔 于 2018-11-14 22:13 编辑 ]

TOP

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

TOP

回复 沙发 的帖子

if (M__PetMake == nil) then
/ \" G& P7 \% w- xbbs.mocwww.com                M__PetMake = NL.CreateNpc("./data/lua/test/PetMake.lua", "PetMake_Init");妖城在线论坛# d4 o* f4 y% _+ |
                NLG.UpChar(M__PetMake);
1 t# @1 |# d* O5 P妖城在线论坛        end
5 H* F+ g" K& V—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートbbs.mocwww.com! j/ m$ {1 G5 E2 v
是这个吗?init里面的,写了的
. F6 e) X+ l7 \- Q- sbbs.mocwww.com而且我之前没写
" |% k+ k4 \4 z) ibbs.mocwww.com妖城在线论坛! o1 m3 Z  n( x) `$ U
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;
4 |4 K+ u/ ^) `/ B1 T/ x6 [( A                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート1 b. ~/ p" A& k% ?8 L: e
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;bbs.mocwww.com) i7 H9 M1 u+ _2 ]) Q" T1 v) `1 Z
                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;魔力私服,最新魔力宝贝私服技术交流+ B* J7 y- T5 ?* _& T$ W
                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        
3 a) A% S' Z% G9 }* [! ]! d. V0 v        
8 _1 d7 i5 M  [, Q0 a9 X# R妖城在线论坛                Char.SetData(PetIndex, %对象_体力%, CurVital);魔力私服,最新魔力宝贝私服技术交流* m2 a. f. T" ?0 ]3 t
                Char.SetData(PetIndex, %对象_力量%, CurStr);
6 B2 [. e9 h& l" B) X—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_强度%, CurTough);
" B0 k" N2 }7 I' \- O' j妖城在线论坛                Char.SetData(PetIndex, %对象_速度%, CurQuick);
/ N" Q4 @6 _  _. }5 q+ w* S魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_魔法%, CurMagic);
  i/ y6 i+ f) K4 q% \+ ibbs.mocwww.com
! S/ Z& ]5 S  V妖城在线论坛这一段的时候,npc是有的

TOP

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

TOP

回复 地板 的帖子

不是滴,就是重启服务器,这个npc就不会在地图中出现,我把最后加的代码删掉,再重启服务器,npc就又出现了,所以我猜测是
+ ?4 A& k# E2 H% h: s妖城在线论坛                Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 0.21);妖城在线论坛2 ~6 Q; W0 m0 a5 |+ c
                Char.SetData(PetIndex, %对象_力量%, ( Pet.GetArtRank(PetIndex, 1) + 2 ) * 0.21);
" G' G$ \1 F% y; x- m5 o4 Cbbs.mocwww.com                Char.SetData(PetIndex, %对象_强度%, ( Pet.GetArtRank(PetIndex, 2) + 2 ) * 0.21);
. C) C7 N2 e2 m妖城在线论坛                Char.SetData(PetIndex, %对象_速度%, ( Pet.GetArtRank(PetIndex, 3) + 2 ) * 0.21);; e& z2 U( A2 j5 K- S+ U+ s
                Char.SetData(PetIndex, %对象_魔法%, ( Pet.GetArtRank(PetIndex, 4) + 2 ) * 0.21);
) L3 D. T1 X2 s妖城在线论坛这一段代码出错
0 d7 ]4 i, g9 G8 n, ?3 jbbs.mocwww.com
9 }! i$ Y; q( k6 s妖城在线论坛可是想了半天也觉得没问题……魔力私服,最新魔力宝贝私服技术交流9 R7 m; [9 E, d

$ c: s3 |4 Y5 B! P) U—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート[ 本帖最后由 法兰CD兔 于 2018-11-15 10:42 编辑 ]

TOP

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

TOP

自己琢磨明白了……

TOP

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

TOP

回复 8楼 的帖子

还不完善,Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 21);
0 }" z( K- u: F9 O5 ^魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表这里的21应该是他的初始bp,比如一般的宠物是20,小使魔是30,但我还没研究出来怎么根据宠物的指针读取它的enemy编号,然后读取数据库里的这个数据,还有包括怎么选择宠物,不是仅仅改第一栏,等我研究完了再说吧
0 a2 C2 ^3 {( G: n4 Q妖城在线论坛+ j7 o+ d8 C3 w
而且退一万步说,这个东西真的没啥技术含量,发出来太献丑了

TOP

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

TOP

回复 10楼 的帖子

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

TOP

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

TOP

发新话题