Menjanje TD boje ingame.

Započeo xsar.p, Oktobar 11, 2017, 16:26:17 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 2 gostiju pregledaju ovu temu.

Ovo je najjednostavniji tutorijal za pocetnike, uglavnom video sam da par ljudi trazi pomoc oko boje tdova, zato sam i odlucio da napravim ovaj jednostavan tutorijal. Pre svega cu vam pokazati kako tdovi izgledaju pre promene boje i nakon promene boje.
Credits ide Atili za tdove.
Slika: Klikni ovde.

I.Zapocinjemo ubacivanjem vasih tdova (ukoliko ste ih vec ubacili preskocite ovaj korak.
Sve sto je potrebno jeste da ubacite vase tdove pod OnGameModeInit, kada ste ih ubacili mozete nastaviti dalje.

II.
Pronadjite tdove ciju boju zelite promeniti. Sada trebamo napraviti komandu sa kojom cemo promeniti boju tdova.
Pre svega dodajemo na vrhu sledece.
[pawn]   TextDrawColor(vastd, bojatd);[/pawn]
Da vam pojasnim boju tdova mozete naci na sledecem sajtu ColorPicker.com
Kod hex boje obavezno je dodati 0x na pocetku i AA na kraju hex boje.
2DCCC9 menjamo u 0x2DCCC9AA
Posle dodavanja TextDrawColor moramo igracu ponovo pokazati td, to radimo ovako:
[pawn]   TextDrawShowForPlayer(playerid,vastd);[/pawn]

III.
To bi bilo to, sada kada smo sredili boju svakog td-a nasa komanda bi trebala da izgleda nesto ovako.
[pawn]CMD:bojatd(playerid, params[])
{
   TextDrawColor(Textdraw0, 0x2DCCC9AA);
    TextDrawColor(Textdraw1, 0x2DCCC9AA);
      TextDrawColor(Textdraw2, 0x2DCCC9AA);
    TextDrawColor(Textdraw8, 0x2DCCC9AA);
   TextDrawShowForPlayer(playerid,Textdraw0);
   TextDrawShowForPlayer(playerid,Textdraw1);
   TextDrawShowForPlayer(playerid,Textdraw2);
   TextDrawShowForPlayer(playerid,Textdraw7);
   TextDrawShowForPlayer(playerid,Textdraw8);
   PlayerPlaySound(playerid,1083,0.0,0.0,0.0);
   SendClientMessage(playerid,-1,"{2DCCC9}IME SERVERA:{FFFFFF} Uspesno ste promenili boju tdova.");
}[/pawn]
Oduvek sam se pitao:
"Zbog cega se ljudi toliko brinu jedni za druge?",
"Zasto ljudi daju sve od sebe da usrece neku osobu?"

Najjednostavnije receno brinu se jer vole tu osobu celim svojim srcem,
daju sve od sebe da je usrece zbog toga sto ne zele da je ikada vide tuznom ili rasplakanom.
#xsarnaaparatima..

Dobar tutorial, svaka cast.  ;D
Big Respect to: Captain Foux, Muma420, Hrustanovic & Basovski



L3o

*

Ne vidim poantu ovoga, al haj'. Dobro je. ::)
retired

Citat
Sve sto je potrebno jeste da ubacite vase tdove pod OnGameModeInit, kada ste ih ubacili mozete nastaviti dalje.
Ne idu svi TDovi pod OnGameModeInit, player TDovi idu pod OnPlayerConnect. :D

Citat
Kod hex boje obavezno je dodati 0x na pocetku i AA na kraju hex boje.
2DCCC9 menjamo u 0x2DCCC9AA
Ustvari, na kraju HEX boje važno je što će biti, ako je 00 neće se nikako vidjeti, ako je FF biti će maksimalno istaknuta boja tj. ne prozirna, AA je malo prozirna, CC je kao staklo(valjda koliko se sjećam) znači vidi se kroz TD i tako sve, morate znati šta postavljate. :)

