Board logo

标题: [提问] 写了一个简单的制造满档的npc,但进入游戏npc不创建出来 [打印本页]

作者: 法兰CD兔    时间: 2018-11-14 22:11     标题: 写了一个简单的制造满档的npc,但进入游戏npc不创建出来

如下,这是我写的一个简单的制造满档宠物的npc
4 G4 v- R/ K3 }+ ~0 l* o% Abbs.mocwww.com
5 w, U( Q1 Q$ M# c( E魔力私服,最新魔力宝贝私服技术交流目的在于把宠物栏第1栏的1级宠物改成满档
& b' n, y, l' u0 b8 m0 ^妖城在线论坛具体的非1级宠物错误判定、随机档分配什么的就先暂时略去不表,还有以后再考虑添加选择改哪个宠物啥的
" C' h0 z; [' \魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表  R1 Y' w% O; J. w- m* l
现在最大的问题在于为什么我这么做完以后,创建不出npc呢?妖城在线论坛* l. u4 @  P, s# o4 y% a
init已经做了,最开始没有改宠物bp那一段,只有改档数的时候是能创建出来的,也能成功修改宠物的档数,但加了改bp的那一部分后,就没有npc被创建出来了,求助bbs.mocwww.com: v' y) h) p8 Y9 w1 z
魔力私服,最新魔力宝贝私服技术交流( s' M& e& p( u5 {; w
function PetMake_Init( _MePtr )bbs.mocwww.com6 ^. c9 m* E7 n! z! `5 r' R

9 N4 m4 M# J$ i2 y, P魔力私服,最新魔力宝贝私服技术交流        Char.SetData(_MePtr, %对像_形象%, 101025);    --%对像_形象%
, b7 L& f5 P. O1 ~- ?bbs.mocwww.com        Char.SetData(_MePtr, %对像_原形%, 101025);    --%对像_原形%
9 N! u% N9 L& ~" H6 E—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        Char.SetData(_MePtr, %对像_地图类型%, 0);     --%对像_地图类型%妖城在线论坛' C! ?0 F( H5 C
        Char.SetData(_MePtr, %对像_地图%, 25000);      --%对像_地图%
, _( ?4 Z5 O, n) ?% W8 v6 Y魔力私服,最新魔力宝贝私服技术交流        Char.SetData(_MePtr, %对像_X%, 23);          --%对像_X%魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表0 N% I7 F5 J$ M3 `" y
        Char.SetData(_MePtr, %对像_Y%, 15);           --%对像_Y%
/ K& {; ]# N* D—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        Char.SetData(_MePtr, %对像_方向%, %左下%);    --%对像_方向%, %左下%魔力私服,最新魔力宝贝私服技术交流* u: ~3 g+ C( S8 x9 V: E) z6 R# q" G& a
        Char.SetData(_MePtr, %对像_原名%, "宠物满档制造者");    --%对像_原名%
9 y! u* f7 F6 N5 x: `# }1 }0 _魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
8 N  A( S: B4 h0 C妖城在线论坛        bbs.mocwww.com) s' ?3 m$ O) `6 V) p
        if (Char.SetTalkedEvent(nil, "PetMake_Talked", _MePtr) < 0) then魔力私服,最新魔力宝贝私服技术交流! u% X2 `, _8 H. n) y
                print("PetMake_Talked 注册事件失败。");—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート" T: s& b# g; p  ^# R
                return false;
6 l2 O% X- I0 N. [bbs.mocwww.com        end
) {6 W# _& ~1 T8 |* Q5 q! A妖城在线论坛        妖城在线论坛( c% D4 p1 W. z! T  C
        return true;
3 t0 b5 h& y9 u" f  h5 f6 v魔力私服,最新魔力宝贝私服技术交流end
$ X3 C$ G, @: b& p' I0 T8 Vbbs.mocwww.combbs.mocwww.com& B& ^0 [/ X! O6 O* F* h7 I
function PetMake_Talked( _MePtr, _TalkPtr)
8 u2 L/ K  n% j* C4 b0 d! I7 q/ c—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート' J5 H2 a1 C( i- T. T
        if(NLG.CheckInFront(_TalkPtr, _MePtr, 1) == false) then
: w9 k0 q8 Y) \8 O8 Q' L4 Hbbs.mocwww.com                return ;! |5 S5 q) M- I. x* G" A$ u. C
        end
: y$ Y/ `- |/ A—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート       
2 d* f2 D4 }  w2 L) T妖城在线论坛        local PetIndex = Char.GetPetIndex(_TalkPtr, 0);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表: k' J! p3 N& E
        if (PetIndex>0) then 魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表' {2 q# z3 d1 k
                for t = 0,4 do/ g2 U8 a) `+ B$ G3 `7 W- h; g
                        Pet.SetArtRank(PetIndex, t, Pet.FullArtRank(PetIndex, t));bbs.mocwww.com) r- n$ B! H3 E3 u" H: i; b
                end       
