Veнculos -
Ts3 - 13.12.2014
Olб boa noite, queria saber como posso bloquear alguns veнculos de serem criados como o Hydra e Rhino e queria saber como posso privar o veнculo apenas para quem criou usar.
Meu cуdigo e esse:
pawn Код:
static IDCarro[MAX_PLAYERS];
static bool:VeiculoID[MAX_PLAYERS];
static Float:PosX;
static Float:PosY;
static Float:PosZ;
static Veiculo;
static Float:Angulo;
static Cor1;
static Cor2;
command(veiculo, playerid, params[])
{
if(sscanf(params, "ddd", Veiculo, Cor1, Cor2)) return SendClientMessage(playerid, Vermelho, "[ x ] Uso Correto: /Veiculo [Veнculo ID] [Cor 1] [Cor 2]");
if(Veiculo < 400 || Veiculo > 611) return SendClientMessage(playerid, Vermelho, "[ x ] O ID do veнculo estб invбlido {FFFFFF}ID's de 400 a 611.");
if(Cor1 < 0 || Cor1 > 255) return SendClientMessage(playerid, Vermelho, "[ x ] O ID da cor 1 estб invбlida {FFFFFF}Cores de 0 a 255.");
if(Cor2 < 0 || Cor2 > 255) return SendClientMessage(playerid, Vermelho, "[ x ] O ID da cor 2 estб invбlida {FFFFFF}Cores de 0 a 255.");
if(VeiculoID[playerid] == true) return SendClientMessage(playerid, Vermelho, "[ x ] Vocк jб possui um veнculo criado!");
GetPlayerPos(playerid, PosX, PosY, PosZ);
IDCarro[playerid] = AddStaticVehicle(Veiculo, PosX, PosY, PosZ, Angulo, Cor1, Cor2);
PutPlayerInVehicle(playerid, IDCarro[playerid], 0);
SetVehicleVirtualWorld(IDCarro[playerid], GetPlayerVirtualWorld(playerid));
LinkVehicleToInterior(IDCarro[playerid], GetPlayerInterior(playerid));
static vehicle = GetVehicleModelIDFromName(veiculo);
format(String, sizeof(String), "[ > ] Veнculo {FFFFFF}%s{FFFF00} criado com sucesso!", VehicleNames[vehicle - 400]);
SendClientMessage(playerid, Amarelo, String);
VeiculoID[playerid] = true;
return 1;
}
Re: Veнculos -
Seidel - 13.12.2014
1) Para privar o veнculo basta verificar quem criou o carro e caso o valor for diferente, retira-lo do veнculo.
2) Para bloquear o veнculo basta verificar se o ID do veнculo digitado й o modelo que vocк deseja bloquear.
Exemplos:
1)
Код:
public OnPlayerEnterVehicle(playerid,vehicleid,ispassenger)
{
if (IDCarro[playerid] != vehicleid)
{
RemovePlayerFromVehicle(playerid);
}
}
2)
Код:
if (Veiculo == 520) return SendClientMessage(playerid, Vermelho, "[ x ] Este veнculo estб bloqueado");
@Edit
O sistema de privar o veнculo nгo й totalmente funcional, por exemplo: o jogador nгo poderб entrar em NENHUM veнculo que nгo seja dele, mas aн й sу vocк adaptar.
Re: Veнculos -
Ts3 - 13.12.2014
Cara tou com um outro problema que tб tenso, o problema й o seguinte, quando um jogador cria um veнculo, dб o bug de outro jogador criar um outro veiculo e trazer o veiculo do mesmo que criou anteriormente, isso com variavel MAX_PLAYERS, serб que hб alguma soluзгo pra que nгo aconteзa esse bug?
Achei esse tуpico:
https://sampforum.blast.hk/showthread.php?tid=375018
Parece ser o mesmo problema que o meu.. Mas nгo foi resolvido.
Re: Veнculos -
Seidel - 13.12.2014
O certo seria vocк criar outra variбvel para armazenar o id do veнculo e depois vocк armazena o id do veнculo ao player.
Exemplo:
Код:
new carro = CreateVehicle(carro,X,Y,Z,0.0,cor1,cor2,respawn);
IDCarro[playerid] = carro;
Acho que daria certo... Nгo tenho certeza, atй porque nunca tentei fazer um sistema desses..
@Edit
Pensando bem, й a mesma coisa que definir o veнculo jб na variбvel do player...
Nгo sei o que pode ser, entгo...