Citat
[pawn]CMD:bojatd(playerid, params[])
{
   TextDrawColor(Textdraw0, 0x2DCCC9AA);
    TextDrawColor(Textdraw1, 0x2DCCC9AA);
      TextDrawColor(Textdraw2, 0x2DCCC9AA);
    TextDrawColor(Textdraw8, 0x2DCCC9AA);
   TextDrawShowForPlayer(playerid,Textdraw0);
   TextDrawShowForPlayer(playerid,Textdraw1);
   TextDrawShowForPlayer(playerid,Textdraw2);
   TextDrawShowForPlayer(playerid,Textdraw7);
   TextDrawShowForPlayer(playerid,Textdraw8);
   PlayerPlaySound(playerid,1083,0.0,0.0,0.0);
   SendClientMessage(playerid,-1,"{2DCCC9}IME SERVERA:{FFFFFF} Uspesno ste promenili boju tdova.");
}[/pawn]
Ovo može i preko loop-a ako je TD drugačije definisan:
Ne ovako:
new TextDraw0;
new TextDraw1;
New TextDraw2;

Već:
new TextDraw[3];

i onda preko loop-a

for(new muma = 0; muma < 3; muma++)
{
TextDrawColor(Textdraw[muma], 0x2DCCC9AA);
TextDrawShowForPlayer(playerid, Textdraw[muma]);
}

Citat: Muma poslato Oktobar 11, 2017, 17:45:56 POSLE PODNE
Citat
Sve sto je potrebno jeste da ubacite vase tdove pod OnGameModeInit, kada ste ih ubacili mozete nastaviti dalje.
Ne idu svi TDovi pod OnGameModeInit, player TDovi idu pod OnPlayerConnect. :D

Citat
Kod hex boje obavezno je dodati 0x na pocetku i AA na kraju hex boje.
2DCCC9 menjamo u 0x2DCCC9AA
Ustvari, na kraju HEX boje važno je što će biti, ako je 00 neće se nikako vidjeti, ako je FF biti će maksimalno istaknuta boja tj. ne prozirna, AA je malo prozirna, CC je kao staklo(valjda koliko se sjećam) znači vidi se kroz TD i tako sve, morate znati šta postavljate. :)

Citat
[pawn]CMD:bojatd(playerid, params[])
{
   TextDrawColor(Textdraw0, 0x2DCCC9AA);
    TextDrawColor(Textdraw1, 0x2DCCC9AA);
      TextDrawColor(Textdraw2, 0x2DCCC9AA);
    TextDrawColor(Textdraw8, 0x2DCCC9AA);
   TextDrawShowForPlayer(playerid,Textdraw0);
   TextDrawShowForPlayer(playerid,Textdraw1);
   TextDrawShowForPlayer(playerid,Textdraw2);
   TextDrawShowForPlayer(playerid,Textdraw7);
   TextDrawShowForPlayer(playerid,Textdraw8);
   PlayerPlaySound(playerid,1083,0.0,0.0,0.0);
   SendClientMessage(playerid,-1,"{2DCCC9}IME SERVERA:{FFFFFF} Uspesno ste promenili boju tdova.");
}[/pawn]
Ovo može i preko loop-a ako je TD drugačije definisan:
Ne ovako:
new TextDraw0;
new TextDraw1;
New TextDraw2;

Već:
new TextDraw[3];

i onda preko loop-a

for(new muma = 0; muma < 3; muma++)
{
TextDrawColor(Textdraw[muma], 0x2DCCC9AA);
TextDrawShowForPlayer(playerid, Textdraw[muma]);
}
Naravno da moze i tako, ali meni je ovako nekako jednostavnije. :D
Oduvek sam se pitao:
"Zbog cega se ljudi toliko brinu jedni za druge?",
"Zasto ljudi daju sve od sebe da usrece neku osobu?"

Najjednostavnije receno brinu se jer vole tu osobu celim svojim srcem,
daju sve od sebe da je usrece zbog toga sto ne zele da je ikada vide tuznom ili rasplakanom.
#xsarnaaparatima..

Jel moze da se namesti koja god boja htela :D



Citat: Muma poslato Oktobar 11, 2017, 17:45:56 POSLE PODNE
Citat
Sve sto je potrebno jeste da ubacite vase tdove pod OnGameModeInit, kada ste ih ubacili mozete nastaviti dalje.
Ne idu svi TDovi pod OnGameModeInit, player TDovi idu pod OnPlayerConnect. :D

PlayerTD se kreira kada je potreban i Destroya kada je nepotreban (zbog limita) i ne mora da ide u OnPlayerConnect.