% @1 T( M, ^1 T3 p魔力私服,最新魔力宝贝私服技术交流                        魔力私服,最新魔力宝贝私服技术交流) G& s/ s- y4 G/ ~9 _
                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;
: c! k7 P7 D) l/ c魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;
& C* t3 C" G# k% q2 J0 O                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;bbs.mocwww.com1 T+ S+ y& E; ]
                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;
4 {9 R( o4 ~% B$ @; w5 v. a; z( \                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;       
% S, O7 f2 u! U2 I" A5 e        魔力私服,最新魔力宝贝私服技术交流# p+ W5 r0 q6 N
                Char.SetData(PetIndex, %对象_体力%, CurVital);魔力私服,最新魔力宝贝私服技术交流; V' P0 r9 X: @( ^
                Char.SetData(PetIndex, %对象_力量%, CurStr);
# D& l+ ?3 B8 F, S% {/ C- N妖城在线论坛                Char.SetData(PetIndex, %对象_强度%, CurTough);
1 y. K) c/ _- ~9 Y& n. y; Kbbs.mocwww.com                Char.SetData(PetIndex, %对象_速度%, CurQuick);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表% P6 \) `2 L2 e0 d, z( g
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);
- f/ R+ O" M! h4 R; V魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表妖城在线论坛# w9 P% P. k+ |2 Q7 N3 B; }
        else 魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表9 W" J) G$ y# ~3 Z/ J
        end—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート: x6 @2 p1 ]+ L
+ A$ J: S6 L) [9 ?2 W
        return ;
4 F: j" H2 G5 ?; J  Y$ e魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表end
0 X1 @1 i2 U, S( s5 @妖城在线论坛
- h6 y" B4 g9 a& H' k2 Y1 v魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表[ 本帖最后由 法兰CD兔 于 2018-11-14 22:13 编辑 ]
作者: 毛毛虫    时间: 2018-11-14 22:37

托管到框架了么?upchar一下?
作者: 法兰CD兔    时间: 2018-11-14 22:47     标题: 回复 沙发 的帖子

if (M__PetMake == nil) then
6 r, l- r, `" ]' i6 }4 T妖城在线论坛                M__PetMake = NL.CreateNpc("./data/lua/test/PetMake.lua", "PetMake_Init");bbs.mocwww.com/ V2 x5 W* S0 J9 C) G; p! [
                NLG.UpChar(M__PetMake);
. ~2 U) I3 |0 }1 H. L魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表        end/ d* s! |3 H. `1 `: u
妖城在线论坛5 F; @0 W) x3 r2 ]$ U
是这个吗?init里面的,写了的& \9 W" f6 M3 q1 u- U# L' z. X
而且我之前没写
' N: h; x7 G3 i# z9 S$ [) c魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
8 Q/ a' C  x9 Q9 n0 C; Zbbs.mocwww.com                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;妖城在线论坛" U/ V# D- _, p( @4 ~+ u
                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;
