[Ayuda] textdraws
#1

Hola, tengo un problema con textdraws de casas, al cambiar la entrada de la casa, se supone que debe crearse un textdraw en la nueva posiciуn y eliminarse la anterior, pero se me crea una nueva y la anterior sigue mostrбndose, y asн se ven dos textdraws iguales, y si sigo cambiando aparecen mas sin eliminarse ninguna.

Aquн unas imбgenes



їQuй esta mal?
http://pastebin.com/6szqseza
Reply
#2

Hola, antes que nada esos son pickups (el de la casa verde) y textlabel (los textos flotantes). Me gustarнa que ademбs publiques el cуdigo del comando con el que mueves la casa, para chequearlo e intentar ayudarte, saludos.
Reply
#3

Quote:
Originally Posted by Gabito
Посмотреть сообщение
Hola, antes que nada esos son pickups (el de la casa verde) y textlabel (los textos flotantes). Me gustarнa que ademбs publiques el cуdigo del comando con el que mueves la casa, para chequearlo e intentar ayudarte, saludos.
http://pastebin.com/6szqseza

Revisa bien los post
Reply
#4

Tienes que borar el anterior si no estas usuando el mismo id de la casa al crear uno nuevo.

Ejemplo:
pawn Код:
DestroyDynamic3DTextLabel(House3DText[hid - 1]);
DestroyDynamicPickup(HousePickup[hid - 1]);
Reply
#5

Algo que me olvide mencionar, es que ademas del pickup y 3dlabel de la casa tambiйn se crea el del garaje, en el pastebin estбn los dos, el del garaje y de la casa y aquн los comandos de cada uno:

El comando del garage
Код:
//Garages
	zcmd(entradag, playerid, params[])
	{
   		if(PlayerInfo[playerid][pAdminLC] != 2014) return Message(playerid, COLOR_GRAD2, "ЎNo autorizado!");
 		if(sscanf(params, "i", params[0])) return Message(playerid, COLOR_GRAD2, "Utilize: /entradag <Casa ID>");
        if(params[0] < 0 || params[0] >= MAX_HOUSES) return Message(playerid, COLOR_GRAD2, "ЎID de casa errуnea!");
			new string[80];
			new Float:X, Float:Y, Float:Z;
		    GetPlayerPos(playerid,X,Y,Z);
		    format(string,sizeof(string),"Entrada de garag %d movido a %f - %f - %f", params[0],X,Y,Z);
			Message(playerid,COLOR_YELLOW2,string);
			HouseInfo[params[0]][gEntrancex] = X;
			HouseInfo[params[0]][gEntrancey] = Y;
			HouseInfo[params[0]][gEntrancez] = Z;
			OnPropTextdrawUpdate(params[0]);
			UpdateHouses();
			return 1;
	}
Y el de la casa

Код:
zcmd(houseentrance, playerid, params[])
	{
   		if(PlayerInfo[playerid][pAdminLC] != 2014) return Message(playerid, COLOR_GRAD2, "ЎNo autorizado!");
 		if(sscanf(params, "i", params[0])) return Message(playerid, COLOR_GRAD2, "Utilize: /houseentrace <Casa ID>");
        if(params[0] < 0 || params[0] >= MAX_HOUSES) return Message(playerid, COLOR_GRAD2, "ЎID de casa errуnea!");
			new string[80];
			new Float:X, Float:Y, Float:Z;
		    GetPlayerPos(playerid,X,Y,Z);
		    format(string,sizeof(string),"Entrada de Casa %d movido a %f - %f - %f", params[0],X,Y,Z);
			Message(playerid,COLOR_YELLOW2,string);
			HouseInfo[params[0]][hEntrancex] = X;
			HouseInfo[params[0]][hEntrancey] = Y;
			HouseInfo[params[0]][hEntrancez] = Z;
			OnPropTextdrawUpdate(params[0]);
			UpdateHouses();
			return 1;
	}
Reply
#6

