其实技能NPC是最简单的了。他所用到的内建命令也就那么几个,我们来看看$ `9 }5 Q( A0 w* B( q% _
1、获得玩家职业种类1是铸造(牛美),2是炼丹(神医),3是裁缝(梅花),4是工匠(风兄),0是没有学习技能
% S/ e8 Q3 D2 c* m7 G. w, TName := callfunc ('getsenderjobkind');8 h, S. t$ G% d7 b: k7 I: `8 Z( o
if Name = '1' then begin
5 }8 V: t5 [3 v! _ print ('say 你已经是铸造师了');% q- s' |6 W% ]: T' W5 ~/ g
exit;. A) P& |$ G# F3 h
end;
" k8 C' o0 o V# t0 P. i9 H7 f) Q @! p& Z" ?6 e! R" Q
2、获得玩家技能等级2 C- i* f" W' g
Name := callfunc ('getsenderjobgrade'); /获得玩家工作等级
! t5 s3 v ^0 d% v//这里,1是初级工,2是技能工,3是熟练工,4是达人,5是名人,6是神工8 p+ V: c7 y% @4 L2 K0 }% ?
if Name = '6' then begin //如果是6级那么5 J7 T, _" @6 m- U3 [& B
print ('say 你已经是神工了');
. V, N3 \( v2 s8 s9 e2 P) { exit;' }/ \5 _8 H* p- o: q5 k
end;
( V, D; b: d* E# @" p, H3、获得玩家技能值, j T- b) g4 W1 R- ]' |4 E- I
Name := callfunc ('getsendertalent'); //获得玩家技能值
& R& {' u" a3 J% S( B/ X5 {$ E nValue := StrToInt (Name); //转换变量类型
- F ^2 @7 ?3 d+ m1 d3 l if nValue < 2000 then begin //判断技能值是否小于2000
( z' T* \9 K% u1 o: L# u+ d, w print ('say 想转职的话才能值要达20.00以上');
& m" u' B: H4 [# ^* S exit;
4 @( O0 h/ e7 ]3 }: D9 w# l end;
2 D, Y" l( [5 J! t4、设定玩家为哪种职业
" p/ O' e8 |* a7 F$ |print ('setsenderjobkind 1'); //设置玩家成为铸造
3 Z2 Q! r* D) Q5 O0 {5、设定玩家为神工8 N2 _: C0 b1 d. C# U M$ j
print ('setsendervirtueman'); //使玩家成为神工! p1 p3 u; N4 w5 E* o
//==================== d( A2 J& K. C% r3 u
下面一起总结一下交易NPC8 v. [7 `: b# b# w# \- W0 L
交易Npc就是用到了'tradewindow 命令
! L3 g: A- L: m% J, w( P1 l: p Name := callfunc ('getsendername'); //获取玩家名字
e1 i) g' q8 }" [ Str := 'tradewindow ' + Name; //弹出买卖窗口
$ c0 W" J: v: k4 z Str := Str + ' 0'; //如果是卖,那么类型是00 I$ L. I( N' |" Y# \4 E
print (Str);' q/ t" t1 @! m
, N2 [0 U) X5 t( ~0 G2 @- J其中0,1,2,3,4代表什么?代表买卖的类型
0 s- K$ v1 m2 q6 L; r$ B: j% ]. e/ R4 d, e( i# R7 d# {) r& `
0为卖给玩家东西,1为回收玩家的东西,这两种模式都需要玩家输入数量3为卖给玩家东西、4回收玩家的东西,这两种模式玩家不需要输入数量,双击直接购买1个
1 S+ V( u$ J% V1 M2 p& g$ g9 m! l |