enum pVehicleEnum { CarID, OwnerID, Slot, ModelID, Float: Position[4], Col[2], }; new pVehicle[MAX_PLAYERS][pVehicleEnum];
stock SpawnPlayersCar(playerid, slot) { new query[256], string[256]; format(query, sizeof(query), "SELECT * FROM pVehicles WHERE owner = %d && slot = %d", Player[playerid][pID], slot) ; mysql_query(query); mysql_store_result(); if(mysql_num_rows() == 1) { new VehiclesSpawned; while(mysql_retrieve_row()) { if(VehiclesSpawned < 1) { mysql_get_field("id", query); pVehicle[playerid][ID] = strval(query); mysql_get_field("model", query); pVehicle[playerid][ModelID] = strval(query); mysql_get_field("position", query); sscanf(query, "ffff", pVehicle[playerid][Position][0], pVehicle[playerid][Position][1], pVehicle[playerid][Position][2], pVehicle[playerid][Position][3]); mysql_get_field("col", query); sscanf(query, "dd", pVehicle[playerid][Col][0], pVehicle[playerid][Col][1]); new playerscar = CreateVehicle(pVehicle[playerid][ModelID], pVehicle[playerid][Position][0], pVehicle[playerid][Position][1], pVehicle[playerid][Position][2], pVehicle[playerid][Position][3], pVehicle[playerid][Col][0], pVehicle[playerid][Col][1], -1, 0); LinkVehicleToInterior(playerscar, GetPlayerInterior(playerid)); format(string, sizeof(string), "Vehicle spawned from slot %d", slot); SendClientMessage(playerid, -1, string); VehiclesSpawned = 1; break; } } } else { format(string, sizeof(string), "No car found in slot %d", slot); SendClientMessage(playerid, -1, string); } }
CMD:v(playerid,params[]) { new slot; if(sscanf(params, "i", slot)) return SendClientMessage(playerid, -1, "Syntax: /v [slot]"); SpawnPlayersCar(playerid, slot); return 1; }
I mean... Do you really have to use your database for this simple cmd? This is like the most difficultest way, when you can create it with just one CMD...
Plus, you dont need an enum at all. |
First of all, the enum index should belong to the vehicle ID, not the player's.
Because you will be working with the vehicle, not the player. Also try printing the vehicle's coordinates, see if it matches. |