Jump to content

Question

Posted (edited)

Good morning community! Could someone help me with this error that points in the mapserver in the tarot event, I will be grateful.

attached script

erro event tarot.png

tarot.txt

Edited by lLoydxx

3 answers to this question

Recommended Posts

  • 0
Posted (edited)
On 7/3/2021 at 3:55 PM, Patskie said:

Change all sleep2 to sleep

@Patskie 

I changed the sleep and this new error appeared. Can you help me?

 

Edited by lLoydxx
  • 1
Posted (edited)
/*
				.___  ___.  __   __  ___ 
				|   \/   | |  | |  |/  / 
				|  \  /  | |  | |  '  /  
				|  |\/|  | |  | |    <   
				|  |  |  | |  | |  .  \  
				|__|  |__| |__| |__|\__\ 
                         
	= Tarot Event v2016
	= by Mik閕as
	= brAthena
	= User: http://forum.brathena.org/index.php/user/11630-mikeias/

*/

prontera,128,329,4	script	Evento do Destino	4_M_BARD,{

	mes "[Evento do Destino]";
	mes "Ol?"+strcharinfo(0);
	mes "Est?afim de testar sua sorte nas cartas? Fique atento quando anunciar o in韈io do evento.";
	next;
	switch(select("Participar do evento", ( getgroupid() >= $@lvminGM ? ( !$tarot_status ? "Ligar":"Desligar")+" Evento":"") , "Premia玢o", "N鉶 quero participar")){
	
		case 1:
			// = Se evento n鉶 ativo
			if (!$tarot_status){
				mes "[Evento do Destino]";
				mes "Senhor"+(Sex? "":"a")+", no momento o evento n鉶 est?at韛o! N髎 avisaremos quando o evento come鏰r.";
				close;
			}
			
			// = Verifica se o nome do personagem j?est?no array
			for (set .@i,0; .@i < getarraysize($@tarot_participantes$); set .@i,.@i + 1) {
				if ( $@tarot_participantes$[.@i] == strcharinfo(0) ) {
				mes "[Evento do Destino]";
				mes "Tenha calma "+strcharinfo(0)+"! N髎 ainda n鉶 estamos prontos para voc? aguarde um momento.";
				next;
				warp "force_1-1",100,100;
				close;
				}
			}
		
			mes "[Evento do Destino]";
			mes "Tudo certo, anotei a sua participa玢o aqui! Em breve voc?ser?chamado para que o evento seja iniciado.";
			// = Adiciona o nome do personagem ao array
			set $@tarot_participantes$[getarraysize($@tarot_participantes$)], strcharinfo(0);
			//message strcharinfo(0), strnpcinfo(1)+" Meus parab閚s! Voc?se registrou com 陎ito para participar do evento.";
			announce strnpcinfo(1)+" <"+strcharinfo(0)+"> registrou-se para participar do evento!",bc_all;
			next;
			warp "force_1-1",100,100;
						close;
		
		case 2:
			if( agitcheck() || agitcheck2() ){
				mes "[Evento do Destino]";
				mes "Neste momento a Guerra do Emperium est?at韛a e n鉶 ?poss韛el dar in韈io ao evento!";
				close;
			}
			mes "[Evento do Destino]";
			mes "Ol? Game-Master! Voc?tem certeza que deseja "+( !$tarot_status ? "Ligar":"Desligar")+" o evento?";
			if(select("N鉶:Tenho certeza") == 1) close;
			if ( !$tarot_status ){
				donpcevent "Tarot Event::OnStart";
			}else
				donpcevent "Tarot Event::OnStop";
			close;
			end;
			
		case 3:
			mes "[Evento do Destino]";
			mes "O participante que n鉶 for atingido pela carta 'Coma' receber?pontos de evento e recompensas aleat髍ias.";
			close;
		
		case 4:
		close;
	
	}
	
	OnInit:
	// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
	//set "[Evento do Destino]", "^800000"+strnpcinfo(1)+"^000000";
	// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
	setarray $@mapeventtarot$, "poring_w01", 102, 71;	// = Configura玢o do mapa do evento
	// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
	set $@mintarot_participantes,2;	// = N鷐ero m韓imo de participantes para iniciar o evento
	// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
	set $@lvminGM, 60;	// = Level m韓imo de GM para ligar/desligar o evento
	// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
	// = ATEN敲O: CADA ITEM TEM SUA QUANTIDADE
	// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
	
	callfunc ("resetEventoTarot", $@tarot_participantes$, $@mapeventtarot$[0]);
	setarray .mapflag,0,1,7,8,13,22,33,34,12;
	for (set .@m,0; .@m < getarraysize(.mapflag); set .@m, .@m + 1){
		setmapflag $@mapeventtarot$[0], .mapflag[.@m];
	}
	end;

}

