其实技能NPC是最简单的了。他所用到的内建命令也就那么几个,我们来看看
& Z8 I7 d! @' D$ H5 `) `1、获得玩家职业种类1是铸造(牛美),2是炼丹(神医),3是裁缝(梅花),4是工匠(风兄),0是没有学习技能
, n: U+ G9 O1 r' e* \- }3 VName := callfunc ('getsenderjobkind');2 x' `+ {- i+ V
if Name = '1' then begin
4 O% {* H2 t; | print ('say 你已经是铸造师了');% |" |' K O; g& M5 d: K" S7 ?
exit;# A5 U+ n% s& R* Q: n
end;9 C( A7 B9 z: N! l) [$ F
+ z P5 Y8 |9 v2 s: O0 }
2、获得玩家技能等级
, N$ C7 x; W+ FName := callfunc ('getsenderjobgrade'); /获得玩家工作等级
# X- ]4 A, L2 y' e//这里,1是初级工,2是技能工,3是熟练工,4是达人,5是名人,6是神工
@+ _- _ q: }6 P G% ]1 y) s5 U if Name = '6' then begin //如果是6级那么
* i& g7 X3 f1 y9 @, \# A' O' p# q print ('say 你已经是神工了');
0 w, A( ?- _! C+ s$ j: G8 G exit;2 |4 g: h8 w- p& z- p$ n- B1 F
end;
$ o& A/ s9 e5 L. R9 ?1 O3、获得玩家技能值+ W' U% q) N& @
Name := callfunc ('getsendertalent'); //获得玩家技能值
9 m9 C- H/ J0 |1 L+ ^4 [ nValue := StrToInt (Name); //转换变量类型
8 [6 H; X4 ~% F; Z8 Q& _ if nValue < 2000 then begin //判断技能值是否小于20000 J& i* n. q4 X% Q) u$ r, \
print ('say 想转职的话才能值要达20.00以上');
# B$ C; Q8 L8 O6 c3 b" W: i exit;4 E& |2 y" V) S* G
end;
+ |4 D2 D7 f1 e/ m9 Q4、设定玩家为哪种职业! i2 ` [4 h! O* Y& M
print ('setsenderjobkind 1'); //设置玩家成为铸造
7 c' {! H E0 Z0 G- i, V5、设定玩家为神工5 ]& }1 B4 R2 N& |: }( @
print ('setsendervirtueman'); //使玩家成为神工
4 F- B5 U$ |, q1 m0 e/ b1 Q; E; b//====================
) O3 J) j- Y7 }* ]0 N6 X8 D下面一起总结一下交易NPC
, g2 ?1 G0 I+ v( v* ?+ I0 O交易Npc就是用到了'tradewindow 命令4 C$ V' Y4 l9 @8 Q
Name := callfunc ('getsendername'); //获取玩家名字
, q" l* P8 m6 a" b& ` Str := 'tradewindow ' + Name; //弹出买卖窗口' [2 x" ~( S* M' l2 f) s: J
Str := Str + ' 0'; //如果是卖,那么类型是0
( w8 S* P5 L4 U. m& g$ ^( r7 | print (Str);; u7 {6 t' M( @3 Z% L2 o3 \7 e; I5 [
: Q, @/ l' J' a! F0 i. F
其中0,1,2,3,4代表什么?代表买卖的类型9 s: o* k1 z0 s+ _0 w' s
4 N8 I0 A- `' \3 K9 |5 P0为卖给玩家东西,1为回收玩家的东西,这两种模式都需要玩家输入数量3为卖给玩家东西、4回收玩家的东西,这两种模式玩家不需要输入数量,双击直接购买1个
3 @/ X( `$ t( y( p |