Bom, Um mini sistema de veículos. Apos sair do veículo, 5 segundos depois é destruído.
Comando:
/Car - Para criação do veículo.
Includes:
ZCMD.
SSCANF.
SSCANF.
Command Source:
pawn Code:
CMD:car(playerid, params [])
{
new
Id, Cor[2],
Float: x, Float: y,
Float: z
;
if(Criou_carro[playerid] == 1) return SendClientMessage(playerid, 0xFFFFFFAA, "Você Já possui um Veículo.");
{
if(sscanf(params, "dii", Id, Cor[0], Cor[1]))
{
SendClientMessage(playerid,-1,"Use: /Car [Id] [Cor] [Cor]");
}
else
{
if(Id < 400 || Id > 611) return
SendClientMessage(playerid, 0xFFFFFFAA, "ID do Veículo Inválido");
if(Cor[0] < 0 || Cor[0] > 126) return
SendClientMessage(playerid, 0xFFFFFFAA, "ID da 1ª Cor Inválido");
if(Cor[1] < 0 || Cor[1] > 126) return
SendClientMessage(playerid, 0xFFFFFFAA, "ID da 2ª Cor Inválido");
GetPlayerPos(playerid, x, y, z);
Carro[playerid] = CreateVehicle(Id, x, y, z, 0, Cor[0], Cor[1], false);
PutPlayerInVehicle(playerid, Carro[playerid], 0);
new
Str[120]
;
format(Str, sizeof(Str), "Você criou o veículo de ID: {00FFFF}%d {FFFFFF}Com as cores {00FFFF}%d {FFFFFF}e {00FFFF}%d", Id, Cor[0], Cor[1]);
SendClientMessage(playerid, 0xFFFFFFAA, Str);
Criou_carro[playerid] = 1;
}
}
return 1;
}
Esse callback é chamado quando um jogador muda de estado.
pawn Code:
public OnPlayerStateChange(playerid, newstate, oldstate)
{
if(oldstate == PLAYER_STATE_DRIVER && newstate == PLAYER_STATE_ONFOOT)
{
SendClientMessage(playerid, 0xFFFFFFAA, "Você tem 5 Segundos para entrar no seu veículo Novamente");
SetTimerEx("Destroy", 5000, false, "i", playerid);
}
return 1;
}
forward Destroy(playerid);
public Destroy(playerid)
{
if(!IsPlayerInVehicle(playerid, Carro[playerid]))
{
SendClientMessage(playerid, 0xFFFFFFAA, "Seu Veículo foi destruido Automáticamente");
DestroyVehicle(Carro[playerid]);
Criou_carro[playerid] = 0;
return 1;
}
return 1;
}
Variáveis declaradas:
( As variáveis globais são previamente alocadas no arquivo compilado. )
pawn Code:
new Carro[MAX_PLAYERS];
new Criou_carro[MAX_PLAYERS];
Creditos:
Duun - Codigo
ZeeX - Zcmd
Y_Less - Sscanf
SA-MP Team
SA-MP Team
Espero que gostem!
0 comentários:
Postar um comentário