用于战神引擎的装备强化脚本,玩家可以通过NPC脚本,升级首饰的攻击、魔法、道术等属性,脚本默认有6个装备名单,升级需要元宝,你们可以根据自己的需求,任意修改里面升级物品的名单和升级所需要的元宝数量。
部分脚本
procedure _Checkup_1; begin This_Player.setv(88,1,1); This_Player.setv(88,2,0); This_Player.setv(88,3,0); This_Player.setv(88,4,0); This_NPC.Click_CommitItem(This_Player,1,'请把首饰拖入:'); end; procedure _Checkup_2; begin This_Player.setv(88,1,0); This_Player.setv(88,2,1); This_Player.setv(88,3,0); This_Player.setv(88,4,0); This_NPC.Click_CommitItem(This_Player,1,'请把首饰拖入:'); end; procedure _Checkup_3; begin This_Player.setv(88,1,0); This_Player.setv(88,2,0); This_Player.setv(88,3,1); This_Player.setv(88,4,0); This_NPC.Click_CommitItem(This_Player,1,'请把首饰拖入:'); end; procedure _Checkup_4; begin This_Player.setv(88,1,0); This_Player.setv(88,2,0); This_Player.setv(88,3,0); This_Player.setv(88,4,1); This_NPC.Click_CommitItem(This_Player,1,'请把首饰拖入:'); end; procedure CommitItem(AType:word); var i,ck_num,ck_kind,ck_gold,ck_rand:integer; ck_str,ck_red:string; begin ck_gold := 0; //初始化 ck_str := ''; //初始化 ck_red := ''; //初始化 if This_Player.getv(88,1)= 1 then begin for ck_kind := 1 to 300 do begin if ck_name[ck_kind] = This_Item.ItemName then begin ck_num := This_Item.AddPa3; ck_gold := ck_value[ck_kind]; if (ck_num > 0) and (ck_num < 5) then begin for i:= 1 to ck_num do begin ck_gold := ck_gold; end; end; end; end; if ck_num > 9 then begin This_Player.NotifyClientCommitItem(0,'无法升级:你的'+This_Item.ItemName+'已激发出所有属性!'); end else if ck_gold > 0 then begin if This_Player.YBNum >= ck_gold then begin ck_rand := random(100); if ck_rand < 50 then begin This_Player.NotifyClientCommitItem(0,'升级失败,你的武器属性未发生变化'); This_NPC.NotifyClientUPdBagItem(This_Player,This_Item); This_NPC.Click_CommitItem(This_Player,1,'请把首饰拖入:'); This_Player.PsYBConsum(This_NPC,'xin',20150,ck_gold,1); end else if ck_rand < 100 then begin This_Item.AddPa3 := This_Item.AddPa3 + 1; //攻击+1 This_Player.PsYBConsum(This_NPC,'xin',20150,ck_gold,1); ck_str :='攻击+1'; ck_red :='红字公告'; This_NPC.Click_CommitItem(This_Player,1,'请把首饰拖入:'); end; if ck_str <> '' then begin This_Player.NotifyClientCommitItem(0,'升级成功:你的'+This_Item.ItemName+'提升了'+ck_str+'!'); This_NPC.NpcNotice('恭喜:'+This_Player.Name+'在武器升级'+This_Item.ItemName+'时提升了'+ck_str+'!'); This_NPC.NotifyClientUPdBagItem(This_Player,This_Item); This_NPC.Click_CommitItem(This_Player,1,'请把首饰拖入:'); end; end else begin This_Player.NotifyClientCommitItem(0,'无法升级:你的元宝不足,需要'+inttostr(ck_gold)+'元宝。'); end; end else begin This_Player.NotifyClientCommitItem(0,'该物品不可升级,请投入可升级的装备!'); end; end else if This_Player.getv(88,2)= 1 then begin for ck_kind := 1 to 300 do begin if ck_name[ck_kind] = This_Item.ItemName then begin ck_num := This_Item.AddPa4; ck_gold := ck_value[ck_kind]; if (ck_num > 0) and (ck_num < 5) then begin for i:= 1 to ck_num do begin ck_gold := ck_gold; end; end; end; end; if ck_num > 9 then begin This_Player.NotifyClientCommitItem(0,'无法升级:你的'+This_Item.ItemName+'已激发出所有属性!'); end else if ck_gold > 0 then begin if This_Player.YBNum >= ck_gold then begin ck_rand := random(100); if ck_rand < 50 then begin This_Player.NotifyClientCommitItem(0,'升级失败,你的武器属性未发生变化'); This_NPC.NotifyClientUPdBagItem(This_Player,This_Item); This_NPC.Click_CommitItem(This_Player,1,'请把首饰拖入:'); This_Player.PsYBConsum(This_NPC,'xin',20150,ck_gold,1); end else if ck_rand < 100 then begin This_Item.AddPa4 := This_Item.AddPa4 + 1; //魔法+1 This_Player.PsYBConsum(This_NPC,'xin',20150,ck_gold,1); ck_str :='魔法+1'; ck_red :='红字公告'; This_NPC.Click_CommitItem(This_Player,1,'请把首饰拖入:'); end; if ck_str <> '' then begin This_Player.NotifyClientCommitItem(0,'升级成功:你的'+This_Item.ItemName+'提升了'+ck_str+'!'); This_NPC.NpcNotice('恭喜:'+This_Player.Name+'在武器升级'+This_Item.ItemName+'时提升了'+ck_str+'!'); This_NPC.NotifyClientUPdBagItem(This_Player,This_Item); This_NPC.Click_CommitItem(This_Player,1,'请把首饰拖入:'); end; end else begin This_Player.NotifyClientCommitItem(0,'无法升级:你的元宝不足,需要'+inttostr(ck_gold)+'元宝。'); end; end else begin This_Player.NotifyClientCommitItem(0,'该物品不可升级,请投入可升级的装备!'); end; end else if This_Player.getv(88,3)= 1 then begin for ck_kind := 1 to 300 do begin if ck_name[ck_kind] = This_Item.ItemName then begin ck_num := This_Item.AddPa5; //道术+1 ck_gold := ck_value[ck_kind]; if (ck_num > 0) and (ck_num < 5) then begin for i:= 1 to ck_num do begin ck_gold := ck_gold; end; end; end; end; if ck_num > 9 then begin This_Player.NotifyClientCommitItem(0,'无法升级:你的'+This_Item.ItemName+'已激发出所有属性!'); end else if ck_gold > 0 then begin if This_Player.YBNum >= ck_gold then begin ck_rand := random(100); if ck_rand < 50 then begin This_Player.NotifyClientCommitItem(0,'升级失败,你的武器属性未发生变化'); This_NPC.NotifyClientUPdBagItem(This_Player,This_Item); This_NPC.Click_CommitItem(This_Player,1,'请把首饰拖入:'); This_Player.PsYBConsum(This_NPC,'xin',20150,ck_gold,1); end else if ck_rand < 100 then begin This_Item.AddPa5 := This_Item.AddPa5 + 1; //道术+1 This_Player.PsYBConsum(This_NPC,'xin',20150,ck_gold,1); ck_str :='道术+1'; ck_red :='红字公告'; This_NPC.Click_CommitItem(This_Player,1,'请把首饰拖入:'); end; if ck_str <> '' then begin This_Player.NotifyClientCommitItem(0,'升级成功:你的'+This_Item.ItemName+'提升了'+ck_str+'!'); This_NPC.NpcNotice('恭喜:'+This_Player.Name+'在武器升级'+This_Item.ItemName+'时提升了'+ck_str+'!'); This_NPC.NotifyClientUPdBagItem(This_Player,This_Item); This_NPC.Click_CommitItem(This_Player,1,'请把首饰拖入:'); end; end else begin This_Player.NotifyClientCommitItem(0,'无法升级:你的元宝不足,需要'+inttostr(ck_gold)+'元宝。'); end; end else begin This_Player.NotifyClientCommitItem(0,'该物品不可升级,请投入可升级的装备!'); end; end else if This_Player.getv(88,4)= 1 then begin for ck_kind := 1 to 300 do begin if ck_name[ck_kind] = This_Item.ItemName then begin ck_num := This_Item.AddPa4; ck_gold := ck_value[ck_kind]; if (ck_num > 0) and (ck_num < 5) then begin for i:= 1 to ck_num do begin ck_gold := ck_gold; end; end; end; end; if ck_num > 9 then begin This_Player.NotifyClientCommitItem(0,'无法升级:你的'+This_Item.ItemName+'已激发出所有属性!'); end else if ck_gold > 0 then begin if This_Player.YBNum >= ck_gold then begin ck_rand := random(100); if ck_rand < 100 then begin This_Player.NotifyClientCommitItem(0,'升级失败,你的武器属性未发生变化'); This_NPC.NotifyClientUPdBagItem(This_Player,This_Item); This_NPC.Click_CommitItem(This_Player,1,'请把首饰拖入:'); This_Player.PsYBConsum(This_NPC,'xin',20150,ck_gold,1); end else if ck_rand < 100 then begin This_Item.AddPa4 := This_Item.AddPa4 + 1; //幸运+1 This_Player.PsYBConsum(This_NPC,'xin',20150,ck_gold,1); ck_str :='幸运+1'; ck_red :='红字公告'; This_NPC.Click_CommitItem(This_Player,1,'请把首饰拖入:'); end; if ck_str <> '' then begin This_Player.NotifyClientCommitItem(0,'升级成功:你的'+This_Item.ItemName+'提升了'+ck_str+'!'); This_NPC.NpcNotice('恭喜:'+This_Player.Name+'在武器升级'+This_Item.ItemName+'时提升了'+ck_str+'!'); This_NPC.NotifyClientUPdBagItem(This_Player,This_Item); This_NPC.Click_CommitItem(This_Player,1,'请把首饰拖入:'); end; end else begin This_Player.NotifyClientCommitItem(0,'无法升级:你的元宝不足,需要'+inttostr(ck_gold)+'元宝。'); end; end else begin This_Player.NotifyClientCommitItem(0,'该物品不可升级,请投入可升级的装备!'); end; end; end; function xin(price, num: Integer):boolean; begin result := true; end; begin This_Npc.NpcDialog(This_Player, '|可以强化以下首饰 衣服 靴子 腰带及元宝费用:\'+ '|<荣耀 300 虎威 500 主宰 800/c=254> \'+ '|<传奇 1500 玉兔 2200 刺影 3000/c=254> \'+ '|<夺命 5000 追魂 8000 化圣(神)10000/c=254> \'+ '|属性越高成功几率越低: <提升攻魔道/c=253> \'+ '|<可以提升攻, 魔, 道最高+10/c=254> \'+ '|<注意: 每次强化间隔时间请大于5秒/>\'+ '|<注意: ★请强化到8以下 否则装备绑定用不成★>\'+ '|<注意: ★强化过头★装备用不成★后果自负★ >\'+ '|<注意: ★出现装备绑定 请勿找客服 无法解绑★ >\'+ '|<注意: 建议强化到6,项链建议强化到5/c=250> \'+ +'|{cmd}<升级攻击/@Checkup_1><升级魔法/@Checkup_2><升级道术/@Checkup_3> \' ); end.