• 0
Sign in to follow this  
Luck

[ Order ] Target Tarot Event

Question

6 answers to this question

Recommended Posts

  • 0

Is my browser broken? Feels like there should be a video or set of images to explain the event.

You should definitely explain what you want, otherwise I guarantee the chance of a response is ZERO.

Share this post


Link to post
Share on other sites
  • 0
17 hours ago, bWolfie said:

Is my browser broken? Feels like there should be a video or set of images to explain the event.

 You should definitely explain what you want, otherwise I guarantee the chance of a response is ZERO.

 

An event held manually by many Game Masters and now has automatic. EXAMPLE: At startup, it will explain that you will use the 'Destination in Cards' ability on each participating player. You should only be lucky not to be 'gifted' with the 'Eat' card! And being the last to leave, will be the winner, winning event and the award.

Share this post


Link to post
Share on other sites
  • 0

I would potentially be willing to help you, but this request remains unclear and lacking in detail. The poor translation coupled with limited information makes it impossible to assist you. 

Please try to provide clear details of what exactly you want. If you are unable to do so in English, consider using one of our international forums found here.

Share this post


Link to post
Share on other sites
  • 0

That's it.

https://github.com/chengue96/requests/blob/master/scripts/event_tarot.txt

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ício do evento.";
    next;
    switch(select("Participar do evento", ( getgroupid() >= [email protected] ? ( !$tarot_status ? "Ligar":"Desligar")+" Evento":"") , "Premiação", "Não quero participar")){
    
        case 1:
            // = Se evento não ativo
            if (!$tarot_status){
                mes "[Evento do Destino]";
                mes "Senhor"+(Sex? "":"a")+", no momento o evento não está atívo! Nós avisaremos quando o evento começar.";
                close;
            }
            
            // = Verifica se o nome do personagem já está no array
            for (set [email protected],0; [email protected] < getarraysize([email protected]_participantes$); set [email protected],[email protected] + 1) {
                if ( [email protected]_participantes$[[email protected]] == strcharinfo(0) ) {
                mes "[Evento do Destino]";
                mes "Tenha calma "+strcharinfo(0)+"! Nós ainda não 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 [email protected]_participantes$[getarraysize([email protected]_participantes$)], strcharinfo(0);
            //message strcharinfo(0), strnpcinfo(1)+" Meus parabéns! Você se registrou com êxito 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íva e não é possível dar início 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ão: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ão for atingido pela carta 'Coma' receberá pontos de evento e recompensas aleatórias.";
            close;
        
        case 4:
        close;
    
    }
    
    OnInit:
    // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    //set "[Evento do Destino]", "^800000"+strnpcinfo(1)+"^000000";
    // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    setarray [email protected]$, "poring_w01", 102, 71;    // = Configuração do mapa do evento
    // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    set [email protected]_participantes,2;    // = Número mínimo de participantes para iniciar o evento
    // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    set [email protected], 60;    // = Level mínimo de GM para ligar/desligar o evento
    // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    // = ATENÇÃO: CADA ITEM TEM SUA QUANTIDADE
    // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    
    callfunc ("resetEventoTarot", [email protected]_participantes$, [email protected]$[0]);
    setarray .mapflag,0,1,7,8,13,22,33,34,12;
    for (set [email protected],0; [email protected] < getarraysize(.mapflag); set [email protected], [email protected] + 1){
        setmapflag [email protected]$[0], .mapflag[[email protected]];
    }
    end;
	}
	-    script    Tarot Event    -1,{
	    // = Início automático
    OnWhisperGlobal:
    input @pass;
    if(@pass != 1324) end;
    OnClock0500:
    OnClock1700:
	    
    // = Início manual
    OnStart:
    set $tarot_status,1;
    
        announce "[NPC] Evento do Destino: As inscrições para o evento estão abertas! Vocês 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ão abertas! Vocês 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ão abertas! Vocês 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ão abertas! Vocês 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ão abertas! Vocês tem 1 minuto para participar. Digite @evt para participar.",bc_all;
        sleep 60000;
        
    
    if ( getarraysize([email protected]_participantes$) < [email protected]_participantes ){
        announce "As inscrições para o Evento do Destino não foram suficientes para iniciar.",bc_all;
        callfunc ("resetEventoTarot", [email protected]_participantes$, [email protected]$[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 [email protected], 0; [email protected] < getarraysize([email protected]_participantes$); set [email protected], [email protected] + 1){
    
        if ( isloggedin(getcharid(3, [email protected]_participantes$[[email protected]])) ){
            warpchar [email protected]$[0], atoi([email protected]$[1]), atoi([email protected]$[2]), getcharid(0, [email protected]_participantes$[[email protected]]);
        }else{
            deletearray [email protected]_participantes$[[email protected]], 1;
        }
        
    }
    sleep 8000;
    sleep2 1500;
    donpcevent "[GM]Tyr::OnSpeak";
    end;
    
    OnReturn:
    while( getarraysize([email protected]_participantes$) > 1){ // = Enquanto o total de participantes for maior que 1
    //
        sleep 1000;
        for(set [email protected],0;[email protected]<getarraysize([email protected]_participantes$);set [email protected],[email protected]+1){
        sleep2 1000;
        if(getmapusers("poring_w01") == 1){goto Vencer;}
            attachrid(getcharid(3,[email protected]_participantes$[[email protected]]));
                if( strcharinfo(3) == [email protected]$[0] ){
                    set [email protected],522+rand(1,14);
                    specialeffect2 [email protected], strcharinfo(0);
                    if( [email protected] == 531 ){
                        deletearray [email protected]_participantes$[[email protected]], 1;
                        percentheal -99,-99;
                        sleep2 1500;
                        warp "SavePoint",0,0;
                    }
                }
                detachrid;
        }
    }
    sleep 2000;
    Vencer:
    if ( getarraysize([email protected]_participantes$)){
        attachrid(getcharid(3, [email protected]_participantes$[0]));    // = Atacha o account_id apartir do nome
        if ( strcharinfo(3) == [email protected]$[0] ){
            announce "[NPC] Evento do Destino: O vencedor do evento é o jogador '"[email protected]_participantes$[0]+"' parabéns!",bc_all;
            getitem 7227,1;
            set #evento,#evento+10;
            
        }
        detachrid;
    }
    
    callfunc ("resetEventoTarot", [email protected]_participantes$, [email protected]$[0]);
    end;
    
    // = Encerra o Evento
    OnStop:
    //announce "["+strnpcinfo(1)+"] Evento encerrado!",bc_all;
    callfunc ("resetEventoTarot", [email protected]_participantes$, [email protected]$[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) == [email protected]$[0] ){
        for (set [email protected],0; [email protected] < getarraysize([email protected]_participantes$); set [email protected],[email protected] + 1) {
        
            if ( [email protected]_participantes$[[email protected]] == strcharinfo(0) ){
                deletearray [email protected]_participantes$[[email protected]], 1;
                break;
            }
            
        }
    }
    end;
}
	poring_w01,102,73,1    script    [GM]Tyr    871,{
mes "[Organizadora de Eventos]";
mes "Jogadores na disputa...";
for (set [email protected],0; [email protected] < getarraysize([email protected]_participantes$); set [email protected],[email protected] + 1) {
mes ([email protected]+1)+" - "[email protected]_participantes$[[email protected]];
}
close;
	    end;
    
    OnSpeak:
    setarray .msgs$,
        "Usarei a habilidade 'Destino nas Cartas' em cada um de vocês.",
        "As rodadas serão de acordo com a ordem de inscrição no evento.",
        "O vencedor será o último a sobreviver!",
        "Boa sorte a todos os participantes!",
        "TAROOOW!";
	    for ( set [email protected],0; [email protected] < getarraysize(.msgs$); set [email protected], [email protected]+1 ){
        npctalk .msgs$[[email protected]];
        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âmetros
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;
}

Please edit the claim at line 177. ;)

Edited by matheusalves

Share this post


Link to post
Share on other sites
  • 0
17 hours ago, Chengue said:

That's it.

https://github.com/chengue96/requests/blob/master/scripts/event_tarot.txt

 

  Reveal hidden contents

 

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ício do evento.";     next;     switch(select("Participar do evento", ( getgroupid() >= [email protected] ? ( !$tarot_status ? "Ligar":"Desligar")+" Evento":"") , "Premiação", "Não quero participar")){              case 1:             // = Se evento não ativo             if (!$tarot_status){                 mes "[Evento do Destino]";                 mes "Senhor"+(Sex? "":"a")+", no momento o evento não está atívo! Nós avisaremos quando o evento começar.";                 close;             }                          // = Verifica se o nome do personagem já está no array             for (set [email protected],0; [email protected] < getarraysize([email protected]_participantes$); set [email protected],[email protected] + 1) {                 if ( [email protected]_participantes$[[email protected]] == strcharinfo(0) ) {                 mes "[Evento do Destino]";                 mes "Tenha calma "+strcharinfo(0)+"! Nós ainda não 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 [email protected]_participantes$[getarraysize([email protected]_participantes$)], strcharinfo(0);             //message strcharinfo(0), strnpcinfo(1)+" Meus parabéns! Você se registrou com êxito 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íva e não é possível dar início 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ão: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ão for atingido pela carta 'Coma' receberá pontos de evento e recompensas aleatórias.";             close;                  case 4:         close;          }          OnInit:     // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -     //set "[Evento do Destino]", "^800000"+strnpcinfo(1)+"^000000";     // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -     setarray [email protected]$, "poring_w01", 102, 71;    // = Configuração do mapa do evento     // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -     set [email protected]_participantes,2;    // = Número mínimo de participantes para iniciar o evento     // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -     set [email protected], 60;    // = Level mínimo de GM para ligar/desligar o evento     // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -     // = ATENÇÃO: CADA ITEM TEM SUA QUANTIDADE     // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -          callfunc ("resetEventoTarot", [email protected]_participantes$, [email protected]$[0]);     setarray .mapflag,0,1,7,8,13,22,33,34,12;     for (set [email protected],0; [email protected] < getarraysize(.mapflag); set [email protected], [email protected] + 1){         setmapflag [email protected]$[0], .mapflag[[email protected]];     }     end; } -    script    Tarot Event    -1,{     // = Início automático     OnWhisperGlobal:     input @pass;     if(@pass != 1324) end;     OnClock0500:     OnClock1700:          // = Início manual     OnStart:     set $tarot_status,1;              announce "[NPC] Evento do Destino: As inscrições para o evento estão abertas! Vocês 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ão abertas! Vocês 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ão abertas! Vocês 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ão abertas! Vocês 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ão abertas! Vocês tem 1 minuto para participar. Digite @evt para participar.",bc_all;         sleep 60000;                   if ( getarraysize([email protected]_participantes$) < [email protected]_participantes ){         announce "As inscrições para o Evento do Destino não foram suficientes para iniciar.",bc_all;         callfunc ("resetEventoTarot", [email protected]_participantes$, [email protected]$[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 [email protected], 0; [email protected] < getarraysize([email protected]_participantes$); set [email protected], [email protected] + 1){              if ( isloggedin(getcharid(3, [email protected]_participantes$[[email protected]])) ){             warpchar [email protected]$[0], atoi([email protected]$[1]), atoi([email protected]$[2]), getcharid(0, [email protected]_participantes$[[email protected]]);         }else{             deletearray [email protected]_participantes$[[email protected]], 1;         }              }     sleep 8000;     sleep2 1500;     donpcevent "[GM]Tyr::OnSpeak";     end;          OnReturn:     while( getarraysize([email protected]_participantes$) > 1){ // = Enquanto o total de participantes for maior que 1     //         sleep 1000;         for(set [email protected],0;[email protected]<getarraysize([email protected]_participantes$);set [email protected],[email protected]+1){         sleep2 1000;         if(getmapusers("poring_w01") == 1){goto Vencer;}             attachrid(getcharid(3,[email protected]_participantes$[[email protected]]));                 if( strcharinfo(3) == [email protected]$[0] ){                     set [email protected],522+rand(1,14);                     specialeffect2 [email protected], strcharinfo(0);                     if( [email protected] == 531 ){                         deletearray [email protected]_participantes$[[email protected]], 1;                         percentheal -99,-99;                         sleep2 1500;                         warp "SavePoint",0,0;                     }                 }                 detachrid;         }     }     sleep 2000;     Vencer:     if ( getarraysize([email protected]_participantes$)){         attachrid(getcharid(3, [email protected]_participantes$[0]));    // = Atacha o account_id apartir do nome         if ( strcharinfo(3) == [email protected]$[0] ){             announce "[NPC] Evento do Destino: O vencedor do evento é o jogador '"[email protected]_participantes$[0]+"' parabéns!",bc_all;             getitem 7227,1;             set #evento,#evento+10;                      }         detachrid;     }          callfunc ("resetEventoTarot", [email protected]_participantes$, [email protected]$[0]);     end;          // = Encerra o Evento     OnStop:     //announce "["+strnpcinfo(1)+"] Evento encerrado!",bc_all;     callfunc ("resetEventoTarot", [email protected]_participantes$, [email protected]$[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) == [email protected]$[0] ){         for (set [email protected],0; [email protected] < getarraysize([email protected]_participantes$); set [email protected],[email protected] + 1) {                      if ( [email protected]_participantes$[[email protected]] == strcharinfo(0) ){                 deletearray [email protected]_participantes$[[email protected]], 1;                 break;             }                      }     }     end; } poring_w01,102,73,1    script    [GM]Tyr    871,{ mes "[Organizadora de Eventos]"; mes "Jogadores na disputa..."; for (set [email protected],0; [email protected] < getarraysize([email protected]_participantes$); set [email protected],[email protected] + 1) { mes ([email protected]+1)+" - "[email protected]_participantes$[[email protected]]; } close;     end;          OnSpeak:     setarray .msgs$,         "Usarei a habilidade 'Destino nas Cartas' em cada um de vocês.",         "As rodadas serão de acordo com a ordem de inscrição no evento.",         "O vencedor será o último a sobreviver!",         "Boa sorte a todos os participantes!",         "TAROOOW!";     for ( set [email protected],0; [email protected] < getarraysize(.msgs$); set [email protected], [email protected]+1 ){         npctalk .msgs$[[email protected]];         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âmetros 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; }


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ício do evento.";
    next;
    switch(select("Participar do evento", ( getgroupid() >= [email protected] ? ( !$tarot_status ? "Ligar":"Desligar")+" Evento":"") , "Premiação", "Não quero participar")){
    
        case 1:
            // = Se evento não ativo
            if (!$tarot_status){
                mes "[Evento do Destino]";
                mes "Senhor"+(Sex? "":"a")+", no momento o evento não está atívo! Nós avisaremos quando o evento começar.";
                close;
            }
            
            // = Verifica se o nome do personagem já está no array
            for (set [email protected],0; [email protected] < getarraysize([email protected]_participantes$); set [email protected],[email protected] + 1) {
                if ( [email protected]_participantes$[[email protected]] == strcharinfo(0) ) {
                mes "[Evento do Destino]";
                mes "Tenha calma "+strcharinfo(0)+"! Nós ainda não 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 [email protected]_participantes$[getarraysize([email protected]_participantes$)], strcharinfo(0);
            //message strcharinfo(0), strnpcinfo(1)+" Meus parabéns! Você se registrou com êxito 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íva e não é possível dar início 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ão: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ão for atingido pela carta 'Coma' receberá pontos de evento e recompensas aleatórias.";
            close;
        
        case 4:
        close;
    
    }
    
    OnInit:
    // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    //set "[Evento do Destino]", "^800000"+strnpcinfo(1)+"^000000";
    // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    setarray [email protected]$, "poring_w01", 102, 71;    // = Configuração do mapa do evento
    // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    set [email protected]_participantes,2;    // = Número mínimo de participantes para iniciar o evento
    // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    set [email protected], 60;    // = Level mínimo de GM para ligar/desligar o evento
    // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    // = ATENÇÃO: CADA ITEM TEM SUA QUANTIDADE
    // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    
    callfunc ("resetEventoTarot", [email protected]_participantes$, [email protected]$[0]);
    setarray .mapflag,0,1,7,8,13,22,33,34,12;
    for (set [email protected],0; [email protected] < getarraysize(.mapflag); set [email protected], [email protected] + 1){
        setmapflag [email protected]$[0], .mapflag[[email protected]];
    }
    end;
	}
	-    script    Tarot Event    -1,{
	    // = Início automático
    OnWhisperGlobal:
    input @pass;
    if(@pass != 1324) end;
    OnClock0500:
    OnClock1700:
	    
    // = Início manual
    OnStart:
    set $tarot_status,1;
    
        announce "[NPC] Evento do Destino: As inscrições para o evento estão abertas! Vocês 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ão abertas! Vocês 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ão abertas! Vocês 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ão abertas! Vocês 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ão abertas! Vocês tem 1 minuto para participar. Digite @evt para participar.",bc_all;
        sleep 60000;
        
    
    if ( getarraysize([email protected]_participantes$) < [email protected]_participantes ){
        announce "As inscrições para o Evento do Destino não foram suficientes para iniciar.",bc_all;
        callfunc ("resetEventoTarot", [email protected]_participantes$, [email protected]$[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 [email protected], 0; [email protected] < getarraysize([email protected]_participantes$); set [email protected], [email protected] + 1){
    
        if ( isloggedin(getcharid(3, [email protected]_participantes$[[email protected]])) ){
            warpchar [email protected]$[0], atoi([email protected]$[1]), atoi([email protected]$[2]), getcharid(0, [email protected]_participantes$[[email protected]]);
        }else{
            deletearray [email protected]_participantes$[[email protected]], 1;
        }
        
    }
    sleep 8000;
    sleep2 1500;
    donpcevent "[GM]Tyr::OnSpeak";
    end;
    
    OnReturn:
    while( getarraysize([email protected]_participantes$) > 1){ // = Enquanto o total de participantes for maior que 1
    //
        sleep 1000;
        for(set [email protected],0;[email protected]<getarraysize([email protected]_participantes$);set [email protected],[email protected]+1){
        sleep2 1000;
        if(getmapusers("poring_w01") == 1){goto Vencer;}
            attachrid(getcharid(3,[email protected]_participantes$[[email protected]]));
                if( strcharinfo(3) == [email protected]$[0] ){
                    set [email protected],522+rand(1,14);
                    specialeffect2 [email protected], strcharinfo(0);
                    if( [email protected] == 531 ){
                        deletearray [email protected]_participantes$[[email protected]], 1;
                        percentheal -99,-99;
                        sleep2 1500;
                        warp "SavePoint",0,0;
                    }
                }
                detachrid;
        }
    }
    sleep 2000;
    Vencer:
    if ( getarraysize([email protected]_participantes$)){
        attachrid(getcharid(3, [email protected]_participantes$[0]));    // = Atacha o account_id apartir do nome
        if ( strcharinfo(3) == [email protected]$[0] ){
            announce "[NPC] Evento do Destino: O vencedor do evento é o jogador '"[email protected]_participantes$[0]+"' parabéns!",bc_all;
            getitem 7227,1;
            set #evento,#evento+10;
            
        }
        detachrid;
    }
    
    callfunc ("resetEventoTarot", [email protected]_participantes$, [email protected]$[0]);
    end;
    
    // = Encerra o Evento
    OnStop:
    //announce "["+strnpcinfo(1)+"] Evento encerrado!",bc_all;
    callfunc ("resetEventoTarot", [email protected]_participantes$, [email protected]$[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) == [email protected]$[0] ){
        for (set [email protected],0; [email protected] < getarraysize([email protected]_participantes$); set [email protected],[email protected] + 1) {
        
            if ( [email protected]_participantes$[[email protected]] == strcharinfo(0) ){
                deletearray [email protected]_participantes$[[email protected]], 1;
                break;
            }
            
        }
    }
    end;
}
	poring_w01,102,73,1    script    [GM]Tyr    871,{
mes "[Organizadora de Eventos]";
mes "Jogadores na disputa...";
for (set [email protected],0; [email protected] < getarraysize([email protected]_participantes$); set [email protected],[email protected] + 1) {
mes ([email protected]+1)+" - "[email protected]_participantes$[[email protected]];
}
close;
	    end;
    
    OnSpeak:
    setarray .msgs$,
        "Usarei a habilidade 'Destino nas Cartas' em cada um de vocês.",
        "As rodadas serão de acordo com a ordem de inscrição no evento.",
        "O vencedor será o último a sobreviver!",
        "Boa sorte a todos os participantes!",
        "TAROOOW!";
	    for ( set [email protected],0; [email protected] < getarraysize(.msgs$); set [email protected], [email protected]+1 ){
        npctalk .msgs$[[email protected]];
        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âmetros
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;
}

 

Please edit the claim at line 177. ;)

 

thanks man, you saved my life.

 

Share this post


Link to post
Share on other sites

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.

Loading...
Sign in to follow this