Textdraw Won't hide?
#1

This is the code for entering a custom inbterior:
Код:
SetFreezePos(playerid, Float:x, Float:y, Float:z)
{
    if(PlayerInfo[playerid][pFreezeTimer] >= 0)
	{
		KillTimer(PlayerInfo[playerid][pFreezeTimer]);
	}

    PlayerInfo[playerid][pFreezeTimer] = SetTimerEx("UnfreezePlayer", 3000, false, "ifff", playerid, x, y, z);
	SetPlayerPos(playerid, x, y, z);

    TogglePlayerControllable(playerid, false);
	TextDrawShowForPlayer(playerid, Loading[0]);
	TextDrawShowForPlayer(playerid, Loading[1]);
	TextDrawShowForPlayer(playerid, Loading[2]);
	TextDrawShowForPlayer(playerid, Loading[3]);
	TextDrawShowForPlayer(playerid, Loading[4]);
	TextDrawShowForPlayer(playerid, Loading[5]);
	SetTimer("HideLoadingTextdraw", 3000, false);
}
Код:
forward HideLoadingTextdraw(playerid);
public HideLoadingTextdraw(playerid)
{
		TextDrawHideForPlayer(playerid, Loading[0]);
		TextDrawHideForPlayer(playerid, Loading[1]);
		TextDrawHideForPlayer(playerid, Loading[2]);
		TextDrawHideForPlayer(playerid, Loading[3]);
		TextDrawHideForPlayer(playerid, Loading[4]);
		TextDrawHideForPlayer(playerid, Loading[5]);
		TextDrawHideForPlayer(playerid, Loading[6]);
	}
}
Reply
#2

PHP код:
SetTimerEx("HideLoadingTextdraw"3000false"i"playerid); 
Reply
#3

Along with the fix the guy above me metioned, I recommend you delete the "Loading[6]" if you are not showing it to the player at the first place. This could cause hiding some other random textdraw.
Reply
#4

^^ This is semi incorrect.



But really, why are you showing 6 in total, then hiding 7... Does Loading[6] actually exist, or is this an unintentional occurrence?
Reply
#5

Redid the code a little but still does not work

Код:
SetFreezePos(playerid, Float:x, Float:y, Float:z)
{
    if(PlayerInfo[playerid][pFreezeTimer] >= 0)
	{
		KillTimer(PlayerInfo[playerid][pFreezeTimer]);
	}

    PlayerInfo[playerid][pFreezeTimer] = SetTimerEx("UnfreezePlayer", 3000, false, "ifff", playerid, x, y, z);
	SetPlayerPos(playerid, x, y, z);

    TogglePlayerControllable(playerid, false);
	TextDrawShowForPlayer(playerid, Loading[0]);
	TextDrawShowForPlayer(playerid, Loading[1]);
	TextDrawShowForPlayer(playerid, Loading[2]);
	TextDrawShowForPlayer(playerid, Loading[3]);
	TextDrawShowForPlayer(playerid, Loading[4]);
	TextDrawShowForPlayer(playerid, Loading[5]);
//	TextDrawShowForPlayer(playerid, Loading[6]);
	SetTimerEx("SafeLoadObjectsClear", 3000, false, "i", playerid);
}
Код:
forward SafeLoadObjectsClear(playerid);
public SafeLoadObjectsClear(playerid)
{

	TextDrawHideForPlayer(playerid, Loading[0]);
	TextDrawHideForPlayer(playerid, Loading[1]);
	TextDrawHideForPlayer(playerid, Loading[2]);
	TextDrawHideForPlayer(playerid, Loading[3]);
	TextDrawHideForPlayer(playerid, Loading[4]);
	TextDrawHideForPlayer(playerid, Loading[5]);
}
Reply
#6

What's it even doing? and what's it supposed to do?

Are you sure the timer is even being 'started'?

Try using Printf or SendClientMessages to show it 'working' in game or in the log.
Reply
#7

Quote:
Originally Posted by Sew_Sumi
Посмотреть сообщение
What's it even doing? and what's it supposed to do?

Are you sure the timer is even being 'started'?

Try using Printf or SendClientMessages to show it 'working' in game or in the log.
I've made a texdrawbox that shows when entering custom interiors that says "Loading Objects" and it is suppose to show while freezed and removed once unfreezed. The first part work where it shows, but it won't hide the textdraws
Reply
#8

Solved it just a little misstypo
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)