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; }