House system info issue
#1

So I've tried to use the singleplayer info box by Kevln but I've got another problem which I have in my housing system -

PHP код:

House_Refresh
(houseid)
{
    if (
houseid != -&& HouseData[houseid][houseExists])
    {
        if (
IsValidDynamic3DTextLabel(HouseData[houseid][houseText3D]))
            
DestroyDynamic3DTextLabel(HouseData[houseid][houseText3D]);
        if (
IsValidDynamicPickup(HouseData[houseid][housePickup]))
            
DestroyDynamicPickup(HouseData[houseid][housePickup]);
        if (
IsValidDynamicMapIcon(HouseData[houseid][houseMapIcon]))
            
DestroyDynamicMapIcon(HouseData[houseid][houseMapIcon]);
        static
            
string[128];
        if (!
HouseData[houseid][houseOwner]) {
            
format(stringsizeof(string), "Price: %s\nAddress: %s"FormatNumber(HouseData[houseid][housePrice]), HouseData[houseid][houseAddress]);
            
HouseData[houseid][houseText3D] = CreateDynamic3DTextLabel(stringCOLOR_NICEBLUEHouseData[houseid][housePos][0], HouseData[houseid][housePos][1], HouseData[houseid][housePos][2], 15.0INVALID_PLAYER_IDINVALID_VEHICLE_ID0HouseData[houseid][houseExteriorVW], HouseData[houseid][houseExterior]);
        }
        else {
            
//format(string, sizeof(string), "Owned house\nAddress: %s", HouseData[houseid][houseAddress]);
            //HouseData[houseid][houseText3D] = CreateDynamic3DTextLabel(string, COLOR_NICEDBLUE, HouseData[houseid][housePos][0], HouseData[houseid][housePos][1], HouseData[houseid][housePos][2], 15.0, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 0, HouseData[houseid][houseExteriorVW], HouseData[houseid][houseExterior]);
            
format(stringsizeof(string), "Owned house\nAddress: %s"HouseData[houseid][houseAddress]);
            
ShowInfoBox(playerid0xFF0000FF10string);
  }
        
HouseData[houseid][housePickup] = CreateDynamicPickup(155923HouseData[houseid][housePos][0], HouseData[houseid][housePos][1], HouseData[houseid][housePos][2], HouseData[houseid][houseExteriorVW], HouseData[houseid][houseExterior]);
        
//HouseData[houseid][houseMapIcon] = CreateDynamicMapIcon(HouseData[houseid][housePos][0], HouseData[houseid][housePos][1], HouseData[houseid][housePos][2], (HouseData[houseid][houseOwner] != 0) ? (32) : (31), 0, HouseData[houseid][houseExteriorVW], HouseData[houseid][houseExterior]);
 
}
    return 
1;

When I try to compile, it gives me an error that I can't use player id in this stock, how do I add the player id that stands on the pickup, then it will show the "ShowInfoBox".

Thanks for the assistence, +rep to who will fix this.
Reply
#2

You can't use playerid in this stock, because on the top of your stock, you haven't defined it.
House_Refresh(houseid), only houseid, no playerid.
Reply
#3

Quote:
Originally Posted by kamiliuxliuxliux
Посмотреть сообщение
You can't use playerid in this stock, because on the top of your stock, you haven't defined it.
House_Refresh(houseid), only houseid, no playerid.
Urh, I know that. how do I define a playerid with it, read the last line.
Reply
#4

House_Refresh(houseid, playerid)
Reply
#5

Show us where House_Refresh(houseid) is called.
Reply
#6

Quote:
Originally Posted by jihadmeneer
Посмотреть сообщение
Show us where House_Refresh(houseid) is called.
on "Houseload"

PHP код:

forward House_Load
();
public 
House_Load()
{
    static
        
rows,
        
fields,
        
str[128];
    
cache_get_data(rowsfieldsg_iHandle);
    for (new 
0rows++) if (MAX_HOUSES)
    {
        
HouseData[i][houseExists] = true;
        
HouseData[i][houseLights] = false;
        
HouseData[i][houseID] = cache_get_field_int(i"houseID");
        
HouseData[i][houseOwner] = cache_get_field_int(i"houseOwner");
        
HouseData[i][housePrice] = cache_get_field_int(i"housePrice");
        
cache_get_field_content(i"houseAddress"HouseData[i][houseAddress], g_iHandle32);
        
HouseData[i][housePos][0] = cache_get_field_float(i"housePosX");
        
HouseData[i][housePos][1] = cache_get_field_float(i"housePosY");
        
HouseData[i][housePos][2] = cache_get_field_float(i"housePosZ");
        
HouseData[i][housePos][3] = cache_get_field_float(i"housePosA");
        
HouseData[i][houseInt][0] = cache_get_field_float(i"houseIntX");
        
HouseData[i][houseInt][1] = cache_get_field_float(i"houseIntY");
        
HouseData[i][houseInt][2] = cache_get_field_float(i"houseIntZ");
        
HouseData[i][houseInt][3] = cache_get_field_float(i"houseIntA");
        
HouseData[i][houseInterior] = cache_get_field_int(i"houseInterior");
        
HouseData[i][houseExterior] = cache_get_field_int(i"houseExterior");
        
HouseData[i][houseExteriorVW] = cache_get_field_int(i"houseExteriorVW");
        
HouseData[i][houseLocked] = cache_get_field_int(i"houseLocked");
        
HouseData[i][houseMoney] = cache_get_field_int(i"houseMoney");
        for (new 
010++)
        {
            
format(str24"houseWeapon%d"1);
            
HouseData[i][houseWeapons][j] = cache_get_field_int(istr);
            
format(str24"houseAmmo%d"1);
            
HouseData[i][houseAmmo][j] = cache_get_field_int(istr);
        }
        
House_Refresh(i);
    }
    for (new 
0MAX_HOUSES++) if (HouseData[i][houseExists]) {
        
format(strsizeof(str), "SELECT * FROM `housestorage` WHERE `ID` = '%d'"HouseData[i][houseID]);
        
mysql_tquery(g_iHandlestr"OnLoadStorage""d"i);
        
format(strsizeof(str), "SELECT * FROM `furniture` WHERE `ID` = '%d'"HouseData[i][houseID]);
        
mysql_tquery(g_iHandlestr"OnLoadFurniture""d"i);
    }
    return 
1;

Reply
#7

Quote:
Originally Posted by kamiliuxliuxliux
Посмотреть сообщение
House_Refresh(houseid, playerid)
when I do this, the whole system getting down, which means it will not work at all.
Reply
#8

Show us where House_Load is called.
Reply
#9

Quote:
Originally Posted by jihadmeneer
Посмотреть сообщение
Show us where House_Load is called.
OnGameModeInit();

PHP код:
mysql_tquery(g_iHandle"SELECT * FROM `houses`""House_Load"""); 
Reply
#10

Код:
mysql_tquery(g_iHandle, "SELECT * FROM `houses`", "House_Load", "d", playerid); 

then

add playerid to forward House_Load(); 
public House_Load().

Then change: House_Refresh(i); 
Into House_Refresh(playerid, i); 

After that:

House_Refresh(houseid) 

to House_Refresh(playerid, houseid)
Oh wait this above won't work because OnGameModeInit doens't have a playerid variable.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)