战神引擎-恢复五级技能NPC代码

阿酱2023-11-02 21:57:37260

目前战神引擎只支持三级技能,就算学习了五级技能,离线下线后会恢复三级技能此脚本配合使用盘古插件,可以恢复5级技能,点击一下就可以恢复,具体德你们拿去试试,图片没有展示了,服也没开了 有不明白的直接留言


注意:必须配合盘古插件


                                             

program Mir2;

{$I fh.pas} 

var

zhanshijj,fashijj,daoshijj:integer;

//   sName :string; 

   

procedure zhanshi();

var

  sName1,sName2,sName3,sName4,sName5,sName6,sName7 :string; 

begin

  sName1 := '基本剑术';

  sName2 := '攻杀剑术';

  sName3 := '刺杀剑术';

  sName4 := '半月弯刀';

  sName5 := '野蛮冲撞';

  sName6 := '烈火剑法';

  sName7 := '逐日剑法';  

  

  

begin

  if This_Player.GetV(184,10) = 4 then

   begin

     This_Player.StrParam := '2|白日门剑术';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门剑术',True,4);

   end else


  if This_Player.GetV(184,10) = 5 then

   begin

     This_Player.StrParam := '2|白日门剑术';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门剑术',True,5);


end;

end  



begin

  if This_Player.GetV(184,11) = 4 then

   begin

     This_Player.StrParam := '2|白日门刺杀';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门刺杀',True,4);

   end else


  if This_Player.GetV(184,11) = 5 then

   begin

     This_Player.StrParam := '2|白日门刺杀';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门刺杀',True,5);


end;

end  



begin

  if This_Player.GetV(184,12) = 4 then

   begin

     This_Player.StrParam := '2|白日门半月';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门半月',True,4);

   end else


  if This_Player.GetV(184,12) = 5 then

   begin

     This_Player.StrParam := '2|白日门半月';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门半月',True,5);


end;

end   



begin

  if This_Player.GetV(184,13) = 4 then

   begin

     This_Player.StrParam := '2|白日门烈火';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门烈火',True,4);

   end else


  if This_Player.GetV(184,13) = 5 then

   begin

     This_Player.StrParam := '2|白日门烈火';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门烈火',True,5);


end;

end  


 

begin

  if This_Player.GetV(184,14) = 4 then

   begin

     This_Player.StrParam := '2|白日门逐日';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门逐日',True,4);

   end else


  if This_Player.GetV(184,14) = 5 then

   begin

     This_Player.StrParam := '2|白日门逐日';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门逐日',True,5);


end;

end   



begin

  if This_Player.GetV(184,15) = 4 then

   begin

     This_Player.StrParam := '2|白日门开天斩';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门开天斩',True,4);

   end else


  if This_Player.GetV(184,15) = 5 then

   begin

     This_Player.StrParam := '2|白日门开天斩';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门开天斩',True,5);


end;

end  



{

begin

  if This_Player.GetV(183,10) = 4 then

   begin

    This_Player.ChgSkillLv(sName1, 4, 0);

   end else


  if This_Player.GetV(183,10) = 5 then

   begin

    This_Player.ChgSkillLv(sName1, 5, 0);

   end else

   

  if This_Player.GetV(183,10) = 6 then

   begin

    This_Player.ChgSkillLv(sName1, 6, 0);

   end  else  

   

   if This_Player.GetV(183,10) = 7 then

   begin

    This_Player.ChgSkillLv(sName1, 7, 0);

   end  else 

   

     if This_Player.GetV(183,10) = 8 then

   begin

    This_Player.ChgSkillLv(sName1, 8, 0);

   end  else

   

     if This_Player.GetV(183,10) = 9 then

   begin

    This_Player.ChgSkillLv(sName1, 9, 0);

end;

end

}

 



 

begin

  if This_Player.GetV(183,11) = 4 then

   begin

    This_Player.ChgSkillLv(sName2, 4, 0);

   end else


  if This_Player.GetV(183,11) = 5 then

   begin

    This_Player.ChgSkillLv(sName2, 5, 0);

end;

end


   

   

   

   

begin

  if This_Player.GetV(183,12) = 4 then

   begin

    This_Player.ChgSkillLv(sName3, 4, 0);

   end else


  if This_Player.GetV(183,12) = 5 then

   begin

    This_Player.ChgSkillLv(sName3, 5, 0);

end;

end

   

   

   

begin

  if This_Player.GetV(183,13) = 4 then

   begin

    This_Player.ChgSkillLv(sName4, 4, 0);

   end else


  if This_Player.GetV(183,13) = 5 then

   begin

    This_Player.ChgSkillLv(sName4, 5, 0);

end;

end