-	script	Tarot Event	-1,{

	// = In韈io autom醫ico
	OnClock0500:
	OnClock1700:

	
	// = In韈io manual
	OnStart:
	set $tarot_status,1;
	
		announce "[NPC] Evento do Destino: As inscri珲es para o evento est鉶 abertas! Voc阺 tem 5 minutos para participar. Digite @evt para participar.",bc_all;
		sleep 60000;
		announce "[NPC] Evento do Destino: As inscri珲es para o evento est鉶 abertas! Voc阺 tem 4 minutos para participar. Digite @evt para participar.",bc_all;
		sleep 60000;
		announce "[NPC] Evento do Destino: As inscri珲es para o evento est鉶 abertas! Voc阺 tem 3 minutos para participar. Digite @evt para participar.",bc_all;
		sleep 60000;
		announce "[NPC] Evento do Destino: As inscri珲es para o evento est鉶 abertas! Voc阺 tem 2 minutos para participar. Digite @evt para participar.",bc_all;
		sleep 60000;
		announce "[NPC] Evento do Destino: As inscri珲es para o evento est鉶 abertas! Voc阺 tem 1 minuto para participar. Digite @evt para participar.",bc_all;
		sleep 60000;
		
	
	if ( getarraysize($@tarot_participantes$) < $@mintarot_participantes ){
		announce "As inscri珲es para o Evento do Destino n鉶 foram suficientes para iniciar.",bc_all;
		callfunc ("resetEventoTarot", $@tarot_participantes$, $@mapeventtarot$[0]);
		end;
	}

	announce "[NPC] Evento do Destino: As inscri珲es para o evento foram encerradas. Boa sorte a todos os participantes!",bc_all;
	
	set $tarot_status,0;
	for(set .@p, 0; .@p < getarraysize($@tarot_participantes$); set .@p, .@p + 1){
	
		if ( isloggedin(getcharid(3, $@tarot_participantes$[.@p])) ){
			warpchar $@mapeventtarot$[0], atoi($@mapeventtarot$[1]), atoi($@mapeventtarot$[2]), getcharid(0, $@tarot_participantes$[.@p]);
		}else{
			deletearray $@tarot_participantes$[.@p], 1;
		}
		
	}
	sleep 8000;
	donpcevent "[GM]Tyr::OnSpeak";
	end;
	
	OnReturn:
	while( getarraysize($@tarot_participantes$) > 1){ // = Enquanto o total de participantes for maior que 1
	//
		sleep 1000;
		for(set .@p,0;.@p<getarraysize($@tarot_participantes$);set .@p,.@p+1){
			sleep 1000;
			if(getmapusers("poring_w01") == 1){goto Vencer;}
			attachrid(getcharid(3,$@tarot_participantes$[.@p]));
			if( strcharinfo(3) == $@mapeventtarot$[0] ){
				set .@CARDs,522+rand(1,14);
				specialeffect2 .@CARDs, strcharinfo(0);
				if( .@CARDs == 531 ){
					deletearray $@tarot_participantes$[.@p], 1;
					percentheal -99,-99;
					sleep2 1500;
					warp "SavePoint",0,0;
				}
			}
			detachrid;
		}
	}
	sleep 2000;
	Vencer:
	if ( getarraysize($@tarot_participantes$)){
		attachrid(getcharid(3, $@tarot_participantes$[0]));	// = Atacha o account_id apartir do nome
		if ( strcharinfo(3) == $@mapeventtarot$[0] ){
			announce "[NPC] Evento do Destino: O vencedor do evento ?o jogador '"+$@tarot_participantes$[0]+"' parab閚s!",bc_all;
			getitem 7227,1;
			set #evento,#evento+10;
			
		}
		detachrid;
	}
	
	callfunc ("resetEventoTarot", $@tarot_participantes$, $@mapeventtarot$[0]);
	end;
	
	// = Encerra o Evento
	OnStop:
	//announce "["+strnpcinfo(1)+"] Evento encerrado!",bc_all;
	callfunc ("resetEventoTarot", $@tarot_participantes$, $@mapeventtarot$[0]);
	end;

}

-	script	tarot_events	-1,{

	// = Se o participante que deslogou ou morreu estiver no mapa do evento, seu nome ser?retirado do array de tarot_participantes
	OnPCLogoutEvent:
	if ( strcharinfo(3) == $@mapeventtarot$[0] ){
		for (set .@i,0; .@i < getarraysize($@tarot_participantes$); set .@i,.@i + 1) {
		
			if ( $@tarot_participantes$[.@i] == strcharinfo(0) ){
				deletearray $@tarot_participantes$[.@i], 1;
				break;
			}
			
		}
	}
	end;
}

poring_w01,102,73,1	script	[GM]Tyr	871,{
mes "[Organizadora de Eventos]";
mes "Jogadores na disputa...";
for (set .@i,0; .@i < getarraysize($@tarot_participantes$); set .@i,.@i + 1) {
mes (.@i+1)+" - "+$@tarot_participantes$[.@i];
}
close;

	end;
	
	OnSpeak:
	setarray .msgs$,
		"Usarei a habilidade 'Destino nas Cartas' em cada um de voc阺.",
		"As rodadas ser鉶 de acordo com a ordem de inscri玢o no evento.",
		"O vencedor ser?o 鷏timo a sobreviver!",
		"Boa sorte a todos os participantes!",
		"TAROOOW!";

	for ( set .@i,0; .@i < getarraysize(.msgs$); set .@i, .@i+1 ){
		npctalk .msgs$[.@i];
		sleep 3000;
	}
	donpcevent "Tarot Event::OnReturn";
	end;
	
	OnInit:
	setarray .x[0],94,105,99,110;
	setarray .y[0],68;
	npcspeed 195;
	initnpctimer;
	end;
	
	OnTimer1000:
	emotion rand(34,45);
	for(set .c,0;.c<getarraysize(.x); set .c,.c+1){
		npcwalkto .x[.c],.y[0];
		sleep 3500;
	}
	initnpctimer;
	end;
	
}

// = Reseta par鈓etros
function	script	resetEventoTarot	{

	// @param0 = array dos tarot_participantes
	// @param1 = map event
	deletearray getarg(0);
	set $tarot_status,0;
	mapwarp getarg(1), "prontera",156,183;
	return;
}

not all sleep2 could be changed into sleep, you need to identity which part of the script execution doesnt attach to players and which part does.

Edited by Emistry
  • Upvote 1

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...