←  Problemy

AMXX.pl: Support AMX Mod X i SourceMod

»

CoD Stary
Problem z Klasami - GodMod oraz znikanie

Zablokowany

  • +
  • -
Kendzior87 - zdjęcie Kendzior87 29.04.2011

Witam,
Poskładałem wszystkie dane z tego wątku GodMod/NoClip/Znikanie no ale niestety coś jest nie tak.

Bardzo bym prosił o rzucenie okiem na ten twór, chodzi o to że zrobiona przeze mnie klasa powinna posiadać 1-krotne użycie w ciągu rundy "mocy" GodMod na 3sek. wraz z progress barem czasu trwania umiejętności włączonej.
Jeżeli to możliwe to potrzebowałbym też drugą identyczną wersję tylko nie z GoDMoD'em a z znikaniem -> set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 1); bo nie wiem jak to ustawić.

Gdy tworzę klasę z godmode na 3 sek 1krotne użycie w ciągu rundy z progressbar:

W public UzyjPrzedmiotu:
if(klasa_gracza[id] == MojaKlasa) 
        {
                set_task(3.0,"godon",id,"",0,"a",1);
        }

Na początku pliku dodajemy:
new GodmodeZuzyte[33];

Trochę zmienić w publicach:
public godon(id)
{
        if(!equal(GodmodeZuzyte[id], 1)
        {
        GodmodeZuzyte[id] = 1
        set_user_godmode(id, 1)
        set_task(3.0,"godoff",id,"",0,"a",1)
        }
        else
        {
        return PLUGIN_CONTINUE;
        }
}
public godoff(id)
{
        set_user_godmode(id, 0)
}

I w PoczatekRundy:
GodmodeZuzyte[id] = 0

co do paska który pokazuje np trwanie danego itemku to:

jeśli dodajemy coś w public UzyjPrzedmiotu, np.

if(klasa_gracza[id] == MojaKlasa) 
        {
                set_task(3.0,"godon",id,"",0,"a",1);
        }



to po
set_task(0.1,"godon",id,"",0,"a",1);
dodajcie linijkę
set_bartime(id, 3, 0)

a to wklejacie na koniec kodu z COD'em

stock set_bartime(id, czas, startprogress=0)
{
        message_begin((id)?MSG_ONE:MSG_ALL, get_user_msgid("BarTime2"), _, id)
        write_short(czas);
        write_short(startprogress);
        message_end();   

}


Przy kompilacji w tym miejscu:
if(!equal(GodmodeZuzyte[id], 1)
błąd kompilacji:
Error: Argument type mismatch (argument 2) on line 2430

jakieś sugestie? :>
Odpowiedz

  • +
  • -
Grzesiek - zdjęcie Grzesiek 29.04.2011

proponuję ci wrzucić .sma i powiedzieć które dokładnie itemy nie działają;]
Odpowiedz

  • +
  • -
Kendzior87 - zdjęcie Kendzior87 29.04.2011

W *.sma nie mam tego itemu bo nie mogłem go skompilować więc usunąłem tą modyfikację, dodawałem dokładnie tak jak opisałem wyżej, ale zaraz dopisze to do mego *.sma i wrzucę tutaj :)

edit //wyłapałem czemu nie chciało się kompilować lecz teraz jest inny problem.

zmieniłem
if(!equal(GodmodeZuzyte[id], 1)
        {
        GodmodeZuzyte[id] = 1
        set_user_godmode(id, 1)
        set_task(3.0,"godoff",id,"",0,"a",1)
        }
        else
        {
        return PLUGIN_CONTINUE;
        }

na:

if(GodmodeZuzyte[id] = 1)
        {
	return PLUGIN_CONTINUE;	
        }
        else
        {	
        GodmodeZuzyte[id] = 1
        set_user_godmode(id, 1)
        set_task(3.0,"godoff",id,"",0,"a",1)
        }

ale mam inny problem, plik się skompilował, można używać umiejętności więcej niż raz no i pasek progressbar ma czas trwania znacznie dłuższy niż 3 sek. W tym .sma są dwie klasy Fanatyk - niewidzialność i T1000 - godmode, proszę o poprawienie kodu, obie klasy mają działać tak samo (umiejętność na 3 sek użycie 1 krotne w ciągu rundy oraz progressbar też na 3 sek) z rozgraniczeniem, że jedna posiada niewidzialność druga godmode. Kombinuje i nie daje rady tego przeskoczyć :/

Załączony plik  qtm_codmod edytowany.sma   76,42 KB   54 Ilość pobrań
Oto moje .sma jakby komuś wpadły inne błędy w kodzie proszę o info/poprawieni. Dzięki wielkie.
Użytkownik Kendzior87 edytował ten post 29.04.2011 18:05
Odpowiedz

  • +
  • -
NieMaMnie - zdjęcie NieMaMnie 02.05.2011

siema. To tak:

błędy poprawione, dodane to co chciałeś + "optymalizacja" kodu = usunięte zbędne IFy, spacje i tabulatory

wszystko się dobrze kompiluje - powinno działać i u Ciebie :)

Fanatyk - raz na rundę może mieć niewidzialność na 3s z paskiem na 3s
T1000 - raz na rundę może mieć godmoda na 3s z paskiem na 3s

jakby coś jeszcze nie śmigało = pisz :]

__________________________________________

PS
nie mogę zrozumieć składni Twojego kodu na godmoda podanego wyżej - jak Ty to pisałeś? :D

Załączone pliki


Użytkownik NieMaMnie edytował ten post 02.05.2011 10:22
Odpowiedz

  • +
  • -
Kendzior87 - zdjęcie Kendzior87 02.05.2011

dzięki wielkie :)
a ta składnia to racja :D takie twory że szok :P próbowałem wszystkiego bo klasa z umiejętnością aktywną i z paskiem czasu jest narpawde ciekawa :)
Użytkownik Kendzior87 edytował ten post 02.05.2011 11:09
Odpowiedz
Zablokowany