06.04.2013, 16:54
Bueno dejo el sistema de motor que tengo y un comando que uso para respawnear los coches haber si logran encontrar mi error.
En OnGamemodeInit:
New que define el estado del motor:
En OnVehicleSpawn:
En OnPlayerEnterVehicle:
Los public que realizan la acciуn de Encender/Apagar el motor:
El comando que uso para crear coches:
En OnGamemodeInit:
Код:
ManualVehicleEngineAndLights();
Код:
new MotorAuto[MAX_VEHICLES];
Код:
MotorAuto[vehicleid]=0;
Код:
{
if(MotorAuto[vehicleid] == 0)//si el motor esta apagado
{
SendClientMessage(playerid,C_Blanco,"VEHICULO: El motor se encuentra apagado");// te manda el mensaje si esta apagado
}
if(MotorAuto[vehicleid] == 1)//si el motor esta encendido
{
SendClientMessage(playerid,C_Blanco,"VEHICULO: El motor se encuentra encendido");//mensaje si el motor esta encendido
}
return 1;
}
Код:
forward EncenderMotor(playerid);
public EncenderMotor(playerid)
{
new IDAuto = GetPlayerVehicleID(playerid);//define que IDAuto es la id del auto
new enginem, lights, alarm, doors, bonnet, boot, objective;//define las cosas del auto
GetVehicleParamsEx(GetPlayerVehicleID(playerid),enginem, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(GetPlayerVehicleID(playerid),VEHICLE_PARAMS_ON, lights, alarm, doors, bonnet, boot, objective);//deja el auto con las luces encendidas, motor, etc.
GameTextForPlayer(playerid, "~w~Motor ~g~Encendido",1000,3);//mensaje de encendido
MotorAuto[IDAuto] = 1;//deja el motor encendido
}
forward ApagarMotor(playerid);
public ApagarMotor(playerid)
{
new IDAuto = GetPlayerVehicleID(playerid);
new enginem, lights, alarm, doors, bonnet, boot, objective;
GetVehicleParamsEx(GetPlayerVehicleID(playerid),enginem, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(GetPlayerVehicleID(playerid),VEHICLE_PARAMS_OFF, lights, alarm, doors, bonnet, boot, objective);//deja el motor y las demas cosas apagadas
GameTextForPlayer(playerid, "~w~Motor ~r~Apagado",1000,3);//mensaje de apagado
MotorAuto[IDAuto] = 0;//deja el motor apagado
}
Код:
"command(crearcoche, playerid, params[])
{
new carid, string[128], Float: CarToX, Float: CarToY, Float: CarToZ, physical_car_id;
if(sscanf(params, "d", carid))
{
if(JugadorInfo[playerid][jAdmin] >= 1)
{
SendClientMessage(playerid, WHITE, "USO: /crearcoche [ID]");
}
}
else
{
if(JugadorInfo[playerid][jAdmin] >= 3)
{
if(CarCount < MAX_VEHICLES)
{
if(carid < 400 || carid > 611)
{
SendClientMessage(playerid, WHITE, "Las IDS son entre 400 y 611.");
return 1;
}
GetPlayerPos(playerid, CarToX, CarToY, CarToZ);
physical_car_id = CreateVehicle(carid, CarToX, CarToY+4, CarToZ, 90, -1, -1, -1);
format(string, sizeof(string), "Has spawneado un auto id %d. Si quieres guardarlo usa: /guardarcoche.", carid);
SendClientMessage(playerid, WHITE, string);
AdminSpawned[SpawnedVehicles] = physical_car_id;
SpawnedVehicles++;
LinkVehicleToInterior(physical_car_id, GetPlayerInterior(playerid));
SetVehicleVirtualWorld(physical_car_id, GetPlayerVirtualWorld(playerid));
}
else
{
SendClientMessage(playerid, WHITE, "Despawnea los actuales spawneados antes de crear otro.");
}
}
}
return 1;
}

