|
- 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;
-
- procedure P101;
- var
- k,Num_1,Num_2,Num_3,Num_4,Num_5:integer;
- MakeItemName,Item_1,Item_2:string;
- 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
- Num_5 := StrToIntDef(PrintStr(GetBuffItemConfig(k),7),0);
- if This_Player.MyDiamondnum < Num_5 then
- begin
- This_NPC.InputDialog(This_Player,' 合成失败!你的金刚石不足!',1,100); exit;
- end;
- end;
-
- if Num_1 > 0 then This_Player.Take(Item_1,Num_1);
- if Num_2 > 0 then This_Player.Take(Item_2,Num_2);
- if Num_3 > 0 then This_Player.ScriptRequestSubYBNum(Num_3);
- if Num_4 > 0 then This_Player.DecLF(0,Num_4,false);
- if Num_5 > 0 then This_Player.TakeDiamond(Num_5,this_npc);
-
- 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
- SetG(60,TampForVar,StrToIntDef(This_NPC.InputStr,-1));
- _GmPage;
- This_NPC.InputDialog(This_Player,' 修改成功!',1,100);exit;
- end else
- This_NPC.InputDialog(This_Player,' 你瞎鸡巴输啥呢?!',1,100);
- exit;
- end;
- procedure _GmSRChg(VarNum:integer);
- begin
- TampForVar:=VarNum;
- This_NPC.InputDialog(This_Player,'请输入0-99之间的数字',0,105);
- end;
-
- procedure _ShowXQ(v: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
- if i < 1 then
- begin
- StrForShow := StrForShow + '{cmd}';
- end;
-
- StrForShow := StrForShow + '<' + PrintStr(GetBuffItemConfig(k),1) + '/@ShowBuffItem~'+ inttostr(k) + '>';
- i := i + 1;
-
- if i > 2 then
- 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;
-
- begin
- if GetG(60,31) < 1 then SetG(60,31,5);
- if GetG(60,32) < 1 then SetG(60,32,5);
- if GetG(60,33) < 1 then SetG(60,33,30);
- _LunTanJian(1);
- end.
复制代码
|
上一篇:Call原始回收系统,循环回收脚本下一篇:战神引擎装备自动回收道具脚本
|