Jump to content
  • 0
Sign in to follow this  
Yazoo

bloqueando entrada de mvps em pvp

Question

Boa tarde galera !!!
Utilizo esse npc de teleporte para o pvp:

E eu gostaria de fazer o seguinte.
Onde está PVP Iniciante eu gostaria de fazer com que o npc diga algo como, "você está utilizando alguma carta mvp e não pode ser teleportado para essa arena" ou algo do tipo. e o npc não permite que a pessoa teleporte para esse mapa até que ela remova todas as cartas mvps.
Se alguem puder me ajudar com isso eu ficaria muito agradecido.

Eu adicionei esse      case 1:
        if(countitem(4357)>= 1) goto DON;  ....
mas isso só impede que o jogador entre caso a carta mvp esteja em seu inventario.

e eu gostaria que bloqueasse todas as cartas alem das que estão no inventário as que estão equipadas também...
ai no caso as outras as outras 3 arenas q é pvp normal, Players 1vs1 e GVG pode entrar com qualquer mvp.

//===== Por: ==================================================
//= Wukong - v1.0
//= Khan   - v3.0
//= NightmareA - v4.0
//= NightmareA - v5.0
//= pedroamoury - v6.0
//= Easy Crazy - v7.0
//= Linne - v7.1
//===== Versão Atual: =========================================
//= 7.1
//===== Changelog: ============================================
//= 7.1 - Atualizado por Linne.
//===== Compatível Com: =======================================
//= Qualquer eAthena (SVN)
//= Qualquer Cronus (SVN)
//===== Descrição: ============================================
//= Arena da Morte. Com arena de PvP/GvG com Rank Abertas as 10:00 e Feichadas as 22:00 da noite.
//= Arenas PvP, GvG , Baby No-Rank Abertas 24h
//= Playes vs Playes 1x1
//= Sala de Eventos onde acontece eventos
//=============================================================
 
