OK論壇

 找回密碼
 註冊
查看: 994|回復: 0

關於道館修改休息場次

[複製鏈接]
  • TA的每日心情
    慵懶
    2020-8-19 05:43 PM
  • 簽到天數: 83 天

    連續簽到: 1 天

    [LV.6]常住居民II

    發表於 2016-2-11 00:37:50 | 顯示全部樓層 |閱讀模式
    本帖最後由 kh246913578 於 2016-2-12 10:24 AM 編輯

    不好意思,因為無法上傳附件,所以我用代碼...

    這是我改的進階道館腳本,我想加入"中場休息"

    可是不知道怎樣加入比較正確,我看過有人發過類似的文章,可能是寫法不同...還是用錯方式,

    所以都沒成功...可以幫我看一下該怎麼去判斷嗎?
    1. prontera.gat,161,160,3        script        進階道館傳送員        868,{        callfunc "ModF_Script2";        end;        OnInit:

    2. //----- 道館獎勵的獎金設定 -----
    3.         set $@Dc_In_Zeny,500000;

    4. //-----道場關數 ---------------
    5.         set $@Dc_Misson,20;

    6. //-----設置怪物 ---------------
    7.         setarray $@Dc_Mob_Id[0],2476,2475,2362,2322,2249,2251,2253,2255,2202,2165,1956,1957,1751,1931; //設置怪物ID

    8. //-----每關出怪量 ---------------
    9.         setarray $@Dc_Mob_Num[1],1,1,1,1,1,1,1,1,1,3;

    10. //-----開始比賽的等待時間 ---------------
    11. //-----第一關時間,第二關時間,……,單位:分鐘 ---------------
    12.         setarray $@Dc_Delay[0],3,10,10,10,10,10,10,10,10,10,10;

    13. //-----每關間隔時間,單位:秒 ---------------        
    14.         setarray $@Dc_Space[1],5,5,5,5,5,5,5,5,5,5;

    15. //====================================================//
    16. //--- 道館獎勵員的相關設定 , 請各伺服器依情況斟酌 ---        

    17. //----- 道館獎勵的獎金設定 -----
    18. //----- 獎勵金額最少能夠取得多少 (預設 100萬 Zeny) (單位:萬元)
    19.         set $@ModFReMinZeny2,200;

    20. //----- 獎勵金額最多能夠取得多少 (預設 500萬 Zeny) (單位:萬元)
    21.         set $@ModFReMaxZeny2,350;

    22. //----- 道館獎勵的商城點數設定 -----
    23. //----- 獎勵商城點數最少能夠取得多少 (預設 5 點)
    24.         set $@ModFReMinCash2,50;

    25. //----- 獎勵商城點數最多能夠取得多少 (預設 20 點)
    26.         set $@ModFReMaxCash2,100;

    27. //----- 道館獎勵的獎品設定 -----
    28. //----- 獎勵獎品能夠取得的物品
    29.         setarray $@ModFReItemAID2[1],12853,13911,14296,14297,14317,14345,14469,16257,12851;

    30. //----- 獎勵獎品能夠取得的數量
    31.         setarray $@ModFReItemNum2[1],1,1,1,1,1,1,1,1,1;

    32. //====================================================//
    33. //--- Script 執行時的特殊設定 , 請各伺服器勿亂做更改 ---

    34.         set $@ModFItemSize2,(getarraysize($@ModFReItemAID2)-1);
    35. }

    36. //====================================================//
    37. //--- 道館地圖屬性的相關設定 , 請各伺服器依情況斟酌 ---

    38. //--- < 如果要關閉地圖屬性請在前面加上"//"即可 > ---

    39. //----- 怪物不會給予經驗值 -----

    40. guild_vs1-1        mapflag        noexp
    41. guild_vs1-2        mapflag        noexp
    42. guild_vs1-3        mapflag        noexp
    43. guild_vs1-4        mapflag        noexp

    44. //----- 怪物不會掉落物品 -----

    45. guild_vs1-1        mapflag        noloot
    46. guild_vs1-2        mapflag        noloot
    47. guild_vs1-3        mapflag        noloot
    48. guild_vs1-4        mapflag        noloot

    49. //----- 不能使用/memo來記憶當前地圖 -----

    50. guild_vs1-1        mapflag        nomemo
    51. guild_vs1-2        mapflag        nomemo
    52. guild_vs1-3        mapflag        nomemo
    53. guild_vs1-4        mapflag        nomemo

    54. //----- 不能使用枯樹枝 -----

    55. guild_vs1-1        mapflag        nobranch
    56. guild_vs1-2        mapflag        nobranch
    57. guild_vs1-3        mapflag        nobranch
    58. guild_vs1-4        mapflag        nobranch

    59. //----- 死亡不會損失經驗值 -----

    60. guild_vs1-1        mapflag        nopenalty
    61. guild_vs1-2        mapflag        nopenalty
    62. guild_vs1-3        mapflag        nopenalty
    63. guild_vs1-4        mapflag        nopenalty

    64. //----- 不能使用蒼蠅翅膀 -----

    65. guild_vs1-1        mapflag        noteleport
    66. guild_vs1-2        mapflag        noteleport
    67. guild_vs1-3        mapflag        noteleport
    68. guild_vs1-4        mapflag        noteleport

    69. //====================================================//

    70. guild_room        mapflag        nomemo
    71. guild_room        mapflag        nobranch
    72. guild_room        mapflag        noteleport
    73. guild_vs1-1        mapflag        nosave        SavePoint
    74. guild_vs1-2        mapflag        nosave        SavePoint
    75. guild_vs1-3        mapflag        nosave        SavePoint
    76. guild_vs1-4        mapflag        nosave        SavePoint

    77. //====================================================//

    78. //--- 此行開始到最後的段落 , 請各伺服器勿亂做更改 ---


    79. function        script        ModF_Script2        {
    80.         mes "[道場挑戰]";
    81.         mes "歡迎您參加道場的挑戰";
    82.         next;
    83.         menu "道場報名",-;
    84.         mes "[道場挑戰]";
    85.         if (!getcharid(1) || Zeny<$@Dc_In_Zeny)
    86.         {
    87.                 mes "您沒有隊伍或金錢不足 "+$@Dc_In_Zeny+" Zeny";
    88.                 close;
    89.         }
    90.         for (set @t,1;@t<5;set @t,@t+1)
    91.         {
    92.                 if ( getmapusers("guild_vs1-"+@t+".gat")==0 )
    93.                 {
    94.                         killmonster "guild_vs1-"+@t+".gat","Dc_Main_"+@t+"::OnKillMob";
    95.                         set Zeny,Zeny-$@Dc_In_Zeny;
    96.                         set $@Dc_Truns[@t],1;
    97.                         set $@Dc_Party[@t],getcharid(1);
    98.                         set $@Dc_timer[@t],$@Dc_Delay[0];
    99.                         enablenpc "裁判#"+@t+"";
    100.                         initnpctimer "Dc_Timer_"+@t+"";
    101.                         warpparty "guild_vs1-"+@t+".gat",49,47,getcharid(1);
    102.                         if (!sleep2(3000))
    103.                                 end;
    104.                         mapannounce "guild_vs1-"+@t+".gat","[ 道場 ] 請在 "+$@Dc_Delay[0]+" 分鐘內開始比賽,否則將強制退出!",15;
    105.                         end;
    106.                 }
    107.         }
    108.         for (set @t,1;@t<6;set @t,@t+1)
    109.                 mes "[場地"+@t+"]隊伍: ["+getpartyname($@Dc_Party[@t])+"]";
    110.         mes "全部場地都有人在挑戰了,請稍後再試";
    111.         close;
    112. /*

    113. OnInit:
    114.         set $@Dc_In_Zeny,500000; //設置入場金錢
    115.         set $@Dc_Misson,20; //道場關數
    116.         setarray $@Dc_Mob_Id[0],1630,1768,1751,1734,1719,1708,1685,1658,1147,1150,1157,1159,1190,1272,1312,1373,1389,1492; //設置怪物ID
    117.         setarray $@Dc_Mob_Num[1],1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,3; //每關刷怪數量
    118.         setarray $@Dc_Delay[0],3,10,10,10,10,10,10,10,10,10,10; //開始比賽的等待時間,第一關時間,第二關時間,……,單位:分鐘
    119.         setarray $@Dc_Space[1],5,5,5,5,5,5,5,5,5,5; //每關間隔時間,單位:秒
    120.         //setarray $@Dc_Item_Id[0],1415,1913,1971,1267,1232,1109,1307,13302,1610,1558,1231,1169,1704; //獎勵道具ID
    121.         //setarray $@Dc_Item_Num[0],1,1,1,1,1,1,1,1,1,1,1,1,1; //獎勵道具數量
    122.         //set $@Dc_Win_Zeny,500000; //獎勵金錢
    123.         end;
    124. */
    125. }

    126. guild_vs1-1.gat,0,0,0        script        Dc_Timer_1        -1,{ OnTimer60000: callfunc "Dc_Timer",1; }
    127. guild_vs1-2.gat,0,0,0        script        Dc_Timer_2        -1,{ OnTimer60000: callfunc "Dc_Timer",2; }
    128. guild_vs1-3.gat,0,0,0        script        Dc_Timer_3        -1,{ OnTimer60000: callfunc "Dc_Timer",3; }
    129. guild_vs1-4.gat,0,0,0        script        Dc_Timer_4        -1,{ OnTimer60000: callfunc "Dc_Timer",4; }
    130. //guild_vs1-5.gat,0,0,0        script        Dc_Timer_5        -1,{ OnTimer60000: callfunc "Dc_Timer",5; }

    131. function        script        Dc_Timer        {
    132.         setnpctimer 0,"Dc_Timer_"+getarg(0)+"";
    133.         set $@Dc_timer[getarg(0)],$@Dc_timer[getarg(0)]-1;
    134.         if ($@Dc_timer[getarg(0)]>0)
    135.                 end;
    136.         set $@Dc_timer[getarg(0)],0;
    137.         stopnpctimer "Dc_Timer_"+getarg(0)+"";
    138.         areawarp "guild_vs1-"+getarg(0)+".gat",1,1,300,300,"ayothaya.gat",208,256;
    139.         end;
    140. }

    141. guild_vs1-1.gat,0,0,0        script        Dc_Main_1        -1,{ OnMain: callfunc "Dc_Main",1; OnKillMob: callfunc "Dc_Kill",1; }
    142. guild_vs1-2.gat,0,0,0        script        Dc_Main_2        -1,{ OnMain: callfunc "Dc_Main",2; OnKillMob: callfunc "Dc_Kill",2; }
    143. guild_vs1-3.gat,0,0,0        script        Dc_Main_3        -1,{ OnMain: callfunc "Dc_Main",3; OnKillMob: callfunc "Dc_Kill",3; }
    144. guild_vs1-4.gat,0,0,0        script        Dc_Main_4        -1,{ OnMain: callfunc "Dc_Main",4; OnKillMob: callfunc "Dc_Kill",4; }
    145. //guild_vs5.gat,0,0,0        script        Dc_Main_5        -1,{ OnMain: callfunc "Dc_Main",5; OnKillMob: callfunc "Dc_Kill",5; }

    146. function        script        Dc_Main        {
    147.         stopnpctimer "Dc_Timer_"+getarg(0)+"";
    148.         initnpctimer "Dc_Timer_"+getarg(0)+"";
    149.         set $@Dc_timer[getarg(0)],$@Dc_Delay[$@Dc_Truns[getarg(0)]];
    150.         for (set @num,0;@num<$@Dc_Mob_Num[$@Dc_Truns[getarg(0)]];set @num,@num+1)
    151.                 monster "guild_vs1-"+getarg(0)+".gat",50,49,"--ja--",$@Dc_Mob_Id[rand(getarraysize($@Dc_Mob_Id))],1,"Dc_Main_"+getarg(0)+"::OnKillMob";
    152.         set $@Dc_Mob[getarg(0)],$@Dc_Mob_Num[$@Dc_Truns[getarg(0)]];
    153.         mapannounce "guild_vs1-"+getarg(0)+".gat","[ 道場 ] 魔物放出!第 "+$@Dc_Truns[getarg(0)]+" 關挑戰開始!",15;
    154.         mapannounce "guild_vs1-"+getarg(0)+".gat","[ 道場 ] 請在 "+$@Dc_Delay[$@Dc_Truns[getarg(0)]]+" 分鐘內完成本關,否則將強制退出!",15;
    155.         end;
    156. }

    157. function        script        Dc_Kill        {
    158.         set $@Dc_Mob[getarg(0)], $@Dc_Mob[getarg(0)] - 1;
    159.         if( $@Dc_Mob[getarg(0)] > 0 ) end;
    160.         mapannounce "guild_vs1-"+getarg(0)+".gat","[ 道場 ] "+getpartyname($@Dc_Party[getarg(0)]) +" 隊伍, 第 "+$@Dc_Truns[getarg(0)]+" 關挑戰成功!",15;
    161.         if (!sleep2($@Dc_Space[$@Dc_Truns[getarg(0)]]*1000))
    162.                 end;
    163.         if($@Dc_Truns[getarg(0)] == $@Dc_Misson)
    164.         {
    165.                 stopnpctimer "Dc_Timer_"+getarg(0)+"";
    166.                 areawarp "guild_vs1-"+getarg(0)+".gat",1,1,300,300,"guild_room.gat",140,284;
    167.         }
    168.         else
    169.         {
    170.                 set $@Dc_Truns[getarg(0)],$@Dc_Truns[getarg(0)] + 1;
    171.                 doevent "Dc_Main_"+getarg(0)+"::OnMain";
    172.         }
    173.         end;
    174. }

    175. guild_vs1-1,50,49,4        script        裁判#1        758,{ callfunc "dc_doevent",1; }
    176. guild_vs1-2,50,49,4        script        裁判#2        758,{ callfunc "dc_doevent",2; }
    177. guild_vs1-3,50,49,4        script        裁判#3        758,{ callfunc "dc_doevent",3; }
    178. guild_vs1-4.,50,49,4        script        裁判#4        758,{ callfunc "dc_doevent",4; }

    179. function        script        dc_doevent        {
    180.         mes "[裁判]";
    181.         mes "您準備要開始挑戰了嗎?";
    182.         menu "是的",-;
    183.         close2;
    184.         doevent "Dc_Main_"+getarg(0)+"::OnMain";
    185.         disablenpc "裁判#"+getarg(0)+"";
    186.         end;
    187. }

    188. //====================================================//

    189. guild_room,128,285,6        script        進階道館獎勵員#1        935,{ callfunc "ModF_Reward2",1; }
    190. guild_room,151,285,4        script        進階道館獎勵員#2        920,{ callfunc "ModF_Reward2",2; }
    191. guild_room,140,287,4        script        進階道館獎勵員#3        936,{ callfunc "ModF_Reward2",3; }

    192. //====================================================//

    193. function        script        ModF_Reward2        {

    194.         mes "[道館獎勵員]";
    195.         mes "您好厲害!竟然能擊倒MVP怪物,";
    196.         mes "並且挑戰成功,給您一些獎勵吧!";
    197.         next;
    198.         mes "[道館獎勵員]";
    199.         mes "您將會隨機獲得";
    200.         switch(getarg(0)) {
    201.         case 1:
    202.                 for ( set @i,1; @i < ($@ModFItemSize2+1); set @i,@i+1 ) {
    203.                         mes "獎品."+@i+" ^FF0000"+$@ModFReItemNum2[@i]+"^000000 個 ^0000FF"+getitemname($@ModFReItemAID2[@i])+"^000000";
    204.                 }
    205.                 mes "其中一樣獎品";
    206.                 mes "您確定您要領取獎品嗎?";
    207.                 next;
    208.                 if (select("讓我好好考慮一下!","我確定要領取!")==1) {
    209.                         close;
    210.                 }
    211.                 set .@GetItem,rand(1,$@ModFItemSize2);
    212.                 getitem $@ModFReItemAID2[.@GetItem],$@ModFReItemNum2[.@GetItem];
    213.                 announce "道館獎勵員 : 恭喜玩家 ["+strcharinfo(0)+"] 獲得獎勵獎品 ["+getitemname($@ModFReItemAID2[.@GetItem])+"] 數量 ["+$@ModFReItemNum2[.@GetItem]+"] 個。",15;
    214.                 break;
    215.         case 2:
    216.                 mes "^FF0000"+$@ModFReMinZeny2+"0000^000000 ~ ^FF0000"+$@ModFReMaxZeny2+"0000^000000 不等的獎金";
    217.                 mes "您確定您要領取獎金嗎?";
    218.                 next;
    219.                 if (select("讓我好好考慮一下!","我確定要領取!")==1) {
    220.                         close;
    221.                 }
    222.                 set .@GetZeny,rand($@ModFReMinZeny2,$@ModFReMaxZeny2);
    223.                 set zeny,zeny + (.@GetZeny*10000);
    224.                 announce "道館獎勵員 : 恭喜玩家 ["+strcharinfo(0)+"] 獲得獎勵獎金 ["+(.@GetZeny*10000)+"] Zeny。",15;
    225.                 break;
    226.         case 3:
    227.                 mes "^FF0000"+$@ModFReMinCash2+"^000000點 ~ ^FF0000"+$@ModFReMaxCash2+"^000000點 不等的商城點數";
    228.                 mes "您確定您要領取商城點數嗎?";
    229.                 next;
    230.                 if (select("讓我好好考慮一下!","我確定要領取!")==1) {
    231.                         close;
    232.                 }
    233.                 set .@GetCash,rand($@ModFReMinCash2,$@ModFReMaxCash2);
    234.                 set #CASHPOINTS,#CASHPOINTS + .@GetCash;
    235.                 announce "道館獎勵員 : 恭喜玩家 ["+strcharinfo(0)+"] 獲得獎勵商城點數 ["+.@GetCash+"] 點。",15;
    236.                 break;
    237.         }
    238.         warp "SavePoint",0,0;
    239. }
    複製代碼
    回復

    使用道具 舉報

    您需要登錄後才可以回帖 登錄 | 註冊

    本版積分規則

    Archiver|手機版|小黑屋|OK討論區

    GMT+8, 2024-3-29 06:19 AM , Processed in 0.050646 second(s), 19 queries , Gzip On.

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

    快速回復 返回頂部 返回列表