UID97413
帖子
精華
主題
積分747
現金
積極性
威望
違規
熱心
推廣次數
閱讀權限10
註冊時間2008-7-20
在線時間 小時
最後登錄1970-1-1
TA的每日心情 | 擦汗 2023-9-26 09:18 PM |
---|
簽到天數: 70 天 連續簽到: 1 天 [LV.6]常住居民II
|
EA
私服版號: |
3CeAM - R637 [主檔]Robe |
問題內容: |
腳本問題 |
本帖最後由 moilg45754 於 2016-1-29 08:27 PM 編輯
不好意思又來打擾大家了
小弟有找到一篇教學 ( http://okayro.com/thread-110145-1-1.html )
把
if (!getcharid(1) || Zeny<$@Dc_In_Zeny)
{
改成
if (@psnparty==0 || Zeny<$@Dc_In_Zeny || @partymembercount != x)
{
x=限制人數
可是我這樣改之後,即使是滿足x值的隊伍人數,還是無法進入道館,請問這該怎麼寫呢?
下面是原先還沒改過的腳本,請大家幫幫忙非常感謝^^" (要限制人數進入)
malangdo.gat,135,281,5 script 道館挑戰員★ 710,{
mes "【道館★】";
mes "歡迎您參加道場的挑戰";
mes "★第五關及第十關15秒後才出王!";
next;
menu "道場報名",field,"取消",piggg;
piggg:
close;
field:
mes "【道館★】";
if (!getcharid(1) || Zeny<$@Dc_In_Zeny)
{
mes "您沒有隊伍或金錢不足 "+$@Dc_In_Zeny+" Zeny";
close;
}
for (set @t,1;@t<6;set @t,@t+1)
{
if ( getmapusers("guild_vs"+@t+".gat")==0 )
{
killmonster "guild_vs"+@t+".gat","Dc_Main_"+@t+"::OnKillMob";
set Zeny,Zeny-$@Dc_In_Zeny;
set $@Dc_Truns[@t],1;
set $@Dc_Party[@t],getcharid(1);
set $@Dc_timer[@t],$@Dc_Delay[0];
enablenpc "裁判#"+@t+"";
initnpctimer "Dc_Timer_"+@t+"";
warpparty "guild_vs"+@t+".gat",49,47,getcharid(1);
if (!sleep2(1000))
end;
mapannounce "guild_vs"+@t+".gat","[ 道場 ] 請在 "+$@Dc_Delay[0]+" 分鐘內開始比賽,否則將強制退出!",15;
announce "請 [" + getpartyname(getcharid(1)) + "] 隊伍的隊員集合",15;
announce "地點在 [區域NPC傳娛樂區★] 找 [道場挑戰-管理員]",15;
end;
}
}
for (set @t,1;@t<6;set @t,@t+1)
mes "[場地"+@t+"]隊伍: ["+getpartyname($@Dc_Party[@t])+"]";
mes "全部場地都有人在挑戰了,請稍後再試";
close;
OnInit:
waitingroom "【★道場挑戰】",0;
set $@Dc_In_Zeny,1000000; //設置入場金錢
set $@Dc_Misson,10; //道場關數
setarray $@Dc_Mob_Id[0],1817,1272,1373,1492,1708,1529,1779,1832,1658,1039,1038,1087,1112,1251,1511,1623,1685,1734; //設置怪物ID
setarray $@Dc_Mob_Num[1],1,1,1,1,2,1,1,1,1,2; //每關刷怪數量
setarray $@Dc_Delay[0],5,120,120,120,120,120,120,120,120,120,120; //開始比賽的等待時間,第一關時間,第二關時間,……,單位:分鐘
setarray $@Dc_Space[1],5,5,5,15,5,5,5,5,15,5; //每關間隔時間,單位:秒
end;
}
guild_vs1.gat,0,0,0 script Dc_Timer_1 -1,{ OnTimer60000: callfunc "Dc_Timer",1; }
guild_vs2.gat,0,0,0 script Dc_Timer_2 -1,{ OnTimer60000: callfunc "Dc_Timer",2; }
guild_vs3.gat,0,0,0 script Dc_Timer_3 -1,{ OnTimer60000: callfunc "Dc_Timer",3; }
guild_vs4.gat,0,0,0 script Dc_Timer_4 -1,{ OnTimer60000: callfunc "Dc_Timer",4; }
guild_vs5.gat,0,0,0 script Dc_Timer_5 -1,{ OnTimer60000: callfunc "Dc_Timer",5; }
function script Dc_Timer {
setnpctimer 0,"Dc_Timer_"+getarg(0)+"";
set $@Dc_timer[getarg(0)],$@Dc_timer[getarg(0)]-1;
if ($@Dc_timer[getarg(0)]>0)
end;
set $@Dc_timer[getarg(0)],0;
stopnpctimer "Dc_Timer_"+getarg(0)+"";
areawarp "guild_vs"+getarg(0)+".gat",1,1,300,300,"xams.gat",146,126;
end;
}
guild_vs1.gat,0,0,0 script Dc_Main_1 -1,{ OnMain: callfunc "Dc_Main",1; OnKillMob: callfunc "Dc_Kill",1; }
guild_vs2.gat,0,0,0 script Dc_Main_2 -1,{ OnMain: callfunc "Dc_Main",2; OnKillMob: callfunc "Dc_Kill",2; }
guild_vs3.gat,0,0,0 script Dc_Main_3 -1,{ OnMain: callfunc "Dc_Main",3; OnKillMob: callfunc "Dc_Kill",3; }
guild_vs4.gat,0,0,0 script Dc_Main_4 -1,{ OnMain: callfunc "Dc_Main",4; OnKillMob: callfunc "Dc_Kill",4; }
guild_vs5.gat,0,0,0 script Dc_Main_5 -1,{ OnMain: callfunc "Dc_Main",5; OnKillMob: callfunc "Dc_Kill",5; }
function script Dc_Main {
stopnpctimer "Dc_Timer_"+getarg(0)+"";
initnpctimer "Dc_Timer_"+getarg(0)+"";
set $@Dc_timer[getarg(0)],$@Dc_Delay[$@Dc_Truns[getarg(0)]];
for (set @num,0;@num<$@Dc_Mob_Num[$@Dc_Truns[getarg(0)]];set @num,@num+1)
monster "guild_vs"+getarg(0)+".gat",50,49,"--ja--",$@Dc_Mob_Id[rand(getarraysize($@Dc_Mob_Id))],1,"Dc_Main_"+getarg(0)+"::OnKillMob";
set $@Dc_Mob[getarg(0)],$@Dc_Mob_Num[$@Dc_Truns[getarg(0)]];
mapannounce "guild_vs"+getarg(0)+".gat","[ 道場 ] 魔物放出!第 "+$@Dc_Truns[getarg(0)]+" 關挑戰開始!",15;
mapannounce "guild_vs"+getarg(0)+".gat","[ 道場 ] 請在 "+$@Dc_Delay[$@Dc_Truns[getarg(0)]]+" 分鐘內完成本關,否則將強制退出!",15;
end;
}
function script Dc_Kill {
set $@Dc_Mob[getarg(0)], $@Dc_Mob[getarg(0)] - 1;
if( $@Dc_Mob[getarg(0)] > 0 ) end;
mapannounce "guild_vs"+getarg(0)+".gat","[ 道場 ] "+getpartyname($@Dc_Party[getarg(0)]) +" 隊伍, 第 "+$@Dc_Truns[getarg(0)]+" 關挑戰成功!",15;
if (!sleep2($@Dc_Space[$@Dc_Truns[getarg(0)]]*1000))
end;
if($@Dc_Truns[getarg(0)] == $@Dc_Misson)
{
stopnpctimer "Dc_Timer_"+getarg(0)+"";
areawarp "guild_vs"+getarg(0)+".gat",1,1,300,300,"new_3-2",27,181;
}
else
{
set $@Dc_Truns[getarg(0)],$@Dc_Truns[getarg(0)] + 1;
doevent "Dc_Main_"+getarg(0)+"::OnMain";
}
end;
}
guild_vs1.gat,50,49,4 script 裁判#1 758,{ callfunc "dc_doevent",1; }
guild_vs2.gat,50,49,4 script 裁判#2 758,{ callfunc "dc_doevent",2; }
guild_vs3.gat,50,49,4 script 裁判#3 758,{ callfunc "dc_doevent",3; }
guild_vs4.gat,50,49,4 script 裁判#4 758,{ callfunc "dc_doevent",4; }
guild_vs5.gat,50,49,4 script 裁判#5 758,{ callfunc "dc_doevent",5; }
function script dc_doevent {
mes "[裁判]";
mes "您準備要開始挑戰了嗎?";
menu "是的",-;
close2;
doevent "Dc_Main_"+getarg(0)+"::OnMain";
disablenpc "裁判#"+getarg(0)+"";
end;
}
|
|