其实技能NPC是最简单的了。他所用到的内建命令也就那么几个,我们来看看
4 P8 k* f9 o, r( f1、获得玩家职业种类1是铸造(牛美),2是炼丹(神医),3是裁缝(梅花),4是工匠(风兄),0是没有学习技能
! \9 Q) O% t( i0 m: f# zName := callfunc ('getsenderjobkind');+ n3 {2 Y0 R/ o! f% U
if Name = '1' then begin% _& _9 r ?/ u! V
print ('say 你已经是铸造师了');, D& q# W% a4 g- \0 _
exit;) M y7 ?/ g- T* D2 {4 T! A: d4 `
end;
9 d% Z$ d) v5 B$ u9 b" j4 P9 F g0 x2 ?6 |8 j5 M
2、获得玩家技能等级
0 R; g. u: Q$ _6 N! gName := callfunc ('getsenderjobgrade'); /获得玩家工作等级
0 n# t% u( e7 G0 A5 v//这里,1是初级工,2是技能工,3是熟练工,4是达人,5是名人,6是神工" T% x! q: r$ u: Q4 ^
if Name = '6' then begin //如果是6级那么
! R1 }: \, X2 `# j, J/ I; h print ('say 你已经是神工了');7 U( z" G( A( b
exit;
+ N) r. X8 Z+ V: R' r end;
/ J/ {' ]& X# u8 {* S: h r) k3、获得玩家技能值( ~" T: v: q5 V$ X. D1 E
Name := callfunc ('getsendertalent'); //获得玩家技能值
5 `: D4 ^4 C4 o; \" N$ | nValue := StrToInt (Name); //转换变量类型1 b. U) N2 a. I% ]8 T
if nValue < 2000 then begin //判断技能值是否小于2000
! T. k, h- T$ R print ('say 想转职的话才能值要达20.00以上');
: I$ D( a7 p; g5 Y8 Z exit;/ I2 v0 R, p; u; W8 L: Q
end;: O. \% f. F R) _) {7 L
4、设定玩家为哪种职业
2 B7 B7 ^- b" o. X) hprint ('setsenderjobkind 1'); //设置玩家成为铸造1 Z% m6 I+ O. \4 m& ?
5、设定玩家为神工( b; m' r# o& @! u9 E
print ('setsendervirtueman'); //使玩家成为神工
9 |$ X9 l2 M/ o; z) o0 f//====================
. ]) E5 @7 J. o W) t6 O3 Q! E+ j2 O下面一起总结一下交易NPC
% R1 @1 @+ T3 N3 W交易Npc就是用到了'tradewindow 命令
6 F1 o& I( l5 h! m2 w8 s# X Name := callfunc ('getsendername'); //获取玩家名字
5 K4 n, B4 ?9 F3 Y- z Y Str := 'tradewindow ' + Name; //弹出买卖窗口
3 v; q* ]6 x# A" a* c) x- E- | Str := Str + ' 0'; //如果是卖,那么类型是0
7 d: Y+ v& Q/ P* Q! l; j print (Str);: V0 t& T/ p8 F' J$ X
R) k. F' B8 h- U4 F8 l
其中0,1,2,3,4代表什么?代表买卖的类型& W/ Z. D' H, M) Y+ b* z( f: E
9 F6 ~, V. G% e! l! Z% v. U0为卖给玩家东西,1为回收玩家的东西,这两种模式都需要玩家输入数量3为卖给玩家东西、4回收玩家的东西,这两种模式玩家不需要输入数量,双击直接购买1个 3 _1 |7 H; F- y3 m2 j
|