[FilterScript] ...: Mini Sistema Facil 'Motor Roto' :... (BASE)
#1

...: Mini Sistema Facil 'Motor Roto' :...
(BASE)
Script:
pawn Код:
/*
    BY OTACON ;)
    ...: MINI SISTEMA FACIL 'MOTOR ROTO' :...
*/

#include <a_samp>
#define VALUE_MOTOR 350.0 //Dejara el Motor en Humo Gris.
new MatarMotor[MAX_PLAYERS];
static Float:VidaMotor[MAX_VEHICLES];

public OnPlayerStateChange(playerid, newstate, oldstate) {
    switch(GetPlayerState(playerid)) {
        case PLAYER_STATE_DRIVER: { //Estado a 'conductor de vehiculo'
            MatarMotor[playerid] = SetTimerEx("MotorRoto", 1000, true, "ii", playerid, GetPlayerVehicleID(playerid)); //Creamos el SetTimerEx obteniendo el Id del player y vehiculos Correspondiente.
        }
        case PLAYER_STATE_ONFOOT: { //Estado a 'pie'
            KillTimer(MatarMotor[playerid]); //Matamos al SetTimerEx Correspondiente.
        }
    }
    return true;
}
public OnPlayerSpawn(playerid) {
    KillTimer(MatarMotor[playerid]); //Matamos al SetTimerEx Correspondiente cuando el player Spawnea.
    return true;
}
public OnVehicleDeath(vehicleid, killerid) {
    KillTimer(MatarMotor[killerid]); //Matamos al SetTimerEx Correspondiente cuando el vehiculo es destruido con conductor.
    return true;
}
forward MotorRoto(playerid, vehicleid);
public MotorRoto(playerid, vehicleid) {
    if(IsPlayerConnected(playerid) && IsPlayerInVehicle(playerid, vehicleid)) { //Chequeamos si el player esta conectado y en el vehiculo correspondiente.
        GetVehicleHealth(vehicleid, VidaMotor[vehicleid]); //obtenemos la vida del vehiculo correspondiente.
        if(VidaMotor[vehicleid] <= VALUE_MOTOR) { //verificamos si la vida del vehiculo  es  MENOR o IGUAL a la establecida.
            SetVehicleHealth(vehicleid, VidaMotor[vehicleid]=VALUE_MOTOR); //establecemos la vida del vehiculo a la definida para avitar problemas ;).
            //ACA LA FUNCION QUE QUIERES QUE HAGA CUANDO TENGA EL MOTOR ROTO.
            //ACA LA FUNCION QUE QUIERES QUE HAGA CUANDO TENGA EL MOTOR ROTO.
        }
    }
    return true;
}
/*
    BY OTACON ;)
    ...: MINI SISTEMA FACIL 'MOTOR ROTO' :...
*/
Creditos.:
OTACON (Yo ¬¬)
Reply
#2

El uso del timer lo veo innecesario, ahн podrнas haber usado una callback para actualizar.
Como OnPlayerStateChange, OnVehicleDamageStatusUpdate, etc.

Lo demбs estб bien.
Reply
#3

Quote:
Originally Posted by adri1
Посмотреть сообщение
El uso del timer lo veo innecesario, ahн podrнas haber usado una callback para actualizar.
Como OnPlayerStateChange, OnVehicleDamageStatusUpdate, etc.

Lo demбs estб bien.
yo no recomendaria el call OnVehicleDamageStatusUpdate para estos tipos de sistemas no desponde muy bien.
lo digo por experiencia, pero cada uno con sus gustos .

y igual gracias .
Reply
#4

No me referнa a eso.
Los callbacks son llamados cuando sucede algo.

En este caso OnVehicleDamageStatusUpdate es llamado cuando se daсa alguna parte del vehнculo.
En el caso de OnPlayerStateChange es llamado cuando el jugador cambia de estado.

Solo dije que podrнas usar los callbacks para actualizarlo, ya que son llamados constantemente.
Reply
#5

Quote:
Originally Posted by adri1
Посмотреть сообщение
No me referнa a eso.
Los callbacks son llamados cuando sucede algo.

En este caso OnVehicleDamageStatusUpdate es llamado cuando se daсa alguna parte del vehнculo.
En el caso de OnPlayerStateChange es llamado cuando el jugador cambia de estado.

Solo dije que podrнas usar los callbacks para actualizarlo, ya que son llamados constantemente.
ya te entendi, pero sigo preferiendo timer por experiancia .
pero como ya dije cada uno tiene su gusto.: cool:

Saludos.
Reply
#6

OnVehicleDamageStatusUpdate - This callback is called when a vehicle element such as doors, tires, panels, or lights get damaged.

Creo que del motor no dice nada.
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)