用于战神引擎的装备增加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.








