三千论坛
标题: 发布技能NPC和交易NPC脚本总结 [打印本页]
作者: 快要发癫啦 时间: 2023-1-10 14:19
标题: 发布技能NPC和交易NPC脚本总结
其实技能NPC是最简单的了。他所用到的内建命令也就那么几个,我们来看看
# a1 V! \: {5 E, B, C) ^1 ^1、获得玩家职业种类1是铸造(牛美),2是炼丹(神医),3是裁缝(梅花),4是工匠(风兄),0是没有学习技能& t& V) Z1 L; m0 d0 ^
Name := callfunc ('getsenderjobkind');
' ]* ?" [7 O7 S2 t% }' G! }if Name = '1' then begin! Z8 `) @$ ]8 n$ Z. l! E7 P
print ('say 你已经是铸造师了');
( ^; L" @) j/ O* x$ W! r! \ exit;5 ?7 I' t! K0 l, p( e6 v& G% c" q
end;: g- `, u( j2 {1 h: t* \
3 N/ L) U) e2 u; z: q
2、获得玩家技能等级- O. f0 X9 F; b- m- ^# z. X( q
Name := callfunc ('getsenderjobgrade'); /获得玩家工作等级
! v0 F1 R& W2 h8 K- j- p" p( E3 A8 h//这里,1是初级工,2是技能工,3是熟练工,4是达人,5是名人,6是神工1 Z8 K1 |1 Q) N" B: ]/ ?# s
if Name = '6' then begin //如果是6级那么0 f N* |5 D h x3 a
print ('say 你已经是神工了'); }! {' ]8 E* v7 _: V
exit;
9 c1 F6 x/ s( c- L+ z- G3 u end;1 u8 I0 ]# @! [; L: @8 Y' J; Y
3、获得玩家技能值: r; A N+ ~, P% |7 z. t
Name := callfunc ('getsendertalent'); //获得玩家技能值% T: i5 z1 P1 M* g6 S+ @
nValue := StrToInt (Name); //转换变量类型0 p/ |5 V% P) v" R `* A7 `
if nValue < 2000 then begin //判断技能值是否小于20008 h. e& Q% k+ S' x
print ('say 想转职的话才能值要达20.00以上'); 8 D, `! b& F7 u% I9 I* x: |
exit;! y' `: z! p) \7 F V, H0 M R
end;; V% X3 |6 m4 Z3 p: {. X
4、设定玩家为哪种职业
$ W2 t9 A; ~5 }+ [; Eprint ('setsenderjobkind 1'); //设置玩家成为铸造
; W; @# d6 ^8 S" N1 S5、设定玩家为神工
8 \0 G9 P. I; O+ L7 r) Y; e/ Q print ('setsendervirtueman'); //使玩家成为神工
; J- v; v( U' }6 |2 o//====================3 H# E/ z& P1 m; k* y; _4 Q
下面一起总结一下交易NPC8 K3 g8 d' J( Z% a I5 r: m
交易Npc就是用到了'tradewindow 命令' z* K! S7 V9 n* F, `1 C
Name := callfunc ('getsendername'); //获取玩家名字& T" ~" d3 H2 C" w. b( v1 I! P- A
Str := 'tradewindow ' + Name; //弹出买卖窗口
7 |5 ^! p5 B2 a# }& n4 H5 d4 ~! f Str := Str + ' 0'; //如果是卖,那么类型是0# i& i: |( {1 y; m
print (Str);$ h- s" X! t8 y1 B
2 B6 u1 J; `3 Q W其中0,1,2,3,4代表什么?代表买卖的类型% Y; ^9 [9 b3 d) ] f* H$ S
' `- W# o9 T" {7 Q4 u7 ~0为卖给玩家东西,1为回收玩家的东西,这两种模式都需要玩家输入数量3为卖给玩家东西、4回收玩家的东西,这两种模式玩家不需要输入数量,双击直接购买1个
: Z5 |) I( p# `$ o& B' e# m2 M
欢迎光临 三千论坛 (http://www.3000y.com.cn/) |
Powered by Discuz! X3.4 |