三千论坛
标题: 发布技能NPC和交易NPC脚本总结 [打印本页]
作者: 快要发癫啦 时间: 2023-1-10 14:19
标题: 发布技能NPC和交易NPC脚本总结
其实技能NPC是最简单的了。他所用到的内建命令也就那么几个,我们来看看7 ?6 ]' {! e: e; G" k7 f2 K6 D
1、获得玩家职业种类1是铸造(牛美),2是炼丹(神医),3是裁缝(梅花),4是工匠(风兄),0是没有学习技能: y! \" P* b/ H& p4 R. U( q$ L, R
Name := callfunc ('getsenderjobkind');
& ?8 d9 t4 Q8 N2 G9 P. }# |if Name = '1' then begin$ M9 \' P" Q; z. r; `2 m7 C7 h2 k
print ('say 你已经是铸造师了');# x; I" ~; t9 n* h0 M" n1 ]
exit;0 _- B2 s9 H9 e4 w! f$ r) j
end;& F& c( I; e6 y1 g; s& f
( |) C* U2 S9 m% S2、获得玩家技能等级
P3 M, }6 A$ g" I0 T- U: d: cName := callfunc ('getsenderjobgrade'); /获得玩家工作等级0 e) C' M0 d; B3 M8 O
//这里,1是初级工,2是技能工,3是熟练工,4是达人,5是名人,6是神工2 B$ ^! }% F w8 p4 t: ^4 ]
if Name = '6' then begin //如果是6级那么) l7 a8 W, u; Z0 f
print ('say 你已经是神工了');
* B* x& ^, u; O: J) p exit;9 B* K6 z2 O/ m4 r+ r
end;
0 C* h7 O. T- o7 ?4 Z3、获得玩家技能值1 r/ k5 m8 I2 h _6 O2 s" O! O
Name := callfunc ('getsendertalent'); //获得玩家技能值
! A! o& V0 _& b7 I) i# i nValue := StrToInt (Name); //转换变量类型# M. @5 g" X+ p& A( H% Z+ E
if nValue < 2000 then begin //判断技能值是否小于2000% g" r% ^0 X0 W: Y7 V) X
print ('say 想转职的话才能值要达20.00以上'); & p* ?, T4 _. _
exit;8 d6 }& j! i/ l
end;& p2 g) s Z! I3 r# ?4 C, _7 y/ x* V$ @
4、设定玩家为哪种职业/ g5 G, I1 c* P2 }% d3 E! I g
print ('setsenderjobkind 1'); //设置玩家成为铸造
, k" ?1 z! g+ _4 a: L5、设定玩家为神工6 h j2 a( V) J4 y
print ('setsendervirtueman'); //使玩家成为神工
7 C( {7 V8 G) J7 O//====================* ^1 i) x* G( P3 m% t! d- h' Z
下面一起总结一下交易NPC
, g. W% n4 I# h1 A& z- \) ~交易Npc就是用到了'tradewindow 命令2 _! S U0 f* K6 m% B
Name := callfunc ('getsendername'); //获取玩家名字
/ j6 h/ i r1 s' y X Str := 'tradewindow ' + Name; //弹出买卖窗口, U% l) R5 G5 O% ^
Str := Str + ' 0'; //如果是卖,那么类型是05 d/ h! P- _4 C" [- F1 p: l+ ~6 A
print (Str);
' L* f! w( V5 g2 m2 m: g
6 x% N9 D4 @5 }( s5 A" @0 @7 M$ m其中0,1,2,3,4代表什么?代表买卖的类型' F `; ^* z" G1 @* c1 Q# e! V
2 a. B; F. H. d& e
0为卖给玩家东西,1为回收玩家的东西,这两种模式都需要玩家输入数量3为卖给玩家东西、4回收玩家的东西,这两种模式玩家不需要输入数量,双击直接购买1个
& A, t, |8 W* ?. C! q
欢迎光临 三千论坛 (http://www.3000y.vip/) |
Powered by Discuz! X3.4 |