SA-MP Forums Archive
OnPlayerKeyStateChange - 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: OnPlayerKeyStateChange (/showthread.php?tid=519828)



OnPlayerKeyStateChange - hensr - 16.06.2014

hola que tal como podria crear en OnPlayerKeyStateChange que puedas darle salud a otro jugador estando cerca de el gracias de antemano


Re: OnPlayerKeyStateChange - SickAttack - 16.06.2014

Aqui tienes:
pawn Код:
#define SOSTENER_BOTTON(%0) ((newkeys & (%0)) == (%0))
#define APLASTAR_BOTTON(%0) (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
#define SOLTAR_BOTTON(%0) (((newkeys & (%0)) != (%0)) && ((oldkeys & (%0)) == (%0)))
#define HacerLoop(%0)(%1) for(new %1 = 0; %1 < %0; %1++)

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT)
    {
        if(APLASTAR_BOTTON(KEY_FIRE)) // Click derecho en pie.
        {
            new Float:x, Float:y, Float:z;
            GetPlayerPos(playerid, x, y, z);
            HacerLoop(MAX_PLAYERS)(i)
            {
                if(IsPlayerConnected(i) && IsPlayerInRangeOfPoint(i, 10.0, x, y, z) && i != playerid) // Darle vida a jugadores entre 10 metros de ti.
                {
                    SetPlayerHealth(i, 100);
                }
            }
        }
    }
    return 1;
}



Re: OnPlayerKeyStateChange - hensr - 16.06.2014

gracias man me sirvio =) solo una pequenia duda como puedo hacer para que si el player tiene 100 de vida ya nose pueda quitarle dinero no se si sea mucho pedir pero gracias me funciono correctamente


Respuesta: OnPlayerKeyStateChange - Swedky - 16.06.2014

Dejen de mandar cуdigos completos y sin explicaciуn por favor, aquн se enseсa, no es un pedido. Ademбs haces macros al pedo...

Quote:
Originally Posted by hensr
Посмотреть сообщение
gracias man me sirvio =) solo una pequenia duda como puedo hacer para que si el player tiene 100 de vida ya nose pueda quitarle dinero no se si sea mucho pedir pero gracias me funciono correctamente
Ves? Ahora quiere que les haga todo, esto no es PS.

______________


@hensr: Realmente no entendн tu duda, o sea, si tiene 100 de vida no se pueda quitarle el dinero? wat?
Aunque debes usar 'GetPlayerHealth' (mira el ejemplo).


Re: OnPlayerKeyStateChange - SickAttack - 19.06.2014

Perdon por responder un poco tarde pero ya que aqui esta amigo:

pawn Код:
#define SOSTENER_BOTTON(%0) ((newkeys & (%0)) == (%0))
#define APLASTAR_BOTTON(%0) (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
#define SOLTAR_BOTTON(%0) (((newkeys & (%0)) != (%0)) && ((oldkeys & (%0)) == (%0)))
#define HacerLoop(%0)(%1) for(new %1 = 0; %1 < %0; %1++)

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT)
    {
        if(APLASTAR_BOTTON(KEY_FIRE)) // Click derecho en pie.
        {
            new Float:x, Float:y, Float:z, Float:health;
            GetPlayerPos(playerid, x, y, z);
            HacerLoop(MAX_PLAYERS)(i)
            {
                GetPlayerHealth(i, health);
                if(IsPlayerConnected(i) && IsPlayerInRangeOfPoint(i, 10.0, x, y, z) && i != playerid && health != 100)
                {
                    SetPlayerHealth(i, 100);
                }
            }
        }
    }
    return 1;
}
Saludos!