Funciуn y callback para cargar autos. -
jwalker - 06.10.2012
Hola, he estado haciendo un sistema de autos. El problema es que yo no sй como guardarlos, intentй haciendo un public pero no me sirviу bien, acб estб el enum:
pawn Код:
Model, //El modelo del auto, o sea id de wiki samp.
Estado, //Si tiene dueсo o no.
Float:PosX, //Posiciуn en X.
Float:PosY, //Posiciуn en Y.
Float:PosZ, //Posiciуn en Z.
Float:Angulo, //Su angulo.
ColorUno, //Color uno.
ColorDos, //Color dos.
Propietario[256], //Nombre del propietario, si tiene.
Placa[256], //Descripciуn del auto.
Precio, //Precio del auto.
TipoAlarma,
Lock, // Si esta abierto o cerrado.
aEstado,
EstadoGomas,
EstadoPuertas,
EstadoGasolina .
Y asн se guarda:
pawn Код:
stock aUpdate(vehicleid)
{
format(Archivo, sizeof(Archivo), "autos/%d.ini", vehicleid);
if(!fexist(Archivo))
{
dini_Create(Archivo);
}
dini_IntSet(Archivo, "Model", CarInfo1[vehicleid][Model]);
dini_IntSet(Archivo, "Estado", CarInfo1[vehicleid][Estado]); // O sea en venta.
dini_FloatSet(Archivo, "PosX", CarInfo1[vehicleid][PosX]);
dini_FloatSet(Archivo, "PosY", CarInfo1[vehicleid][PosY]);
dini_FloatSet(Archivo, "PosZ", CarInfo1[vehicleid][PosZ]);
dini_FloatSet(Archivo, "Angulo", CarInfo1[vehicleid][Angulo]);
dini_IntSet(Archivo, "ColorUno", CarInfo1[vehicleid][ColorUno]);
dini_IntSet(Archivo, "ColorDos", CarInfo1[vehicleid][ColorDos]);
dini_Set(Archivo, "Propietario", CarInfo1[vehicleid][Propietario]);
dini_Set(Archivo, "Placa",CarInfo1[vehicleid][Placa]); // La placa que tendrб por default.
dini_IntSet(Archivo, "Precio",CarInfo1[vehicleid][Precio]);
dini_IntSet(Archivo, "TipoAlarma", CarInfo1[vehicleid][TipoAlarma]);
dini_IntSet(Archivo, "Lock", CarInfo1[vehicleid][Lock]);
dini_IntSet(Archivo, "EstadoPuertas",CarInfo1[vehicleid][EstadoPuertas]);
dini_IntSet(Archivo, "EstadoGomas",CarInfo1[vehicleid][EstadoGomas]);
dini_IntSet(Archivo, "aEstado",CarInfo1[vehicleid][aEstado]);
return 1;
}
їcуmo los cargo?
Respuesta: Funciуn y callback para cargar autos. -
OTACON - 06.10.2012
haz otro stock y coloca las funciones del anterior stock con
dini_Int y utiliza el stock donde kieras ke se cargue.
Respuesta: Funciуn y callback para cargar autos. -
jwalker - 06.10.2012
Osea le saco el set?
Respuesta: Funciуn y callback para cargar autos. -
OTACON - 06.10.2012
Quote:
Originally Posted by jwalker
Osea le saco el set?
|
asi:
pawn Код:
stock Cargar(vehicleid)
{
format(Archivo, sizeof(Archivo), "autos/%d.ini", vehicleid);
if(fexist(Archivo))
{
SetVehiclePos(vehicleid, dini_Int(Archivo, "PosX"), dini_Int(Archivo, "PosY"), dini_Int(Archivo, "PosZ"));
SetVehicleZAngle(vehicleid, dini_Int(Archivo, "Angulo"));
ChangeVehicleColor(vehicleid, dini_Int(Archivo, "ColorUno"), dini_Int(Archivo, "ColorDos"));
SetVehicleNumberPlate(vehicleid, dini_Int(Archivo, "Placa"));
//ETC..
//ETC..
//ETC..
}
return 1;
}
pawn Код:
stock dini_Int(filename[],key[])
Respuesta: Funciуn y callback para cargar autos. -
jwalker - 06.10.2012
Para que sirve
pawn Код:
stock dini_Int(filename[],key[])
?
Y otra cosa, hay algъnas funciones por ejemplo la del dueсo, como las expreso?
Respuesta: Funciуn y callback para cargar autos. -
OTACON - 06.10.2012
es una funcion del include DINI
Funciones
dini_Create(filename[]); Crea un archivo con el nombre especificado.
dini_Exists(filename[]); Se usa en if's. Detecta si el archivo ya existe
dini_Remove(filename[]); Elimina el archivo especificado.
dini_Int(filename[], key[]); Obtiene el valor de "key"
dini_IntSet(filename[], key[], value); Cambia el valor de "key".
Uso de Dini
y lo otro, segun tu sistema de vehiculo, pero supongo ke con un format o strcmp.
Re: Funciуn y callback para cargar autos. -
digman - 06.10.2012
Te serviria buscar algunos GMґS q utilizaron DINI para aprender bien su uso asi ise yo
.
Respuesta: Funciуn y callback para cargar autos. -
jwalker - 06.10.2012
Bien, gracias. Ya solucionй eso, ahora tengo un problema con autos. Agregй esto:
pawn Код:
public OnPlayerStateChange(playerid, newstate, oldstate)
{
new newcar;
if(newcar >= 1 && newcar <= 17)
{
if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLeader] == 1){
{
SendClientMessage(playerid, 0x7EBEFFFF,"No perteneces al Cuerpo Policial [Cуdigo 1].");}
}
}
}
Pero cualquiera puede subirse a las patrullas, aun no siendo SAPD.
Respuesta: Funciуn y callback para cargar autos. -
OTACON - 06.10.2012
pawn Код:
public OnPlayerStateChange(playerid, newstate, oldstate)
{
new newcar;
if(newcar >= 1 && newcar <= 17)
{
if(PlayerInfo[playerid][pMember] != 1 || PlayerInfo[playerid][pLeader] != 1){
{
SendClientMessage(playerid, 0x7EBEFFFF,"perteneces al Cuerpo Policial [Cуdigo 1].");}
}
ekse
{
SendClientMessage(playerid, 0x7EBEFFFF,"No perteneces al Cuerpo Policial [Cуdigo 1].");}
}
}
}