Citat: Muma poslato Oktobar 11, 2017, 17:45:56 POSLE PODNE
Citat
Kod hex boje obavezno je dodati 0x na pocetku i AA na kraju hex boje.
2DCCC9 menjamo u 0x2DCCC9AA
Ustvari, na kraju HEX boje važno je što će biti, ako je 00 neće se nikako vidjeti, ako je FF biti će maksimalno istaknuta boja tj. ne prozirna, AA je malo prozirna, CC je kao staklo(valjda koliko se sjećam) znači vidi se kroz TD i tako sve, morate znati šta postavljate. :)

https://en.wikipedia.org/wiki/RGBA_color_space

Citat: ☢ χÏ...ηdÑ"я_ ☢ poslato Oktobar 21, 2017, 01:46:14 PRE PODNE
Citat: Muma poslato Oktobar 11, 2017, 17:45:56 POSLE PODNE
Citat
Sve sto je potrebno jeste da ubacite vase tdove pod OnGameModeInit, kada ste ih ubacili mozete nastaviti dalje.
Ne idu svi TDovi pod OnGameModeInit, player TDovi idu pod OnPlayerConnect. :D

PlayerTD se kreira kada je potreban i Destroya kada je nepotreban (zbog limita) i ne mora da ide u OnPlayerConnect.


Citat: Muma poslato Oktobar 11, 2017, 17:45:56 POSLE PODNE
Citat
Kod hex boje obavezno je dodati 0x na pocetku i AA na kraju hex boje.
2DCCC9 menjamo u 0x2DCCC9AA
Ustvari, na kraju HEX boje važno je što će biti, ako je 00 neće se nikako vidjeti, ako je FF biti će maksimalno istaknuta boja tj. ne prozirna, AA je malo prozirna, CC je kao staklo(valjda koliko se sjećam) znači vidi se kroz TD i tako sve, morate znati šta postavljate. :)

https://en.wikipedia.org/wiki/RGBA_color_space
Pa dobro to sam samo naveo, kod mene je po callbackovima uglavnom, a i ne znam kako uspije neko da probije limit čak i ja nisam blizu limita, a obožavam raditi sa TDovima.. A ovo za boje te ne razumijem tj. ne znam na šta misliš..

Takodje setio sam se da sam zaboravio kod komande da stavim return 1; pa je zato izbacivalo da komanda ne postoji.
Oduvek sam se pitao:
"Zbog cega se ljudi toliko brinu jedni za druge?",
"Zasto ljudi daju sve od sebe da usrece neku osobu?"

Najjednostavnije receno brinu se jer vole tu osobu celim svojim srcem,
daju sve od sebe da je usrece zbog toga sto ne zele da je ikada vide tuznom ili rasplakanom.
#xsarnaaparatima..


 Izvintie sto se mesam i sto osvezujem stranice ,ali ovo je da menja svima boju koju,ako se ne varam su trenutno ingame da bi sami sebi menjali igraci boju samo sebi treba biti tdovi playertd kao kod mene radi bez ikakvog problema eo vam primer [pawn]YCMD:bojatd(playerid, params[],help)
{
    #pragma unused help
   #pragma unused params
   new colortd[128];
    if(UlogovanProvera[playerid] == 0) return SCM(playerid,-1,"[Ime Servera] | "SRWBOJA"Moras se ulogovati da bi koristio ovu komandu!");
    if(sscanf(params, "s[24]", colortd)) return SCM(playerid,-1,""BELA"/bojatd[ljubicasta]");
    if(!strcmp(colortd, "ljubicasta", true))
   {
      PlayerTextDrawColor(playerid, Gornji_TD[0][playerid], 0x841BACFF);
      PlayerTextDrawBoxColor(playerid, Gornji_TD[1][playerid], 0x841BACFF);
   //==========================================================================
        foreach (Player, i)
      {
         PlayerTextDrawShow(playerid, Gornji_TD[0][playerid]);
           PlayerTextDrawShow(playerid, Gornji_TD[1][playerid]);
      }
  }
  SendClientMessage(playerid,-1,"{2DCCC9}IME SERVERA:{FFFFFF} Uspesno ste promenili boju tdova.");
  return 1;
}[/pawn] Eo vam primer
Poslednja Izmena: Novembar 01, 2017, 00:00:29 PRE PODNE od Skorpija
Vandals Project OGC
[size=11.25pt]Vandals Project OGC[/size][/font]
[/color]