SA-MP Forums Archive
[Duda] Como seleccionar una seria de skins - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Español/Spanish (https://sampforum.blast.hk/forumdisplay.php?fid=29)
+---- Thread: [Duda] Como seleccionar una seria de skins (/showthread.php?tid=404541)



[Duda] Como seleccionar una seria de skins - sergios - 03.01.2013

Hola comunidad, quiero hacer una funciуn para los que tengan una serie de skins, mi pregunta es como puedo escoger los skins que les ocurra esa funciуn, se me ocurriу esto pero no funciona:

Quote:

if(PlayerInfo[playerid][pMember] == 1 || GetPlayerSkin(playerid) ==5 || GetPlayerSkin(playerid) ==3)
{
SetPlayerPos(playerid,0.0,0.0,3.0);
return 0;
}

-Alguien sabrнa como hacer algo asн?


Respuesta: [Duda] Como seleccionar una seria de skins - OTACON - 03.01.2013

pawn Код:
if(PlayerInfo[playerid][pMember] == 1 && GetPlayerSkin(playerid) == 5 || GetPlayerSkin(playerid) == 3)
//Chekea si tiene la variable pMember igual a 1 y el  skins 5 o 3
{
    //aca Tu Funcion
}
else
{
    //aca Tu mensaje al no acceder a la funcion
    return 1;
}



Respuesta: [Duda] Como seleccionar una seria de skins - sergios - 03.01.2013

Estoy haciendo un sistema que al subir una altitud te quite la salud en X segundos como simulando ser la falta de oxigeno si no llevas X skin, pero no me compila bien, te dejo lo que he echo:

Код:
public oxigeno(playerid)
{
new oxigeno = GetPlayerAltitude(playerid);
if(oxigeno > 700)
{
if(PlayerInfo[playerid][pMember] == 1 && GetPlayerSkin(playerid) == 5 || GetPlayerSkin(playerid) == 3)
{
SetTimer("oxigeno", 10000, 0);
SetPlayerHealth(playerid, 0);
SendClientMessage(playerid, COLOR_GREEN, "Te estas ahogando, ponte un traje espacial!");
}
else
{
SendClientMessage(playerid, COLOR_GREEN, "oxigeno!");
    return 1;
}
Код:
 forward oxigeno();
Errores que me da:


-PD: Cual es el problema?


Respuesta: [Duda] Como seleccionar una seria de skins - Fluid016 - 03.01.2013

Quote:
Originally Posted by sergios
Посмотреть сообщение
Estoy haciendo un sistema que al subir una altitud te quite la salud en X segundos como simulando ser la falta de oxigeno si no llevas X skin, pero no me compila bien, te dejo lo que he echo:

Код:
public oxigeno(playerid)
{
new oxigeno = GetPlayerAltitude(playerid);
if(oxigeno > 700)
{
if(PlayerInfo[playerid][pMember] == 1 && GetPlayerSkin(playerid) == 5 || GetPlayerSkin(playerid) == 3)
{
SetTimer("oxigeno", 10000, 0);
SetPlayerHealth(playerid, 0);
SendClientMessage(playerid, COLOR_GREEN, "Te estas ahogando, ponte un traje espacial!");
}
else
{
SendClientMessage(playerid, COLOR_GREEN, "oxigeno!");
    return 1;
}
Код:
 forward oxigeno();
Errores que me da:


-PD: Cual es el problema?
pawn Код:
public oxigeno(playerid)
{
    new oxigeno = GetPlayerAltitude(playerid);
    if(oxigeno > 700)
    {
        if(PlayerInfo[playerid][pMember] == 1 && GetPlayerSkin(playerid) == 5 || GetPlayerSkin(playerid) == 3)
        {
            SetTimer("oxigeno", 10000, 0);
            SetPlayerHealth(playerid, 0);
            SendClientMessage(playerid, COLOR_GREEN, "Te estas ahogando, ponte un traje espacial!");
        }
        else
        {
            SendClientMessage(playerid, COLOR_GREEN, "oxigeno!");
        }
    }
    return 1;
}
Reemplaza el tuyo por el que te puse yo.


Respuesta: [Duda] Como seleccionar una seria de skins - sergios - 03.01.2013

Gracias grove ahora si compila, cuando lo pruebe edito y digo si me funciono dentro del server.

EDIT: Parece que no funciona, al subir los 700 de altitud no pasa nada, creo que se tiene que poner en onplayerupdate pero al haber el public oxigeno no me dejara, se te ocurre alguna soluciуn?


Respuesta: [Duda] Como seleccionar una seria de skins - Fluid016 - 03.01.2013

Quote:
Originally Posted by sergios
Посмотреть сообщение
Gracias grove ahora si compila, cuando lo pruebe edito y digo si me funciono dentro del server.

EDIT: Parece que no funciona, al subir los 700 de altitud no pasa nada, creo que se tiene que poner en onplayerupdate pero al haber el public oxigeno no me dejara, se te ocurre alguna soluciуn?
Podria ser en onplayerupdate aunque estarб lag o minimo.

para que pones el timer dentro de oxigeno si nunca llamas a la callback oxigeno?

pawn Код:
public oxigeno(playerid)
{
    new oxigeno = GetPlayerAltitude(playerid);
    if(oxigeno > 700)
    {
        if(PlayerInfo[playerid][pMember] == 1 && GetPlayerSkin(playerid) == 5 || GetPlayerSkin(playerid) == 3)
        {
            SetPlayerHealth(playerid, 0);
            SendClientMessage(playerid, COLOR_GREEN, "Te estas ahogando, ponte un traje espacial!");
        }
        else
        {
            SendClientMessage(playerid, COLOR_GREEN, "oxigeno!");
        }
    }
    return 1;
}
Reemplaza la callback oxigo por la que puse yo.
y agrega en onplayerupdate
oxigeno(playerid);


Re: [Duda] Como seleccionar una seria de skins - Daniel-92 - 03.01.2013

El cуdigo que tenйs tiene varios bugs, probб con este.
pawn Код:
SetTimer("oxigeno", 1000, true); //En OnGameModeInit

forward oxigeno();
public  oxigeno()
{
    new altitud;
    new Float:salud__;
    for(new i=0,j=GetMaxPlayers(); i < j; i++) if(IsPlayerConnected(i) && !IsPlayerNPC(i)) {
        altitud = GetPlayerAltitude(i);
        if(altitud > 700)
        {
            if(PlayerInfo[i][pMember] == 1 && (GetPlayerSkin(i) == 5 || GetPlayerSkin(i) == 3))
            {
               SendClientMessage(i, COLOR_GREEN, "oxigeno!");
            }
            else
            {
                GetPlayerHealth(i,salud__);
                if(salud__ < 5) {
                    SetPlayerHealth(i,0.00);
                }
                else {
                    SetPlayerHealth(i, -5.00);
                }
                SendClientMessage(i, COLOR_GREEN, "Te estas ahogando, ponte un traje espacial!");
            }
        }
    }
}



Respuesta: [Duda] Como seleccionar una seria de skins - sergios - 03.01.2013

Daniel hay un problema, no distingue entre skins, me quita la vida a todos sin excepcion, como se haria para que solo quite salud a los que yo diga en este caso el 5 y el 3?


Re: Respuesta: [Duda] Como seleccionar una seria de skins - Daniel-92 - 03.01.2013

Quote:
Originally Posted by sergios
Посмотреть сообщение
Estoy haciendo un sistema que al subir una altitud te quite la salud en X segundos como simulando ser la falta de oxigeno si no llevas X skin, pero no me compila bien, te dejo lo que he echo:
aver aver, ahi querias que le quitara salud cuando no llevara los skins X.

ahora dices que quieres que le quite salud cuando lleven el skin X?

No te quitarб vida si eres de la faccion 1 y llevas puesto el skin 3 o el skin 5.
pawn Код:
//con este te quitarб vida si llevas cualquiera de los dos skins
if(PlayerInfo[i][pMember] == 1 && !(GetPlayerSkin(i) == 5 || GetPlayerSkin(i) == 3))



Respuesta: [Duda] Como seleccionar una seria de skins - sergios - 03.01.2013

Daniel, de las 2 maneras me mata con todos los skins, he probado los 2 cуdigos y nada :S