三千论坛
标题: 发布技能NPC和交易NPC脚本总结 [打印本页]
作者: 快要发癫啦 时间: 2023-1-10 14:19
标题: 发布技能NPC和交易NPC脚本总结
其实技能NPC是最简单的了。他所用到的内建命令也就那么几个,我们来看看2 a0 [7 L3 w, w
1、获得玩家职业种类1是铸造(牛美),2是炼丹(神医),3是裁缝(梅花),4是工匠(风兄),0是没有学习技能+ J' \2 i" {6 h0 p+ B) J, n9 d
Name := callfunc ('getsenderjobkind');
* x5 Q K, M W& `if Name = '1' then begin9 s3 y) p* O: q, l
print ('say 你已经是铸造师了');
. h. r3 s7 x( C, o, ^$ }2 U! a exit;- B* Q$ n" @. T' a7 v6 {# i
end;
" W) L' ~4 ^6 Q+ N
: t0 h, L& v3 u/ Z' q) J2、获得玩家技能等级
1 S9 e$ v% A' R# UName := callfunc ('getsenderjobgrade'); /获得玩家工作等级
* y2 G! H# [# l. E. c4 b/ n//这里,1是初级工,2是技能工,3是熟练工,4是达人,5是名人,6是神工
+ a, K2 S% w: X1 w8 o/ x" v if Name = '6' then begin //如果是6级那么
6 X( _/ e$ ]! j, g6 S5 `$ Q# b print ('say 你已经是神工了');
- O2 V$ ], S( {. ]. W exit;
8 L& P# C b1 F end;1 c+ E5 V5 B3 i _, G9 ~
3、获得玩家技能值
- X' z4 n5 H7 Y# ] Name := callfunc ('getsendertalent'); //获得玩家技能值
. ^0 E0 d" r [7 J3 ^6 ]( X7 n nValue := StrToInt (Name); //转换变量类型
6 v% H5 T0 Q3 B if nValue < 2000 then begin //判断技能值是否小于2000/ ]* T5 n/ V0 U* q( L
print ('say 想转职的话才能值要达20.00以上'); ! i& N8 |) H+ ^
exit;% k8 ~) m8 u$ T; u
end;
9 H5 K, Q/ w F. k& e Y& y4、设定玩家为哪种职业
1 w* ]( `& l. P1 I5 ?+ uprint ('setsenderjobkind 1'); //设置玩家成为铸造. J1 w$ ?/ F4 z9 i9 E2 z) p
5、设定玩家为神工, ^( l% q0 ^7 Q/ T2 `1 h$ ?
print ('setsendervirtueman'); //使玩家成为神工
3 q- V/ R/ B6 B/ S. W' h; a) A8 e//====================
% ^! `! Y4 ^; \8 @* d, r1 e) l下面一起总结一下交易NPC
6 B, Q2 ]+ @' @+ ^' ]+ [: \交易Npc就是用到了'tradewindow 命令
3 n: L, k! k) Y* z: Z z/ @ Name := callfunc ('getsendername'); //获取玩家名字
/ @% `; A% c7 e3 w7 q+ y) O Str := 'tradewindow ' + Name; //弹出买卖窗口
) T. j/ P5 R, b) x Str := Str + ' 0'; //如果是卖,那么类型是0
3 P3 c! C5 E8 ~$ m print (Str);
. o1 s$ y- O% T, I3 z" ?( q
/ r/ Q, `) X% ^( ~其中0,1,2,3,4代表什么?代表买卖的类型. }* W6 ~6 `0 _
! u, m8 A' _5 ]1 g6 R1 ]7 y0为卖给玩家东西,1为回收玩家的东西,这两种模式都需要玩家输入数量3为卖给玩家东西、4回收玩家的东西,这两种模式玩家不需要输入数量,双击直接购买1个
. x2 W2 \* @: N" l
欢迎光临 三千论坛 (http://www.3000y.vip/) |
Powered by Discuz! X3.4 |