发新话题
打印

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

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

如下,这是我写的一个简单的制造满档宠物的npc
6 Y0 C: Q! a1 k9 ?bbs.mocwww.com
* n- g- h5 D5 R/ t+ h魔力私服,最新魔力宝贝私服技术交流目的在于把宠物栏第1栏的1级宠物改成满档2 Z5 G3 f& T6 {' ?2 S! z
具体的非1级宠物错误判定、随机档分配什么的就先暂时略去不表,还有以后再考虑添加选择改哪个宠物啥的
* D$ ?% ]; G+ ~+ _- T% x
: x& ~2 x3 q% g/ n: ?魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表现在最大的问题在于为什么我这么做完以后,创建不出npc呢?  p$ e* A+ V: G# Y8 p$ b8 x5 ?1 J3 S( P
init已经做了,最开始没有改宠物bp那一段,只有改档数的时候是能创建出来的,也能成功修改宠物的档数,但加了改bp的那一部分后,就没有npc被创建出来了,求助魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表% M' l4 `) l( s% m( M, t  ]. @3 a

7 P- F4 o& F$ m& U% D—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートfunction PetMake_Init( _MePtr )
8 m1 u6 Q( _$ r) y3 b: H/ Lbbs.mocwww.com  m; F8 C9 u; w2 j4 @
        Char.SetData(_MePtr, %对像_形象%, 101025);    --%对像_形象%妖城在线论坛# @# N7 ~9 o8 H1 h$ `& g
        Char.SetData(_MePtr, %对像_原形%, 101025);    --%对像_原形%
/ B; V6 z4 h2 w: P/ h2 C        Char.SetData(_MePtr, %对像_地图类型%, 0);     --%对像_地图类型%
, T' K3 `" v! p/ Y        Char.SetData(_MePtr, %对像_地图%, 25000);      --%对像_地图%魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表0 M4 S5 T; m% l8 f
        Char.SetData(_MePtr, %对像_X%, 23);          --%对像_X%魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表8 }1 H" ]& @  i1 M
        Char.SetData(_MePtr, %对像_Y%, 15);           --%对像_Y%bbs.mocwww.com1 W, I+ @  ^  o& `1 w( @
        Char.SetData(_MePtr, %对像_方向%, %左下%);    --%对像_方向%, %左下%
# u* l- q; C2 R, N8 tbbs.mocwww.com        Char.SetData(_MePtr, %对像_原名%, "宠物满档制造者");    --%对像_原名%bbs.mocwww.com- F) t: Q9 w5 T1 ]2 l: m6 y$ t% r
魔力私服,最新魔力宝贝私服技术交流# r( o. r8 G. ?& E3 b7 @
        魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表- u0 G* m' h2 G' q- n
        if (Char.SetTalkedEvent(nil, "PetMake_Talked", _MePtr) < 0) then
' P, `! U9 I6 M—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                print("PetMake_Talked 注册事件失败。");
' c' ?: p, O2 w) v0 q—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                return false;
- K- ]' P7 j4 d        end
0 w- Q& @$ s2 h8 Q. @—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート       
/ V4 I% p8 C) ]+ \- g6 s        return true;
3 J% e/ N! v3 K魔力私服,最新魔力宝贝私服技术交流endbbs.mocwww.com% J1 p  }+ h0 |& V1 K9 m

