Jump to content
  • 0

Question

3 answers to this question

Recommended Posts

Posted
prontera,155,181,5 script Emperium Breaker 1288,{
// What Map will be used
set .Map$,"job3_arch01";
// How many Top Breaker will be Recorded
set .TopRank,5;
// Message to Inform Players while inside the Room
setarray .Instruction$[0],
  "Please Listen here carefully.",
  "This is Emperium Breaker Test Room , which is use to test your Breaking Time.",
  "Prepare youself...and do your best to Break it...",
  "Okay that's All i want to say , get Ready yourself and it will Start Soon.";


while( 1 ){
mes "This is Emperium Breaker test Room. ";
mes "You are able to calculate your Emperium Breaking Speed in this Room.";
next;
switch( select( ( getmapusers( .Map$ ) )?"^FF0000NOT Available":"^0000FFAvailable^000000",
   "Top ^FF0000"+.TopRank+"^000000 Breaker Ladder",
   ( getgmlevel() < 90 )?"":"^FF0000[GM]^000000 Reset Room",
   ( getgmlevel() < 90 )?"":"^FF0000[GM]^000000 Reset Ladder" )){
Case 1:
if( getmapusers( .Map$ ) ){
 mes "There is another player inside it now.";
 next;
 break;
 }
warp .Map$,0,0;
killmonster .Map$,"All";
// removemapflag .Map$,mf_noskill;
donpcevent strnpcinfo(0)+"::OnReady";
end;
Case 2:
mes "^ED1ADCLatest Record^000000 : "+LatestRecord/1000+"."+LatestRecord%1000+" Seconds.";
for( set .@i,0; .@i < .TopRank; set .@i,.@i + 1 ){
 if( !$TopRankTime[.@i] ) break;
 mes "^FF0000Top "+( .@i + 1 )+" : ^0000FF"+$TopName$[.@i]+" ";
 mes "^FF0000Time Taken : ^ED1ADC[ "+$TopRankTime[.@i]/1000+"."+$TopRankTime[.@i]%1000+" Sec. ]^000000 ";
}
next;
break;
Case 3:
mapannounce .Map$,"A GM has RESET the Breaker Test Room.",0,0x00FF00;
killmonster .Map$,"All";
sleep2 3000;
mapwarp .Map$,"prontera",155,171;
mes "Done Reset. and Player who are inside are warped out.";
next;
break;
Case 4:
switch( select( "^0000FFAll Player^000000:^FF0000One Player^000000" ) ){
 Case 1:
  deletearray $TopRankTime[0],getarraysize( $TopRankTime );
  deletearray $TopName$[0],getarraysize( $TopName$ );
  mes "RESETED WHOLE LADDER.";
  break;
 Case 2:
  mes "Please input the ^FF0000EXACT NAME^000000 of player you want to delete.";
  input .Name$;
  for( set .@i,0; .@i < .TopRank; set .@i,.@i + 1 ){
   if( .Name$ == $TopName$[.@i] ){
 deletearray $TopName$[.@i],1;
 deletearray $TopRankTime[.@i],1;
 mes "Removed ^FF0000"+.Name$+"^000000 from the List.";
   }
  }
 }
next;
break;
}
}
OnReady:
sleep2 3000;
for( set .@i,0; .@i < getarraysize( .Instruction$ ); set .@i,.@i + 1 ){
mapannounce .Map$,.Instruction$[.@i],0,0x00FF00;
sleep2 2500;
}
for( set .@i,5; .@i > 0; set .@i,.@i - 1 ){
mapannounce .Map$,"Count Down : "+.@i+" Seconds.",0,0x00FF00;
sleep2 1000;
}
//mapannounce .Map$,"Hit the Emperium Now and Skills Disabled.",0,0x00FF00;
setmapflag .Map$,mf_noskill;
monster .Map$,29,27,"Breaker Test",1288,1,strnpcinfo(0)+"::OnBreaked";
set .Record,0;
sleep2 500;
initnpctimer;
end;
OnTimer600000:
if( !mobcount( .Map$,strnpcinfo(0)+"::OnBreaked" ) ) end;
mapannounce .Map$,"You spent too much time. i think you are AFK , so you are out.",0,0xED1ADC;
sleep2 3000;
mapwarp .Map$,"aev_fild",143,169;
stopnpctimer;
end;
OnBreaked:
set .Time,getnpctimer(0);
copyarray .@tempName$[0],$TopName$[0],getarraysize( $TopName$ );
copyarray .@tempRecord[0],$TopRankTime[0],getarraysize( $TopRankTime[0] );
set LatestRecord,.Time;
for( set .@i,0; .@i < .TopRank; set .@i,.@i + 1 ){
 if( .Time < $TopRankTime[.@i] || !$TopRankTime[.@i] ){
   set $TopRankTime[.@i],.Time;
   set $TopName$[.@i],strcharinfo(0);
   copyarray $TopRankTime[.@i + 1],.@tempRecord[0],getarraysize( .@tempRecord );
   copyarray $TopName$[.@i + 1],.@tempName$[0],getarraysize( .@tempName$ );
  announce "[ "+strcharinfo(0)+" ] Achieved Top "+( .@i + 1 )+" in Emperium Breaking with "+.Time/1000+"."+.Time%1000+" Seconds !!!",bc_all,0xED1ADC;
  break;
  }
 }
stopnpctimer;
announce "Current Time Taken : "+.Time/1000+"."+.Time%1000+" Seconds. ",bc_self,0xED1ADC;
// removemapflag .Map$,mf_noskill;
sleep2 5000;
mapwarp .Map$,"aev_fild",155,181;
end;
}

job3_arch01 mapflag nocommand 50
job3_arch01 mapflag gvg on
job3_arch01 mapflag gvg_castle
job3_arch01 mapflag monster_noteleport
job3_arch01 mapflag nosave SavePoint

Posted (edited)

Are you talking about being WARPED into the map? If so, it warps you based on:

warp .Map$,0,0;

which means, you have to change this line:

// What Map will be used
set .Map$,"job3_arch01";

Now, players still in the map will be moved once the ladder is reset, or w.e and they'll be moved accordingly:

mapwarp .Map$,"prontera",155,171;

Edited by Mysterious

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...