Board logo

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

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

如下,这是我写的一个简单的制造满档宠物的npc# }6 p5 X5 N  d

: r! n4 K  l$ T1 V! I$ }—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート目的在于把宠物栏第1栏的1级宠物改成满档
6 B+ {6 s5 F$ c魔力私服,最新魔力宝贝私服技术交流具体的非1级宠物错误判定、随机档分配什么的就先暂时略去不表,还有以后再考虑添加选择改哪个宠物啥的
( t+ O' k2 p' f: i/ p, S& c- Cbbs.mocwww.com
. |: k8 s+ O) V1 I! V# O7 E( `3 Y—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート现在最大的问题在于为什么我这么做完以后,创建不出npc呢?妖城在线论坛5 Y/ d+ k$ g; n4 }$ [' K4 Y  F
init已经做了,最开始没有改宠物bp那一段,只有改档数的时候是能创建出来的,也能成功修改宠物的档数,但加了改bp的那一部分后,就没有npc被创建出来了,求助—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート2 K, u* ^; x9 R# u- q$ X/ ?3 I- p

7 z1 _8 \4 N5 Z' D5 Obbs.mocwww.comfunction PetMake_Init( _MePtr )
. w( v6 z& \" L; _+ f1 s2 `魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート" I5 S# O; H1 @. S6 y6 _
        Char.SetData(_MePtr, %对像_形象%, 101025);    --%对像_形象%
; U+ Z( y/ k& l# \bbs.mocwww.com        Char.SetData(_MePtr, %对像_原形%, 101025);    --%对像_原形%
6 N/ W/ q( m. c# K. X        Char.SetData(_MePtr, %对像_地图类型%, 0);     --%对像_地图类型%bbs.mocwww.com- T6 Q( v- B( [" p* \6 R9 D- [
        Char.SetData(_MePtr, %对像_地图%, 25000);      --%对像_地图%妖城在线论坛" K! G. h3 W! n& W2 A& H8 }
        Char.SetData(_MePtr, %对像_X%, 23);          --%对像_X%
+ X& l, a& C0 ?& W* ~. R—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        Char.SetData(_MePtr, %对像_Y%, 15);           --%对像_Y%
8 ]# z/ U6 ^( I. H: s魔力私服,最新魔力宝贝私服技术交流        Char.SetData(_MePtr, %对像_方向%, %左下%);    --%对像_方向%, %左下%
, d" }  L) \" b9 H, D3 g        Char.SetData(_MePtr, %对像_原名%, "宠物满档制造者");    --%对像_原名%bbs.mocwww.com( g0 @1 M4 K6 Q) E6 p& i# x

! n# ~9 ?9 S' w9 A( e) B! W6 S2 W魔力私服,最新魔力宝贝私服技术交流        魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表4 n) f4 A' ?$ V) Q2 p# E4 b8 K
        if (Char.SetTalkedEvent(nil, "PetMake_Talked", _MePtr) < 0) thenbbs.mocwww.com0 Z1 t4 B8 t6 q% ~" f$ P( y  N! G' z
                print("PetMake_Talked 注册事件失败。");—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート) b/ S2 I1 o1 {+ l+ z0 n% d
                return false;
8 Z) N# }+ d) C8 v$ M: mbbs.mocwww.com        end
$ z$ [% N: W6 q! W. L+ @bbs.mocwww.com        —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート3 [+ N- o# q1 D! n
        return true;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート; z. D  P+ x/ f# @0 f6 o) r
end
1 o( J+ z) ^7 Y4 I* g魔力私服,最新魔力宝贝私服技术交流
$ N7 p9 x: |) W6 {- S3 v- E妖城在线论坛function PetMake_Talked( _MePtr, _TalkPtr)
7 ]5 k4 i7 P4 @( ?# a  h' Ybbs.mocwww.com
. l1 N3 {9 v0 h6 s1 I—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート        if(NLG.CheckInFront(_TalkPtr, _MePtr, 1) == false) then
' P; l, x1 ~3 @  f魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                return ;
. v( w+ R1 v" c! t        end bbs.mocwww.com% D: c" ]1 \1 _! y! e7 h- ~+ L
        魔力私服,最新魔力宝贝私服技术交流, ~( W6 {( s0 Q, \5 s5 i
        local PetIndex = Char.GetPetIndex(_TalkPtr, 0);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート; T8 `# b0 }7 P4 p  _  w' a
        if (PetIndex>0) then 妖城在线论坛0 K6 ^6 Z; W7 n: g0 ?6 M3 I
                for t = 0,4 do
. C$ I! p5 [3 z8 x, w" L                        Pet.SetArtRank(PetIndex, t, Pet.FullArtRank(PetIndex, t));bbs.mocwww.com$ N- j, ~7 \, N7 w+ |" t
                end        魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表* q: T; s" V" y; v# z  O3 X
                       
, U; u; N9 ]% a                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;
# ~, r* w( w5 m! e% a8 R魔力私服,最新魔力宝贝私服技术交流                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;
3 K) ]) f4 i7 v( [; r魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;
5 E, u' Z& u' [" p: B! C魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;魔力私服,最新魔力宝贝私服技术交流# S7 k( x; }8 d; k
                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        2 t4 S3 K& p5 ~6 B( W
       
: l; p! e6 ]& d& a: \魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表                Char.SetData(PetIndex, %对象_体力%, CurVital);
  \( {8 V" z3 o: Y0 q. i                Char.SetData(PetIndex, %对象_力量%, CurStr);
3 u/ c! v) z! }- r4 c                Char.SetData(PetIndex, %对象_强度%, CurTough);" n/ i1 L( |' T, n
                Char.SetData(PetIndex, %对象_速度%, CurQuick);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート- l4 B% [& D' P( c7 V
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);
. Q% i: E# ~1 C3 N- ~0 ]bbs.mocwww.com
0 c( X' c+ E) o        else
6 m, T8 W" {3 Gbbs.mocwww.com        endbbs.mocwww.com2 S( V4 e- d. J8 c9 A' v' e

5 i$ b2 q. Y- T. b; L# b魔力私服,最新魔力宝贝私服技术交流        return ;
' S. }' {# ^/ u. P2 e妖城在线论坛end
7 ]1 J2 u; i& V/ w) X魔力私服,最新魔力宝贝私服技术交流
0 ]1 z& ~) f6 P/ D" l" jbbs.mocwww.com[ 本帖最后由 法兰CD兔 于 2018-11-14 22:13 编辑 ]
作者: 毛毛虫    时间: 2018-11-14 22:37

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

if (M__PetMake == nil) then  o, \& o4 t# ^, u; M) }
                M__PetMake = NL.CreateNpc("./data/lua/test/PetMake.lua", "PetMake_Init");
; [% Z7 x7 D  ybbs.mocwww.com                NLG.UpChar(M__PetMake);bbs.mocwww.com7 S% M2 M. U: J- Q! `& r
        end
, D& H+ U# `/ V+ Y8 h* d—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表2 S$ {) |2 _- F% D
是这个吗?init里面的,写了的妖城在线论坛+ P) H( q: v9 j7 ?, }
而且我之前没写
( B/ d4 F5 ]& I; S: J" U
% s& F! S' g; [) G+ F" e+ h2 Zbbs.mocwww.com                local CurVital = ( Pet.FullArtRank(PetIndex, 0) + 2 ) * 0.21;
4 v: |& N7 D" G( J! ibbs.mocwww.com                local CurStr = ( Pet.FullArtRank(PetIndex, 1) + 2 ) * 0.21;
' l8 o$ J! B+ Z& V6 u9 ]" S5 zbbs.mocwww.com                local CurTough = ( Pet.FullArtRank(PetIndex, 2) + 2 ) * 0.21;魔力私服,最新魔力宝贝私服技术交流, ]0 J8 z7 J: _: I8 x; S
                local CurQuick = ( Pet.FullArtRank(PetIndex, 3) + 2 ) * 0.21;魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表+ G* b* I" V* l( S" o4 T( j+ M' G
                local CurMagic = ( Pet.FullArtRank(PetIndex, 4) + 2 ) * 0.21;        bbs.mocwww.com7 [0 _; N& T4 m( S  M. q, ^3 u9 \2 d! C
        " H3 C6 C5 m' \3 \
                Char.SetData(PetIndex, %对象_体力%, CurVital);
2 l# \& o2 x7 H' G$ `魔力私服,最新魔力宝贝私服技术交流                Char.SetData(PetIndex, %对象_力量%, CurStr);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表; m( K6 w. m+ m2 j
                Char.SetData(PetIndex, %对象_强度%, CurTough);
% T% x! J* ?& U0 Y                Char.SetData(PetIndex, %对象_速度%, CurQuick);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表( U1 D* P  V- W' y* F% I$ i
                Char.SetData(PetIndex, %对象_魔法%, CurMagic);
; w' @, i/ s6 o! G' V! Sbbs.mocwww.com妖城在线论坛& B8 {; r) b, W" C8 M" ^
这一段的时候,npc是有的
作者: 毛毛虫    时间: 2018-11-15 09:14

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

不是滴,就是重启服务器,这个npc就不会在地图中出现,我把最后加的代码删掉,再重启服务器,npc就又出现了,所以我猜测是
6 R9 y. _/ P$ k. |妖城在线论坛                Char.SetData(PetIndex, %对象_体力%, ( Pet.GetArtRank(PetIndex, 0) + 2 ) * 0.21);魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表3 Y! K4 h! L) @  n- v+ }$ I+ P# \
                Char.SetData(PetIndex, %对象_力量%, ( Pet.GetArtRank(PetIndex, 1) + 2 ) * 0.21);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート; {, Q6 W) m; s3 R
                Char.SetData(PetIndex, %对象_强度%, ( Pet.GetArtRank(PetIndex, 2) + 2 ) * 0.21);妖城在线论坛/ t+ h/ Z! n( t
                Char.SetData(PetIndex, %对象_速度%, ( Pet.GetArtRank(PetIndex, 3) + 2 ) * 0.21);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート0 V7 |- r" a8 v9 P7 o
                Char.SetData(PetIndex, %对象_魔法%, ( Pet.GetArtRank(PetIndex, 4) + 2 ) * 0.21);
: R! j" U* W% Y- m# c+ o5 w魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表这一段代码出错—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート$ k8 G& v; U/ z3 T2 {" w

) T' \8 P0 l5 D—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート可是想了半天也觉得没问题……
$ m4 G3 R* I4 j) X( S! T, {6 x, a" t0 k( t; d8 p
[ 本帖最后由 法兰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);—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート% C" a: T, p% p2 ?# d8 w
这里的21应该是他的初始bp,比如一般的宠物是20,小使魔是30,但我还没研究出来怎么根据宠物的指针读取它的enemy编号,然后读取数据库里的这个数据,还有包括怎么选择宠物,不是仅仅改第一栏,等我研究完了再说吧
: [. k! k: s( \bbs.mocwww.com- h4 ]! J" j# H4 Z1 O
而且退一万步说,这个东西真的没啥技术含量,发出来太献丑了
作者: 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