Text draw crashing players
#1

I made a text draw where when you spawn or do /cmds you get the commands in a nice textdraw format. But it crashes the players as soon as they spawn (when the text draw shows). I dont see anything wrong with the text draw.. Please help

pawn Код:
public OnPlayerSpawn(playerid)
{

    TextDrawShowForPlayer(playerid,text21);
    TextDrawShowForPlayer(playerid,text10);
    TextDrawShowForPlayer(playerid,text11);
pawn Код:
public OnGameModeInit()
{
    SetGameModeText("Stunt/Race/DM/Drift/Freeroam");
    DisableInteriorEnterExits();
    spawnexit = CreateDynamicCP(493.4826,-24.9611,1000.6719,1,-1,-1,-1,100);
    spawnenter = CreateDynamicCP(-2624.6890,1412.7128,7.0938,1,-1,-1,-1,100);

    // Textdraw
StuniqueTextDraw = TextDrawCreate(4.000000,435.000000,"_____________________________~r~SnG ~l~- ~y~http://www.sngstunt.tk - www.sng-clan.com");
    TextDrawFont(StuniqueTextDraw,1);
    TextDrawTextSize(StuniqueTextDraw, 640.0000, 22.5000);
   
    text21 = TextDrawCreate(7.000000, 123.000000, "General Commands:");
    TextDrawAlignment(text21, 0);
    TextDrawBackgroundColor(text21, 0xF6F600AA);
    TextDrawFont(text21, 1);
    TextDrawLetterSize(text21, 0.499999, 1.200000);
    TextDrawColor(text21, 0x0000ffff);
    TextDrawSetOutline(text21, 1);
    TextDrawSetProportional(text21, 1);
    TextDrawSetShadow(text21, 1);

    text10 = TextDrawCreate(7.000000, 136.000000, "~n~~n~~n~~n~~n~~n~~g~General:~w~~n~/go /tgoto /skin /dub /color /para /pm /stats /healme~n~~g~Vehicle:~w~~n~/v /carcolour /carcolor /lock /unlock /autofix /tsb /cc~n~~g~House:~w~~n~/houses /house");
    TextDrawAlignment(text10, 0);
    TextDrawLetterSize(text10, 0.1, 0.800000);
    TextDrawColor(text10, 0xffff00ff);
    TextDrawSetOutline(text10, 1);
    TextDrawSetProportional(text10, 1);
    TextDrawSetShadow(text10, 1);

    text11 = TextDrawCreate(7.000000, 136.000000, "~n~~n~~n~~n~~n~~n~~n~~n~~n~~g~Hits:~n~~w~/bounty /hitman~n~~g~Teles:~n~~w~/teles /races /lsa /sfa /hh /mdm /citymap~n~~g~Banking:~w~~n~/bankhelp /bank /deposit /withdraw /transfer");
    TextDrawAlignment(text10, 0);
    TextDrawLetterSize(text10, 0.1, 0.800000);
    TextDrawColor(text10, 0xffff00ff);
    TextDrawSetOutline(text10, 1);
    TextDrawSetProportional(text10, 1);
    TextDrawSetShadow(text10, 1);
   

    text12 = TextDrawCreate(7.000000, 136.000000, "~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~g~thers:~n~~w~/drink, /resetdrunk, /lobby, /admins~n~Type ~r~/okay~w~ to hide this box");
    TextDrawAlignment(text10, 0);
    TextDrawLetterSize(text10, 0.1, 0.800000);
    TextDrawColor(text10, 0xffff00ff);
    TextDrawSetOutline(text10, 1);
    TextDrawSetProportional(text10, 1);
    TextDrawSetShadow(text10, 1);
Reply
#2

You're using too many new lines; I'm not sure of the limit, but I almost guarantee that if you use less ~n~'s, you will not be crashed.
Reply
#3

Yeah thanks. Didnt realize that. And do you know how i can make it so if the player click LMB while the box is open it hides the box?
Reply
#4

Create a variable, when you show the box, put the variable as 1, OnKeyStateChange, check if they're pressing LMB, and TextDrawHideForPlayer.
Reply
#5

how can i set the variable? I can do the OnKeyStateChange
Reply
#6

pawn Код:
new TDShowing[ MAX_PLAYERS ] = 0;
Show the box and then
pawn Код:
TDShowing[ playerid ] = 1;
OnKeyStateChange: Check if TDShowing[playerid] equals 1, and then hide it, and set the variable to 0. (TDShowing[playerid] = 0
Reply
#7

pawn Код:
if TDShowing[ playerid ] == 1;)
    if(PRESSED(KEY_FIRE)) {
    TextDrawHideForPlayer(playerid,text21);
    TextDrawHideForPlayer(playerid,text10);
    TextDrawHideForPlayer(playerid,text11);
    TextDrawHideForPlayer(playerid,text12);
    }
errors
pawn Код:
(9082) : warning 211: possibly unintended assignment
(9082) : error 001: expected token: "*then", but found ";"
(9082) : error 036: empty statement
(9082) : error 029: invalid expression, assumed zero
(9082) : fatal error 107: too many error messages on one line
9082=
pawn Код:
if TDShowing[ playerid ] == 1;)
Reply
#8

Quote:
Originally Posted by SnG.Scot_MisCuDI
Посмотреть сообщение
pawn Код:
if TDShowing[ playerid ] == 1;)
    if(PRESSED(KEY_FIRE)) {
    TextDrawHideForPlayer(playerid,text21);
    TextDrawHideForPlayer(playerid,text10);
    TextDrawHideForPlayer(playerid,text11);
    TextDrawHideForPlayer(playerid,text12);
    }
errors
pawn Код:
(9082) : warning 211: possibly unintended assignment
(9082) : error 001: expected token: "*then", but found ";"
(9082) : error 036: empty statement
(9082) : error 029: invalid expression, assumed zero
(9082) : fatal error 107: too many error messages on one line
9082=
pawn Код:
if TDShowing[ playerid ] == 1;)
pawn Код:
if(PRESSED(KEY_FIRE)) {
if TDShowing[ playerid ] == 1) {
    TextDrawHideForPlayer(playerid,text21);
    TextDrawHideForPlayer(playerid,text10);
    TextDrawHideForPlayer(playerid,text11);
    TextDrawHideForPlayer(playerid,text12);
}
    }
Reply
#9

error:
pawn Код:
(9101) : error 001: expected token: "*then", but found ")"
(9101) : error 029: invalid expression, assumed zero
pawn Код:
if TDShowing[ playerid ] == 1) {
Reply
#10

Sorry...

pawn Код:
if( TDShowing[ playerid ] == 1) {
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)