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

Dziwny problem ze sprawdzaniem poziomu


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

#1 Andrzejek

    Ucze się :]

  • Power User

Reputacja: 136
Zaawansowany

  • Postów:1 300
  • Imię:Andrzej
Offline

Napisano 09.08.2015 21:26

Witam, mam taki problem ze sprawdzaniem poziomu, dawno już nie pisałem w pawnie, wiec nie wiem co zrobiłem źle, mam taki kod

public Death()

{

    new id = read_data(2);

    new attacker = read_data(1);

    

    if(!is_user_alive(attacker) || !is_user_connected(attacker))

        return PLUGIN_CONTINUE;

    

    if(get_user_team(id) != get_user_team(attacker)) {        

        zabojstwa_gracza[attacker]++;

    }

    SprawdzPoziom(attacker);    

    return PLUGIN_CONTINUE;

}

public SprawdzPoziom(id)

{    

    if(poziom_gracza[id] < 20)

    {

        while(zabojstwa_gracza[id] >= zabojstwa_poziomu[poziom_gracza[id]]) {

            poziom_gracza[id]++;

        }

    }

}

Prosto kod, po zabójstwie sprawdza poziom gracza....

new const nazwy_poziomu[][] = {"Brak",

    "nazwa 1",

    "nazwa 2",

    "nazwa 3",

    "nazwa 4",

    "nazwa 5",

    "nazwa 6",

    "nazwa 7",

    "nazwa 8",

    "nazwa 9",

    "nazwa 10",

    "nazwa 11",

    "nazwa 12",

    "nazwa 13",

    "nazwa 14",

    "nazwa 15",

    "nazwa 16",

    "nazwa 17",

    "nazwa 18",

    "nazwa 19",

    "nazwa 20"

}



new const zabojstwa_poziomu[] = {

    0, 5, 10, 20, 30,

    40, 50, 60, 70, 80,

    90, 100, 110, 120, 130,

    140, 150, 160, 170, 180

}

Tabele z nazwami poziomów i ile trzeba zdobyć do nastepnego poziomu...

public Pokaz(id)

{

    id -= ZADANIE_POKAZ;

    

    set_task(0.1, "Pokaz", id+ZADANIE_POKAZ);

    

    if(is_user_connected(id) && is_user_alive(id)) {

        new szText[428], szName[64];        

        get_user_name(id, szName, sizeof szName - 1);

        format(szText, sizeof szText - 1, "N: %s | Z: %i / %i", nazwy_poziomu[poziom_gracza[id]], zabojstwa_gracza[id], zabojstwa_poziomu[poziom_gracza[id]]);

        message_begin(MSG_ONE, get_user_msgid("StatusText"), {0,0,0}, id);

        write_byte(0);

        write_string(szText);

        message_end();

        return PLUGIN_CONTINUE;

    }

    return PLUGIN_CONTINUE;

}

Oraz pokazywanie wiadomości...

 

Noi problem polega na tym że przed wbiciem ostatniego poziomu mam 179 zabójstw, gdy zabijam 180, nic sie nie zmienia i serwer zaczyna sypać logami, a nazwa poziomu się nie zmienia a ilość zabójstw zostaje 179

[AMXX]    [0] plugin.sma::Pokaz (line 114)

[AMXX] Displaying debug trace (plugin "plugin.amxx")

line 114 to

write_string(szText);

CO zrobiłem źle??


  • +
  • -
  • 0

Mam do sprzedania pluginy AMXX pod serwery typu, JB, ONLY DD2, ZOMBIE, COD MOD, DR i inne...

 

Jeżeli jesteś zainteresowany(a), napisz na PW lub GG 42384104


#2 Master Yoga

    Support Team | Mocarz

  • Support Team

Reputacja: 136
Zaawansowany

  • Postów:275
  • Lokalizacja:Magistrala Adresowa
Offline

Napisano 09.08.2015 21:35

Od razu co mi się rzuciło w oczy to:
new const nazwy_poziomu[]
21 stałych
 
new const zabojstwa_poziomu[]
20 stałych

Użytkownik Master Yoga edytował ten post 09.08.2015 21:37

  • +
  • -
  • 1

HTML ★ CSS ★ JAVASCRIPT ★ AJAX ★ JQUERY ★ PHP ★ C++ ★ PAWN ★ SQL ★ Objective-C++


MKW0tb8.pngMKW0tb8.pngMKW0tb8.png


#3 Andrzejek

    Ucze się :]

  • Autor tematu
  • Power User

Reputacja: 136
Zaawansowany

  • Postów:1 300
  • Imię:Andrzej
Offline

Napisano 09.08.2015 21:40

OOOO, nie umiem liczyć ^^, teraz fakt dodaje nazwe poziomu, ale zabójstwa sie nie zmieniają :]


  • +
  • -
  • 0

Mam do sprzedania pluginy AMXX pod serwery typu, JB, ONLY DD2, ZOMBIE, COD MOD, DR i inne...

 

Jeżeli jesteś zainteresowany(a), napisz na PW lub GG 42384104


#4 Master Yoga

    Support Team | Mocarz

  • Support Team

Reputacja: 136
Zaawansowany

  • Postów:275
  • Lokalizacja:Magistrala Adresowa
Offline

Napisano 09.08.2015 21:44

    if(poziom_gracza[id] < 20)
wiec to też idzie do poprawki
bo nie będziesz miał ostatniego lvl.

p.s luuz przy tylu liniach kodu łatwo coś przeoczyć
  • +
  • -
  • 0

HTML ★ CSS ★ JAVASCRIPT ★ AJAX ★ JQUERY ★ PHP ★ C++ ★ PAWN ★ SQL ★ Objective-C++


MKW0tb8.pngMKW0tb8.pngMKW0tb8.png


#5 Andrzejek

    Ucze się :]

  • Autor tematu
  • Power User

Reputacja: 136
Zaawansowany

  • Postów:1 300
  • Imię:Andrzej
Offline

Napisano 09.08.2015 22:07

Close, dałem sobie rade, pare zmian i gotowe ^^


  • +
  • -
  • 0

Mam do sprzedania pluginy AMXX pod serwery typu, JB, ONLY DD2, ZOMBIE, COD MOD, DR i inne...

 

Jeżeli jesteś zainteresowany(a), napisz na PW lub GG 42384104


#6 radim

    Godlike

  • Moderator

Reputacja: 939
Master

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

Napisano 10.08.2015 14:27

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Temat zamknięty na prośbę użytkownika.


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 ] !





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

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