Jump to content

návod [TuT] TextDraw text


Baseball

Recommended Posts

TextDraw namísto GameTextForAll

:1:

 

 Úvod:
Tento návod je zaměřen na TextDrawy a jejich využití namísto GameTextForAll jelikož když máte logo serveru přes TextDraw a použijete GameTextForAll / ForPlayer tak text draw zmizí. Proto jsem se rozhodl udělat provás tento malý TuT. Co potřebujeme(?): TextDraw Editor by Zamaroht(
http://samp-scripts.com/post/11314/[0.3x_RC1+]_Zamaroht_TextDraw_Editor_with_Model_Previews/adri1/filterscript/other)

Vysvětlení:
Budeme pracovat s dcmd které nám usnadní v tomto práci, také budeme pracovat se stringama. Zapotřebí je testovací server aby jste mohli vytvořit grafickou předlohu. Ve hře si vytvořímte grafickou předlohu kterou pak uložíte. Jděte do scriptfiles a otevřete textový dokument (s názvem vašeho projektu) a tam máte vše co potřebujete (zkopírujete kód který vypadá nějak takto:

Textdraw0 = TextDrawCreate(410.000000, 200.000000, "Tvůj text");
TextDrawBackgroundColor(Textdraw0, 255);TextDrawFont(Textdraw0, 1);
TextDrawLetterSize(Textdraw0, 0.500000, 1.000000);TextDrawColor(Textdraw0, -2139062017);
TextDrawSetOutline(Textdraw0, 0);TextDrawSetProportional(Textdraw0, 1);
TextDrawSetShadow(Textdraw0, 1);TextDrawUseBox(Textdraw0, 1);
TextDrawBoxColor(Textdraw0, -2139062017);
TextDrawTextSize(Textdraw0, 490.000000, 10.000000);

Nahoře do GM / FS dáme #define Textdraw0 (nebo jaké číslo vám to tam hodí)
aby nám to fungovalo dáme nahoře do mádu definici dcmd.
#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1

Příklad:

A teď se dostáváme k samotném tvoření "dannu". do OnGameModeInit() dáme celý kód který vám to vyhodí do scripfiles. (ten kód který je nahoře ale VÁŠ kód). Pak dáte
Úplně dolů dáme dcmd ve kterém bude náš příkaz a za ním (playerid,params[])

dcmd_dann(playerid,params[])

Aby nám neházelo upozornění dáme pod toto

{   
#pragma unused playerid

Teď jsme se dostali k samotnému nastavení textu.

 


TextDrawSetString(Textdraw0,params);

Pokud máte Textdraw5 nebo jiné číslo tak ho musíte udělat i zde!
Teď dáme ještě že po zadání příkazu se tento TextDraw ukáže všem hráčům.

TextDrawShowForAll(Textdraw0);   
return 1;
}

Teď jdeme do OnPlayerCommandText
a dáme sem definici pro naše dcmd.
zadáme někam do toho publicu:
dcmd(dann,4,cmdtext);
dcmd(dann = příkaz
4 = počet písmen na rozeznání příkazu
cmdtext = text v příkazu

Tipy:
Na serveru když zadáte /dann [TEXT] tak pro změnu barev dejte ~r~ (červená) podle této tabulky se podívejte na barvy - ~n~ = New line ~r~ = Red ~g~ = Green ~b~ = Blue ~w~ = White ~y~ = Yellow ~p~ = Purple ~l~ = Black ~h~ = Turns text lighter ~u~ = Grey up arrow ~d~ = Grey down arrow ~~ = Grey right arrow
(
http://weedarr.wikidot.com/game-text#toc8 )

Závěr:
Toto by bylo z tohoto TuT vše, pokud máte nějaké návrhy na rychlejší úpravu nebo něco takového tak uričtě pište ;)
Pokud by vám to nefungovalo pište zprávu. 
( :1:) 

 

Edited by Baseball
Link to comment
Share on other sites

  • Hlavní moderátor

Dost laxně vysvětlené, každopádně:

  • autor toho editoru se jmenuje Zamaroht, ne Zamaroth
  • u pragmy máš místo unused pouze unsed
  • v názvu návodu bys měl mít na konci ještě [**]
Edited by vEnd
Link to comment
Share on other sites

  • Globální moderátor

na to že textdraw pro mě není problém, tak z tohohle mi to přijde že je teda neumím, přehlednos nula. Odemě je v návodech přímo šablona, tak zkus použít i ten styl jakým je vypracovaná, proč? Protože se v tom pak člověk vyzná

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...