72家族网-手游源码论坛

查看:【372】 回复:【0】 发表于 2020-5-20 11:18 存档时间:2022-07-03
本主题由 族长 于 2021-11-6 02:20 反删除
头条
9天前
头条
17天前
头条
28天前
头条
2022-05-30
头条
2022-05-30
头条
2022-05-30
头条
2022-05-19
头条
2022-05-02
头条
2022-04-22
头条
2022-04-18
头条
2022-04-13
头条
2022-04-02
头条
2022-04-01
头条
2022-03-28
头条
2022-03-24
头条
2022-03-23
头条
2022-03-23
头条
2022-03-23
头条
2022-03-23
头条
2022-03-23

战神引擎手游源码

战神引擎声望兑换勋章的脚本-已修复BUG

战神引擎声望兑换勋章的脚本-已修复BUG
  1. {
  2. /*******************************************************************************

  3. /*******************************************************************************
  4. }
  5. program Mir2;

  6. {$I common.pas}

  7. procedure _huan5;
  8. begin
  9.   This_Npc.NpcDialog(This_Player,
  10.     '五级勋章的领取将只能指定进行兑换,而不能随机进行兑换\' +
  11.     '指定兑换五级勋将需要付出声望值640点\ \' +
  12.     '|{cmd}<领取指定五级勋章/@zhiding5>\' +
  13.     '|{cmd}<返回/@main>');
  14. end;

  15. procedure _zhiding5;
  16. begin
  17.   This_Npc.NpcDialog(This_Player,
  18.     '请选择需要领取的荣誉勋章,五级勋章是指定领取的\' +
  19.     '指定兑换需要付出640点声望值\' +
  20.     '|{cmd}<指定兑换荣誉勋章51号/@winmedal~51>\' +
  21.     '|{cmd}<指定兑换荣誉勋章52号/@winmedal~52>\' +
  22.     '|{cmd}<指定兑换荣誉勋章53号/@winmedal~53>\' +
  23.     '|{cmd}<指定兑换荣誉勋章54号/@winmedal~54>\' +
  24.     '|{cmd}<指定兑换荣誉勋章55号/@winmedal~55>\');
  25. end;

  26. procedure _winmedal(str: string);
  27. var
  28.   medal_kind,temp:integer;
  29. begin  
  30.   //This_Npc.SpeGetMedalBySw(This_Player, str);
  31.   medal_kind := StrToIntDef(str,-1);
  32.   if (medal_kind < 51) or (medal_kind > 55) then
  33.   begin
  34.     This_Npc.NpcDialog(This_Player,
  35.     '领取的勋章种类非法!'
  36.     );
  37.     exit;
  38.   end;

  39.   if This_Player.MyShengwan >= 640 then
  40.   begin
  41.     if This_Player.FreeBagNum < 1 then
  42.     begin
  43.       This_Npc.NpcDialog(This_Player,
  44.       '你的包裹满了,还是先整理下再来找我吧!'
  45.       );
  46.       exit;
  47.     end;
  48.     This_Player.MyShengwan := This_Player.MyShengwan - 640;
  49.     This_Player.Give('荣誉勋章' + str + '号',1);
  50.     This_Npc.NpcDialog(This_Player,
  51.     '恭喜你兑换[荣誉勋章'+ str + '号]成功!'
  52.     );
  53.   end
  54.   else
  55.     This_Npc.NpcDialog(This_Player,
  56.     '你的声望值不符合条件!'
  57.     );
  58. end;

  59. procedure _huan;
  60. begin
  61.   This_Npc.NpcDialog(This_Player,
  62.     '想要领取荣誉勋章的话你必须要有足够的声望值,\' +
  63.     '指定兑换和随机兑换都可以使用声望进行兑换\' +
  64.     '|{cmd}<领取随机勋章/@feizhiding>\' +
  65.     '|{cmd}<领取指定勋章/@zhiding>\ ' +
  66.     '|{cmd}<返回/@main>');
  67. end;

  68. procedure _feizhiding;
  69. begin
  70.   This_Npc.NpcDialog(This_Player,
  71.     '请选择需要领取的荣誉勋章,这里是随机领取的。\\' +
  72.     '|{cmd}<随机领取11至15号荣誉勋章/@lingxunz~1>\' +
  73.     '|{cmd}<随机领取21至25号荣誉勋章/@lingxunz~2>\' +
  74.     '|{cmd}<随机领取31至35号荣誉勋章/@lingxunz~3>\' +
  75.     '|{cmd}<随机领取41至45号荣誉勋章/@lingxunz~4>\' +
  76.     '|{cmd}<返回/@main>');
  77. end;

  78. procedure _lingxunz(str: string);
  79. var
  80.   medal_kind,temp:integer;
  81. begin
  82.   //This_Npc.RndGetMedal(This_Player, str);
  83.   medal_kind := StrToIntDef(str,-1);
  84.   if (medal_kind < 0) or (medal_kind > 4) then
  85.   begin
  86.     This_Npc.NpcDialog(This_Player,
  87.     '领取的勋章种类非法!'
  88.     );
  89.     exit;
  90.   end;

  91.   if This_Player.MyShengwan >= 20*medal_kind then
  92.   begin
  93.     if This_Player.FreeBagNum < 1 then
  94.     begin
  95.       This_Npc.NpcDialog(This_Player,
  96.       '你的包裹满了,还是先整理下再来找我吧!'
  97.       );
  98.       exit;
  99.     end;

  100.     This_Player.MyShengwan := This_Player.MyShengwan - 20*medal_kind;
  101.     temp := random(5)+1;
  102.     This_Player.Give('荣誉勋章'+str+inttostr(temp) + '号',1);
  103.     This_Npc.NpcDialog(This_Player,
  104.     '恭喜你兑换[荣誉勋章'+ str + inttostr(temp) + '号]成功!'
  105.     );
  106.   end
  107.   else
  108.     This_Npc.NpcDialog(This_Player,
  109.     '你的声望值不符合条件!'
  110.     );  
  111. end;



  112. procedure _zhiding;
  113. begin
  114.   This_Npc.NpcDialog(This_Player,
  115.     '这里你可以领取指定的荣誉勋章,\' +
  116.     '当然,你要付出更多的声望。\ \' +
  117.     '|{cmd}<荣誉勋章11号/@zhidxunz~11>   ^<荣誉勋章12号/@zhidxunz~12>   |{cmd}<荣誉勋章13号/@zhidxunz~13>   ^<荣誉勋章14号/@zhidxunz~14>\'+
  118.     '|{cmd}<荣誉勋章15号/@zhidxunz~15>   \'+
  119.     '|{cmd}<荣誉勋章21号/@zhidxunz~21>   ^<荣誉勋章22号/@zhidxunz~22>   |{cmd}<荣誉勋章23号/@zhidxunz~23>   ^<荣誉勋章24号/@zhidxunz~24>\'+
  120.     '|{cmd}<荣誉勋章25号/@zhidxunz~25>\ \' +
  121.     '|{cmd}<下一页/@zhiding_1>           ^<返回/@main>');
  122. end;

  123. procedure _zhiding_1;
  124. begin
  125.   This_Npc.NpcDialog(This_Player,
  126.     '这里你可以领取指定的荣誉勋章,\' +
  127.     '当然,你要付出更多的声望。\ \' +
  128.     '|{cmd}<荣誉勋章31号/@zhidxunz~31>   ^<荣誉勋章32号/@zhidxunz~32>   |{cmd}<荣誉勋章33号/@zhidxunz~33>   ^<荣誉勋章34号/@zhidxunz~34>\' +
  129.     '|{cmd}<荣誉勋章35号/@zhidxunz~35>  \' +
  130.     '|{cmd}<荣誉勋章41号/@zhidxunz~41>   ^<荣誉勋章42号/@zhidxunz~42>   |{cmd}<荣誉勋章43号/@zhidxunz~43>   ^<荣誉勋章44号/@zhidxunz~44>\' +
  131.     '|{cmd}<荣誉勋章45号/@zhidxunz~45>   \ \' +
  132.     '|{cmd}<上一页/@zhiding>           ^<返回/@main>');
  133. end;

  134. procedure _zhidxunz(str: string);
  135. var
  136.   medal_kind,temp1,temp2:integer;
  137. begin
  138.   //This_Npc.SpeGetMedalByRy(This_Player, str);
  139.   medal_kind := StrToIntDef(str,-1);

  140.   temp1 := medal_kind div 10;
  141.   temp2 := medal_kind mod 10;

  142.   if (temp1 < 1) or (temp1 > 4) then
  143.   begin
  144.     This_Npc.NpcDialog(This_Player,
  145.     '领取的勋章种类非法!'
  146.     );
  147.     exit;
  148.   end;

  149.   if (temp2 < 1) or (temp2 > 5) then
  150.   begin
  151.     This_Npc.NpcDialog(This_Player,
  152.     '领取的勋章种类非法!'
  153.     );
  154.     exit;
  155.   end;

  156.   if This_Player.MyShengwan >= 80*temp1 then
  157.   begin
  158.     if This_Player.FreeBagNum < 1 then
  159.     begin
  160.       This_Npc.NpcDialog(This_Player,
  161.       '你的包裹满了,还是先整理下再来找我吧!'
  162.       );
  163.       exit;
  164.     end;

  165.     This_Player.MyShengwan := This_Player.MyShengwan - 80*temp1;
  166.     This_Player.Give('荣誉勋章' + str + '号',1);
  167.     This_Npc.NpcDialog(This_Player,
  168.     '恭喜你兑换[荣誉勋章' + str + '号]成功!'
  169.     );  
  170.   end
  171.   else
  172.     This_Npc.NpcDialog(This_Player,
  173.     '你的声望值不够!'
  174.     );
  175. end;

  176. procedure _sj;
  177. begin
  178.   This_Npc.NpcDialog(This_Player,
  179.     '勋章可成功升级的次数与勋章的等级一致,即1级勋章只能成功升级1次\' +
  180.     '首先请将需要升级的荣誉勋章佩戴在身上而不是放在你的包裹内;\' +
  181.     '其次你需要在包裹内放好升级荣誉勋章的各种原料;\' +
  182.     '每次升级荣誉勋章都会收走你包裹内的所有原料,请保管好重要物品。\' +
  183.     '勋章升级分为两种,一种是常规升级,一种是“惊彩”升级。\\' +
  184.     '|{cmd}<查看升级配方/@cksj>\' +
  185.     '|{cmd}<选择勋章常规升级/@cgsj>\' +
  186.     '|{cmd}<选择勋章惊彩升级/@jcsj>\' +
  187.     '|{cmd}<返回/@main>');
  188. end;

  189. procedure _cksj;
  190. begin
  191.   This_Npc.NpcDialog(This_Player,
  192.     '常规升级中,1级和2级勋章的配方中需要加入和勋章属性对应的祖玛,\' +
  193.     '首饰3级和4级勋章的配方中需要加入圣战、法神、天尊、暴风四职业\' +
  194.     '对应套装首饰,防御和魔法防御类勋章的升级配方中可以放入对应类\' +
  195.     '型的随意属性首饰,每次升级必须具备5种物品:首饰,祈福项链,\' +
  196.     '勋章之心,绿宝石矿,紫水晶矿5种物品的数量需要你来配,这个我帮不\' +
  197.     '了你,总之越接近配方成功率越高勋章常规升级失败了勋章不会破碎,\' +
  198.     '但失败一次勋章的总持久将减少5点惊彩升级中,你可以知道明确\' +
  199.     '的配方,但是只有50%的成功机会,失败的话勋章就会破碎,如果\' +
  200.     '未符合配方要求的话也肯定会破碎的。                 ^<返回上页/@sj>');
  201. end;

  202. procedure _cgsj;
  203. begin
  204.   This_Npc.NpcDialog(This_Player,
  205.     '第一次升级需要的首饰为:戒指;\' +
  206.     '成功一次以后第二次需要的首饰是:手镯,\' +
  207.     '第三次需要的首饰是:项链;第四次则需要的是:头盔。\' +
  208.     '勋章常规升级失败了也不会破碎,但失败一次勋章的总持久将减少5点。\' +
  209.     '当勋章的总持久低于或者等于5点时将不能再进行勋章的常规升级。\' +
  210.     '每次常规升级都需要消耗3点的声望值\\' +
  211.     '|{cmd}<开始常规升级/@kscgsj>\' +
  212.     '|{cmd}<返回/@sj>');
  213. end;

  214. procedure _uplvmedal;
  215. begin
  216.   This_Npc.UpMedalAbil(This_Player);
  217. end;

  218. procedure _kscgsj;
  219. begin
  220.   This_Npc.NpcDialog(This_Player,
  221.     '不管你的包裹内是否有足够的配方材料,\' +
  222.     '一旦点击“确认升级”即开始升级荣誉勋章,\' +
  223.     '即使你的包裹内什么也没有,或者有大量的首饰,\' +
  224.     '都会被视为升级原料收走,因此在升级前你要仔细考虑,\' +
  225.     '在包裹内放入你认为最合适的配方原料。\' +
  226.     '能不能升级成功就看你的领悟力了!\\' +
  227.     '|{cmd}<确认升级/@uplvmedal>\' +
  228.     '|{cmd}<返回/@sj>');
  229. end;

  230. procedure _jcsj;
  231. begin
  232.   This_Npc.NpcDialog(This_Player,
  233.     '想要进行荣誉勋章的“惊彩”升级?\' +
  234.     '这个……\' +
  235.     '你还是等等再来吧!\\' +
  236.     '|{cmd}<返回/@sj>');
  237. end;

  238. procedure _sj5;
  239. begin
  240.   This_Npc.NpcDialog(This_Player,
  241.     '五级荣誉勋章可不简单,要升级也没那么容易。\' +
  242.     '一旦升级后,勋章的魔力就会被释放,威力大的无法形容!\' +
  243.     '但是传说这个勋章同时也隐藏着惊人的秘密。\' +
  244.     '你知道这个秘密了吗?\' +
  245.     '|{cmd}<我知道了/@zhidao>\' +
  246.     '|{cmd}<我不知道/@buzhidao>');
  247. end;

  248. procedure _zhidao;
  249. begin
  250.   This_Npc.NpcDialog(This_Player,
  251.     '那就请你告诉我吧...\ \' +
  252.     '|{cmd}<返回/@main>');
  253. end;

  254. procedure _buzhidao;
  255. begin
  256.   This_Npc.NpcDialog(This_Player,
  257.     '既然不知道,那还有什么好说的?\' +
  258.     '你还是再去打听打听再来吧。\ \' +
  259.     '|{cmd}<返回/@main>');
  260. end;


  261. procedure _checkswry;
  262. begin
  263.   This_Npc.NpcDialog(This_Player,
  264.     '你目前的声望是:' + inttostr(This_Player.MyShengwan));
  265. end;



  266. begin
  267.   This_Npc.NpcDialog(This_Player,
  268.     '这里可以领取荣誉勋章,只要有足够的声望,\' +
  269.     '等级越高的勋章需要越多的声望。各级勋章所需条件如下:\' +
  270.     '一级勋章需要:20点,兑换指定编号的一级勋章需要:80点\' +
  271.     '二级勋章需要:40点,兑换指定编号的二级勋章需要:160点\' +
  272.     '三级勋章需要:60点,兑换指定编号的三级勋章需要:240点\' +
  273.     '四级勋章需要:80点,兑换指定编号的四级勋章需要:320点\' +
  274.     '|{cmd}<兑换荣誉勋章/@huan>                   ^<兑换五级荣誉勋章/@huan5>\' +
  275.     //'|{cmd}<升级荣誉勋章/@sj>                   ^<升级五级荣誉勋章/@sj5>\' +
  276.     '|{cmd}<查询声望点数/@checkswry>');
  277. end.
复制代码


使用道具

关闭

72家族网 - 游戏开发者学习平台上一条 /1 下一条

本站资源来自互联网搜集,仅供本地电脑单机学习和交流,请勿用于商业用途,请自觉在24小时内删除。
本站仅提供信息存储空间服务,软件的复制品持有人不知道也没有合理的理由应当知道展示的作品侵权!
本站所有资源仅限用于研究产品软件内含、设计思想和原理为目的用途,禁止任何商用行为,违者后果自负!
若有侵权与文章中不妥之处,请联系邮箱:zhende5555@qq.com(手机随时接收邮件)并出示相关证明以便删除。敬请谅解!

2011-2022 私服论坛 www.sifubbs.com 手游源码技术讨论平台 Powered by Discuz!