其实技能NPC是最简单的了。他所用到的内建命令也就那么几个,我们来看看- |6 c" F! B+ Q8 e4 d4 y
1、获得玩家职业种类1是铸造(牛美),2是炼丹(神医),3是裁缝(梅花),4是工匠(风兄),0是没有学习技能
7 _$ ?3 n+ Z$ C0 yName := callfunc ('getsenderjobkind'); X" ]8 s/ o L
if Name = '1' then begin
[9 P* w3 A. F( p/ v- L) l4 f8 _$ Y print ('say 你已经是铸造师了');! R0 U& ~" p# n$ t* N1 Z9 U
exit;0 |& I9 [" Z3 f) y
end;- e( i. r# Q+ K! j( [9 h( H- V& m
' z. S: M* W2 o b: O% B9 o+ v2、获得玩家技能等级% ]* L8 l6 f; C- X
Name := callfunc ('getsenderjobgrade'); /获得玩家工作等级
5 S( n* H/ \5 r& m4 w+ {' E: T//这里,1是初级工,2是技能工,3是熟练工,4是达人,5是名人,6是神工5 ]+ A. `4 q0 J% ^2 `' K
if Name = '6' then begin //如果是6级那么. R- v, z R+ C) D' `- ~$ O
print ('say 你已经是神工了');8 A# F' d7 o: p" Q& |0 b- Y
exit;
( F z9 \( I1 g0 S" h5 w" U2 V end;; j* i& T2 |, \; V
3、获得玩家技能值% P% X$ b7 }+ }+ _
Name := callfunc ('getsendertalent'); //获得玩家技能值
/ E2 a! x) U8 k: k, t( n nValue := StrToInt (Name); //转换变量类型
, A6 j6 W$ l) l/ s) q! R3 [ if nValue < 2000 then begin //判断技能值是否小于2000
N8 c: c* K/ T, J6 L3 U3 q- a% n print ('say 想转职的话才能值要达20.00以上'); : D5 N9 K/ K. B4 P$ c) b) a Y' ?
exit;/ E6 [) B* a9 r- z1 r% W
end;
; q8 A3 ?9 }0 {; m% W+ O4 G4、设定玩家为哪种职业) J9 [7 C9 x9 G5 w
print ('setsenderjobkind 1'); //设置玩家成为铸造2 n! v; ~) j) D# b4 ^
5、设定玩家为神工
' ?# [/ {, T! M: r. g print ('setsendervirtueman'); //使玩家成为神工) _) t* T2 [5 g$ V
//====================
4 F' E# [5 n4 ]# }; @下面一起总结一下交易NPC
7 u6 ~; a$ j% m1 v5 q7 I交易Npc就是用到了'tradewindow 命令' n& y0 v' o5 @- Q6 k/ d' b
Name := callfunc ('getsendername'); //获取玩家名字3 a) m; k7 r' o& b7 P
Str := 'tradewindow ' + Name; //弹出买卖窗口4 h& R8 b6 A5 l, ^5 e4 _
Str := Str + ' 0'; //如果是卖,那么类型是0: Y5 e& ~( I% N
print (Str);1 b+ m& f/ e4 {$ V
0 ~1 B# F) e; s其中0,1,2,3,4代表什么?代表买卖的类型2 s5 D2 x& @6 c2 Q& P4 H
" V2 D6 i g8 |7 _& I6 m2 a; u( i0为卖给玩家东西,1为回收玩家的东西,这两种模式都需要玩家输入数量3为卖给玩家东西、4回收玩家的东西,这两种模式玩家不需要输入数量,双击直接购买1个 : t5 I+ }' e+ t/ w% K8 w9 U
|