Skocz do zawartości

  • Zaloguj korzystając z Facebooka Zaloguj korzystając z Twittera Zaloguj przez Steam Zaloguj poprzez Google      Logowanie »   
  • Rejestracja

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

Naprawa funkcji UstawPerk oraz UstawNowaKlase

cod nowy

  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
7 odpowiedzi w tym temacie

#1 donaciak

    Godlike

  • Power User

Reputacja: 892
Czempion

  • Postów:2067
  • Steam:steam
  • Imię:Dawid
  • Lokalizacja:Kotlarka
Offline

Napisano 31.07.2013 20:48

Przy zwracaniu COD_STOP w funkcji cod_perk_changed silnik CodModa nie wywoływał dodatkowo cod_perk_disabled, przez co przy używaniu zwracaniu tego COD_STOP'a, gracz mógł mieć kilka perków jednocześnie (nie wiedząc o tym). Podobnie było w cod_class_changed. Dodałem też poprawkę dot. wartości perku, (zamieniłem pewne < na >) oraz poprawki kosmetyczne. Całość nie obciąża dodatkowo serwera, a pomaga mu :)

 

1. Podmień public UstawPerk na

public UstawPerk(id, perk, wartosc, pokaz_info)
{
    if(!ilosc_perkow)
        return PLUGIN_CONTINUE;
    
    static obroty[33];
    
    if(obroty[id]++ >= 5)
    {
        UstawPerk(id, 0, 0, 0);
        obroty[id] = 0;
        return PLUGIN_CONTINUE;
    }
    
    perk = (perk == -1)? random_num(1, ilosc_perkow): perk;
    wartosc = (wartosc == -1 || min_wartosci_perkow[perk] < wartosc ||  wartosc > max_wartosci_perkow[perk])? random_num(min_wartosci_perkow[perk], max_wartosci_perkow[perk]): wartosc;
    
    new ret;
    
    ExecuteForward(perk_zmieniony, ret, id, perk, wartosc);
    
    if(ret == 4)
    {
        UstawPerk(id, -1, -1, 1);
        return PLUGIN_CONTINUE;
    }

    new forward_handle = CreateOneForward(pluginy_perkow[perk_gracza[id]], "cod_perk_disabled", FP_CELL, FP_CELL);
    ExecuteForward(forward_handle, ret, id, perk_gracza[id]);
    DestroyForward(forward_handle);
    
    forward_handle = CreateOneForward(pluginy_perkow[perk], "cod_perk_enabled", FP_CELL, FP_CELL, FP_CELL);
    ExecuteForward(forward_handle, ret, id, wartosc, perk);
    DestroyForward(forward_handle);
    
    if(ret == 4)
    {
        UstawPerk(id, -1, -1, 1);
        return PLUGIN_CONTINUE;
    }
    
    perk_gracza[id] = perk;    
    wartosc_perku_gracza[id] = wartosc;
    
    obroty[id] = 0;
    
    if(pokaz_info && perk_gracza[id])
        client_print(id, print_chat, "[COD:MW] Zdobyles %s", nazwy_perkow[perk_gracza[id]]);
    
    return PLUGIN_CONTINUE;
}

2. Zamień public UstawNowaKlase na

public UstawNowaKlase(id)
{
    new ret;
        
    ExecuteForward(klasa_zmieniona, ret, id, klasa_gracza[id]);
    
    if(ret == 4)    
    {
        klasa_gracza[id] = 0;
        return PLUGIN_CONTINUE;
    }

    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;
    }
    
    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;
}

  • +
  • -
  • 4

#2 TibacK

    Diler pod gimnazjum dla niepełnosprawnych dzieci

  • Power User

Reputacja: 466
Wszechobecny

  • Postów:2448
Offline

Napisano 01.08.2013 07:15

ostatnio mialem jakies rlogi z UstawPerk moze pomoze xD


  • +
  • -
  • 0

Sprzedam Paczkę CoD pod CS 1.6 (JEST WIELE WERSJI DO WYBORU TEJ PACZKI) na lvl od 201 - 601

Silnik (8 nowych statystyk, poprawiony zapis, dodatkowy exp, pozbyto się CurWeapon). Ponad 100 perków (do wyboru do koloru). Sklep, NOWE MISJE (QUESTY), premium i super premium, AUKCJE, KLANY, zapis nVault, 4 zestawy modeli bronii do wyboru!

JESTEŚ ZAINTERESOWANY KUPNEM? NAPISZ WIADOMOŚĆ DO MNIE!


#3 adif11

    Wszechpomocny

  • Zbanowany

Reputacja: 19
Początkujący

  • Postów:357
  • Imię:adrian
  • Lokalizacja:szczecin
