U3Games

SAMP | Desarrollo & Soporte => Desarrollo de Servidores => Filterscripts => Mensaje iniciado por: Swarlog en Ene 30, 2023, 11:29 PM

Título: Comando Go To / Recall
Publicado por: Swarlog en Ene 30, 2023, 11:29 PM
● Información Adicional:

Pues básicamente se trata de un fs con el que podreis teletransportaros hacia la posición actual del jugador que deseeis o simplemente teletransportar dicho jugador a donde estais. Muy util y creo que necesario para un gm.

● Código:

#include <a_samp>
#include "../include/gl_common.inc"

#define FILTERSCRIPT

#define COLOR_ROJO 0xFF0000AA

public OnPlayerCommandText(playerid, cmdtext[])
{
new idx;
new cmd[256];

cmd = strtok(cmdtext, idx);

if (strcmp("/recall", cmd, true) == 0)
{
if (IsPlayerAdmin(playerid))
{
new tmp[256], player, Float:X, Float:Y, Float:Z, carid, seat;
tmp = strtok(cmdtext, idx);
player = strval(tmp);
GetPlayerPos(player, X, Y, Z);
if (IsPlayerInAnyVehicle(playerid))
{
carid = GetPlayerVehicleID(playerid);
seat = GetPlayerVehicleSeat(playerid);
SetVehiclePos(carid, X+1, Y, Z);
PutPlayerInVehicle(playerid, carid, seat);
return 1;
}

SetPlayerPos(playerid, X+1, Y, Z);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_ROJO, "ERROR: No estas autorizado para poder utilizar este comando!");
return 1;
}
}
if (strcmp("/goto", cmd, true) == 0)
{
if (IsPlayerAdmin(playerid))
{
new tmp[256], player, Float:X, Float:Y, Float:Z, carid, seat;
tmp = strtok(cmdtext, idx);
player = strval(tmp);
GetPlayerPos(playerid, X, Y, Z);
if (IsPlayerInAnyVehicle(player))
{
carid = GetPlayerVehicleID(player);
seat = GetPlayerVehicleSeat(player);
SetVehiclePos(carid, X+1, Y, Z);
PutPlayerInVehicle(player, carid, seat);
return 1;
}

SetPlayerPos(player, X+1, Y, Z);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_ROJO, "ERROR: No estas autorizado para poder utilizar este comando!");
return 1;
}
}

return 0;
}