Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie
CoD Nowy

[ROZWIĄZANE] Pozbycie się CurWeapon #1 - Szybkość/Speed

cod nowy

  • Zamknięty Temat jest zamknięty
7 odpowiedzi w tym temacie

#1 WeBsteR

    Wszechwidzący

  • Użytkownik

Reputacja: 57
Pomocny

  • Postów:297
  • Imię:dawid
  • Lokalizacja:Rzeszów
Offline

Napisano 27.08.2015 21:08

Witam, oto pierwszy temat z serii pozbycie się CurWeapon. A więc, postanowiłem usunąć z swojego silnika event CurWeapon i zastąpić go kanapką (optymalizacja). Niby zmiana prędkości/speeda gracza w hamsandwich działa, lecz mam pewien bug, który mam nadzieję, jakoś uda się naprawić.

Sypne kodem, aby nie było wróżenia z fusów.

Do zmiany/resetowania prędkości/speeda gracza użyłem:

RegisterHam(get_player_resetmaxspeed_func(), "player", "CS_Player_ResetMaxSpeed_Post", 1);

Next:

Ham:get_player_resetmaxspeed_func(){
        #if defined Ham_CS_Player_ResetMaxSpeed
                return IsHamValid(Ham_CS_Player_ResetMaxSpeed)?Ham_CS_Player_ResetMaxSpeed:Ham_Item_PreFrame;
        #else
                return Ham_Item_PreFrame;
        #endif
}

Next:

public CS_Player_ResetMaxSpeed_Post(id)
{
    if(!is_user_alive(id))
        return;
        
    UstawSzybkosc(id);
}

Next:

public PoczatekRundy()    
{
    freezetime = false;
    for(new id=0;id<=32;id++)
    {
        if(!is_user_alive(id))
            continue;

        Display_Fade(id, 1<<9, 1<<9, 1<<12, 0, 255, 70, 100);
        
        set_task(0.1, "UstawSzybkosc", id+ZADANIE_USTAW_SZYBKOSC);
        
        switch(get_user_team(id))
        {
            case 1: client_cmd(id, "spk QTM_CodMod/start2");
            case 2: client_cmd(id, "spk QTM_CodMod/start");
        }
    }
}

Next:

public UstawSzybkosc(id)
{
    id -= id>32? ZADANIE_USTAW_SZYBKOSC: 0;
    
    if(klasa_gracza[id] && !freezetime)
        set_pev(id, pev_maxspeed, szybkosc_gracza[id]);
}

To jest cały kod związany z prędkością gracza.

Wyżej wspomniałem, iż owa opcja posiada pewien bug, a więc jeżeli gracz dołączy do teamu i wybierze jakąś klasę to automatycznie ustawia mu się szybkość z sv_maxspeed. Jeżeli serwer ma sv_maxspeed "9999" to serwer ustawi mu taką samą prędkość jaką ma w cvarze. Ten bug jest raczej tylko raz (gdy gracz dołączy do teamu i wybierze klase), chcę dodać, iż owy bug ustaje jak się zmieni bronie np. z slota 1 na slot 2, gracz zrespi się na nowo jak zginie itd. to posiadamy już normalną prędkość taką jaką powinniśmy mieć.

Teraz nasuwa się pytanie, jak usunąć ten bug?

 

Pozdrawiam.


  • +
  • -
  • 0
Zabijaka Gryps to mój autorytet!

#2 Linux'

    Pan Pomocny

  • Power User

Reputacja: 549
Wszechwiedzący

  • Postów:1 501
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:AmxMod i SourceMod
Offline

Napisano 27.08.2015 21:52

Dodaj do tego ustawianie predkosci podczas odrodzenia i usun wtedy ustawianie z poczatku rundy bo to bedzie zbedne.
  • +
  • -
  • 2

b35020692_qesnxqa.png


#3 WeBsteR

    Wszechwidzący

  • Autor tematu
  • Użytkownik

Reputacja: 57
Pomocny

  • Postów:297
  • Imię:dawid
  • Lokalizacja:Rzeszów
Offline

Napisano 27.08.2015 22:29