Offline

Napisano 12.08.2013 15:30

Dziękuje lecz w jaki sposób zrobić gdy wybiorę nową klase perk się psuje? dodaje

UstawPerk(id, 0, 0, 0);

pod wczytaj klase ale są błędy

oraz na spekcie u innego gracza pokazuje wytrzymałość perku z mojej klasy np posiadam naboje ninjy 40/100 a na spekcie u innego gracza jest ulepszone m4a1 40/100


Zapraszam Serdecznie Na Cod Mod'a [401 lvl]

b_350_20_FFFFFF_FFFFFF_000000_000000.png


#4 donaciak

    Godlike

  • Autor tematu
  • Power User

Reputacja: 892
Czempion

  • Postów:2067
  • Steam:steam
  • Imię:Dawid
  • Lokalizacja:Kotlarka
Offline

Napisano 12.08.2013 16:41

Dziękuje lecz w jaki sposób zrobić gdy wybiorę nową klase perk się psuje? dodaje

UstawPerk(id, 0, 0, 0);

pod wczytaj klase ale są błędy

opisz dokładnie jaki efekt chcesz uzyskać

 

 

oraz na spekcie u innego gracza pokazuje wytrzymałość perku z mojej klasy np posiadam naboje ninjy 40/100 a na spekcie u innego gracza jest ulepszone m4a1 40/100

To kwestia przypadku albo to powinien być bug wytrzymałości perku. Wątpie aby ten fix w to ingerował. On praktycznie nic większego nie robi, w sumie nie znam nikogo kto zwraca COD_STOP w cod_perk_changed (prócz Siebie ^^), a z tego wynika że nie powinien on coś zepsuć


  • +
  • -
  • 0

#5 adif11

    Wszechpomocny

  • Zbanowany

Reputacja: 19
Początkujący

  • Postów:357
  • Imię:adrian
  • Lokalizacja:szczecin
Offline

Napisano 12.08.2013 17:00

Chce aby przy wyborze nowej klasy usuwało nam perk czyli żebyśmy zostali bez perków

 

to nie jest kwestia przypadku bo jak jest stary kod nie ma tego błędu


Zapraszam Serdecznie Na Cod Mod'a [401 lvl]

b_350_20_FFFFFF_FFFFFF_000000_000000.png


#6 donaciak

    Godlike

  • Autor tematu
  • Power User

Reputacja: 892
Czempion

  • Postów:2067
  • Steam:steam
  • Imię:Dawid
  • Lokalizacja:Kotlarka
Offline

Napisano 12.08.2013 18:15

Tak to powinno wygladac

public UstawNowaKlase(id)
{
    new ret;
        
    ExecuteForward(klasa_zmieniona, ret, id, klasa_gracza[id]);
    
    if(ret == 4)    
    {
        klasa_gracza[id] = 0;
        return PLUGIN_CONTINUE;
    }

    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;
    }
    
    klasa_gracza[id] = nowa_klasa_gracza[id];
    nowa_klasa_gracza[id] = 0;
    UstawPerk(id, 0, 0, 0);
    
    WczytajDane(id, klasa_gracza[id]);
    return PLUGIN_CONTINUE;
}

  • +
  • -
  • 2

#7 adif11

    Wszechpomocny

  • Zbanowany

Reputacja: 19
Początkujący

  • Postów:357
  • Imię:adrian
  • Lokalizacja:szczecin
Offline

Napisano 12.08.2013 22:07

Dziękuje Ci bardzo


Zapraszam Serdecznie Na Cod Mod'a [401 lvl]

b_350_20_FFFFFF_FFFFFF_000000_000000.png


#8 Eryk172

    ŁAAAAAA, O TAK O?

  • Użytkownik

Reputacja: 34
Życzliwy

  • Postów:362
  • GG:
  • Imię:Eryk
  • Lokalizacja:Dbn
Offline

Napisano 02.12.2016 15:49

Używając Twojej funkcji gracz może posiadać 3 perki, jeden jest widoczny a reszta ukryta. Po wyjściu z serwera nic się nie zmienia, nadal to samo.

Używając oryginalnej funkcji na serwerze sypie errorami

Ktoś rozwiązał podobny problem?


  • +
  • -
  • 0
EASY COD - IP: 91.224.117.15:27235      b_350_20_F7FBFC_F7FBFC_000000_F7FBFC.png
JailBreak  -   IP: 91.224.117.67:27075     b_350_20_F7FBFC_F7FBFC_000000_F7FBFC.png
DD2 -   IP: 193.33.176.197:27111    b_350_20_F7FBFC_F7FBFC_000000_F7FBFC.png

Więcej serwerów na: www.NaFarciePL





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