їAlguien sabe como solucionarlo?
Reply
#7

Publica el codigo de "UpdateHouses();".

Y ya intentes lo que dice mi post anterior?
Reply
#8

Quote:
Originally Posted by SickAttack
Посмотреть сообщение
Publica el codigo de "UpdateHouses();".

Y ya intentes lo que dice mi post anterior?
No intente lo que dijiste en el post anterior ya que no lo entendн :/

Aquн esta el updatehouses
Aunque el problema no es con la entrada de la casa, la entrada de la casa solo es 1, si hay varios pickups y 3dlabels, solo uno funciona para entrar en al casa, los otros no, y para que desaparezcan los otros debo reiniciar el servidor, solo asн me queda 1 solo.

Код:
function UpdateHouses()
{
    new idx, File: file2, coordsstring[300];
	while (idx < sizeof(HouseInfo))
	{
	    HouseInfo[idx][hWorld] = idx;
	
		format(coordsstring, sizeof(coordsstring), "%d,%s,%f,%f,%f,%f,%f,%f,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%f,%f,%f,%d\n",
		HouseInfo[idx][hOwned],
		HouseInfo[idx][hOwner],
		HouseInfo[idx][hEntrancex],
		HouseInfo[idx][hEntrancey],
		HouseInfo[idx][hEntrancez],
		HouseInfo[idx][hExitx],
		HouseInfo[idx][hExity],
		HouseInfo[idx][hExitz],
		HouseInfo[idx][hInt],
		HouseInfo[idx][hLevel],
		HouseInfo[idx][hValue],
		HouseInfo[idx][hLock],
		HouseInfo[idx][hRooms],
		HouseInfo[idx][hRent],
		HouseInfo[idx][hRentabil],
		HouseInfo[idx][hWep],
		HouseInfo[idx][hAmmo],
		HouseInfo[idx][hMats],
		HouseInfo[idx][hDrugs],
		HouseInfo[idx][hSpeed],
		HouseInfo[idx][hEctasy],
		HouseInfo[idx][hRitalin],
		HouseInfo[idx][hHeroina],
		HouseInfo[idx][hMarihuana],
		HouseInfo[idx][hWorld],
		HouseInfo[idx][hTime],
		HouseInfo[idx][gEntrancex],
		HouseInfo[idx][gEntrancey],
		HouseInfo[idx][gEntrancez],
		HouseInfo[idx][gLock]);

		if(idx == 0)	file2 = fopen("property.cfg", io_write);
		else			file2 = fopen("property.cfg", io_append);
		
		fwrite(file2, coordsstring);
		idx++;
		fclose(file2);
	}
	return 1;
}
Reply
#9

Aver haz unos pruebas con este codigo:
pawn Код:
CMD:test(playerid, params[])
{
    new houseid;
    if(sscanf(params, "i", houseid)) return SendClientMessage(playerid, -1, "/test <id de la casa>");

        DestroyDynamic3DTextLabel(House3DText[houseid]);
    DestroyDynamicPickup(HousePickup[houseid]);
    return 1;
}
Crea como unos 5 casas y utiliza /test 1, /test 2, /test 3, /test 4 y /test 5, y luego publica unos imagenes aca.
Reply
#10

Quote:
Originally Posted by SickAttack
Посмотреть сообщение
Aver haz unos pruebas con este codigo:
pawn Код:
CMD:test(playerid, params[])
{
    new houseid;
    if(sscanf(params, "i", houseid)) return SendClientMessage(playerid, -1, "/test <id de la casa>");

        DestroyDynamic3DTextLabel(House3DText[houseid]);
    DestroyDynamicPickup(HousePickup[houseid]);
    return 1;
}
Crea como unos 5 casas y utiliza /test 1, /test 2, /test 3, /test 4 y /test 5, y luego publica unos imagenes aca.
Puse el comando en mi gm, compile, luego entre al server y lo use pero no paso nada, puse /test 1 /test 2 pero no pasу absolutamente nada.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)