procedure domain;
0 ]2 O% V3 e- w obegin
5 L3 y5 H3 U+ B! F. b This_Npc.NpcDialog(This_Player,( g( v+ Y( A) W( k+ y; l
'看来你需要我的帮助,\'+
'如果你有不要的物品,我这里可以销毁\ \'+
7 y8 P: r: ]1 v! t2 y/ T" W '|{cmd}<清理垃圾/@DestoryItem>\'+
'|{cmd}<退出/@doexit>');! @) _+ I& q( `! Z/ G$ k5 a
end;
Procedure _DestoryItem;
6 a. ^+ i) Y# s9 Mbegin
6 c* k- m% L5 Q9 \" R4 m# n This_NPC.NpcDialog(This_Player," I4 Q% t8 w5 ?. J$ e
'把需要销毁的东西放进去就行啦!\ \'+
8 X# V3 M- T: ^9 @$ C# ` '|请注意,物品销毁后将<消失/c=red>,无法找回,请<谨慎操作/c=red>!\'+
; @% ~: a' C* z- I$ { '|部分物品无法销毁。'+
. d$ `( J2 t2 M; L7 G e- P '|{cmd}<开始销毁/@DestoryItem_1> //脚本的开始的接口 ' S7 c5 z4 j9 K$ Q, H# U
);
9 l$ v+ t! M8 k& T. B, cend;
Procedure _DestoryItem_1; //这里NPC弹出清理框* u2 I0 J0 X! J# U# \3 d( P7 w
begin
2 p9 h& i. n% \- i( E This_NPC.Click_CommitItem(This_Player,1,'待销毁道具:'); $ _( E/ k d/ U% H
end;
//-------------删除道具--------------------
function NotDestroy(iName : string):boolean; //这里介绍下这是自定义函数接口; K% k2 z! B4 ]7 r' s: N5 U: d' D
begin
3 z/ p3 k( A2 R1 _9 G result := true; //我们处理防刷的方式就在这里添加 u( N( f) V! l* E0 n
case iName of
! J& l+ J) j/ x4 p0 H# k6 B '屠龙' : result := false; //这段的意思是将物品(屠龙 ) 定义为假
6 Z' m2 P" [$ u3 e$ E% {3 ` '这里添加叠加的物品名字' : result := false;
2 f7 X$ Q$ @) t# S6 ]" M '服务器里面刷什么物品就加什么名字在这里' : result := false; 6 E; p/ ^' m* J- ^# K( H
'金刚石' : result := false;5 K3 `0 S( R& P) _3 h- ]6 v, ^! _( ^
'书页' : result := false; ; W2 ?! K- u1 u' h
'祝福油' : result := false; //这里我将三样物品定义为假 false
end;
4 L7 D' a+ \ Q* H% t% V+ S) Fend;
procedure CommitItem(AType:word);
3 O! }/ C: I& E" Y, mbegin T4 Y0 M: `& S' t
if NotDestroy(This_Item.ItemName) then //这里 NotDestroy 如果等于 清理框的物品名 定义为真 执行回收4 ~/ ^4 s9 ]* l" j
begin //刚刚我们定义了三样物品为假 FALSE 脚本执行到这的时候判断为假执行 end else
% y* V/ O: K" l& ^ This_Player.TakeByClientID(This_Item.ClientItemID);% K0 J; p; d' c9 J1 z7 q1 e0 b
This_Player.NotifyClientCommitItem(1,'');* @6 L/ S# ?3 l1 z! G7 M+ M; L
This_Player.PlayerNotice(''+This_Item.ItemName+'已销毁。',2);
+ I/ G5 t4 n2 A% r, R end else . X0 t/ a6 _/ f" \
This_Player.NotifyClientCommitItem(0,'该物品不可销毁,请投入可销毁的物品!'); ; //脚本执行这段 物品不在清理的范围内这样叠加物品就不能8 ~( v5 g" [5 o6 X8 o
//通过清理脚本来将拆0物品变成负1值 叠加问题得到解决 ) @# o& \& @9 [+ L$ f* u/ @
end;' S; \; \7 V8 X( @7 I! N
//这种处理方式不影响叠加物品的使用而又成功的将叠加刷物品解决 7 P, c* [% r- o6 Y# w
//希望这个脚本能帮助广大的GM朋友
Begin
% m7 h9 \! J& T domain;' o; }4 B% t% ^7 o
end.