' `) q9 N. U  F) H2 H. O妖城在线论坛                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;bbs.mocwww.com" A7 K* W( g5 _* r0 B4 `
                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;4 P. }7 E9 o2 f- P/ ^* z
                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        bbs.mocwww.com& V1 }- y' y& `2 T  q
        魔力私服,最新魔力宝贝私服技术交流9 n% W7 \+ C. [+ x( G2 d
                Char.SetData(PetIndex, %对象_体力%, CurVital);妖城在线论坛9 Z2 k0 w. s7 D9 y: ?4 V& J% {9 N
                Char.SetData(PetIndex, %对象_力量%, CurStr);妖城在线论坛9 D) q5 L1 {# A9 M7 {& i- C; `
                Char.SetData(PetIndex, %对象_强度%, CurTough);
8 P  n' F* d3 ]8 P                Char.SetData(PetIndex, %对象_速度%, CurQuick);
1 T2 z: r2 a2 v8 F魔力私服,最新魔力宝贝私服技术交流                Char.SetData(PetIndex, %对象_魔法%, CurMagic);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表  F; h, T' e* e4 B

  [' W3 d+ ?, s; v这一段的时候,npc是有的
作者: 毛毛虫    时间: 2018-11-15 09:14

不明真相~~NPC在过程中消失么?
作者: 法兰CD兔    时间: 2018-11-15 09:52     标题: 回复 地板 的帖子

不是滴,就是重启服务器,这个npc就不会在地图中出现,我把最后加的代码删掉,再重启服务器,npc就又出现了,所以我猜测是
( v# E+ g+ e* ~8 i" ^# |" [妖城在线论坛                Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 0.21);
9 a5 {  A0 |9 m1 mbbs.mocwww.com                Char.SetData(PetIndex, %对象_力量%, ( Pet.GetArtRank(PetIndex, 1) + 2 ) * 0.21);4 U: U9 J( h, ~: m  T
                Char.SetData(PetIndex, %对象_强度%, ( Pet.GetArtRank(PetIndex, 2) + 2 ) * 0.21);妖城在线论坛" R# b% g  k3 B
                Char.SetData(PetIndex, %对象_速度%, ( Pet.GetArtRank(PetIndex, 3) + 2 ) * 0.21);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表! y/ H: ]- w, B; k9 L# d
                Char.SetData(PetIndex, %对象_魔法%, ( Pet.GetArtRank(PetIndex, 4) + 2 ) * 0.21);
$ K4 l+ U8 Z1 K# o3 [0 t魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表这一段代码出错
* p( r) j- P5 T* C4 U  f7 A6 x& ~. W魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
" U7 ^7 G! U& o' a; G. ]bbs.mocwww.com可是想了半天也觉得没问题……
2 A5 \. B- `! |. A" bbbs.mocwww.com魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表- o# W+ s9 H) c8 K2 G" {& l5 {
[ 本帖最后由 法兰CD兔 于 2018-11-15 10:42 编辑 ]
作者: 法兰CD兔    时间: 2018-11-15 10:42

纠正一下,都应该是*21,不是*0.21
作者: 法兰CD兔    时间: 2018-11-15 10:57

自己琢磨明白了……
作者: wangjun1127    时间: 2018-11-17 01:01

哪里问题啊???分享出来哈!!
作者: 法兰CD兔    时间: 2018-11-18 09:54     标题: 回复 8楼 的帖子

还不完善,Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 21);  H0 J6 R5 H8 Y2 [; [
这里的21应该是他的初始bp,比如一般的宠物是20,小使魔是30,但我还没研究出来怎么根据宠物的指针读取它的enemy编号,然后读取数据库里的这个数据,还有包括怎么选择宠物,不是仅仅改第一栏,等我研究完了再说吧
& `4 _8 r  Q8 y8 h2 u2 O4 ^5 e4 g魔力私服,最新魔力宝贝私服技术交流
" w8 o+ Q+ E, U, }! o. _8 D妖城在线论坛而且退一万步说,这个东西真的没啥技术含量,发出来太献丑了
作者: orochi0531    时间: 2018-11-18 17:41

我有制作过自定义档次的,想几档就几档,全部自己决定,不过,我忘了放哪里了。
作者: 法兰CD兔    时间: 2018-11-18 22:37     标题: 回复 10楼 的帖子

大佬牛X,这玩意儿自己研究挺有意思的,我再研究研究,也搞成这样的
作者: 老鸟十三    时间: 2020-2-15 11:32

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




欢迎光临 妖城在线论坛 (http://bbs.mocwww.com/) Powered by Discuz! 6.0.0