发新话题
打印

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

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

如下,这是我写的一个简单的制造满档宠物的npc. u$ L) w' I# j" K. n  q; V

: V0 B0 h/ [% c—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート目的在于把宠物栏第1栏的1级宠物改成满档—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート) ]. H# Q. `% L2 L- F/ u' ?3 R
具体的非1级宠物错误判定、随机档分配什么的就先暂时略去不表,还有以后再考虑添加选择改哪个宠物啥的
" ~! B# x5 e# @2 O0 n, rbbs.mocwww.com
5 i9 x. a6 b* ~0 Y7 O7 b' p) }( @+ W现在最大的问题在于为什么我这么做完以后,创建不出npc呢?—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート' g7 O) U8 U0 n' x/ i5 t
init已经做了,最开始没有改宠物bp那一段,只有改档数的时候是能创建出来的,也能成功修改宠物的档数,但加了改bp的那一部分后,就没有npc被创建出来了,求助bbs.mocwww.com) ]9 Z. i7 x! M& i) y- \
; S# Q( B; `! t, H8 N/ R
function PetMake_Init( _MePtr )魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表! D3 F$ x6 h4 l3 k

3 O. V; g0 q3 L妖城在线论坛        Char.SetData(_MePtr, %对像_形象%, 101025);    --%对像_形象%
$ I2 G; j2 b0 y# y+ m/ o—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        Char.SetData(_MePtr, %对像_原形%, 101025);    --%对像_原形%
) G) U2 a* ?' {* ~" [2 Q: M/ [' t5 G魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        Char.SetData(_MePtr, %对像_地图类型%, 0);     --%对像_地图类型%bbs.mocwww.com( G' \; S- E& k' U
        Char.SetData(_MePtr, %对像_地图%, 25000);      --%对像_地图%( {# L2 N4 u$ B. a. _
        Char.SetData(_MePtr, %对像_X%, 23);          --%对像_X%魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表. x7 t: b6 h1 o- ?' `
        Char.SetData(_MePtr, %对像_Y%, 15);           --%对像_Y%妖城在线论坛8 I5 l" Y( w+ X! m8 b7 G. i
        Char.SetData(_MePtr, %对像_方向%, %左下%);    --%对像_方向%, %左下%
" s5 q  Y# Y+ L—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        Char.SetData(_MePtr, %对像_原名%, "宠物满档制造者");    --%对像_原名%
% K" U* Y; E1 W" Z—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート7 a8 F# G, K: `3 r! J: N7 F" `" d
        bbs.mocwww.com$ r. E7 P( }2 D. Q5 L- @
        if (Char.SetTalkedEvent(nil, "PetMake_Talked", _MePtr) < 0) then魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表. K- h4 e: D( `1 j
                print("PetMake_Talked 注册事件失败。");—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート! S+ Q, ^5 ]! h! n1 J+ f/ r# w
                return false;
0 n9 [6 f' |: W$ Z# k2 Q8 m        end魔力私服,最新魔力宝贝私服技术交流; l- Z$ F9 Y. I! R' r
       
6 D7 _( \- D1 N魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        return true;
- v( L& H. _; B7 }, M. Eend
, b& _: ~) l( ]魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表: X8 ~+ c- u' D: V8 c4 M! O* [3 E
function PetMake_Talked( _MePtr, _TalkPtr)
7 S- I+ j2 z1 r魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表( O0 g6 e$ d; }
        if(NLG.CheckInFront(_TalkPtr, _MePtr, 1) == false) then—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート' \8 L5 ?- p/ M( h
                return ;妖城在线论坛3 ]* I" a$ ]) U- J4 G6 [; d
        end 妖城在线论坛9 {1 J# R& `/ E+ c& K$ R
       
! ]. }& ~' I0 d魔力私服,最新魔力宝贝私服技术交流        local PetIndex = Char.GetPetIndex(_TalkPtr, 0);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート4 a3 O6 c, ~2 f6 \+ z
        if (PetIndex>0) then
# w5 E9 x! `. D7 d- K9 S% V5 |bbs.mocwww.com                for t = 0,4 do—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート" Q. [  z* G% ]
                        Pet.SetArtRank(PetIndex, t, Pet.FullArtRank(PetIndex, t));
3 n6 F6 \7 T7 b0 P( O3 ~                end        魔力私服,最新魔力宝贝私服技术交流2 ^; Y1 m7 {* Y6 ^# x
                        魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表" Q" b4 W2 S4 F2 m3 n
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;bbs.mocwww.com" \! m- X2 P$ q. `5 n& W
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;妖城在线论坛& x2 M7 f: ]: o6 J9 K+ i
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表' p2 P3 N" R% H& X
                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート) q+ [, X0 \2 U" {
                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        妖城在线论坛$ z% A6 ^  b5 p4 Y# M
        魔力私服,最新魔力宝贝私服技术交流6 M5 w" Z2 u/ R# `  U
                Char.SetData(PetIndex, %对象_体力%, CurVital);7 q9 x3 S. j% R
                Char.SetData(PetIndex, %对象_力量%, CurStr);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表3 {9 C' K  J4 g: `( l7 |+ D
                Char.SetData(PetIndex, %对象_强度%, CurTough);
) l+ T* T3 @7 t: {% @                Char.SetData(PetIndex, %对象_速度%, CurQuick);魔力私服,最新魔力宝贝私服技术交流+ P( n9 c. z$ d2 t3 \/ g; ?
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);
/ o( Y, q/ \8 n* E* Z( Y妖城在线论坛bbs.mocwww.com1 _: u  [0 I1 R
        else / G  U: N$ ^8 z$ I
        end妖城在线论坛3 A1 ]. q2 Y0 x  e- K# p3 I( e# w
魔力私服,最新魔力宝贝私服技术交流, e& v6 d7 K0 M* ^
        return ;bbs.mocwww.com. X4 Q) e  W$ g- s
end
5 G- Z  _: a. a6 d- p魔力私服,最新魔力宝贝私服技术交流
! G, }8 I: ~2 e$ ^魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表[ 本帖最后由 法兰CD兔 于 2018-11-14 22:13 编辑 ]

TOP

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

TOP

回复 沙发 的帖子

if (M__PetMake == nil) thenbbs.mocwww.com+ B" c' F! \$ h1 l, N, J  C
                M__PetMake = NL.CreateNpc("./data/lua/test/PetMake.lua", "PetMake_Init");妖城在线论坛3 Y( p9 D/ s3 d: A/ ^5 H4 d& W$ S
                NLG.UpChar(M__PetMake);
) n6 |: G& }2 u$ L& }魔力私服,最新魔力宝贝私服技术交流        endbbs.mocwww.com& E! E! P# Q( ?: l) ~8 y4 N5 L
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート; |% E6 c: \7 A6 y  L) K& {" t
是这个吗?init里面的,写了的
4 U+ D1 d0 m. ~4 Gbbs.mocwww.com而且我之前没写0 Q6 x% P# g; X! }6 t3 c* @
魔力私服,最新魔力宝贝私服技术交流2 m: x% x& Z3 ?" q; r
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート' a8 Q) F' z0 t- {
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;妖城在线论坛& R4 |4 c  k1 V, k
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;
6 W- }; E( C, i魔力私服,最新魔力宝贝私服技术交流                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
0 I0 ~2 T) D7 @! z" k魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        " R' v. W5 h& p
        
# f8 F# T) o- A) D! A& @1 i" `. Qbbs.mocwww.com                Char.SetData(PetIndex, %对象_体力%, CurVital);
) _0 z0 P7 J8 G6 {1 h& o魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_力量%, CurStr);
9 S3 d$ g6 R2 c6 J7 S1 x4 o9 V0 n魔力私服,最新魔力宝贝私服技术交流                Char.SetData(PetIndex, %对象_强度%, CurTough);
0 M, z9 [5 U  T. o$ @+ V妖城在线论坛                Char.SetData(PetIndex, %对象_速度%, CurQuick);
# |4 }) o: }" y7 n) c0 i                Char.SetData(PetIndex, %对象_魔法%, CurMagic);
% n' z" h* t# {1 C魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
* h% {' `! O2 n! u0 `魔力私服,最新魔力宝贝私服技术交流这一段的时候,npc是有的

TOP

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

TOP

回复 地板 的帖子

不是滴,就是重启服务器,这个npc就不会在地图中出现,我把最后加的代码删掉,再重启服务器,npc就又出现了,所以我猜测是魔力私服,最新魔力宝贝私服技术交流4 ]6 g( D5 O, o# |
                Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 0.21);
+ O2 K, o6 @; m4 F0 y* @. p—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_力量%, ( Pet.GetArtRank(PetIndex, 1) + 2 ) * 0.21);
/ |. B) O* p& Q/ {1 `bbs.mocwww.com                Char.SetData(PetIndex, %对象_强度%, ( Pet.GetArtRank(PetIndex, 2) + 2 ) * 0.21);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート, r% Y, E/ U& w
                Char.SetData(PetIndex, %对象_速度%, ( Pet.GetArtRank(PetIndex, 3) + 2 ) * 0.21);妖城在线论坛' i  J# R' f& B' k8 r
                Char.SetData(PetIndex, %对象_魔法%, ( Pet.GetArtRank(PetIndex, 4) + 2 ) * 0.21);
' |+ e; \  N0 {9 R这一段代码出错—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート$ B2 ^% e2 P; c9 R. _  A- y
bbs.mocwww.com- {0 O3 r1 o( y: P! F7 \
可是想了半天也觉得没问题……魔力私服,最新魔力宝贝私服技术交流9 ]+ T- j2 }2 D6 c% n  J
妖城在线论坛0 j! s" o2 e7 [& w6 A& _
[ 本帖最后由 法兰CD兔 于 2018-11-15 10:42 编辑 ]

TOP

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

TOP

自己琢磨明白了……

TOP

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

TOP

回复 8楼 的帖子

还不完善,Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 21);妖城在线论坛8 w5 u/ a; F; v. T0 r7 x" o# l
这里的21应该是他的初始bp,比如一般的宠物是20,小使魔是30,但我还没研究出来怎么根据宠物的指针读取它的enemy编号,然后读取数据库里的这个数据,还有包括怎么选择宠物,不是仅仅改第一栏,等我研究完了再说吧bbs.mocwww.com; Q+ N: t/ P1 Y8 n! N# B3 q

( |  D, d  b# e9 K而且退一万步说,这个东西真的没啥技术含量,发出来太献丑了

TOP

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

TOP

回复 10楼 的帖子

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

TOP

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

TOP

发新话题