Szerző Téma: [TUT]Csapatok és Csapatra szabott parancsok  (Megtekintve 3575 alkalommal)

Nem elérhető Alpha

[TUT]Csapatok és Csapatra szabott parancsok
« Dátum: 2010. Szeptember 09. - 16:17:05 »
+3 Show voters
Csapatok készítése Gteam segítségével
 
1. lépés
A módunk legelején a szükséges dolgokat \"beolvassuk\"
 

#include <a_samp>
static gTeam[MAX_PLAYERS];
#define TEAM_CIVIL 0
#define TEAM_BUNOZO 1

 
Az \"a_samp\" incben nincs mit magyarázni szóval ugrás.
a \"static gTeam[MAX_PLAYERS]\" el hivatkozunk az ÖSSZES játékosra.
\"#define TEAM_CIVIL 0\" el megdefiniálunk 1 csapatot TEAM_CIVIL néven és az IDje 0 lesz
Módunkat meggyorsíthatjuk a következõ módon:
 

#undef MAX_PLAYERS
#define MAX_PLAYER 30

 
A \"30\" at írd át a szervered SLOT limitjére! De miért is jó ez nekünk? Mivel alapból a MAX_PLAYERS 500 játékosra van álítva és ha 30 slotos szerverünk van akkor 270 hely üresen fut szóval azt vegyük ki.
2. lépés
A GameModeInit alá berakjuk az AddPlayersClassocat!
 

AddPlayerClass(71,0.0,0.0,0,0.0,0,0,0,0,0,0);
AddPlayerClass(200,-0.0,0.0,0,0.0,0,0,0,0,0,0);

 
Nos feltûnhet nektek a kódban, hogy a fegyvereket nem írtam bele ez azért van mert itt LIMITÁLT mennyiséget rakhatunk bele az OnPlayerSpawn(playerid) résznél!
3. lépés
Az OnPlayerSpawn rész létrehozása
 
  if(gTeam[playerid] == TEAM_CIVIL1) {
SetPlayerColor(playerid,0x33AA33AA); // Blue
       GivePlayerWeapon(playerid, 25, 10000);// fegyvert ad
}
else if(gTeam[playerid] == TEAM_BUNOZO) {
        SetPlayerColor(playerid,0xAFAFAFAAY); // Light Blue
        GivePlayerWeapon(playerid, 25, 10000);// fegyvert ad
}

 
Na de most pontosan mit is csináltunk? Spawnoláskor a különbözõ csapatok különbözõ színt kapnak természetesen ide lehet írni GivePlayerWeapon-t vagy SetPlayerMoney-t stb.
4. lépés
SetPlayerClass Létrehozása!
Ezt rakhatod BÁRHOVA! Csak ne más \"public\"ba
 

SetPlayerClass(playerid, classid) {
if(classid == 0) {
gTeam[playerid] = TEAM_CIVIL;
} else if(classid == 1) {
gTeam[playerid] = TEAM_BUNOZO;
}
}

 
FIGYELEM ügyelj arra, hogy a classid egyezzen a megdefiniáltal!
4. lépés
OnPlayerRequestClass létrehozása másnéven amikor a játékos felconectol a szerverre tudjon csapatot választani
 

public OnPlayerRequestClass(playerid, classid)
{
SetPlayerClass(playerid, classid);
SetupPlayerForClassSelection(playerid);
gPlayerClass[playerid] = classid;
switch (classid) {
    case 0:
        {
      GameTextForPlayer(playerid, \"~b~Civil\", 500, 3);
   }
case 1:
    {
      GameTextForPlayer(playerid, \"~g~Bunozo!\", 500, 3);
   }
            }
return 1;
}

 
Szerintem ezen nem sokat kell magyarázni de azért elfogom
GameTextForPlayer helyére rakhatsz akár textdravot vagy SCM et.
MAGYARÁZAT: GameTextForPlayer(kinek menjen el, \"SZÖVEG\", IDÕ, STÍLUS);
TÁDÁ már készen is vagyunk de ezzel nem értünk el valami sokat, szóval most megmutatom mire lehet akár alkalmazni ezt a megkülönböztetést.
1 csapat tudjon 1 parancsot használni
Ez szintén nem nehéz az OnPlayerCommandText nél kell alkalmazni :)
 

if(gTeam[playerid] == TEAM_CIVIL)
{
    if (strcmp(\"/fegyverez\", cmdtext, true, 10) == 0)
{
SetPlayerHealth(playerid, 100); // 100 életet ad
    SetPlayerArmour(playerid, 100); // 100 páncélt ad
GivePlayerWeapon(playerid, 28, 10000); // fegyvert ad
    GivePlayerWeapon(playerid, 25, 10000);// fegyvert ad
    GivePlayerWeapon(playerid, 31, 10000);// fegyvert ad
    GivePlayerWeapon(playerid, 24, 10000);// fegyvert ad
return 1;
}
}

 
Ezzel létrehoztunk 1 parancsot ami ad életet páncélt és fegyvereket amelyet CSAK 1 ADOTT CSAPAT TUD HASZNÁLNI
Ennyi lenne a csapatkezelés alapja =) Innentõl már csak a fantázia szab határt
Írta: Alpha ha hibát találsz jelezd!

A Tutorialt olyanoknak szántam akik aránylag tudják, hogy a Giveplayerweapon stb. mit csinál de csapatot és csapatra szabott dolgokat nem tudnak :)
« Utoljára szerkesztve: 2011. Május 26. - 17:52:59 írta ChuckNorris »

Nem elérhető Csabesz

  • 7827
    • Profil megtekintése
[TUT]Csapatok és Csapatra szabott parancsok
« Válasz #1 Dátum: 2010. Szeptember 09. - 19:26:27 »
0 Show voters
Hát inkább nem is mondok semmit...  ::|
De ezt nem nevezném elmagyarázásnak/leírásnak.  :shy:
Szerk.: Ha már leírást szeretnél készíteni, az érthetõ, és jól leírt legyen.
« Utoljára szerkesztve: 2010. Szeptember 10. - 18:16:59 írta Csabesz »

Nem elérhető jana4

  • 5929
  • Ex Staff
    • Profil megtekintése
[TUT]Csapatok és Csapatra szabott parancsok
« Válasz #2 Dátum: 2010. Szeptember 09. - 19:48:13 »
0 Show voters
Ez sem leírás, mint a többi ún. tutod.

Rakd ide rakd oda, a kezdõknek így nem kínai, hanem japán...
\"flag11mini.gif\"
Ha rendesen, lényegretõrõen írnál egy tutot, díjaznám.

Nem elérhető XDPATXD

  • 1374
    • Profil megtekintése
[TUT]Csapatok és Csapatra szabott parancsok
« Válasz #3 Dátum: 2010. Szeptember 09. - 20:31:51 »
0 Show voters
Én ebbõl alig értettem valamit! ::|

Nem elérhető Depi

  • 2259
  • Még mindig TrYp. :)
    • Profil megtekintése
[TUT]Csapatok és Csapatra szabott parancsok
« Válasz #4 Dátum: 2010. Szeptember 09. - 20:46:49 »
0 Show voters
Én személy szerint a GetPlayerTeam és a SetPlayerTeam fügvényeket használom,szerintem az tökéletes,a TuThoz nem füznék inkább semmit.

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal