Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Yo como tengo el GM modular está scripteado de una manera distinta.
- // > Expulsar por si el retrasado(no tiene otro nombre) comienza a usar la mierda, la manera más simple.
- forward public Ac_OnPlayerStateChange(playerid, newstate, oldstate);
- public Ac_OnPlayerStateChange(playerid, newstate, oldstate)
- {
- if(!Jugador[playerid][Admin])// > Si no es admin, para evitar cosas.
- {
- if(GetPVarInt(playerid, "AC_EnterVehicle") != GetPlayerVehicleID(playerid))
- {
- // > Acá le tengo un mensaje personalizado de que fue expulsado por el anticheat, tu ves que haces.
- Kick(playerid);
- }
- }
- return 1;
- }
- public OnPlayerStateChange(playerid, newstate, oldstate)
- {
- if(newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER)
- {
- Ac_OnPlayerStateChange(playerid, newstate, oldstate);
- }
- return 1;
- }
- public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
- {
- SetPVarInt(playerid, "AC_EnterVehicle", vehicleid);
- }
- public OnPlayerExitVehicle(playerid, vehicleid)
- {
- DeletePVar(playerid, "AC_EnterVehicle");
- }
- ¡¡¡¡!IMPORTANTE!¡¡¡¡¡ CADA VEZ QUE USES "LinkVehicleToInterior" debes poner antes de dicha función; SetPVarInt(playerid, "AC_EnterVehicle", vehicleid); si no SERÁ EXPULSADO FALSAMENTE.
- // > Ahora esto de acá es mágico, te devuelve los vehículos a su posición si los sacan a volar, así el cheater no puede joder.
- AutoOcupado_(VehID)
- {
- foreach(new Jugadores_: Player)
- {
- if(!IsPlayerConnected(Jugadores_)) continue;
- if(GetPlayerVehicleID(Jugadores_) == VehID && GetPlayerState(Jugadores_) == PLAYER_STATE_DRIVER) return 1;
- }
- return 0;
- }
- public OnUnoccupiedVehicleUpdate(vehicleid, playerid, passenger_seat, Float:new_x, Float:new_y, Float:new_z, Float:vel_x, Float:vel_y, Float:vel_z)
- {
- if(!IsValidVehicle(vehicleid)) return 0;
- if(AutoOcupado_(vehicleid) == 1) return 0;
- new Float:VehPos_X, Float:VehPos_Y, Float:VehPos_Z;
- GetVehiclePos(vehicleid, VehPos_X, VehPos_Y, VehPos_Z);
- if(GetVehicleDistanceFromPoint(vehicleid, new_x, new_y, new_z) > 5)
- {
- SetVehiclePos(vehicleid, VehPos_X, VehPos_Y, VehPos_Z);
- return 0;
- }
- new Float:JugadorVelDis_;
- JugadorVelDis_ = floatmul(floatsqroot(floatadd(floatadd(floatpower(vel_x, 2), floatpower(vel_y, 2)), floatpower(vel_z, 2))), 170.0);
- new Velocidad_ = floatround(JugadorVelDis_ * 1);
- if(Velocidad_ > 5 && passenger_seat > 0)
- {
- SetVehiclePos(vehicleid, VehPos_X, VehPos_Y, VehPos_Z);
- return 0;
- }
- if(passenger_seat == 0)
- {
- if(Velocidad_ > 25)
- {
- SetVehiclePos(vehicleid, VehPos_X, VehPos_Y, VehPos_Z);
- return 0;
- }
- }
- return 1;
- }
- public OnTrailerUpdate(playerid, vehicleid)
- {
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement