其实技能NPC是最简单的了。他所用到的内建命令也就那么几个,我们来看看
. ~6 P4 h& P y1、获得玩家职业种类1是铸造(牛美),2是炼丹(神医),3是裁缝(梅花),4是工匠(风兄),0是没有学习技能( D1 _; Q5 ]) I! Z) ?2 o9 ]
Name := callfunc ('getsenderjobkind');
7 c' N2 @) T: ~4 U( Wif Name = '1' then begin
4 w3 J) K9 y7 j& Y* j2 A2 F6 J print ('say 你已经是铸造师了');2 l3 s2 W7 S" G1 v# b8 W, q
exit;5 n' B: ]6 S R) d
end;
8 M2 E" z$ W& A* h" h3 E ~- t5 q* `3 r
2、获得玩家技能等级
5 ]5 Y( y. I+ ~, g* ~1 y% cName := callfunc ('getsenderjobgrade'); /获得玩家工作等级
2 v" Z3 ?, X: i5 A2 G//这里,1是初级工,2是技能工,3是熟练工,4是达人,5是名人,6是神工3 u8 c: ]( X" H# {6 K9 f7 B
if Name = '6' then begin //如果是6级那么" j: H; m# P% n% l$ q
print ('say 你已经是神工了');. G \, I" F1 s) s5 H: I: x
exit;* Y1 D" s. ]* i# k, c
end;" v @% a+ N" {6 v/ a& _, r- t0 M
3、获得玩家技能值
- s( y s& w, Z4 k4 {, w Name := callfunc ('getsendertalent'); //获得玩家技能值+ K! u# ^) k; Y4 o& V
nValue := StrToInt (Name); //转换变量类型
1 l5 p/ r# I( f6 M0 l3 Y. ^: R4 i if nValue < 2000 then begin //判断技能值是否小于2000
5 P3 ?4 m; t/ H3 H: w& m print ('say 想转职的话才能值要达20.00以上'); 6 o/ A& @) q0 D: z5 u
exit;* G2 G( B+ I, b1 A
end;4 F* w" y5 L* T8 }+ W: H
4、设定玩家为哪种职业
" p" a( ~& E, K. D }, u! A& Q5 Mprint ('setsenderjobkind 1'); //设置玩家成为铸造
" S9 N( @ E* ?1 U5、设定玩家为神工+ n2 p3 q _1 d
print ('setsendervirtueman'); //使玩家成为神工
" U6 N+ d4 O* C3 g//====================" a" f) ^3 T4 R5 w
下面一起总结一下交易NPC
8 w2 A8 i4 t' m, A交易Npc就是用到了'tradewindow 命令, [; g% A6 ]) X
Name := callfunc ('getsendername'); //获取玩家名字8 w' B9 o- q( Y3 Y" N# K. O0 u+ i
Str := 'tradewindow ' + Name; //弹出买卖窗口; }0 ^' F& {5 F! F9 @
Str := Str + ' 0'; //如果是卖,那么类型是08 w# N3 U( E; h& ^6 z" y0 Y
print (Str);
/ O0 ~8 m! P) p
8 v" y! j, _! k3 B+ D其中0,1,2,3,4代表什么?代表买卖的类型
/ y$ r3 q. T4 w! K0 P0 [6 T* _# `" w, _6 `
0为卖给玩家东西,1为回收玩家的东西,这两种模式都需要玩家输入数量3为卖给玩家东西、4回收玩家的东西,这两种模式玩家不需要输入数量,双击直接购买1个
9 y. a" L4 d! K& c |