←  Poradniki, Łatki oraz Pluginy

AMXX.pl: Support AMX Mod X i SourceMod

»

CoD Stary
Więcej Skillow w jednej klasie (lepsza wer...

  • +
  • -
dasiek - zdjęcie dasiek 02.06.2012

W Tym poradniku pokażę wam jak dodać klasie 2 umiejętności (na przykłądzie miny i rakiety - Klasa Kaboom)

Dodajemy zmienne logiczne które będą informowały plugin jaki item obecnie posiada gracz.

new bool:ma_rakiety[33];
new bool:ma_miny[33];

przed switch(klasa_gracza[id]) zerujemy co aktualnie posiada
ma_miny[id]=false;
ma_rakiety[id]=false;

Nasza Klasa Kaboom będzie miałą dodatkowo deagla i p90. Dodajemy jej 3 rakiety i 3 miny i ustawiamy by na początku rundy korzystała z rakiet

case Kaboom:
{
    give_item(id,"weapon_deagle");
    give_item(id,"weapon_p90")
    ma_rakiety[id] = true;
    ilosc_rakiet_gracza[id] = 3;
    ilosc_min_gracza[id] = 3;
}


do plugin_init dodajemy klawisz zmiany na radio3 ( o ile wczesniej nie był zbindowany - klawisz x)

register_clcmd("radio3", "Zmiana");

i dodajemy funkcje Zmiana

public Zmiana(id)
{
    if (klasa_gracza[id] == Kaboom) // jesli klasa to Kaboom
    {
        set_hudmessage(255, 212, 0, 0.75, 0.33, 1, 6.0, 4.0);
        if(ma_rakiety[id]) // i ma rakiety
        {
            ma_miny[id] = true; // ustaw miny
            ma_rakiety[id] = false;
            ShowSyncHudMsg(id, SyncHudObj2, "Item:Miny");
        }
        else // jeśli nie ma rakiet
        {
            ma_rakiety[id] = true; // to je ustaw
            ma_miny[id] = false;
            ShowSyncHudMsg(id, SyncHudObj2, "Item:Rakieta");
        }
    }
    return PLUGIN_HANDLED; // zastopuj zeby nie wyskoczylo menu radia
}

i ulepszamy UzyjPrzedmiotu(id). polega ono na sprawdzeniu czy gracz aktualnie korzysata z min czy rakiet.

zmieniamy z

if(ilosc_rakiet_gracza[id]>0)
    StworzRakiete(id);
if(ilosc_min_gracza[id]>0)
    PostawMine(id);

na

if(ma_rakiety[id])
    StworzRakiete(id);
if(ma_miny[id])
    PostawMine(id);

Funkcje Tworzące minę i rakiete posiadają już sprawdzenie czy graczowi się nie skończyły.

UWAGA! Jeśli dodasz tak miny i rakiety musisz dodać do wszystkich klas posiadających miny ma_mine[id] = true; a do klas posiadających rakiety ma_rakiety[id] = true;

PORADA - u mnie na serwerze działa również opcja z apteczkami w wskrzeszaniem. Można dowolnie łączyć ze sobą itemy na podobnych zasadach.

W razie Gdyby coś było nie tak - napisać. U mnie na serwerze hula to od dobrego pół roku.

miłego. ;)
Odpowiedz

  • +
  • -
Maniek974 - zdjęcie Maniek974 02.06.2012

Pomysłowe i przydatne.
Odpowiedz

  • +
  • -
ExTaza?! - zdjęcie ExTaza?! 02.06.2012

Dobry poradnik dla poczatkujacych :)
Odpowiedz

  • +
  • -
Maciek332 - zdjęcie Maciek332 07.07.2012

Przetestowałem, wszystko super śmiga :) Plusik
Odpowiedz

  • +
  • -
cewix - zdjęcie cewix 12.07.2012

I w ty momencie na czym są miny ,a na czym rakiety?
i ,czy da się tak zrobić nawet 3 umki?
Odpowiedz

  • +
  • -
dasiek - zdjęcie dasiek 13.07.2012

Wszystko nadal jest na klawisz "e" Klaiwszem "c" zmieniasz
Odpowiedz

  • +
  • -
cewix - zdjęcie cewix 13.07.2012

a na cod modzie nowym system jest ten sam ,tyle ,że wtedy "Uwaga!" już nie obowiązuje ,czy działa to w zupełnie inny sposób?
Odpowiedz

  • +
  • -
dasiek - zdjęcie dasiek 13.07.2012

Mysle że nie.
jeśli w każdej klasie masz funkcje do tworzenia rakiet i min to po prostu ustawiasz na klawisz zmiane z ma_rakiety na ma_miny i odwrotnie. A przy Użyciu skillu sprawdzasz czy gracz ma miny czy rakiety i puszczasz odpowiednią rzecz. ;)
Odpowiedz