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

[ROZWIĄZANE] UstawPerk w UstawNowaKlase - potrzebne? Jakie konsekwencje?


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

#1 Rivit

    Godlike

  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 380
Offline

Napisano 17.07.2015 19:55

Witam, mamy taką funkcje

public UstawNowaKlase(id)
{
    new ret;
        
    new forward_handle = CreateOneForward(pluginy_klas[klasa_gracza[id]], "cod_class_disabled", FP_CELL, FP_CELL);
    ExecuteForward(forward_handle, ret, id, klasa_gracza[id]);
    DestroyForward(forward_handle);
        
    forward_handle = CreateOneForward(pluginy_klas[nowa_klasa_gracza[id]], "cod_class_enabled", FP_CELL, FP_CELL);
    ExecuteForward(forward_handle, ret, id, nowa_klasa_gracza[id]);
    DestroyForward(forward_handle);
    
    
    if(ret == 4)    
    {
        klasa_gracza[id] = 0;
        return PLUGIN_CONTINUE;
    }

    ExecuteForward(klasa_zmieniona, ret, id, klasa_gracza[id]);
    
    if(ret == 4)    
    {
        klasa_gracza[id] = 0;
        return PLUGIN_CONTINUE;
    }
    
    klasa_gracza[id] = nowa_klasa_gracza[id];
    nowa_klasa_gracza[id] = 0;
    UstawPerk(id, perk_gracza[id], wartosc_perku_gracza[id], 0);
    
    WczytajDane(id, klasa_gracza[id]);
    return PLUGIN_CONTINUE;
}

Po co tam jest ustawianie perku? Bawiłem się ostatnio z wytrzymałością perku i namierzyłem dlaczego się odnawia po zmianie klasy.

 

Czy ktoś pozbywał się tej funkcji? Co się może stać? Przecież podczas zmiany klasy nic się nie dzieje z systemem perków... A przez to cod_perk_enabled wywołuje się wiele razy, przy dostaniu perka i zmianie klasy, to samo z cod_perk_changed...

 

wtf?

 

(i tak będzie, że się czepiam, jeżeli ktoś nie sprawdzał to sam będę musiał, ale chcę zaoszczędzić trochę czasu)


  • +
  • -
  • 0

#2 Linux'

    Pan Pomocny

  • Power User

Reputacja: 549
Wszechwiedzący

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

Napisano 17.07.2015 20:39

Mysle, ze nie bez powodu autor coda umiescil tam ustawianie na nowo perku. Usuniecie tego raczej nie spowoduje wielkich problemow ale moga pojawic sie male bledy. Jest to po to najprawdopodobniej, ze jezeli posiadasz jakas klase np z przebraniem wroga i w itemku masz przebranie wroga to normalnie stawia sie tam warunek by przebranie nie dzialalo dla tej klasy. Jezeli to usuniesz to cod_perk_enabled i cod_perk_disabled nie beda sie odswiezac podczas zmiany klasy co spowoduje bug. To samo bedzie z blokada itemkow na wybranych klasach.


  • +
  • -
  • 0

b35020692_qesnxqa.png


#3 Rivit

    Godlike

  • Autor tematu
  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 380
Offline

Napisano 17.07.2015 20:48

Racja, zapomniałem o tym całkowicie :X

 

Hmmm, ale wywoła się disabled i enabled z tego samego perku...

 

 

Bez sensu :v


  • +
  • -
  • 0

#4 Linux'

    Pan Pomocny

  • Power User

Reputacja: 549
Wszechwiedzący

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

Napisano 17.07.2015 20:54

No tak ale jaki jest sens usuwania tego? Rozumiem, ze przerabiasz kod tak by silnik zmniejszal obciazenie serwera. Szczerze? Zmien silnik na starego coda, z moich testow wynika, ze zzera o polowe mniej zasobow :).


  • +
  • -
  • 0

b35020692_qesnxqa.png


#5 Rivit

    Godlike

  • Autor tematu
  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 380
Offline

Napisano 17.07.2015 20:59

Nie dziwię się, wszystko pięknie w silniku, brak problemu z rejestracją itp...

 

Jednak zbyt daleko już w to poszedłem...

 

 

Podział to jest jakiś sposób na łatwe dogranie perków, a tak to męcz się z milionem warunków, chociaż puszczenie rakiety to wywołanie jednej funkcji...

 

 

 

Dzięki, zostaje jak jest :/


  • +
  • -
  • 0

#6 MAGNET

    SourceLearned ;)

  • Moderator

Reputacja: 661
Wszechmogący

  • Postów:1 535
  • GG:
  • Imię:Olek
  • Lokalizacja:Dalekoo
Offline

Napisano 21.07.2015 11:43

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




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

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