其实技能NPC是最简单的了。他所用到的内建命令也就那么几个,我们来看看6 r7 n4 j; f Q4 `! A% H* Z9 N
1、获得玩家职业种类1是铸造(牛美),2是炼丹(神医),3是裁缝(梅花),4是工匠(风兄),0是没有学习技能
. @9 Q7 s; y7 o/ Z! t2 nName := callfunc ('getsenderjobkind');2 b6 o2 A2 Z" G
if Name = '1' then begin
# F3 r+ K9 l1 U/ `8 m; N E print ('say 你已经是铸造师了');- ?* J1 J2 Z7 ]! T& y
exit;
, ]! L. b8 }, p- G4 ] end;/ f: R- n; m; P3 k5 R! t
* c0 Q4 Q: M: g
2、获得玩家技能等级
! k* K% ~ a8 o. g, w0 \Name := callfunc ('getsenderjobgrade'); /获得玩家工作等级
& m$ G; C) V) c! x/ e5 T( L//这里,1是初级工,2是技能工,3是熟练工,4是达人,5是名人,6是神工
, j" Y+ P5 z5 ~- s& } if Name = '6' then begin //如果是6级那么- @( @( b$ _& g! X8 ]* }7 N
print ('say 你已经是神工了');' v W2 ~2 |) M! [8 Y! v6 u, ?
exit;* S9 P% n1 {- L9 w% |- x6 h$ ?
end;
3 Y! v- N& d' H/ x( X) m! ]9 I3、获得玩家技能值- |; d' @$ M: o. X9 g4 P! S, R
Name := callfunc ('getsendertalent'); //获得玩家技能值
9 ~9 m: k6 k8 D8 {2 z! g: K; c- K nValue := StrToInt (Name); //转换变量类型
- w8 T7 B5 u( m0 _9 b d6 z if nValue < 2000 then begin //判断技能值是否小于2000/ k* x+ A. b& B$ Y( n/ g
print ('say 想转职的话才能值要达20.00以上');
7 V [1 _/ m% f1 E7 D) { E' ~! D exit;; N0 L* ~+ I5 C! h% K4 K" O
end;% F7 g% ]' u0 C% m$ K6 ?
4、设定玩家为哪种职业
" e" w' D' r5 E) o1 A( Gprint ('setsenderjobkind 1'); //设置玩家成为铸造
% p* k+ _6 S& S1 j5、设定玩家为神工, R: S% ?, y6 x; L% Y4 H
print ('setsendervirtueman'); //使玩家成为神工, ?& ]& v- Q2 l1 A
//====================
$ }- Y8 q; N" j# C( E: {下面一起总结一下交易NPC
6 R. C% a) [. |) A交易Npc就是用到了'tradewindow 命令
( x5 s t$ t# S& A& z$ p Name := callfunc ('getsendername'); //获取玩家名字
" S$ f0 O! t; L: c2 l Str := 'tradewindow ' + Name; //弹出买卖窗口' x- @: c2 Z! J
Str := Str + ' 0'; //如果是卖,那么类型是0
( ^6 J4 q# `2 ]2 { print (Str);9 `: A2 d. Z' h% j# ?. M- g
) U" B j: H6 U2 a# m# S/ W+ I) o6 d5 X其中0,1,2,3,4代表什么?代表买卖的类型* I" R2 G" ?) @! p; P1 a
; G8 P! w" z. }9 L0为卖给玩家东西,1为回收玩家的东西,这两种模式都需要玩家输入数量3为卖给玩家东西、4回收玩家的东西,这两种模式玩家不需要输入数量,双击直接购买1个 7 D7 H& t6 P. O1 K+ N2 H- L1 T5 d8 x" [
|