21.05.2016, 14:23
Buenas, tengo un problema en un filterscript que estoy haciendo que en este caso se trata de propiedades (vender/comprar), me he creado un public donde cargaran todas las propiedades, pero en el bucle no crea los labels y pickups a pesar de que si obtiene los datos de la tabla SQLite.
Codigo de cargarpropiedades:
y si se preguntan por la funcion de dbFieldInt,String,Float aca esta el codigo:
Codigo de cargarpropiedades:
PHP код:
forward CargarPropiedades();
public CargarPropiedades()
{
new c;
new DBResult:RCP;
RCP = db_query(BDREV,"SELECT * FROM Propiedad");
while(c < db_num_rows(RCP))
{
infPropiedad[c][ID] = dbFieldInt(RCP,"ID");
format(infPropiedad[c][Nombre],50,"%s",dbFieldString(RCP,"PropiedadNombre"));
infPropiedad[c][c_PosX] = floatround(dbFieldFloat(RCP,"PropiedadX"));
infPropiedad[c][c_PosY] = floatround(dbFieldFloat(RCP,"PropiedadY"));
infPropiedad[c][c_PosZ] = floatround(dbFieldFloat(RCP,"PropiedadZ"));
infPropiedad[c][Precio] = dbFieldInt(RCP,"PropiedadPrecio");
infPropiedad[c][Ganancia] = dbFieldInt(RCP,"PropiedadGanancia");
infPropiedad[c][Estado] = dbFieldInt(RCP,"PropiedadEstado");
if(isnull(infPropiedad[c][Dueno]))
{
if(infPropiedad[c][Estado] == 1) format(Texto,sizeof(Texto),"{42CC6F}Propiedad: {FFFFFF}%s\n{42CC6F}Precio: ${FFFFFF}%d\n{42CC6F}Ganancia: ${FFFFFF}%d\n{4FC2E8}Utiliza /adquirir",infPropiedad[c][Nombre],infPropiedad[c][Precio],infPropiedad[c][Ganancia]);
if(infPropiedad[c][Estado] == 0) format(Texto,sizeof(Texto),"{42CC6F}Propiedad: {FFFFFF}%s\n{42CC6F}Ganancia: ${FFFFFF}%d",infPropiedad[c][Nombre],infPropiedad[c][Precio],infPropiedad[c][Ganancia]);
}
if(!isnull(infPropiedad[c][Dueno]))
{
if(infPropiedad[c][Estado] == 1) format(Texto,sizeof(Texto),"{42CC6F}Dueсo:{FFFFFF} %s\nPropiedad: {FFFFFF}%s\nPrecio: ${FFFFFF}%d\nGanancia: ${FFFFFF}%d\n{4FC2E8}Utiliza /adquirir",infPropiedad[c][Nombre],infPropiedad[c][Precio],infPropiedad[c][Ganancia]);
if(infPropiedad[c][Estado] == 0) format(Texto,sizeof(Texto),"{42CC6F}Dueсo:{FFFFFF} %s\nPropiedad: {FFFFFF}%s\nGanancia: ${FFFFFF}%d",infPropiedad[c][Nombre],infPropiedad[c][Precio],infPropiedad[c][Ganancia]);
}
infPropiedad[c][PickUp] = CreatePickup(1273, 1, infPropiedad[c][c_PosX],infPropiedad[c][c_PosY],infPropiedad[c][c_PosZ]);
infPropiedad[c][Label] = Create3DTextLabel(Texto,0xFFFFFFFF,infPropiedad[c][c_PosX],infPropiedad[c][c_PosY],infPropiedad[c][c_PosZ],50.0, 0, 1);
db_next_row(RCP);
c++;
}
printf("** %d Propiedades Cargadas",c);
db_free_result(RCP);
return 1;
}
PHP код:
stock dbFieldInt(DBResult:Resultado,const Campo[])
{
new Valor;
Valor = db_get_field_assoc_int(Resultado,Campo);
return Valor;
}
stock dbFieldString(DBResult:Resultado,const Campo[])
{
new Valor[256];
db_get_field_assoc(Resultado,Campo,Valor,sizeof(Valor));
return Valor;
}
stock dbFieldFloat(DBResult:Resultado,const Campo[])
{
new Float:Valor;
Valor = db_get_field_assoc_float(Resultado,Campo);
return _:Valor;
}