其实技能NPC是最简单的了。他所用到的内建命令也就那么几个,我们来看看# |6 c6 B; r: Q* v$ ?0 S; a, ?
1、获得玩家职业种类1是铸造(牛美),2是炼丹(神医),3是裁缝(梅花),4是工匠(风兄),0是没有学习技能
a; V& O# r4 c2 ~( H- I" KName := callfunc ('getsenderjobkind');
& O: ^8 y) K; d% Xif Name = '1' then begin* b T* A6 m- E
print ('say 你已经是铸造师了');) d; v! |5 t4 f: C4 \2 e* z
exit;* g# u2 m6 \: S1 x2 M! u
end;
0 O' E. B. s# m7 ?, P# w
2 x2 i1 V4 r( g- |% V( x2、获得玩家技能等级
# ^: a4 J) B& x$ }Name := callfunc ('getsenderjobgrade'); /获得玩家工作等级" x+ }* w- [% z( x, q3 K( e1 n
//这里,1是初级工,2是技能工,3是熟练工,4是达人,5是名人,6是神工
[; \0 c# t5 f6 n' O% l$ f# H) n if Name = '6' then begin //如果是6级那么
# F N, J* v9 v$ r7 N print ('say 你已经是神工了');5 Y8 u8 L. I! N7 x' J3 ~0 M5 r
exit;) Q8 m- Y' r7 c9 m% n: Y
end;
+ U7 P, @6 Y0 Z3、获得玩家技能值# E) w J$ f3 u' F8 L; ^( k7 o- o
Name := callfunc ('getsendertalent'); //获得玩家技能值1 A$ r/ P! f' W9 m2 N' H
nValue := StrToInt (Name); //转换变量类型
2 D1 O( c0 e% p% E( B! L0 e if nValue < 2000 then begin //判断技能值是否小于2000
+ }2 i2 s' D1 r# a4 s" A- ?5 s! M print ('say 想转职的话才能值要达20.00以上'); 7 Q5 B- _% K1 v8 n( D( `4 J
exit;2 @) m8 E; g+ v# {, N- X
end;
; D; C: Z9 u! Y4 S: _3 o, J4、设定玩家为哪种职业# ^, J: ]% Y- u2 U3 S" [
print ('setsenderjobkind 1'); //设置玩家成为铸造' Q1 I' ] ~ Q# @
5、设定玩家为神工
, P! R: S: m% Y' @, j- _$ m print ('setsendervirtueman'); //使玩家成为神工
- P) V/ z3 S$ K/ [9 s; s//====================+ p% }* ~+ n/ G! ]1 t( V
下面一起总结一下交易NPC
+ N5 a! Z1 S2 J# t, m% h& v* o交易Npc就是用到了'tradewindow 命令
7 m4 K* Z+ ^* I. L6 u8 d3 e4 b% j Name := callfunc ('getsendername'); //获取玩家名字
- N( v* g' r Z e% m Str := 'tradewindow ' + Name; //弹出买卖窗口1 D# @5 w9 `3 [7 C& P3 [# R: G7 w4 z
Str := Str + ' 0'; //如果是卖,那么类型是0
: K( C4 f$ W& ?' F print (Str);
9 p' C. x0 y+ P. N$ q" w% z
+ r: f' ~2 q- Q9 i5 w2 k- R其中0,1,2,3,4代表什么?代表买卖的类型
6 p( }! S. r3 ?
$ O8 |" l. e* a6 [5 j! a0 o0为卖给玩家东西,1为回收玩家的东西,这两种模式都需要玩家输入数量3为卖给玩家东西、4回收玩家的东西,这两种模式玩家不需要输入数量,双击直接购买1个 6 `/ u2 c, O/ m
|