UID295542
帖子
精華
主題
積分341
現金
積極性
威望
違規
熱心
推廣次數
閱讀權限5
註冊時間2010-12-13
在線時間 小時
最後登錄1970-1-1
TA的每日心情 | 擦汗 2021-2-21 11:25 PM |
---|
簽到天數: 63 天 連續簽到: 1 天 [LV.6]常住居民II
|
EA
私服版號: |
SeAr_1.7.277Big5 |
問題內容: |
腳本問題 |
本帖最後由 塵霄 於 2013-5-18 09:22 PM 編輯
近期弄了個腳本,但是實際測試後發現無法使用
能幫我看看 哪裡有問題嗎
進入道館後
點NPC 他說會
您不是開館的人,請叫0來開館
prontera,152,119,6 script 道館傳送員 734,{ callfunc "ModF_Script"; end; OnInit:
//====================================================//
//--- Script 執行時的相關設定 , 請各伺服器依情況斟酌 ---
//----- 道館的報名費用 (預設 10000000 Zeny) -----
set $@ModFZenyC,1000000;
//----- 隊員的參加費用 (預設 5000000 Zeny) -----
set $@ModFZenyP,500000;
//----- 道館的參加人數 (預設 10人) -----
set $@ModFPlayer,12;
//----- 道館的等級限制 (預設 99等) ----- [0 = 不限制]
set $@ModFBaseLv,0;
//----- 道館的職業限制 (預設 初新者 , 轉生初新者) ----- [提示:請填入正確的職業代碼以免出錯]
//setarray $@ModFClass[1],0,4001; // < 如果您不想要有職業限制的話請在前面加上"//"即可 >
//----- 道館的怪物編號 (預設 台灣正式伺服器 MVP 魔物 34 隻) -----
setarray $@ModFModID[1],1038,1039,1046,1059,1086,1087,1112,1115,1147,1150,
1157,1159,1190,1251,1252,1273,1312,1373,1389,1418,1492,1511,1583,1630,1688,2156;
//----- 道館的休息關數 -----
setarray $@ModFGuanRests[1],5;
//----- 道館的召怪模式 (預設 0) ----- [0 = 打死才召下一隻 , 1 = 一次全部召出]
set $@ModFSummon,1;
//----- 道館每關的怪物數量 (預設 10關) ----- [提示:它的尺寸將會決定"道館的總關數"]
setarray $@ModFGuanMod[1],1,1,1,1,1,1,1,1,1,1,2;
//----- 道館是否開放商店給挑戰者購買 (預設 1) ----- [0 = 全程開放 , 1 = 休息時間才開放]
//set $@ModFOpenShop,0;
//====================================================//
//--- 道館獎勵員的相關設定 , 請各伺服器依情況斟酌 ---
//----- 道館獎勵的獎金設定 -----
//----- 獎勵金額最少能夠取得多少 (預設 100萬 Zeny) (單位:萬元)
//set $@ModFReMinZeny,80;
//----- 獎勵金額最多能夠取得多少 (預設 500萬 Zeny) (單位:萬元)
//set $@ModFReMaxZeny,300;
//----- 道館獎勵的商城點數設定 -----
//----- 獎勵商城點數最少能夠取得多少 (預設 10 點)
//set $@ModFReMinCash,70;
//----- 獎勵商城點數最多能夠取得多少 (預設 30 點)
//set $@ModFReMaxCash,150;
//----- 道館獎勵的獎品設定 -----
//----- 獎勵獎品能夠取得的物品
//setarray $@ModFReItemAID[1],12186,607,608,2658,5013,5357,12246,5597;
//----- 獎勵獎品能夠取得的數量
//setarray $@ModFReItemNum[1],1,700,400,1,1,1,2,1;
//====================================================//
//--- Script 執行時的特殊設定 , 請各伺服器勿亂做更改 ---
set $@ModFModIDSize,(getarraysize($@ModFModID)-1);
set $@ModFItemSize,(getarraysize($@ModFReItemAID)-1);
set $@ModFGuanSize,(getarraysize($@ModFGuanMod)-1);
}
//====================================================//
//--- 道館販賣物品的相關設定 , 請各伺服器依情況斟酌 ---
//shop 道館商人#0 -1,663:100,501:-1,502:-1,503:-1,504:-1,505:-1,506:-1,525:-1,610:-1,645:-1,656:-1,657:-1,662:-1,715:-1,716:-1,717:-1,1065:-1,1750:-1,1751:-1,1752:-1,1753:-1,13200:-1,13201:-1,13202:-1,13250:-1,13251:-1;
//====================================================//
//--- 道館地圖屬性的相關設定 , 請各伺服器依情況斟酌 ---
//--- < 如果要關閉地圖屬性請在前面加上"//"即可 > ---
//----- 怪物不會給予經驗值 -----
06guild_01.gat mapflag nomemo dummy
06guild_01.gat mapflag noteleport dummy
06guild_01.gat mapflag nosave SavePoint
06guild_01.gat mapflag nopenalty dummy
06guild_01.gat mapflag nobranch dummy
06guild_01.gat mapflag noloot dummy
06guild_02.gat mapflag nomemo dummy
06guild_02.gat mapflag noteleport dummy
06guild_02.gat mapflag nosave SavePoint
06guild_02.gat mapflag nopenalty dummy
06guild_02.gat mapflag nobranch dummy
06guild_02.gat mapflag noloot dummy
06guild_03.gat mapflag nomemo dummy
06guild_03.gat mapflag noteleport dummy
06guild_03.gat mapflag nosave SavePoint
06guild_03.gat mapflag nopenalty dummy
06guild_03.gat mapflag nobranch dummy
06guild_03.gat mapflag noloot dummy
06guild_04.gat mapflag nomemo dummy
06guild_04.gat mapflag noteleport dummy
06guild_04.gat mapflag nosave SavePoint
06guild_04.gat mapflag nopenalty dummy
06guild_04.gat mapflag nobranch dummy
06guild_04.gat mapflag noloot dummy
06guild_05.gat mapflag nomemo dummy
06guild_05.gat mapflag noteleport dummy
06guild_05.gat mapflag nosave SavePoint
06guild_05.gat mapflag nopenalty dummy
06guild_05.gat mapflag nobranch dummy
06guild_05.gat mapflag noloot dummy
06guild_06.gat mapflag nomemo dummy
06guild_06.gat mapflag noteleport dummy
06guild_06.gat mapflag nosave SavePoint
06guild_06.gat mapflag nopenalty dummy
06guild_06.gat mapflag nobranch dummy
06guild_06.gat mapflag noloot dummy
06guild_07.gat mapflag nomemo dummy
06guild_07.gat mapflag noteleport dummy
06guild_07.gat mapflag nosave SavePoint
06guild_07.gat mapflag nopenalty dummy
06guild_07.gat mapflag nobranch dummy
06guild_07.gat mapflag noloot dummy
06guild_08.gat mapflag nomemo dummy
06guild_08.gat mapflag noteleport dummy
06guild_08.gat mapflag nosave SavePoint
06guild_08.gat mapflag nopenalty dummy
06guild_08.gat mapflag nobranch dummy
06guild_08.gat mapflag noloot dummy
guild_room.gat mapflag nomemo dummy
guild_room.gat mapflag noteleport dummy
guild_room.gat mapflag nosave SavePoint
guild_room.gat mapflag nopenalty dummy
guild_room.gat mapflag nobranch dummy
//====================================================//
//--- 此行開始到最後的段落 , 請各伺服器勿亂做更改 ---
function script ModF_Script {
if ( getcharid(1) == 0 ) {
mes "[道館傳送員]";
mes "對不起,您沒有加入任何隊伍!";
mes "無法參加挑戰賽。";
close;
}
if ( BaseLevel < $@ModFBaseLv ) {
mes "[道館傳送員]";
mes "對不起,您的等級不足!";
mes "無法參加挑戰賽。";
mes " ";
mes "等級限制:^FF0000"+$@ModFBaseLv+"^000000 等!";
close;
}
for ( set .@CheckClass,1; .@CheckClass < (getarraysize($@ModFClass)+1); set .@CheckClass,.@CheckClass+1 ) {
if ( class == $@ModFClass[.@CheckClass] ) {
mes "[道館傳送員]";
mes "對不起,^FF0000"+jobname(class)+"^000000無法參加挑戰賽!";
close;
}
}
//====================================================//
mes "[道館傳送員]";
mes "您好,我是道館傳送員。";
mes "請問有需要什麼服務嗎?";
next;
select("我要參加挑戰!");
for ( set @MnF,1; @MnF <= 5; set @MnF,@MnF+1 ) {
if ( getmapusers("06guild_0"+@MnF) == 0 ) {
set $@ModFPID[@MnF],0;
}
}
for ( set @MnF,1; @MnF <= 5; set @MnF,@MnF+1 ) {
if ( getcharid(1) == $@ModFPID[@MnF] ){
mes "[道館傳送員]";
mes "您是 [^FF0000"+getpartyname(getcharid(1))+"^000000] 的隊員吧!";
mes "參加前須付^FF0000"+$@ModFZenyP+"^000000的參加費唷!";
next;
if (select("報名參加挑戰!","不小心點到!")==2) {
mes "[道館傳送員]";
mes "那您以後別在那麼不小心哩!";
close;
}
if ( $@ModFStart[@MnF] == 1 ) {
mes "[道館傳送員]";
mes "您的隊友已經開始挑戰了,";
mes "請稍後或加入其他隊伍另外報名參加!";
close;
}
if ( zeny < $@ModFZenyP ) {
mes "[道館傳送員]";
mes "對不起,您沒有足夠的金錢!";
close;
}
if ( getmapusers("06guild_0"+@MnF) >= $@ModFPlayer ) {
mes "[道館傳送員]";
mes "隊伍 [^FF0000"+getpartyname(getcharid(1))+"^000000] 參加的人數已滿,";
mes "請稍後或加入其他隊伍另外報名參加!";
close;
}
set zeny,zeny - $@ModFZenyP;
warp "06guild_0"+@MnF,49,47;
end;
}
}
//====================================================//
mes "[道館傳送員]";
mes "您和您的隊伍要報名參加挑戰賽嗎?";
mes "參加前須付^FF0000"+$@ModFZenyC+"^000000的報名費唷!";
next;
if (select("報名參加挑戰!","不小心點到!")==2) {
mes "[道館傳送員]";
mes "那您以後別在那麼不小心哩!";
close;
}
if ( Zeny < $@ModFZenyC ) {
mes "[道館傳送員]";
mes "對不起,您沒有足夠的金錢!";
close;
}
for ( set @MnF,1; @MnF <= 5; set @MnF,@MnF+1 ) {
if ( getmapusers("06guild_0"+@MnF) == 0 ) {
enablenpc "道館裁判#"+@MnF;
//enablenpc "道館商人#"+@MnF;
killmonsterall "06guild_0"+@MnF;
set Zeny,Zeny - $@ModFZenyC;
set $@ModFStart[@MnF],0;
set $@ModFPID[@MnF],getcharid(1);
set $ModFCID[@MnF],getcharid(0);
set $@GuanShu[@MnF],1;
announce "請 ["+getpartyname($@ModFPID[@MnF])+"] 隊伍的隊員,找 [道館傳送員] !",15;
warp "06guild_0"+@MnF,49,47;
end;
}
}
mes "[道館傳送員]";
mes "所有場地都有隊伍在挑戰中,";
mes "請您稍後再試,謝謝!";
close;
}
//====================================================//
06guild_01,50,49,4 script 道館裁判#1 758,{ callfunc "ModF_Referee",1; }
06guild_02,50,49,4 script 道館裁判#2 758,{ callfunc "ModF_Referee",2; }
06guild_03,50,49,4 script 道館裁判#3 758,{ callfunc "ModF_Referee",3; }
06guild_04,50,49,4 script 道館裁判#4 758,{ callfunc "ModF_Referee",4; }
06guild_05,50,49,4 script 道館裁判#5 758,{ callfunc "ModF_Referee",5; }
//====================================================//
function script ModF_Referee {
set @MnF,getarg(0);
mes "[道館裁判]";
if ( $@GuanShu[@MnF] == 0 ) {
mes "因伺服器重新讀取腳本,";
mes "我將把費用全額退給您!";
next;
if ( getcharid(0) == $ModFCID[@MnF] ) {
set zeny,zeny + $@ModFZenyC;
} else {
set zeny,zeny + $@ModFZenyP;
}
warp "SavePoint",0,0;
close;
}
if ( getcharid(0) == $ModFCID[@MnF] ) {
mes "您不是報名參加挑戰賽的人!";
close;
}
mes "您好,我是道館裁判。";
mes "請問有需要為您服務嗎?";
next;
switch(select("開始挑戰!","不小心點到!",($@GuanShu[@MnF] != 1?"":"放棄挑戰!"))) {
case 1:
if ( getmapusers("06guild_0"+@MnF) >= $@ModFPlayer ) {
mes "[道館裁判]";
mes "場地人數超過^FF0000"+$@ModFPlayer+"^000000人,禁止開始!";
close;
}
set $@ModFStart[@MnF],1;
set $@ModFQuantity[@MnF],$@ModFGuanMod[$@GuanShu[@MnF]];
set $@ModFCheck[@MnF],$@ModFQuantity[@MnF];
disablenpc "道館裁判#"+@MnF;
if ( $@ModFOpenShop ) {
disablenpc "道館商人#"+@MnF;
}
doevent "ModF_Mod::OnSummon_ModF";
close;
case 2:
mes "[道館裁判]";
mes "那您以後別在那麼不小心哩!";
close;
case 3:
mes "[道館裁判]";
mes "嗯嗯!好吧我送您出去,";
mes "我只會環您費用^FF00001/2^000000的金錢,";
mes "您確定您還要離開挑戰賽嗎?";
next;
if (select("是的!","不了!")==1) {
if ( getcharid(0) == $ModFCID[@MnF] ) {
set zeny,zeny + ($@ModFZenyC/2);
} else {
set zeny,zeny + ($@ModFZenyP/2);
}
warp "SavePoint",0,0;
}
close;
}
}
//====================================================//
- script ModF_Mod -1,{
OnSummon_ModF:
if ( $@ModFSummon ) {
for ( set .@SummonNun,1; .@SummonNun < ($@ModFCheck[@MnF]+1); set .@SummonNun,.@SummonNun+1 ) {
set $@ModFMod[@MnF],rand(1,$@ModFModIDSize);
set $@ModFQuantity[@MnF],$@ModFQuantity[@MnF]-1;
monster "06guild_0"+@MnF,50,50,"--ja--",$@ModFModID[$@ModFMod[@MnF]],1,"ModF_Mod::OnKill_ModF";
announce "道館裁判 : 魔物 ["+getmonsterinfo($@ModFModID[$@ModFMod[@MnF]],MOB_NAME)+"] 已放出!",1;
}
announce "道館裁判 : 魔物已全部放出,挑戰開始!(共"+$@ModFCheck[@MnF]+"隻)",1;
} else {
set $@ModFMod[@MnF],rand(1,$@ModFModIDSize);
set $@ModFQuantity[@MnF],$@ModFQuantity[@MnF]-1;
monster "06guild_0"+@MnF,50,50,"--ja--",$@ModFModID[$@ModFMod[@MnF]],1,"ModF_Mod::OnKill_ModF";
announce "道館裁判 : 魔物 ["+getmonsterinfo($@ModFModID[$@ModFMod[@MnF]],MOB_NAME)+"] 已放出,挑戰開始!(剩餘"+$@ModFQuantity[@MnF]+"隻)",1;
}
if ( $@GuanShu[@MnF] == $@ModFGuanSize ) {
announce "道館裁判 : 最後一關挑戰開始,請繼續努力!",1;
}
end;
OnKill_ModF:
if ( $@ModFSummon ) {
set $@ModFCheck[@MnF],$@ModFCheck[@MnF]-1;
if ( $@ModFCheck[@MnF] != 0 ) {
end;
}
} else {
if ( $@ModFQuantity[@MnF] != 0 ) {
addtimer 1000,"ModF_Mod::OnSummon_ModF";
end;
}
}
announce "道館裁判 : 恭喜第 ["+$@GuanShu[@MnF]+"] 關挑戰成功!",17;
if ( $@GuanShu[@MnF] == $@ModFGuanSize ) {
addtimer 5000,"ModF_Mod::OnWarp_ModF";
end;
}
for ( set .@CheckRests,1; .@CheckRests < (getarraysize($@ModFGuanRests)+1); set .@CheckRests,.@CheckRests+1 ) {
if ( $@GuanShu[@MnF] == $@ModFGuanRests[.@CheckRests] ) {
set $@GuanShu[@MnF],$@GuanShu[@MnF] +1;
announce "道館裁判 : 休息時間,請準備好在開始挑戰!",17;
enablenpc "道館裁判#"+@MnF;
//if ( $@ModFOpenShop ) {
//announce "道館裁判 : 地圖 12 點鐘方向設有 [道具商人] 唷!",17;
//enablenpc "道館商人#"+@MnF;
}
end;
}
}
//set $@GuanShu[@MnF],$@GuanShu[@MnF] +1;
//set $@ModFQuantity[@MnF],$@ModFGuanMod[$@GuanShu[@MnF]];
//set $@ModFCheck[@MnF],$@ModFQuantity[@MnF];
//addtimer 5000,"ModF_Mod::OnSummon_ModF";
//end;
OnWarp_ModF:
announce "道館裁判 : 恭喜隊伍 ["+getpartyname($@ModFPID[@MnF])+"] ,挑戰道館成功!",15;
areawarp "06guild_0"+@MnF,0,0,300,300,"guild_room",42,285;
}
//====================================================//
guild_room.gat,30,285,6 script 道場獎品 757,{
mes "**獎品領取**";
mes "[^996699 隨機取得獎品 ^000000]";
mes "[^ff0000 祝您中大獎 ^000000]";
percentheal 100,100;
//,20001,20003,20007
setarray .@i,20001,20002,20003,20006,20007,20016,2647,607,608,12186,984,985;
setarray .@q,2,2,1,2,2,1,100,200,2,40,40;
if(getgmlevel() >= 98){
next;
mes "[^ff0000 GM模式 ^000000]";
mes ".@i元素個數 ="+getarraysize(.@i)+"";
mes ".@q元素個數 ="+getarraysize(.@q)+"";
for (set .@a,0;.@a<getarraysize(.@i);set .@a,.@a+1)
mes "^880000"+(.@a+1) +"^000000. [^006600"+ getitemname(.@i[.@a]) +"^000000] ^880000"+.@q[.@a]+"個^000000";
set .@a,0;
}
next;
set .@n,rand(0,(getarraysize(.@i)-1));
getitem .@i[.@n],.@q[.@n];
warp "SavePoint",0,0;
close;
//====================================
guild_room.gat,52,284,4 script 道場獎金 757,{
mes "**獎品領取**";
mes "[^996699 隨機取得金錢、P點 ^000000]";
mes "[^ff0000 祝您中大獎 ^000000]";
percentheal 100,100;
next;
set .@zeny,rand(0,48000);
set .@zeny,(25*.@zeny)+800000;
set .@cash,rand(10,30);
set zeny,zeny+.@zeny;
set #CASHPOINTS,#CASHPOINTS+(.@cash+5);
dispbottom "Zeny增加 " +.@zeny+ " 。";
dispbottom "您的 CASH 點數增加 " +.@cash+ " 點,共 " + #CASHPOINTS + " 點。";
warp "SavePoint",0,0;
close;
}
fayon,87,141,6 duplicate 道館傳送員 459
|
|