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

Prośba o zmianę wyświetlania informacji


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

#1 Vit4min

    Życzliwy

  • Użytkownik

Reputacja: 13
Początkujący

  • Postów:34
  • GG:
  • Steam:steam
  • Imię:Mateusz
  • Lokalizacja:Nowy Sacz
Offline

Napisano 23.12.2015 12:54

Witam, mógłby ktoś mi przerobić ten plugin tak, aby informacje o randze i killach zostały wyświetlane tak jak w bf2 ranku tzn. na zółto zaraz nad chatem? Z góry dzięki :)



#include <amxmodx>
#include <amxmisc>
#include <csx>

#define PLUGIN "csgoranks"
#define VERSION "1.0"
#define AUTHOR "Stasienku"

#define TASK 666

public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
}

public client_connect(id)
{
    if(is_user_bot(id))
        return
   
    new param[1]
    param[0] = id
   
    set_task(1.0,"rank",TASK+id,param,1,"b")
}

public client_disconnect(id)
    if(task_exists(TASK+id))
    remove_task(TASK+id)

public rank(param[])
{
    new id = param[0]
   
    static stats[8], body[8]
    get_user_stats(id, stats, body)
   
    new ranga[30]
   
    if ( stats[0] >= 0 && stats[0] <= 49)
        format(ranga,29,"Srebro I")
    else if ( stats[0] >= 50 && stats[0] <= 99)
        format(ranga,29,"Srebro II")
    else if ( stats[0] >= 100 && stats[0] <= 149)
        format(ranga,29,"Srebro III")
    else if ( stats[0] >= 150 && stats[0] <= 299)
        format(ranga,29,"Srebro IV")
    else if ( stats[0] >= 300 && stats[0] <= 399)
        format(ranga,29,"Mistrzowskie Srebro")
    else if ( stats[0] >= 400 && stats[0] <= 499)
        format(ranga,29,"Elitarne Mistrzowskie Srebro")
    else if ( stats[0] >= 500 && stats[0] <= 699)
        format(ranga,29,"Złoty Laur I")
    else if ( stats[0] >= 700 && stats[0] <= 899)
        format(ranga,29,"Złoty Laur II")
    else if ( stats[0] >= 900 && stats[0] <= 1099)
        format(ranga,29,"Złoty Laur III")
    else if ( stats[0] >= 1100 && stats[0] <= 1399)
        format(ranga,29,"Mistrzowski Złoty Laur")
    else if ( stats[0] >= 1400 && stats[0] <= 1699)
        format(ranga,29,"Mistrzowski Obrońca I")
    else if ( stats[0] >= 1700 && stats[0] <= 1999)
        format(ranga,29,"Mistrzowski Obrońca II")
    else if ( stats[0] >= 2000 && stats[0] <= 2399)
        format(ranga,29,"Elitarny Mistrzowski Obrońca")
    else if ( stats[0] >= 2400 && stats[0] <= 2799)
        format(ranga,29,"Wybitny Mistrzowski Obrońca")
    else if ( stats[0] >= 2800 && stats[0] <= 3199)
        format(ranga,29,"Legendarny Orzeł")
    else if ( stats[0] >= 3200 && stats[0] <= 3599)
        format(ranga,29,"Mistrzowski Legendarny Orzeł")
    else if ( stats[0] >= 3600 && stats[0] <= 3999)
        format(ranga,29,"Najwyższy Mistrz Pierwszej Klasy")
    else if ( stats[0] >= 4000 && stats[0] <= 99999)
        format(ranga,29,"Globalna Elita")
   
    set_hudmessage(255, 255, 255, 0.15, 0.55)
    show_hudmessage(id, "Ranga: %s^nZabojstw: %d",ranga,stats[0])
}

  • +
  • -
  • 0
Dołączona grafika

#2 NoLiFeR

    Wszechobecny

  • Użytkownik

Reputacja: 103
Zaawansowany

  • Postów:483
  • GG:
  • Imię:Adrian
  • Lokalizacja:Sosnowiec
Offline

Napisano 23.12.2015 20:16

Tak jak w BF'ie >> 

Nad 
public plugin_init()

dodaj

new gmsgStatusText;

Na końcu plugin_init, tzn przed zamykającą klamrą, dodaj

gmsgStatusText = get_user_msgid("StatusText");

Sam kod wyświetlania wygląda tak

 

message_begin(MSG_ONE_UNRELIABLE, gmsgStatusText, _, id);
write_byte(0);
write_string(HUD);
message_end();
 
Gdzie id to index gracza, a hud to string z treścią. Wysyłaj to raz na początek rundy, lub co aktualizacje danych w stringu (Jeżeli nie możesz tego przewidzieć, daj co sekunde).
Wyświetlaj tylko dla żywego gracza.

Czyli
 
    set_hudmessage(255, 255, 255, 0.15, 0.55)
    show_hudmessage(id, "Ranga: %s^nZabojstw: %d",ranga,stats[0])

zamień na

 

    if(is_user_alive(id)){
        new Str[191]
        formatex(Str, 190, "Ranga: %s | Zabojstw: %d", ranga, stats[0])

        message_begin(MSG_ONE_UNRELIABLE, gmsgStatusText, _, id);
        write_byte(0);
        write_string(Str);
        message_end();
    }

Użytkownik NoLiFeR edytował ten post 23.12.2015 20:19

  • +
  • -
  • 1

#3 Vit4min

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 13
Początkujący

  • Postów:34
  • GG:
  • Steam:steam
  • Imię:Mateusz
  • Lokalizacja:Nowy Sacz
Offline

Napisano 24.12.2015 12:00

Dzięki wielkie :) Można zamknąć :)


  • +
  • -
  • 0
Dołączona grafika




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

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