其实技能NPC是最简单的了。他所用到的内建命令也就那么几个,我们来看看% w) p2 L& k0 Q, K$ D) V" z
1、获得玩家职业种类1是铸造(牛美),2是炼丹(神医),3是裁缝(梅花),4是工匠(风兄),0是没有学习技能
& O1 r4 }5 }* \6 a/ u1 XName := callfunc ('getsenderjobkind');
6 y: [" g7 [0 l W m5 }if Name = '1' then begin0 i" g5 g8 y; R% g) H. r. L0 ]
print ('say 你已经是铸造师了');
& I ~- K6 d _5 a exit;: ~- E9 A% z$ W# ^ z3 X4 W; t: A
end;- V/ `" p7 |7 ~$ q
" O" B' v2 c# q( i% Z2、获得玩家技能等级, y, \! a; J4 f7 b% F
Name := callfunc ('getsenderjobgrade'); /获得玩家工作等级/ y ^/ g' B- O6 J$ ^$ P
//这里,1是初级工,2是技能工,3是熟练工,4是达人,5是名人,6是神工
) ~4 K# @/ b3 X# ?: b# Q3 } if Name = '6' then begin //如果是6级那么8 Q, a# \9 O, w3 J. m& D
print ('say 你已经是神工了');; n: x( M8 S7 G/ f: ? `5 S" z" r
exit;
9 r: m, }4 k( L x5 ~ end;4 ^9 @, O1 d0 g( K$ Y# D1 m( V2 T
3、获得玩家技能值
% n7 r, D; P0 h1 _# C Name := callfunc ('getsendertalent'); //获得玩家技能值
' T- W, `6 f2 ^# S; A nValue := StrToInt (Name); //转换变量类型, x' R W( T: h, ]9 F# Q
if nValue < 2000 then begin //判断技能值是否小于2000
, e! }5 Q4 j4 ]' f% b7 S \& k- H& j print ('say 想转职的话才能值要达20.00以上'); - q5 H* L5 g" P2 l. L# A
exit;
; o& M, h' K3 d end;
; H! ~0 F+ Z1 e4、设定玩家为哪种职业: i7 h. ^7 p8 D. b f
print ('setsenderjobkind 1'); //设置玩家成为铸造
, r: _7 b" O# v! u5、设定玩家为神工: l! F1 y; s" w+ R" [0 O
print ('setsendervirtueman'); //使玩家成为神工 Y3 y: j, N7 [
//====================
6 B- b" u5 k+ G- J9 z下面一起总结一下交易NPC( L( O! f% \/ e0 w
交易Npc就是用到了'tradewindow 命令
2 ? ^& w! S) K) x# R+ E Name := callfunc ('getsendername'); //获取玩家名字: }, X7 A& ?- u$ J
Str := 'tradewindow ' + Name; //弹出买卖窗口
4 i# }9 C3 e; Q ? ] Str := Str + ' 0'; //如果是卖,那么类型是0) l8 t! f; s; K# J- T7 e7 I% r
print (Str);7 y& c9 R% l9 M" D" N
0 L* ^! v; _" j( U2 M$ L9 e
其中0,1,2,3,4代表什么?代表买卖的类型* O9 G$ r6 r, O$ h2 \& T
/ U, q: w8 |" y6 B! d3 D
0为卖给玩家东西,1为回收玩家的东西,这两种模式都需要玩家输入数量3为卖给玩家东西、4回收玩家的东西,这两种模式玩家不需要输入数量,双击直接购买1个 3 @) b9 W" G, w8 W; H; ~
|