Dodaj do tego ustawianie predkosci podczas odrodzenia i usun wtedy ustawianie z poczatku rundy bo to bedzie zbedne.

Nadal zostaje ten 1 bug, iż gracz np. dołączył w połowie rundy i wybrał klase, a jak wybrał klase to automatycznie ma speeda takiego jak jest ustawione np. sv_maxspeed "9999", przez co chodzi jak na speedhacku, reszta jest luks i działa jak należy.


  • +
  • -
  • 0
Zabijaka Gryps to mój autorytet!

#4 ^Szeregowy^

    Wszechwidzący

  • Zbanowany

Reputacja: 67
Pomocny

  • Postów:238
  • GG:
  • Imię:Damian
  • Lokalizacja:Płock
Offline

Napisano 27.08.2015 22:50

to ma być tylko w danej klasie czy wszystkich ?

 

edit zle przeczytałem użyj przypisania speed zaraz po respawnie


Użytkownik ^Szeregowy^ edytował ten post 27.08.2015 22:53

ZNAJOMOŚĆ AMXX [%]

JAILBREAK[90%]2cp5bgj.jpg

COD MOD[70%]f5krm.jpg

PAINTBALL[40%]15f3vhc.jpg

ZOMBIE MOD[10%]1zp32m9.jpg

POZOSTAŁE[5%]34fldsg.jpg


#5 Asiap

    Wszechpomocny

  • Girl

Reputacja: 171
Profesjonalista

  • Postów:323
  • Lokalizacja:Kętrzyn
Offline

Napisano 28.08.2015 07:09

uzyj przy spawnie

ExecuteHamB(get_player_resetmaxspeed_func(), id);

wtedy ustawi szybkosc z handlera CS_Player_ResetMaxSpeed_Post


Użytkownik Asiap edytował ten post 28.08.2015 07:09

  • +
  • -
  • 1

#6 Rivit

    Godlike

  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 380
Offline

Napisano 28.08.2015 11:58

Dopisz żeby nie usuwać całego curweapon bo nie będzie działać restrykcja broni,

 

 

Co do bugu to w UstawSzybkosc warunek, że jeżeli gracz nie ma klasy to ustawić mu standardowa szybkosc (patrz #define w silniku cod)


  • +
  • -
  • 1

#7 WeBsteR

    Wszechwidzący

  • Autor tematu
  • Użytkownik

Reputacja: 57
Pomocny

  • Postów:297
  • Imię:dawid
  • Lokalizacja:Rzeszów
Offline

Napisano 28.08.2015 13:30


Dopisz żeby nie usuwać całego curweapon bo nie będzie działać restrykcja broni,

Tak ja o tym wiem, lecz to co podałem wyżej nie jest poradnikiem, zrobię osobny temat - poradnik na ten temat i tam wszystko opiszę co gdzie i jak (przy okazji odrobię sobie starego warna :^D ) Poza tym zaraz zabieram się aby  restrykcja broni, wykonywała się w Ham_Item_Deploy przez co CurWeapon będzie totalnie usunięte.

 

Udało mi się usunąć bug związany z prędkością, wystarczyło zrobić to co koledzy napisali wyżej + w poblicu ZastosujAtrybuty zrobić sprawdzenie, czy jest freezetime, jeżeli nie ma to ustawić set_pev od prędkosci.

 

Wszystko już działa jak należy, nie ma bugów, dziękuje za zainteresowanie tematem.

 

#Zamek.


  • +
  • -
  • 0
Zabijaka Gryps to mój autorytet!

#8 radim

    Godlike

  • Moderator

Reputacja: 939
Master

  • Postów:2 725
  • Steam:steam
  • Imię:Arkadiusz
  • Lokalizacja:Janów Lub.
Offline

Napisano 03.09.2015 13:02

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Pomoc udzielona

Jeśli się z tym nie zgadzasz, report.png raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL
  • +
  • -
  • 0

Chcąc napisać do mnie prywatną wiadomość, wpierw zapoznaj się ze stroną "O mnie" w moim profilu użytkownika [ radim ] !






Również z jednym lub większą ilością słów kluczowych: cod nowy

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych