其实技能NPC是最简单的了。他所用到的内建命令也就那么几个,我们来看看" |' ~* r, z7 {6 C' @( a
1、获得玩家职业种类1是铸造(牛美),2是炼丹(神医),3是裁缝(梅花),4是工匠(风兄),0是没有学习技能
; {8 O2 Q- e. {0 PName := callfunc ('getsenderjobkind');( R9 N5 e* I: x5 d0 K
if Name = '1' then begin
/ S. |! [+ e! j print ('say 你已经是铸造师了');$ ~ u$ }5 X( z2 b+ I b
exit;, N9 f; [( y- E; F6 f5 O
end;
9 Q( `% ^8 k9 ?- W- W* x
7 V& u) `# } N% ^/ c1 }3 w2、获得玩家技能等级
% p, q2 s: \ W1 q) A. bName := callfunc ('getsenderjobgrade'); /获得玩家工作等级
( q$ O( N& Q& Q( @& I//这里,1是初级工,2是技能工,3是熟练工,4是达人,5是名人,6是神工1 y! F: P0 o: H/ C+ X
if Name = '6' then begin //如果是6级那么9 |+ Y' ]. Z, H d/ V% ^
print ('say 你已经是神工了');7 `1 c* F8 w8 M$ g: I
exit;. o, B: t$ }0 @5 D/ t. M
end;
% |6 ^' p1 T5 E3、获得玩家技能值, v7 K _) K. ?3 }: h$ Z- Q
Name := callfunc ('getsendertalent'); //获得玩家技能值- R9 O* J+ t/ a8 ]
nValue := StrToInt (Name); //转换变量类型4 H8 x Q; L% y6 |0 J0 H1 n( F- z
if nValue < 2000 then begin //判断技能值是否小于2000
z j4 x* @& q) R/ j, X7 p4 q8 [ print ('say 想转职的话才能值要达20.00以上'); 4 D! m! M' L8 R( A7 m$ d
exit;
8 ~: f/ F) H" g. O: a3 ~ end;
2 d6 p# e. J" w \% f3 q6 z- D: ^4、设定玩家为哪种职业: J4 D/ b8 k8 [+ A5 |; L
print ('setsenderjobkind 1'); //设置玩家成为铸造. }0 J+ v$ j$ T6 L4 \+ M
5、设定玩家为神工, z# _! Z! m8 Z+ W( `& D
print ('setsendervirtueman'); //使玩家成为神工
& h% F/ G+ H/ a! S' @//====================
* G9 S5 q. |9 P. M) A5 j下面一起总结一下交易NPC
# P& G( ~- w k6 V交易Npc就是用到了'tradewindow 命令1 z! u/ Z& g Z
Name := callfunc ('getsendername'); //获取玩家名字
0 ~/ e8 ?( @) _/ b Str := 'tradewindow ' + Name; //弹出买卖窗口
2 F' i- N+ M" N! w5 h% t+ _0 f Str := Str + ' 0'; //如果是卖,那么类型是0
0 D6 A1 K9 t5 F/ [/ W print (Str);; H4 W% U) A/ R
) E8 g) Z3 I- V4 l3 m其中0,1,2,3,4代表什么?代表买卖的类型! W- D4 [; R$ M& H8 m; S
% e* n6 x9 @/ d) M$ m0为卖给玩家东西,1为回收玩家的东西,这两种模式都需要玩家输入数量3为卖给玩家东西、4回收玩家的东西,这两种模式玩家不需要输入数量,双击直接购买1个 , Y$ |2 U5 b4 n- f* }' z
|