GangZoneShowForAll bug?
#1

Hello, i am using a gangzone script that i've made by myself, it taked a long time to fix the other error that i had, but now i fixed them al, but i dont see the gangzone:

Код:
#define GetColor(%1) (%1[0]<<24)+(%1[1]<<16)+(%1[2]<<8)+%1[3]

enum gInfo
{
	Float:gMinX,
	Float:gMinY,
	Float:gMaxX,
	Float:gMaxY,
	gColor[12],
};
new GangZones[3][gInfo];
new GangZone[sizeof(GangZones)];

public OnGameModeInit()
{
	for(new i; i < sizeof(GangZones); i++)
	{
	LoadGangZone(i);
	}
	return 1;
}

public OnGameModeExit()
{
 	for(new i; i < sizeof(GangZones); i++)
	{
		UpdateGangZone(i);
 	}
	return 1;
}

public LoadGangZone(gangzone)
{
	new string[32];
	format(string, sizeof(string), "/gangs/gangzone %d.cfg", gangzone);
	new File: currentfile = fopen(string, io_read);
	if (currentfile)
	{
		new valtmp[128];
 		fread(currentfile, valtmp);GangZones[gangzone][gMinX] = strval(valtmp);
 		fread(currentfile, valtmp);GangZones[gangzone][gMinY] = strval(valtmp);
 		fread(currentfile, valtmp);GangZones[gangzone][gMaxX] = strval(valtmp);
		fread(currentfile, valtmp);GangZones[gangzone][gMaxY] = strval(valtmp);
		fread(currentfile, valtmp);GangZones[gangzone][gColor] = strmid(GangZones[gangzone][gColor], valtmp, false, strlen(valtmp), 12);
		fclose(currentfile);
		
		GangZone[gangzone] = GangZoneCreate(GangZones[gangzone][gMinX], GangZones[gangzone][gMinY], GangZones[gangzone][gMaxX], GangZones[gangzone][gMaxY]);
		GangZoneShowForAll(GangZone[gangzone], GangZones[gangzone][gColor]);
	}
	return 1;
}

public UpdateGangZone(gangzone)
{
	new string[32];
 	format(string, sizeof(string), "/gangs/gangzone %d.cfg", gangzone);
	new File: currentfile = fopen(string, io_write);
	if (currentfile)
	{
		new var[128];
		format(var, sizeof(var), "%f gMinX\n",GangZones[gangzone][gMinX]);fwrite(currentfile, var);
		format(var, sizeof(var), "%f gMinY\n",GangZones[gangzone][gMinY]);fwrite(currentfile, var);
		format(var, sizeof(var), "%f gMaxX\n",GangZones[gangzone][gMaxX]);fwrite(currentfile, var);
		format(var, sizeof(var), "%f gMaxY\n",GangZones[gangzone][gMaxY]);fwrite(currentfile, var);
		format(var, sizeof(var), "0x%s gColor\n",HexToString(GetColor(GangZones[gangzone][gColor])));fwrite(currentfile, var);
		fclose(currentfile);
	}
	return 1;
}

HexToString(hex)
{
	new str[9];
	for (new i = 7; i >= 0; i--)
	{
		str[i] = (hex & 0x0F) + 0x30;
		str[i] += (str[i] > '9') ? 0x07 : 0x00;
		hex >>= 4;
	}
	str[8] = '\0';
	return str;
}
And i have:
Quote:

/scriptfiles/gangs/gangzone 0.cfg
/scriptfiles/gangs/gangzone 1.cfg
/scriptfiles/gangs/gangzone 2.cfg

And in those files you will see:

Код:
-2826.000000 gMinX
-560.000000 gMinY
-2242.000000 gMaxX
-186.000000 gMaxY
0x0B783042 gColor
---

But if i go ingame i don't see any gangzone in that area, but if i use;

Код:
GangZoneShowForAll(GangZone[gangzone], 0xFF0000AA);
instead of

Код:
GangZoneShowForAll(GangZone[gangzone], GangZones[gangzone][gColor]);
Then i will see it, anybody knows whats wrong with GangZones[gangzone][gColor]?
Reply


Messages In This Thread
GangZoneShowForAll bug? - by Andom - 27.03.2009, 13:57
Re: GangZoneShowForAll bug? - by ICECOLDKILLAK8 - 27.03.2009, 14:05
Re: GangZoneShowForAll bug? - by Andom - 27.03.2009, 14:13

Forum Jump:


Users browsing this thread: 1 Guest(s)