其实技能NPC是最简单的了。他所用到的内建命令也就那么几个,我们来看看. h$ @" I) ~' Y8 T9 }4 P3 q
1、获得玩家职业种类1是铸造(牛美),2是炼丹(神医),3是裁缝(梅花),4是工匠(风兄),0是没有学习技能/ H. m% ?/ [3 c; x
Name := callfunc ('getsenderjobkind');
) l2 [% A; q9 h7 D3 Vif Name = '1' then begin/ P* f* F! i: u
print ('say 你已经是铸造师了');5 J6 P" ]( _! S/ ]' }; u6 e; a9 Q
exit;
2 o0 H& i9 l: ]- @ end;
! G2 i; v* J- v* d: f1 \4 Q7 ?2 l1 Z$ x' h& o, R
2、获得玩家技能等级
. r# j3 ?0 C! f% i- q4 M3 X0 FName := callfunc ('getsenderjobgrade'); /获得玩家工作等级
5 ^ g: k8 z/ r4 u: Q% u+ Y//这里,1是初级工,2是技能工,3是熟练工,4是达人,5是名人,6是神工8 Y! F5 |% }; g! L
if Name = '6' then begin //如果是6级那么6 e3 v: S- \+ a# L2 |% \" e
print ('say 你已经是神工了');, \/ C* J* F ~* m- I; g, ~4 O! f
exit;
5 k* ]$ `1 C) P end;, b; \3 m! k# ~( D8 D
3、获得玩家技能值$ Q- L& R# H0 n. k& t; h
Name := callfunc ('getsendertalent'); //获得玩家技能值
6 o( L) k7 c: U' M6 V" t8 i nValue := StrToInt (Name); //转换变量类型
% H: g7 D- B# w& }9 @+ O8 S if nValue < 2000 then begin //判断技能值是否小于2000
3 g1 A; S5 b" x7 `3 s$ ~2 m% Y% J/ \$ u print ('say 想转职的话才能值要达20.00以上'); 6 L! l) t- W) C W# w
exit;# H% m: |1 J; \
end;
+ W2 Z/ r8 n3 }0 }! q o, u4、设定玩家为哪种职业6 J0 O6 W8 q: Q0 K
print ('setsenderjobkind 1'); //设置玩家成为铸造
3 x7 t/ J2 J# _9 j1 y8 j5 S5、设定玩家为神工
0 E9 K- E8 a; m3 R s print ('setsendervirtueman'); //使玩家成为神工
3 i+ D5 R4 I9 a( |//====================
$ S; _% x% K! }" e3 `下面一起总结一下交易NPC5 P8 j5 d+ [3 w8 b% w5 J/ b
交易Npc就是用到了'tradewindow 命令
8 ?/ w P# Y1 X9 n Name := callfunc ('getsendername'); //获取玩家名字
/ r V* S+ Q* j% z0 W Str := 'tradewindow ' + Name; //弹出买卖窗口
7 H# h7 f/ t$ x+ { Str := Str + ' 0'; //如果是卖,那么类型是0
) Y' q% F# B- }% i% f- I print (Str);( d4 A" p' @+ e- D; p
# b( h/ d {% ]! b: T& j其中0,1,2,3,4代表什么?代表买卖的类型
7 @5 s) [: U& A6 y, X' ~& |
9 ~+ D1 K' l# |5 `) x( i4 x' V. ~$ D0为卖给玩家东西,1为回收玩家的东西,这两种模式都需要玩家输入数量3为卖给玩家东西、4回收玩家的东西,这两种模式玩家不需要输入数量,双击直接购买1个
0 ?% H( U" l% O' N* ` |