//===== Arena da Morte ========================================
rachel,134,116,6    script    Arena    404,{
 
//===== Nome do npc. ==========================================
set @nome$,"[^FF0000Arena da Morte^000000]";
 
//===== Arena PvP =============================================
set $pvp$[0],"ordeal_3-1";//Arena 1
set $pvpn$[0],"pvp_2vs2";//Arena 1
//===== Arena GvG =============================================
set $gvg$[0],"guild_vs3";// Arena 1
set $gvgn$[0],"guild_vs2-2";// Arena 1
set $baby$[0],"guild_vs1-3";// Baby 1
// ====== Sala de 1x1 =============================================
set $playe$[0],"guild_vs1-4";// 1x1 1
//===== Arena Baby =============================================
    mes @nome$;
    mes "Olá "+strcharinfo(0)+".";
    mes "Escolha qual destino deseja ir";
    next;
    switch(select("- PvP Normal (^0000FF"+getmapusers($pvp$[$pvp])+"^000000) Jogadores","- PvP Iniciante (^0000FF"+getmapusers($gvg$[$gvg])+"^000000) Jogadores","- GvG (^0000FF"+getmapusers($pvpn$[$pvpn])+"^000000) Jogadores","- Playes 1vs1 (^0000FF"+getmapusers($playe$[$playe])+"^000000) Jogadores","- Sair"))
    {
 
    case 1:
        switch(select("- Arena PvP","- Sair"))
        {
 
        case 1:
             set @evento, rand(1,5);
                if(@evento == 1){ warp "ordeal_3-1",150,123; }
                if(@evento == 2){ warp "ordeal_3-1",122,148; }
                if(@evento == 3){ warp "ordeal_3-1",150,176; }
                if(@evento == 4){ warp "ordeal_3-1",177,149; }
                if(@evento == 5){ warp "ordeal_3-1",150,150; }
                end;
 
        case 2:
            mes @nome$;
            mes "Volte quando precisar dos meus serviços.";
            close;
        }
        close;
    case 2:
        switch(select("- PvP iniciante","- Sair"))
        {
 
        case 1:
        if(countitem(4357)>= 1) goto DON;
        if(countitem(4359)>= 1) goto DON;
        if(countitem(4361)>= 1) goto DON;
        if(countitem(4367)>= 1) goto DON;
        if(countitem(4372)>= 1) goto DON;
        if(countitem(4374)>= 1) goto DON;
        if(countitem(4376)>= 1) goto DON;
        if(countitem(4386)>= 1) goto DON;
        if(countitem(4399)>= 1) goto DON;
        if(countitem(4403)>= 1) goto DON;
        if(countitem(4407)>= 1) goto DON;
        if(countitem(4408)>= 1) goto DON;
        if(countitem(4419)>= 1) goto DON;
        if(countitem(4425)>= 1) goto DON;
        if(countitem(4430)>= 1) goto DON;
        if(countitem(4441)>= 1) goto DON;
        if(countitem(4047)>= 1) goto DON;
        if(countitem(4054)>= 1) goto DON;
        if(countitem(4121)>= 1) goto DON;
        if(countitem(4123)>= 1) goto DON;
        if(countitem(4128)>= 1) goto DON;
        if(countitem(4131)>= 1) goto DON;
        if(countitem(4132)>= 1) goto DON;
        if(countitem(4134)>= 1) goto DON;
        if(countitem(4135)>= 1) goto DON;
        if(countitem(4137)>= 1) goto DON;
        if(countitem(4131)>= 1) goto DON;
        if(countitem(4142)>= 1) goto DON;
        if(countitem(4143)>= 1) goto DON;
        if(countitem(4144)>= 1) goto DON;
        if(countitem(4146)>= 1) goto DON;
        if(countitem(4148)>= 1) goto DON;
        if(countitem(4168)>= 1) goto DON;
        if(countitem(4174)>= 1) goto DON;
        if(countitem(4236)>= 1) goto DON;
        if(countitem(4241)>= 1) goto DON;
        if(countitem(4242)>= 1) goto DON;
        if(countitem(4263)>= 1) goto DON;
        if(countitem(4276)>= 1) goto DON;
        if(countitem(4302)>= 1) goto DON;
        if(countitem(4305)>= 1) goto DON;
        if(countitem(4318)>= 1) goto DON;
        if(countitem(4324)>= 1) goto DON;
        if(countitem(4330)>= 1) goto DON;
        if(countitem(4342)>= 1) goto DON;
            next;
            mes "[PvP Sem Donate]";
            mes "Boa luta ^^";
            warp $gvg$,0,0;    end;
 
        case 2:
            mes @nome$;
            mes "Volte sempre que quiser.";
            close;
        }
        close;
 
    case 3:
        switch(select("- Arena GvG","- Sair"))
        {
 
        case 1:
             set @evento, rand(1,5);
                if(@evento == 1){ warp "pvp_2vs2",40,19; }
                if(@evento == 2){ warp "pvp_2vs2",19,40; }
                if(@evento == 3){ warp "pvp_2vs2",39,59; }
                if(@evento == 4){ warp "pvp_2vs2",59,39; }
                if(@evento == 5){ warp "pvp_2vs2",40,31; }
                end;
//            warp $pvpn$,0,0;    end;
 
        case 2:
            mes @nome$;
            mes "Volte quando precisar dos meus serviços.";
            close;
        }
        close;
    case 4:
        switch(select("- 1 VS 1","- Sair"))
        {
 
        case 1:
            percentheal 100,100;
            if(!getcharid(2)) {mes "Você precisa estar em uma guild para poder entrar"; close;}
            warp $gvgn$,0,0;    end;
 
        case 2:
            mes @nome$;
            mes "Volte quando precisar dos meus serviços.";
            close;
        }
        close;
 
        case 5:
        {

            mes @nome$;
            mes "Volte quando precisar dos meus serviços.";
            close;
        }
        close;
    case 6:
        switch(select("- Playes 1vs1","- Sair"))
        {
 
        case 1:
                                                            if (getmapusers("guild_vs1-4") > 1) {mes "Limite de 2 pessoas atingidos."; close;}
            warp $playe$,0,0;    end;
 
        case 2:
            mes @nome$;
            mes "Volte quando precisar dos meus serviços.";
            close;
    }
                                    close;

    case 7:
        mes @nome$;
        mes "Volte quando precisar dos meus serviços.";
        close;
    }
    DON:
        mes "[PvP Iniciante]";
        mes "voce nao e um iniciante!";
        close;
    end;
}
 
// -- Inicio do Script
 
-    script    Arena#PCKill    -1,{
 
