Szerző Téma: Munkákhoz tartozó parancsok.  (Megtekintve 787 alkalommal)

Munkákhoz tartozó parancsok.
« Dátum: 2010. Augusztus 05. - 21:00:40 »
0 Show voters
Csumesz all!
Abban kérném a segítségeteket, hogy munkákhoz szeretnék olyan parancsokat amik csak akkor érhetõk el ha a játékos dolgozik. Ha nincs bent munkában akkor ezek a parancsok nemérhetõk el.
Egy példát írok: A játékos beírja /bérgyílkos akkor a /boom és a /megfigyel parancs elérhetõvé válik.
Elõre is köszönöm!  :)

Nem elérhető ALIEN

  • 1163
    • Profil megtekintése
Munkákhoz tartozó parancsok.
« Válasz #1 Dátum: 2010. Augusztus 05. - 21:22:32 »
0 Show voters
Ezt egy változóval meglehet oldani:
 
new bool:dolgozik[MAX_PLAYERS];

 
Aztán beállítjuk hogy ha spawnolják akkor még nem dolgozik. De lehet az OnPlayerConnect-hez is írni.
 
public OnPlayerSpawn(playerid)
{
dolgozik[playerid] = false;
return 1;
}

 
És aztán pedig beállítjuk hogy ha elfogadja a munkát:
 
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp(\"/bérgyilkos\", cmdtext, true) == 0)
{
dolgozik[playerid] = true; // és dolgozik...
return 1;
}
return 0;
}

 
És most pedig a munka parancsait:
 
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp(\"/boom\", cmdtext, true) == 0)
{
               if(dolgozik[playerid] == true) //beállítjuk hogy csak akkor tudja használni ha bérgyilkos
       {
                //történés
               }else{ // és ha nem dolgozik akkor ezt írja ki:
                SendClientMessage(playerid, 0xFB0000FF, \"Ezt a paranacsot cak akkor tudod használni ha dolgozol!\");
return 1;
}
        if (strcmp(\"/megfigyel\", cmdtext, true) == 0)
{
               if(dolgozik[playerid] == true) //beállítjuk hogy csak akkor tudja használni ha bérgyilkos
       {
                //történés
               }else{ // és ha nem dolgozik akkor ezt írja ki:
                SendClientMessage(playerid, 0xFB0000FF, \"Ezt a paranacsot cak akkor tudod használni ha dolgozol!\");
return 1;
}
}

 
És kész. Esetleg még ha kiakarsz lépni a munkádból:
 
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp(\"/kilép\", cmdtext, true) == 0)
{
dolgozik[playerid] = false; // és aztán nem dolgozik...
return 1;
}
return 0;
}

 
Remélem tudtam segíteni. Ha valamit nem értesz akkor kérdezz.

Munkákhoz tartozó parancsok.
« Válasz #2 Dátum: 2010. Augusztus 05. - 21:56:58 »
0 Show voters
Köszönöm szépen a segitséget :)
« Utoljára szerkesztve: 2010. Augusztus 05. - 23:03:39 írta [M]D[S]Rotary »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal