[Help] TextDraws
#1

Hi, i have make this function for the selection of classes for an DM Server:

Код:
new Text:crediti;
new Text:crediti1;
new Text:selezioneg;
new Text:selezioneb;
new Text:selezionev;
new Text:selezionel;
new Text:selezioneweapg;
new Text:selezioneweapb;
new Text:selezioneweapv;
new Text:selezioneweapl;

forward creditilog(playerid);
public creditilog(playerid)
{
	crediti = TextDrawCreate(190, 10, "      Credits.");
	TextDrawFont(crediti, 3);
	TextDrawLetterSize(crediti, 0.8, 1.5);
	TextDrawColor(crediti, 0xFFFFFFFF);
	TextDrawSetProportional(crediti, true);
	TextDrawUseBox(crediti, true);
	TextDrawBoxColor(crediti, 0xFF4500AA);
	TextDrawTextSize(crediti, 450, 300);
	
	TextDrawShowForPlayer(playerid,crediti);
	return 1;
}

forward crediti1log(playerid);
public crediti1log(playerid)
{
	crediti1 = TextDrawCreate(190, 30, "  The Locos Crew.   Mapped by Bustz. Scripted by Bustz.");
	TextDrawFont(crediti1, 3);
	TextDrawLetterSize(crediti1, 0.8, 1.5);
	TextDrawColor(crediti1, 0xFFFFFFFF);
	TextDrawSetProportional(crediti1, true);
	TextDrawUseBox(crediti1, true);
	TextDrawBoxColor(crediti1, 0x000000AA);
	TextDrawTextSize(crediti1, 450, 300);

	TextDrawShowForPlayer(playerid,crediti1);
	return 1;
}

forward selezioneteam(playerid,classid);
public selezioneteam(playerid,classid)
{
	if(classid == 0 || classid == 1 || classid == 2)
	{
		TextDrawDestroy(selezionel);
		TextDrawDestroy(selezioneb);
	
		SetPlayerPos(playerid, 2495.3, -1690, 14.8);
		SetPlayerFacingAngle(playerid,0.003);
		SetPlayerCameraPos(playerid, 2495.2, -1684.7, 13.5);
		SetPlayerCameraLookAt(playerid, 2495.3, -1690, 14.8);
                SetPlayerTeam(playerid,GROVE_TEAM);
	
		selezioneg = TextDrawCreate(190, 330, "       Grove.");
		TextDrawFont(selezioneg, 3);
		TextDrawLetterSize(selezioneg, 0.8, 1.5);
		TextDrawColor(selezioneg, 0xFFFFFFFF);
		TextDrawSetProportional(selezioneg, true);
		TextDrawUseBox(selezioneg, true);
		TextDrawBoxColor(selezioneg, 0x008800AA);
		TextDrawTextSize(selezioneg, 450, 400);

       	        selezioneweapg = TextDrawCreate(190, 348, "    Deagle Shotgun Chainsaw           Silencer MP5 Golf                 9mm AK47 Bat");
		TextDrawFont(selezioneweapg, 3);
		TextDrawLetterSize(selezioneweapg, 0.5, 1.5);
		TextDrawColor(selezioneweapg, 0xFFFFFFFF);
		TextDrawSetProportional(selezioneweapg, true);
		TextDrawUseBox(selezioneweapg, true);
		TextDrawBoxColor(selezioneweapg, 0x000000AA);
		TextDrawTextSize(selezioneweapg, 450, 400);

	        TextDrawShowForPlayer(playerid,selezioneweapg);
    	        TextDrawShowForPlayer(playerid,selezioneg);
    	
    	return 1;
	}
	else if(classid == 3 || classid == 4 || classid == 5)
	{
		TextDrawDestroy(selezioneg);
		TextDrawDestroy(selezionev);

		SetPlayerPos(playerid, 2166.8, -1672.1, 15.1);
                SetPlayerFacingAngle(playerid,226.001);
		SetPlayerCameraPos(playerid, 2171.8, -1677.4, 15.1);
		SetPlayerCameraLookAt(playerid, 2166.8, -1672.1, 15.1);
		SetPlayerTeam(playerid,BALLAS_TEAM);
	
		selezioneb = TextDrawCreate(190, 330, "       Ballas.");
		TextDrawFont(selezioneb, 3);
		TextDrawLetterSize(selezioneb, 0.8, 1.5);
		TextDrawColor(selezioneb, 0xFFFFFFFF);
		TextDrawSetProportional(selezioneb, true);
		TextDrawUseBox(selezioneb, true);
		TextDrawBoxColor(selezioneb, 0x800080AA);
		TextDrawTextSize(selezioneb, 450, 400);

		selezioneweapb = TextDrawCreate(190, 348, "    Deagle Shotgun Chainsaw           Silencer MP5 Golf                 9mm AK47 Bat");
		TextDrawFont(selezioneweapb, 3);
		TextDrawLetterSize(selezioneweapb, 0.5, 1.5);
		TextDrawColor(selezioneweapb, 0xFFFFFFFF);
		TextDrawSetProportional(selezioneweapb, true);
		TextDrawUseBox(selezioneweapb, true);
		TextDrawBoxColor(selezioneweapb, 0x000000AA);
		TextDrawTextSize(selezioneweapb, 450, 400);

	        TextDrawShowForPlayer(playerid,selezioneweapb);
	        TextDrawShowForPlayer(playerid,selezioneb);

	    return 1;
	}
	
	else if(classid == 6 || classid == 7 || classid == 8)
	{

		TextDrawDestroy(selezioneb);
		TextDrawDestroy(selezionel);

		SetPlayerPos(playerid, 2288.2, -1104.4, 38.7);
		SetPlayerFacingAngle(playerid,170.002);
		SetPlayerCameraPos(playerid, 2287.3, -1109.3, 38);
		SetPlayerCameraLookAt(playerid, 2288.2, -1104.4, 38.7);
		SetPlayerTeam(playerid,VAGOS_TEAM);
		
		selezionev = TextDrawCreate(190, 330, "       Vagos.");
		TextDrawFont(selezionev, 3);
		TextDrawLetterSize(selezionev, 0.8, 1.5);
		TextDrawColor(selezionev, 0xFFFFFFFF);
		TextDrawSetProportional(selezionev, true);
		TextDrawUseBox(selezionev, true);
		TextDrawBoxColor(selezionev, 0xFFFF00AA);
		TextDrawTextSize(selezionev, 450, 400);

		selezioneweapv = TextDrawCreate(190, 348, "    Deagle Shotgun Chainsaw           Silencer MP5 Golf                 9mm AK47 Bat");
		TextDrawFont(selezioneweapv, 3);
		TextDrawLetterSize(selezioneweapv, 0.5, 1.5);
		TextDrawColor(selezioneweapv, 0xFFFFFFFF);
		TextDrawSetProportional(selezioneweapv, true);
		TextDrawUseBox(selezioneweapv, true);
		TextDrawBoxColor(selezioneweapv, 0x000000AA);
		TextDrawTextSize(selezioneweapv, 450, 400);

		TextDrawShowForPlayer(playerid,selezioneweapv);
   		TextDrawShowForPlayer(playerid,selezionev);

	    return 1;
	}
	else
	{
	    if(classid == 9 || classid == 10 || classid == 11)
	    {
			TextDrawDestroy(selezionev);
			TextDrawDestroy(selezioneg);

			SetPlayerPos(playerid, 1674.1, -2122.1, 14.1);
			SetPlayerFacingAngle(playerid,316.002);
			SetPlayerCameraPos(playerid, 1676.8, -2119.2, 13.5);
			SetPlayerCameraLookAt(playerid, 1674.1, -2122.1, 14.1);
			SetPlayerTeam(playerid,LOCOTES_TEAM);
			
     		        selezionel = TextDrawCreate(190, 330, "      Locotes.");
			TextDrawFont(selezionel, 3);
			TextDrawLetterSize(selezionel, 0.8, 1.5);
			TextDrawColor(selezionel, 0xFFFFFFFF);
			TextDrawSetProportional(selezionel, true);
			TextDrawUseBox(selezionel, true);
			TextDrawBoxColor(selezionel, 0x00FFFFAA);
			TextDrawTextSize(selezionel, 450, 400);

			selezioneweapl = TextDrawCreate(190, 348, "    Deagle Shotgun Chainsaw           Silencer MP5 Golf                 9mm AK47 Bat");
			TextDrawFont(selezioneweapl, 3);
			TextDrawLetterSize(selezioneweapl, 0.5, 1.5);
			TextDrawColor(selezioneweapl, 0xFFFFFFFF);
			TextDrawSetProportional(selezioneweapl, true);
			TextDrawUseBox(selezioneweapl, true);
			TextDrawBoxColor(selezioneweapl, 0x000000AA);
			TextDrawTextSize(selezioneweapl, 450, 400);

		        TextDrawShowForPlayer(playerid,selezioneweapl);
                        TextDrawShowForPlayer(playerid,selezionel);

			return 1;

		}
	}
	return 1;
}

public OnPlayerRequestClass(playerid, classid)
{
        selezioneteam(playerid,classid);
	creditilog(playerid);
	crediti1log(playerid);
	
	return 1;
}

public OnPlayerSpawn(playerid)
{
	TextDrawDestroy(crediti);
	TextDrawDestroy(crediti1);
	TextDrawDestroy(selezioneg);
	TextDrawDestroy(selezioneb);
	TextDrawDestroy(selezionev);
	TextDrawDestroy(selezionel);
	TextDrawDestroy(selezioneweapg);
	TextDrawDestroy(selezioneweapb);
	TextDrawDestroy(selezioneweapv);
	TextDrawDestroy(selezioneweapl);

	return 1;
}
The problem is when the player spawn, the textdraws don't destroy.. or better.. only one destroy, i don't know why..
Someone can help me?!

Thanks
Reply
#2

Quote:
Originally Posted by Ralfie
Посмотреть сообщение
Ur code is so complicated, i prefer creating all the textdraws under OnGameModeInt at first, then show it to the player as under OnPlayerRequestClass...
By switching into classid's and using TextDrawShowForPlayer instead! Would be much more faster and non buggy!

ON TOPIC: Try this please...

pawn Код:
public OnPlayerSpawn(playerid)
{
    TextDrawHideForPlayer(playerid, crediti);
    TextDrawHideForPlayer(playerid, crediti1);
    TextDrawHideForPlayer(playerid, selezioneg);
    TextDrawHideForPlayer(playerid, selezioneb);
    TextDrawHideForPlayer(playerid, selezionev);
    TextDrawHideForPlayer(playerid, selezionel);
    TextDrawHideForPlayer(playerid, selezioneweapg);
    TextDrawHideForPlayer(playerid, selezioneweapb);
    TextDrawHideForPlayer(playerid, selezioneweapv);
    TextDrawHideForPlayer(playerid, selezioneweapl);

    return 1;
}
doesn't work з_з
Reply
#3

Solved
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)