其实技能NPC是最简单的了。他所用到的内建命令也就那么几个,我们来看看9 z1 T3 m! y' ]. Q c
1、获得玩家职业种类1是铸造(牛美),2是炼丹(神医),3是裁缝(梅花),4是工匠(风兄),0是没有学习技能8 j; K% y$ x, n% p1 T* ^5 N
Name := callfunc ('getsenderjobkind');
1 _6 W- I7 @' h! ^0 Q& L5 Bif Name = '1' then begin$ `% P* H8 @& V1 Q" s
print ('say 你已经是铸造师了');
+ `' K- c1 X2 r) U# g( \ exit; y% o3 Q5 G+ A$ L& f/ C
end;( ~0 g+ l- d# ^" G1 A, a, h
. a: u/ Y- B) | L; K
2、获得玩家技能等级# u. G- w# n! f9 o7 ]# L h
Name := callfunc ('getsenderjobgrade'); /获得玩家工作等级9 u D5 C3 a1 M$ t& C4 L% [
//这里,1是初级工,2是技能工,3是熟练工,4是达人,5是名人,6是神工 |' W. T& L5 h ~
if Name = '6' then begin //如果是6级那么' q0 ^1 ?+ ~8 ~. F( |
print ('say 你已经是神工了');
$ S! T' O0 g/ T% n7 U9 y exit;
: z B! M8 `. e& U" p' g2 Y2 L% S end;. }) z* w/ k) p4 _ H1 Y/ |, h
3、获得玩家技能值
( n2 H2 u; n4 v; [, p/ r Name := callfunc ('getsendertalent'); //获得玩家技能值
. n1 k4 e, g' I4 C nValue := StrToInt (Name); //转换变量类型# I; [. ^/ H. o: L
if nValue < 2000 then begin //判断技能值是否小于2000
$ ?# ~* a- ]9 q5 U N. @ print ('say 想转职的话才能值要达20.00以上'); ! l( d/ V* m# `
exit;
* Q% R) G' K9 t) J( K" U* y% t end;6 ~0 J3 O2 g) F2 | r4 \# c- a
4、设定玩家为哪种职业
# J! [; x. h3 ^' Wprint ('setsenderjobkind 1'); //设置玩家成为铸造
6 @( B+ i, P p- i% Y5、设定玩家为神工
* C- C# \/ b2 {1 l* s print ('setsendervirtueman'); //使玩家成为神工
- M; a. N- k$ j; D6 `0 {, E6 q//====================
- b# L& T# J7 `: z下面一起总结一下交易NPC
1 h- U! O- w, w交易Npc就是用到了'tradewindow 命令0 n3 ^* z. K j1 _4 e8 H1 U
Name := callfunc ('getsendername'); //获取玩家名字
. x' }2 z1 S: n8 c0 [! C3 b! Y' S Str := 'tradewindow ' + Name; //弹出买卖窗口( b, Z' Q6 A4 x- v
Str := Str + ' 0'; //如果是卖,那么类型是0
& Y5 t0 E" _+ m: c5 D% h! _! s( o print (Str);, m$ E; n- w2 Z ]3 A: [3 E) s# z
* B8 ?/ S' P3 ^5 y( P j其中0,1,2,3,4代表什么?代表买卖的类型) x6 e$ E# K, S0 P6 ^
# z4 u5 L/ F6 ~+ S0 W! Q0为卖给玩家东西,1为回收玩家的东西,这两种模式都需要玩家输入数量3为卖给玩家东西、4回收玩家的东西,这两种模式玩家不需要输入数量,双击直接购买1个
" [$ w# ?% Q s) K/ s/ O3 ?1 c |