OnPCKillEvent:
 
                    getmapxy @map$,@x,@y,0;
            if ( @map$ == $pvp$[$pvp] ) goto PvP;
            if ( @map$ == $pvp$[$pvpx] ) goto PvP;
            if ( @map$ == $pvp$[$pvpw] ) goto PvP;
            if ( @map$ == $pvp$[$pvpy] ) goto PvP2;//Sem ygg
            if ( @map$ == $gvg$[$gvg] ) goto GvG;
            if ( @map$ == $gvg$[$gvgx] ) goto GvG;
            if ( @map$ == $gvg$[$gvgw] ) goto GvG;
            if ( @map$ == $gvg$[$gvgy] ) goto GvG2;//Sem ygg
            if ( @map$ == $pvp$[$playes] ) goto playes;
                        end;
 
// ======= Arenas PvP =======
PvP:
        set @CID,getcharid(0);set @name$,"";set @points,0;
                    query_sql "SELECT `kills` FROM `pvp` WHERE `char_id`="+@CID+"",@points;
                    query_sql "SELECT `name` FROM `pvp` WHERE `char_id`="+@CID+"",@name$;
            if ( @name$ == "" ) { query_sql "INSERT INTO `pvp` (`char_id`,`name`,`kills`) VALUES ("+@CID+",'"+strcharinfo(0)+"',1)",@esc$; dispbottom "Você Matou seu primeiro jogador"; end; }
                    query_sql "UPDATE `pvp` SET `kills` = `kills` +1 WHERE `char_id`="+@CID+"",@esc$;
        set @points,@points+1;
        announce "Você matou [ "+rid2name(killedrid)+" ] e chegou a "+@points+" jogadores mortos.",bc_self,0x90FFFF;
                        end;
 
// ======= Arenas GvG =======
GvG:
        set @GID,getcharid(2);set @name$,"";set @points,0;
                    query_sql "SELECT `kills` FROM `gvg` WHERE `guild_id`="+@GID+"",@gpoints;
                    query_sql "SELECT `name` FROM `gvg` WHERE `guild_id`="+@GID+"",@name$;
            if ( @name$ == "" ) { query_sql "INSERT INTO `gvg` (`guild_id`,`name`,`kills`) VALUES ("+@GID+",'"+strcharinfo(2)+"',1)",@esc$; dispbottom "Primeiro Frag da Guild"; end; }
                    query_sql "UPDATE `gvg` SET `kills` = `kills` + 1 WHERE `guild_id`="+@GID+"",@esc$;
        set @gpoints,@gpoints+1;
        mapannounce    @map$,"A Guild [ "+@name$+" ] empilhou "+@gpoints+" caveiras.",bc_self,0x90FFFF;
                        end;
}
-    script    Arena#PCDie    -1,{
 
OnPCDieEvent:
 
            getmapxy @map$,@x,@y,0;
            if ( @map$ == $pvp$[$pvp] ) goto PvP;
            if ( @map$ == $pvp$[$pvpx] ) goto PvP;
            if ( @map$ == $pvp$[$pvpw] ) goto PvP;
            if ( @map$ == $pvp$[$pvpy] ) goto PvP2;
            if ( @map$ == $gvg$[$gvg] ) goto GvG;
            if ( @map$ == $gvg$[$gvgx] ) goto GvG;
            if ( @map$ == $gvg$[$gvgw] ) goto GvG;
            if ( @map$ == $gvg$[$gvgy] ) goto GvG2;
// ======= Arenas GvG =======
 
PvP:
        set @CID,getcharid(0);set @name$,"";set @points,0;
                    query_sql "SELECT `deaths` FROM `pvp` WHERE `char_id`="+@CID+"",@points;
                    query_sql "SELECT `name` FROM `pvp` WHERE `char_id`="+@CID+"",@name$;
            if ( @name$ == "" ) { query_sql "INSERT INTO `pvp` (`char_id`,`name`,`deaths`) VALUES ("+@CID+",'"+strcharinfo(0)+"',1)",@esc$; end; }
                    query_sql "UPDATE `pvp1` SET `deaths` = `deaths` + 1 WHERE `char_id`="+@CID+"",@esc$;
                        end;
 
// ======= Arenas GvG =======
 