" a9 T& ^0 N! m) Z; x3 @) S—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートfunction PetMake_Talked( _MePtr, _TalkPtr)—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート" c6 u( r, J& A8 s. a
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表* t0 s( R' R$ G/ Z2 ]- q. [, a
        if(NLG.CheckInFront(_TalkPtr, _MePtr, 1) == false) then
" U! A: C- q) d% v) o2 u5 }1 b, g3 C—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                return ;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート/ c) a" y# i' E; ?
        end
4 M: z: U" ~2 z! n/ R/ b+ Y       
# `( {% i- t* T' e妖城在线论坛        local PetIndex = Char.GetPetIndex(_TalkPtr, 0);bbs.mocwww.com2 J" T' i& q  `" W
        if (PetIndex>0) then
8 P4 x# c# |. F) }. e5 ?bbs.mocwww.com                for t = 0,4 do
' f1 M3 \( S# w7 Qbbs.mocwww.com                        Pet.SetArtRank(PetIndex, t, Pet.FullArtRank(PetIndex, t));妖城在线论坛$ o3 n' O- ]9 m; z
                end       
; {& e( V' _7 |, R* m' v魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                       
; w* {+ h* w  ^—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;
7 Y% c& G3 b; V1 y& m6 c5 K—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;
5 |4 m8 G% v% f  Z: k                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;
5 J6 v3 e! E3 J魔力私服,最新魔力宝贝私服技术交流                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
; h1 S/ B+ r1 b妖城在线论坛                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        9 `" d, r' X% o
       
# D: A' ]  \( b妖城在线论坛                Char.SetData(PetIndex, %对象_体力%, CurVital);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート3 y7 f. e0 s$ A% m5 a+ _
                Char.SetData(PetIndex, %对象_力量%, CurStr);
0 Z4 ^6 j3 s: w3 J7 A+ z. J妖城在线论坛                Char.SetData(PetIndex, %对象_强度%, CurTough);
3 z5 o, v9 `2 u. ^6 i魔力私服,最新魔力宝贝私服技术交流                Char.SetData(PetIndex, %对象_速度%, CurQuick);妖城在线论坛7 W5 |) k; L4 X0 p4 m8 |
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);
( c; z# C0 q& g/ R! K/ ?
# `3 P5 Z$ \* ^8 h魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        else —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート2 Z0 Z0 A9 G  m, n4 B
        endbbs.mocwww.com' o+ F* q) A4 `

+ `* B# n- v7 W5 C3 ]bbs.mocwww.com        return ;bbs.mocwww.com, W6 w. t, d; I
end
* }% Z& Y1 `4 b4 Ibbs.mocwww.com—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート2 v6 L7 w* }% @, j
[ 本帖最后由 法兰CD兔 于 2018-11-14 22:13 编辑 ]

TOP

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

TOP

回复 沙发 的帖子

if (M__PetMake == nil) thenbbs.mocwww.com6 x; U% }, d. |( N0 [& W: b8 h
                M__PetMake = NL.CreateNpc("./data/lua/test/PetMake.lua", "PetMake_Init");魔力私服,最新魔力宝贝私服技术交流; }& C! f! `6 ^  i5 w+ C
                NLG.UpChar(M__PetMake);bbs.mocwww.com9 |+ N- N$ s6 {* j1 w+ }: Y
        end
+ y' i2 @; `1 H0 ]妖城在线论坛
3 M: u( q! Y  e" d4 k+ d. E是这个吗?init里面的,写了的魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表# w* ~  P" |+ X9 k1 ~7 y. m' ^% T
而且我之前没写- V8 v8 m$ Y) d( R1 z! _, I
bbs.mocwww.com) `( r* H8 P$ h9 `
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;妖城在线论坛/ h( A0 `! t. _
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;# U  G# m' q; c) D
                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;
3 i+ q( p4 o9 X, ^魔力私服,最新魔力宝贝私服技术交流                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;bbs.mocwww.com1 |$ r8 Z* O' g
                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        
! X' h& Y4 k" K3 e妖城在线论坛        
1 O4 O# |- Y" n) k8 _魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_体力%, CurVital);
/ _0 |" d% L) R( p妖城在线论坛                Char.SetData(PetIndex, %对象_力量%, CurStr);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表  J" B0 g8 H4 x$ m7 e
                Char.SetData(PetIndex, %对象_强度%, CurTough);
! r3 e: W7 K* v$ L9 c, p—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート                Char.SetData(PetIndex, %对象_速度%, CurQuick);
- m+ q' ?" Y. `! m: P" T% e* ~魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_魔法%, CurMagic);% W  b  I9 s: S/ V6 j
6 B$ O# Q. B$ ~+ `, T! b$ s0 e. V
这一段的时候,npc是有的

TOP

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

TOP

回复 地板 的帖子

不是滴,就是重启服务器,这个npc就不会在地图中出现,我把最后加的代码删掉,再重启服务器,npc就又出现了,所以我猜测是
- v6 i1 o. Q" G" B5 e魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 0.21);bbs.mocwww.com0 L1 k9 i9 B* o& \2 C: \2 ]* W
                Char.SetData(PetIndex, %对象_力量%, ( Pet.GetArtRank(PetIndex, 1) + 2 ) * 0.21);bbs.mocwww.com$ [4 e+ U1 ^; D  y0 k# H4 G
                Char.SetData(PetIndex, %对象_强度%, ( Pet.GetArtRank(PetIndex, 2) + 2 ) * 0.21);
0 T0 ]1 j- ~1 f魔力私服,最新魔力宝贝私服技术交流                Char.SetData(PetIndex, %对象_速度%, ( Pet.GetArtRank(PetIndex, 3) + 2 ) * 0.21);
, i" E" X$ m! K魔力私服,最新魔力宝贝私服技术交流                Char.SetData(PetIndex, %对象_魔法%, ( Pet.GetArtRank(PetIndex, 4) + 2 ) * 0.21);
2 T1 k' L0 p5 }8 ^1 i# ~5 x( V3 x/ v魔力私服,最新魔力宝贝私服技术交流这一段代码出错魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表, {9 Q9 q6 `  B. p; @, s" a  A6 g
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート, {" I) T. o3 M; a9 w/ q+ y6 v
可是想了半天也觉得没问题……$ o! ~. ~  r9 ^2 H. V
9 V+ ?5 P" [  C* f/ D: E: `
[ 本帖最后由 法兰CD兔 于 2018-11-15 10:42 编辑 ]

TOP

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

TOP

自己琢磨明白了……

TOP

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

TOP

回复 8楼 的帖子

还不完善,Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 21);
" F/ d* C- T) p- _9 Mbbs.mocwww.com这里的21应该是他的初始bp,比如一般的宠物是20,小使魔是30,但我还没研究出来怎么根据宠物的指针读取它的enemy编号,然后读取数据库里的这个数据,还有包括怎么选择宠物,不是仅仅改第一栏,等我研究完了再说吧
$ V3 e6 b% p6 v. X: M5 I妖城在线论坛妖城在线论坛/ ?$ R3 f4 S* [2 c% v+ N% K
而且退一万步说,这个东西真的没啥技术含量,发出来太献丑了

TOP

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

TOP

回复 10楼 的帖子

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

TOP

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

TOP

发新话题