Ayuda coordenadas de los coches
#1

Pues tengo un Gm que usa MYSQL, y cada vez que reinicio el servidor los coches se van a la coordenada 0. Aver si alguien sabria como hacer para que al subir o bajar del coche se guardaran las coordenadas del coche, o que se guarden las coordenadas cada X segundos, y que se guarden en la Db esas coordenadas
Reply
#2

pawn Код:
public OnGameModeExit()
{
    for(new i = 0; i < MAX_VEHICLES; i++)
    {
        new Float:VP[4];
        GetVehiclePos(i, VP[0], VP[1], VP[2]);
        GetVehicleZAngle(i, VP[3]);
        //Aqui tu codigo para guardar los carros en la tabla de sql, usando los parametros VP con %f
    }
    return 1;
}
Reply
#3

Bien, ahoa puse un codigo, para que al bajar del coche se guarden las coordenadas, pero lo que pasa que el ultimo coche que creo, nunca se le guardan las coordenadas, aver si alguien sabe que esta mal

pawn Код:
public OnPlayerExitVehicle(playerid, vehicleid)
{
new query[100];
new Float:pos[4];
GetVehiclePos(vehicleid,pos[0],pos[1],pos[2]);
GetVehicleZAngle(vehicleid,pos[3]);
Vehicle_OnPlayerExitVehicle(playerid, vehicleid);
Autoesc_OnPlayerExitVehicle(playerid, vehicleid);
Pizza_OnPlayerExitVehicle(playerid,vehicleid);
PlayerInfo[playerid][pFixDeathCar] = 1;
SetTimerEx("FixDeathCar", 5000, 0, "i", playerid);
format(query,sizeof(query),"UPDATE cars SET X=%f,Y=%f,Z=%f,A=%f WHERE id=%d",pos[0],pos[1],pos[2],pos[3],CarInfo[vehicleid][cSQLID]-1);
mysql_query(query);
CarInfo[vehicleid][cLocationx] = pos[0];
CarInfo[vehicleid][cLocationy] = pos[1];
CarInfo[vehicleid][cLocationz] = pos[2];
CarInfo[vehicleid][cAngle] = pos[3];
return 1;
}
Reply
#4

pawn Код:
public OnPlayerExitVehicle(playerid, vehicleid)
{
    new query[100];
    new Float:pos[4];
    GetVehiclePos(vehicleid,pos[0],pos[1],pos[2]);
    GetVehicleZAngle(vehicleid,pos[3]);
    Vehicle_OnPlayerExitVehicle(playerid, vehicleid);
    Autoesc_OnPlayerExitVehicle(playerid, vehicleid);
    Pizza_OnPlayerExitVehicle(playerid,vehicleid);
    PlayerInfo[playerid][pFixDeathCar] = 1;
    SetTimerEx("FixDeathCar", 5000, 0, "i", playerid);
    format(query,sizeof(query),"UPDATE cars SET X=%f,Y=%f,Z=%f,A=%f WHERE id=%d",pos[0],pos[1],pos[2],pos[3],CarInfo[vehicleid][cSQLID]);
    mysql_query(query);
    CarInfo[vehicleid][cLocationx] = pos[0];
    CarInfo[vehicleid][cLocationy] = pos[1];
    CarInfo[vehicleid][cLocationz] = pos[2];
    CarInfo[vehicleid][cAngle] = pos[3];
    return 1;
}
Talvez Esto?
Reply
#5

No, al poner eso se volvian a quedar sin spawn todos los coches que creaba, lo raro esque con el que puse yo solo se va a la coordenada cero el ultimo creado
Reply
#6

up
Reply
#7

La 1є solucion que te dieron es la mas eficiente, no se porque sigues dando vueltas a lo mismo o que fallo en esa solucion.
Reply
#8

EL codigo que puse yo, va todo bien menos que el ultimo coche creado no se guardan las coordenaas.Mi gm al iniciar el servidor crea un coche con la ID 0 en la base de datos
Reply
#9

Up, uso el gm OSRP2, y al encender el servidor siempre se crea un coche con matricula cero en la coordenada 0, aver si alguien sabe como hacer para que los coches que se creen no vayan a la coordenada cero haciendo que se guarden las coordenadas de los coches en la base de datos, cuando entres o salgas del coche o cuando enciendas o apagues el motor
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)