GvG:
        set @GID,getcharid(2);set @name$,"";set @gpoints,0;
                    query_sql "SELECT `deaths` FROM `gvg1` WHERE `guild_id`="+@GID+"",@gpoints;
                    query_sql "SELECT `name` FROM `gvg1` WHERE `guild_id`="+@GID+"",@name$;
            if ( @name$ == "" ) { query_sql "INSERT INTO`gvg1` (`guild_id`,`name`,`deaths`) VALUES ("+@GID+",'"+strcharinfo(2)+"',1)",@esc$; end; }
                    query_sql "UPDATE `gvg1` SET `deaths` = `deaths` + 1 WHERE `guild_id`="+@GID+"",@esc$;
                        end;
 
}
 
//============== Saída ==================
guild_vs3,36,69,4    script    Saida#PvP1::Saida#PvP    899,{
announce "Você sairá em 10 segundos.",bc_self,0x90FFFF;
addtimer 10000,"Saida#PvP::OnSairpvp";
end;
OnSairpvp:
warp "SavePoint",0,0;
}
 
//============== MAP FLAG ===============
// PvP
ordeal_3-1    mapflag    nosave
ordeal_3-1    mapflag    noteleport
ordeal_3-1    mapflag    nowarpto
ordeal_3-1    mapflag    nowarp
ordeal_3-1    mapflag    nomemo
ordeal_3-1    mapflag    gvg    off
ordeal_3-1    mapflag    pvp
ordeal_3-1    mapflag    nopenalty
ordeal_3-1    mapflag    nobranch
ordeal_3-1    mapflag    pvp_noguild
ordeal_3-1    mapflag    noloot
ordeal_3-1    mapflag    noexp
 
// PvP No-Rank
pvp_2vs2    mapflag    nosave
pvp_2vs2    mapflag    noteleport
pvp_2vs2    mapflag    nowarpto
pvp_2vs2    mapflag    nowarp
pvp_2vs2    mapflag    nomemo
pvp_2vs2    mapflag    gvg    off
pvp_2vs2    mapflag    pvp
pvp_2vs2    mapflag    nopenalty
pvp_2vs2    mapflag    nobranch
pvp_2vs2    mapflag    pvp_noguild
pvp_2vs2    mapflag    noloot
pvp_2vs2    mapflag    noexp
 
 
// GvG
guild_vs3    mapflag    nosave
guild_vs3    mapflag    noteleport
guild_vs3    mapflag    nowarpto
guild_vs3    mapflag    nowarp
guild_vs3    mapflag    nomemo
guild_vs3    mapflag    gvg    off
guild_vs3    mapflag    pvp
guild_vs3    mapflag    nopenalty
guild_vs3    mapflag    nobranch
guild_vs3    mapflag    noloot
guild_vs3    mapflag    noexp
 
// GvG No-Rank
guild_vs2-2    mapflag    nosave
guild_vs2-2    mapflag    noteleport
guild_vs2-2    mapflag    nowarpto
guild_vs2-2    mapflag    nowarp
guild_vs2-2    mapflag    nomemo
guild_vs2-2    mapflag    pvp    off
guild_vs2-2    mapflag    gvg
guild_vs2-2    mapflag    nopenalty
guild_vs2-2    mapflag    nobranch
guild_vs2-2    mapflag    noloot
guild_vs2-2    mapflag    noexp
 
// Baby
guild_vs1-3    mapflag    nosave
guild_vs1-3    mapflag    noteleport
guild_vs1-3    mapflag    nowarpto
guild_vs1-3    mapflag    nowarp
guild_vs1-3    mapflag    nomemo
guild_vs1-3    mapflag    gvg    off
guild_vs1-3    mapflag    pvp
guild_vs1-3    mapflag    nopenalty
guild_vs1-3    mapflag    nobranch
guild_vs1-3    mapflag    pvp_noguild
guild_vs1-3    mapflag    noloot
guild_vs1-3    mapflag    noexp
 
// Playes 1x1
guild_vs1-4    mapflag    nosave
guild_vs1-4    mapflag    noteleport
guild_vs1-4    mapflag    nowarpto
guild_vs1-4    mapflag    nowarp
guild_vs1-4    mapflag    nomemo
guild_vs1-4    mapflag    gvg    off
guild_vs1-4    mapflag    pvp
guild_vs1-4    mapflag    nopenalty
guild_vs1-4    mapflag    nobranch
guild_vs1-4    mapflag    pvp_noguild
guild_vs1-4    mapflag    noloot
guild_vs1-4    mapflag    noexp

Edited by Yazoo

Share this post


Link to post
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.