用于战神引擎的装备增加BuFF属性Npc脚本,功能非常的全面,里面给出的装备内容包含了各种类型,因为是明文版的,可以根据自己的需求,任意修改里面的物品内容,脚本自带了GM后台设置功能,可以直接设置几率,非常的方便,对新手来说,也非常的友好,不要学什么代码,就可以修改好自己想要的几率。
部分脚本
//--------------------------------------- // 此脚本由【烈阳】开发,定制特色脚本 // 请尊重每一个创作者,此条勿删,谢谢支持! //--------------------------------------- PROGRAM Mir2; var TampForVar:integer; Procedure _exit; begin This_Npc.CloseDialog(This_Player); end; procedure P100; begin end; function addSpace( s : string; needLen : Integer ) : string; var i, j : Integer; begin i := Length(s); if i < needLen then begin j := needLen - i; for i := 0 to j do begin s := s + ' '; end; end; Result := s; end; function PrintStr(Pstr:string;Pid:integer):string; var index,len:integer; GetTempstr,GetConvStr,Outstr:string; begin index:=0; GetConvStr:=Pstr; len := length(Pstr); repeat index:=index+1; GetConvStr:=GetValidStr(GetConvStr,GetTempstr,','); if index = Pid then Outstr:=GetTempstr; until (GetTempstr = '') or (index >= len); result:=Outstr; end; function GetBuffItemConfig(MakeItemsID:integer):String; //以下根据版本自行添加 begin case MakeItemsID of //获得物,数量,需要的物品,数量,需要的物品,元宝,灵符,金刚石(打造裁决需要3炼狱+5黑铁+1万元宝+1千灵符+100金刚石) 1 : result := '首充武器BUFF, 几率触发,1.5倍经验加成,首充获得'; 7 : result := '军鼓LV6以上BUFF, 几率触发,10级技能,合成获得'; //打造力量戒指需1个龙之戒指+1000元宝(若不需要的项目为0即可,逗号不可删除) 4 : result := '天魔以上武器, 几率触发,攻击伤害提高50%,合成打怪获得'; 6 : result := '魔龙以上衣服, 几率触发,提高100双防,合成打怪获得'; 10 : result := '血石+100以上BUFF, 几率触发,提高20%生命值,合成获得'; // 6 : result := '恶魔铃铛,3,炼狱,5,黑铁矿石,10000,1000,0'; 13 : result := '腰牌1.5-1.8BUFF, 几率触发,召唤垃圾宝宝巨型多角虫1,半兽勇士1,鹰卫召唤高级宝宝天穹使者,恶魔领主,骷髅神兵为你作战直到死亡注:6种其中1种,合成获得'; // 8 : result := '紫碧螺,3,炼狱,5,黑铁矿石,10000,1000,0'; // 9 : result := '龙纹剑,3,炼狱,5,黑铁矿石,10000,1000,0'; 16 : result := '银光-灵犀重盾BUFF, 几率触发,攻击时触发使敌人流血,合成获得'; // 11 : result := '三眼手镯,3,炼狱,5,黑铁矿石,10000,1000,0'; // 12 : result := '泰坦戒指,3,炼狱,5,黑铁矿石,10000,1000,0'; 19 : result := '军鼓LV6以上BUFF, 几率触发,10级技能,合成获得'; // 14 : result := '贵族斗笠,3,炼狱,5,黑铁矿石,10000,1000,0'; // 15 : result := '贵族勋章,3,炼狱,5,黑铁矿石,10000,1000,0'; 21 : result := '其他10多种BUFF请游戏研究'; // 17 : result := '贵族靴子,3,炼狱,5,黑铁矿石,10000,1000,0'; // 18 : result := '屠龙,3,炼狱,5,黑铁矿石,10000,1000,0'; // 19 : result := '贵族屠龙,3,炼狱,5,黑铁矿石,10000,1000,0'; // 20 : result := '魔龙战戒,3,炼狱,5,黑铁矿石,10000,1000,0'; // 21 : result := '烈阳小鸟,3,炼狱,5,黑铁矿石,10000,1000,0'; // 22 : result := '烈阳大棒,3,炼狱,5,黑铁矿石,10000,1000,0'; //runquest里的xx戒指和jj戒指为演示,因此这里没有添加 else result := ''; end; end; function GetItemBuffFunc(BuffID : integer) : string; begin case BuffID of 1 : result := '[首充神剑],攻击时触发1.5倍经验倍数持续600秒'; 2 : result := '[天魔以上武器],攻击时触发提升50%攻击伤害持续10秒30秒冷却'; 3 : result := '[魔龙以上衣服],攻击时触发提升100点双抗持续10秒30秒冷却'; 4 : result := '[军鼓LV6以上BUFF],几率触发10级技能30秒冷却'; 5 : result := '[血石+100以上BUFF],几率触发提高20%生命值30秒冷却'; 6 : result := '[腰牌1.5-1.8倍BUFF],几率触发召唤垃圾宝宝巨型多角虫1,半兽勇士1,鹰卫召唤高级宝宝天穹使者,恶魔领主,骷髅神兵为你作战直到死亡注:【6种其中1种】.200秒冷却'; 7 : result := '[银光-灵犀重盾BUFF],几率触发攻击时触发使敌人流血持续10秒30秒冷却'; 8 : result := '[腰牌1.9-2.0倍BUFF],几率触发召唤垃圾宝宝巨型多角虫1,半兽勇士1,鹰卫召唤高级宝宝天穹使者,恶魔领主,骷髅神兵召唤终级宝宝?,?,?,?为你作战直到死亡注:【10种其中1种】.200秒冷却'; 9 : result := '[其他隐藏BUFF请自行研究]'; // 10 : result := '[灵魂项链],死亡时触发原地复活无冷却'; // 11 : result := '[三眼手镯],攻击时触发使敌人流血10秒30秒冷却'; // 12 : result := '[泰坦戒指],攻击时触发使敌人红名30秒冷却'; // 13 : result := '[黑铁头盔],攻击时触发使敌人武器报废30秒冷却'; // 14 : result := '[贵族斗笠],攻击时触发使敌人定身10秒30秒冷却'; // 15 : result := '[贵族勋章],攻击时触发随机掉落敌人背包物品无冷却'; // 16 : result := '[贵族腰带],攻击时触发使敌人卡屏30秒冷却'; // 17 : result := '[贵族靴子],攻击时触发使敌人进入混乱5秒冷却'; // 18 : result := '[屠龙],攻击时触发使敌人降低双抗持续10秒30秒冷却'; // 19 : result := '[贵族屠龙],攻击时触发秒杀敌人30秒冷却'; // 20 : result := '[魔龙战戒],杀人后触发复活敌人进行鞭尸30秒冷却'; // 21 : result := '[烈阳小鸟],攻击时触发移形换影(对怪无效)5秒冷却'; // 22 : result := '[首充神剑],攻击时触发1.5倍经验倍数持续600秒'; //runquest里的xx戒指和jj戒指为演示,因此这里没有添加 else result := ''; end; end; begin k := This_Player.GetS(56,86); MakeItemName := PrintStr(GetBuffItemConfig(k),1); if This_Npc.InputOK then begin if PrintStr(GetBuffItemConfig(k),3) <> '0' then begin Num_1 := StrToIntDef(PrintStr(GetBuffItemConfig(k),2),0); Item_1 := PrintStr(GetBuffItemConfig(k),3); if This_Player.GetBagItemCount(Item_1) < Num_1 then begin This_NPC.InputDialog(This_Player,' 合成失败!我要的东西呢?',1,100); exit; end; end; if PrintStr(GetBuffItemConfig(k),5) <> '0' then begin Num_2 := StrToIntDef(PrintStr(GetBuffItemConfig(k),4),0); Item_2 := PrintStr(GetBuffItemConfig(k),5); if This_Player.GetBagItemCount(Item_2) < Num_2 then begin This_NPC.InputDialog(This_Player,' 合成失败!我要的东西呢?',1,100); exit; end; end; if PrintStr(GetBuffItemConfig(k),6) <> '0' then begin Num_3 := StrToIntDef(PrintStr(GetBuffItemConfig(k),6),0); if This_Player.YBNum < Num_3 then begin This_NPC.InputDialog(This_Player,' 合成失败!你的元宝不足!',1,100); exit; end; end; if PrintStr(GetBuffItemConfig(k),7) <> '0' then begin Num_4 := StrToIntDef(PrintStr(GetBuffItemConfig(k),7),0); if This_Player.MyLFnum < Num_4 then begin This_NPC.InputDialog(This_Player,' 合成失败!你的灵符不足!',1,100); exit; end; end; if PrintStr(GetBuffItemConfig(k),8) <> '0' then begin This_Player.Give(MakeItemName,1); end; end; procedure _ShowBuffItem(k:integer); var StrForShow:string; begin StrForShow := addSpace('<'+PrintStr(GetBuffItemConfig(k),1)+'>BUFF属性:',46); if PrintStr(GetBuffItemConfig(k),3) <> '0' then StrForShow := StrForShow + PrintStr(GetBuffItemConfig(k),2) + PrintStr(GetBuffItemConfig(k),3); This_Player.SetS(56,86,k); This_NPC.InputDialog(This_Player,addSpace(StrForShow,200) + ' BUFF加成,几率触发',1,101); end; procedure _GmPage; begin This_Npc.NpcDialog(This_Player, '<哥哥有空就更新,烂了就停更/fcolor=168>|'+ '增益型BUFF几率:<'+inttostr(GetG(60,31))+'/fcolor=250>^^<[调整几率]/@GmSRChg~31>|'+ '<↑><该几率控制1-9号BUFF/fcolor=248>|'+ '对敌型BUFF几率:<'+inttostr(GetG(60,32))+'/fcolor=250>^^<[调整几率]/@GmSRChg~32>|'+ '<↑><该几率控制11-16、18、19号BUFF/fcolor=248>|'+ '独立型BUFF几率:<'+inttostr(GetG(60,33))+'/fcolor=250>^^<[调整几率]/@GmSRChg~33>|'+ '<↑><该几率控制10、15、17、20、21号BUFF/fcolor=248>|'+ '<所有几率均为百分比,注意合理调整/fcolor=22>|'+ '{cmd}<返回主页/@main>'); end; procedure P105; begin if (StrToIntDef(This_Npc.InputStr ,-1) < 100) and (StrToIntDef(This_Npc.InputStr ,-1) >= 0) then begin 修改成功!',1,100);exit; end else This_NPC.InputDialog(This_Player,' 你瞎鸡巴输啥呢?!',1,100); exit; end; procedure _GmSRChg(VarNum:integer); var k,i:integer; Button:string; StrForShow:string; begin for k := v to v + 5 do begin if k mod 2 = 1 then i := 218 else i := 22; StrForShow := StrForShow +'<'+PrintStr(GetItemBuffFunc(k),1)+'/fcolor='+inttostr(i)+'><'+PrintStr(GetItemBuffFunc(k),2)+'/fcolor=247>|'; end; if k < 22 then //如果添加了装备,此处的22也要对应修改,多少个装备这里就填多少 Button:='{cmd}<下 一 页/@ShowXQ~'+inttostr(k)+'><返回主页/@main>' else Button:='{cmd}<返回首页/@ShowXQ~1><返回主页/@main>'; This_Npc.NpcDialog(This_Player,StrForShow+Button); end; procedure _LunTanJian(v:integer); var k,i:integer; ShowButton:string; StrForShow:string; begin for k := v to v + 11 do begin i := 0; StrForShow := StrForShow + '|'; end; end; if This_Player.GMLevel > 0 then ShowButton := '<后台管理/@GmPage>' else ShowButton := '<关闭界面/@exit>'; if k < 22 then //如果添加了装备,此处的22也要对应修改,多少个装备这里就填多少 StrForShow := StrForShow + '{cmd}<————————————————————————/@exit>|' + '{cmd}<下 一 页/@LunTanJian~'+inttostr(k)+'><查看详情/@ShowXQ~1>' else StrForShow := StrForShow + '{cmd}<————————————————————————/@exit>|' + '{cmd}<返回首页/@LunTanJian~1><查看详情/@ShowXQ~1>'; This_Npc.NpcDialog(This_Player,StrForShow+ShowButton); end; end.