begin

  if This_Player.GetV(183,14) = 4 then

   begin

    This_Player.ChgSkillLv(sName5, 4, 0);

   end else


  if This_Player.GetV(183,14) = 5 then

   begin

    This_Player.ChgSkillLv(sName5, 5, 0);

end;

end



begin

  if This_Player.GetV(183,15) = 4 then

   begin

    This_Player.ChgSkillLv(sName6, 4, 0);

   end else


  if This_Player.GetV(183,15) = 5 then

   begin

    This_Player.ChgSkillLv(sName6, 5, 0);

end;

end




begin

  if This_Player.GetV(183,16) = 4 then

   begin

    This_Player.ChgSkillLv(sName7, 4, 0);

   end else


  if This_Player.GetV(183,16) = 5 then

   begin

    This_Player.ChgSkillLv(sName7, 5, 0);

   end     

end;



 



    if This_Player.HeroLevel > -1 then  

begin

 This_Npc.NpcDialog(This_Player,          

    +'<尊敬的战士/c=red> ' + This_Player.Name + '|\'+

+'<我已经帮你看过技能了,只要你有书页,/fcolor=250>|\'+

+'<研究院就能帮你提升技能等级,/fcolor=250>|\'+

+'<最高可五级,合击四级/fcolor=249>|\'+

    +'|{cmd}<前往研究院/@0001>^^<了解护体神盾/@0002>\' );  

end else

   begin

      This_NPC.NpcDialog(This_Player,

      '请招唤英雄,我才能为你服务!');

  end;

end;








procedure _0001;

begin

   if This_Player.YBNum >= 0 then 

begin

   This_Player.RandomFlyTo('0112');

end else

   begin

      This_NPC.NpcDialog(This_Player,

      '对不起,你元宝不足。');

  end;

end;



procedure fashi();

var

  sName1,sName2,sName3,sName4,sName5,sName6,sName7 :string; 

begin

  sName1 := '雷电术';

  sName2 := '火墙';

  sName3 := '魔法盾';

  sName4 := '地狱雷光';

  sName5 := '冰咆哮';

  sName6 := '灭天火';

  sName7 := '流星火雨';

  


begin

  if This_Player.GetV(184,10) = 4 then

   begin

     This_Player.StrParam := '2|白日门雷电术';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门雷电术',True,4);

   end else


  if This_Player.GetV(184,10) = 5 then

   begin

     This_Player.StrParam := '2|白日门雷电术';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门雷电术',True,5);


end;

end  



begin

  if This_Player.GetV(184,11) = 4 then

   begin

     This_Player.StrParam := '2|白日门魔法盾';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门魔法盾',True,4);

   end else


  if This_Player.GetV(184,11) = 5 then

   begin

     This_Player.StrParam := '2|白日门魔法盾';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门魔法盾',True,5);


end;

end  



begin

  if This_Player.GetV(184,12) = 4 then

   begin

     This_Player.StrParam := '2|白日门火墙';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门火墙',True,4);

   end else


  if This_Player.GetV(184,12) = 5 then

   begin

     This_Player.StrParam := '2|白日门火墙';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门火墙',True,5);


end;

end   



begin

  if This_Player.GetV(184,13) = 4 then

   begin

     This_Player.StrParam := '2|白日门灭天火';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门灭天火',True,4);

   end else


  if This_Player.GetV(184,13) = 5 then

   begin

     This_Player.StrParam := '2|白日门灭天火';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门灭天火',True,5);


end;

end  


 

begin

  if This_Player.GetV(184,14) = 4 then

   begin

     This_Player.StrParam := '2|白日门火雨';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门火雨',True,4);

   end else


  if This_Player.GetV(184,14) = 5 then

   begin

     This_Player.StrParam := '2|白日门火雨';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门火雨',True,5);


end;

end   



begin

  if This_Player.GetV(184,15) = 4 then

   begin

     This_Player.StrParam := '2|白日门分身';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门分身',True,4);

  end else


  if This_Player.GetV(184,15) = 5 then

   begin

     This_Player.StrParam := '2|白日门分身';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门分身',True,5);


end;

end    

  

  

  

begin

  if This_Player.GetV(183,10) = 4 then

   begin

    This_Player.ChgSkillLv(sName1, 4, 0);

   end else


  if This_Player.GetV(183,10) = 5 then

   begin

    This_Player.ChgSkillLv(sName1, 5, 0);

end;

end


 

begin

  if This_Player.GetV(183,11) = 4 then

   begin

    This_Player.ChgSkillLv(sName2, 4, 0);

   end else


  if This_Player.GetV(183,11) = 5 then

   begin

    This_Player.ChgSkillLv(sName2, 5, 0);

end;

end


   

   

   

   

begin

  if This_Player.GetV(183,12) = 4 then

   begin

    This_Player.ChgSkillLv(sName3, 4, 0);

   end else


  if This_Player.GetV(183,12) = 5 then

   begin

    This_Player.ChgSkillLv(sName3, 5, 0);

end;

end

   

   

   

begin

  if This_Player.GetV(183,13) = 4 then

   begin

    This_Player.ChgSkillLv(sName4, 4, 0);

   end else


  if This_Player.GetV(183,13) = 5 then

   begin

    This_Player.ChgSkillLv(sName4, 5, 0);

end;

end




begin

  if This_Player.GetV(183,14) = 4 then

   begin

    This_Player.ChgSkillLv(sName5, 4, 0);

   end else


  if This_Player.GetV(183,14) = 5 then

   begin

    This_Player.ChgSkillLv(sName5, 5, 0);

end;

end



begin

  if This_Player.GetV(183,15) = 4 then

   begin

    This_Player.ChgSkillLv(sName6, 4, 0);

   end else


  if This_Player.GetV(183,15) = 5 then

   begin

    This_Player.ChgSkillLv(sName6, 5, 0);

end;

end




begin

  if This_Player.GetV(183,16) = 4 then

   begin

    This_Player.ChgSkillLv(sName7, 4, 0);

   end else


  if This_Player.GetV(183,16) = 5 then

   begin

    This_Player.ChgSkillLv(sName7, 5, 0);

   end     

end;



    if This_Player.HeroLevel > -1 then  

begin

 This_Npc.NpcDialog(This_Player,          

    +'<尊敬的法师/c=red> ' + This_Player.Name + '|\'+

+'<我已经帮你看过技能了,只要你有书页,/fcolor=250>|\'+

+'<研究院就能帮你提升技能等级,/fcolor=250>|\'+

+'<最高可五级,合击四级/fcolor=249>|\'+

    +'|{cmd}<前往研究院/@0001>^^<了解护体神盾/@0002>\' );  

end else

   begin

      This_NPC.NpcDialog(This_Player,

      '请招唤英雄,我才能为你服务!');

  end;

end;







procedure daoshi();

var

  sName1,sName2,sName3,sName4,sName5,sName6,sName7 :string; 

begin

  sName1 := '灵魂火符';

  sName2 := '施毒术';

  sName3 := '群体治愈术';

  sName4 := '召唤神兽';

  sName5 := '气功波';

  sName6 := '无极真气';

  sName7 := '噬血术';

  

  

begin

  if This_Player.GetV(184,10) = 4 then

   begin

     This_Player.StrParam := '2|白日门施毒术';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门施毒术',True,4);

   end else


  if This_Player.GetV(184,10) = 5 then

   begin

     This_Player.StrParam := '2|白日门施毒术';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门施毒术',True,5);


end;

end  



begin

  if This_Player.GetV(184,11) = 4 then

   begin

     This_Player.StrParam := '2|白日门火符';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门火符',True,4);

   end else


  if This_Player.GetV(184,11) = 5 then

   begin

     This_Player.StrParam := '2|白日门火符';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门火符',True,5);


end;

end  



begin

  if This_Player.GetV(184,12) = 4 then

   begin

     This_Player.StrParam := '2|白日门群疗';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门群疗',True,4);

   end else


  if This_Player.GetV(184,12) = 5 then

   begin

     This_Player.StrParam := '2|白日门群疗';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门群疗',True,5);


end;

end   



begin

  if This_Player.GetV(184,13) = 4 then

   begin

     This_Player.StrParam := '2|白日门真气';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门真气',True,4);

   end else


  if This_Player.GetV(184,13) = 5 then

   begin

     This_Player.StrParam := '2|白日门真气';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门真气',True,5);


end;

end  


 

begin

  if This_Player.GetV(184,14) = 4 then

   begin

     This_Player.StrParam := '2|白日门噬血术';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门噬血术',True,4);

   end else


  if This_Player.GetV(184,14) = 5 then

   begin

     This_Player.StrParam := '2|白日门噬血术';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门噬血术',True,5);


end;

end   



begin

  if This_Player.GetV(184,15) = 4 then

   begin

     This_Player.StrParam := '2|白日门月灵';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门月灵',True,4);

   end else

 

  if This_Player.GetV(184,15) = 5 then

   begin

     This_Player.StrParam := '2|白日门月灵';// "2|"后面填写要删除的英雄技能

     This_Player.LearnSkillByScript('白日门月灵',True,5);


end;

end      

  

  

  

begin

  if This_Player.GetV(183,10) = 4 then

   begin

    This_Player.ChgSkillLv(sName1, 4, 0);

   end else


  if This_Player.GetV(183,10) = 5 then

   begin

    This_Player.ChgSkillLv(sName1, 5, 0);

end;

end


 



 

begin

  if This_Player.GetV(183,11) = 4 then

   begin

    This_Player.ChgSkillLv(sName2, 4, 0);

   end else


  if This_Player.GetV(183,11) = 5 then

   begin

    This_Player.ChgSkillLv(sName2, 5, 0);

end;

end


   

   

   

   

begin

  if This_Player.GetV(183,12) = 4 then

   begin

    This_Player.ChgSkillLv(sName3, 4, 0);

   end else


  if This_Player.GetV(183,12) = 5 then

   begin

    This_Player.ChgSkillLv(sName3, 5, 0);

end;

end

   

   

   

begin

  if This_Player.GetV(183,13) = 4 then

   begin

    This_Player.ChgSkillLv(sName4, 4, 0);

   end else


  if This_Player.GetV(183,13) = 5 then

   begin

    This_Player.ChgSkillLv(sName4, 5, 0);

end;

end




begin

  if This_Player.GetV(183,14) = 4 then

   begin

    This_Player.ChgSkillLv(sName5, 4, 0);

   end else


  if This_Player.GetV(183,14) = 5 then

   begin

    This_Player.ChgSkillLv(sName5, 5, 0);

end;

end



begin

  if This_Player.GetV(183,15) = 4 then

   begin

    This_Player.ChgSkillLv(sName6, 4, 0);

   end else


  if This_Player.GetV(183,15) = 5 then

   begin

    This_Player.ChgSkillLv(sName6, 5, 0);

end;

end




begin

  if This_Player.GetV(183,16) = 4 then

   begin

    This_Player.ChgSkillLv(sName7, 4, 0);

   end else


  if This_Player.GetV(183,16) = 5 then

   begin

    This_Player.ChgSkillLv(sName7, 5, 0);

   end     

end;



    if This_Player.HeroLevel > -1 then  

begin

 This_Npc.NpcDialog(This_Player,          

    +'<尊敬的道士/c=red> ' + This_Player.Name + '|\'+

+'<我已经帮你看过技能了,只要你有书页,/fcolor=250>|\'+

+'<研究院就能帮你提升技能等级,/fcolor=250>|\'+

+'<最高可五级,合击四级/fcolor=249>|\'+

    +'|{cmd}<前往研究院/@0001>^^<了解护体神盾/@0002>\' );  

end else

   begin

      This_NPC.NpcDialog(This_Player,

      '请招唤英雄,我才能为你服务!');

  end;

end;

   

  




procedure _0002;

begin

This_NPC.NpcDialog(This_Player, 

   +'|<护体神盾:><合成需要3888书页与10万元宝/FCOLOR=70>\'

   +'|<技能效果:><召唤英雄即可激活本技能,有一定概率抵消伤害,领取后可开启护体特效!/FCOLOR=250>\'

   +'|<注:本技能转职后不需要重新学习/FCOLOR=249>\'

   +'|{cmd}<领取护体神盾/@huti1> <开启护体效果/@huti2>\'

);

end;  



Procedure _huti2;

begin 

if This_Player.GetV(108,3) = 1 then 

begin 

This_Player.SetV(69,9,48);

givefenghao;

This_Player.PlayerNotice('开启了护体效果!',2);

end else

This_NPC.NpcDialog(This_Player,'未领取护体神盾!');

end;





  


procedure _huti1;

begin

  if This_Player.GetBagItemCount('书页') >= 3888 then 

  

begin  

  if This_Player.YBnum >= 100000 then  


  



begin

if This_Player.HeroLevel > -1 then

begin

    This_Player.Take('书页', 3888);

    This_Player.ScriptRequestSubYBNum(100000);

    This_Player.GiveBindItem('护体神盾',1);                 

    This_Player.SetV(108,3,1); 

ServerSay('恭喜' + This_Player.Name + '在技能研究院获得了护体神盾!', 70);

This_NPC.NpcDialog(This_Player,

'|护体神盾成功!\');

end else

begin

This_Player.PlayerNotice('请先招出英雄!',0);

end;

end else

This_NPC.NpcDialog(This_Player,

'|你没有10万元宝!\');

end else

This_NPC.NpcDialog(This_Player,

'|需要3888张书页!\');

end; 



  

   

procedure domain;

begin            

  case This_Player.Job of

       0: 

   zhanshi();

       1: 

   fashi();

       2: 

   daoshi();

  end;

end; 

 

 

 

begin

 if GetG(191,1) < 0 then SetG(191,1,9); 


domain; 

end.


文章评论

OSAAA-游戏经验分享是一个专注于手游技巧,PC游戏和单机游戏的技术交流平台.提供原创博客,游戏攻略,游戏问答,游戏指南与提示等.用户可以在这里分享游戏资讯,评论,资源,脚本,视频,教程,经验心得等。
请先 登录 再评论,如果还未注册,请先 注册