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
 

xSPECJALSx - zdjęcie

xSPECJALSx

Rejestracja: 07.08.2023
Aktualnie: Nieaktywny
Poza forum Ostatnio: wczoraj, 09:54
-----

Moje posty

W temacie: Sprzedam licencję IPS 4 na starych zasadach

30.01.2026 23:42

Wystaw na allegro ;) 

W temacie: Ultimate VIP System – plugin VIP oparty na INI dla CS 1.6

30.01.2026 19:50

 

W sumie zaznaczyłem większość rzeczy w generatorze vipa i uzyskałem ten sam efekt a zaoszczędziłem przy tym 8 euro D:
 

Dlatego mówiłem że chwila roboty i vip gotowy ;P

W temacie: Ultimate VIP System – plugin VIP oparty na INI dla CS 1.6

30.01.2026 16:25

Prawdę mówiąc takiego VIPA można stworzyć w naszym generatorze + dodac dodatkowe funkcje osobno więc standardowy vip :) 

W temacie: hud.amxx problem z pluginem i mała przeróbka

30.01.2026 14:51

 

ale ai wjechalo xD

 

Owszem ai jest może niezbyt dokładne, lecz szybciej coś ogarniesz i jest bardziej pomocne wiadomo ai nie ogarnie w 100% bo się będziesz bawić i wkur.. xD przy większym projekcie ale zrobisz to szybciej i jak chcesz więc w czym widzisz problem ? Chyba każda pomoc jest potrzebna nie ważne z jakiego źródła :)

W temacie: hud.amxx problem z pluginem i mała przeróbka

30.01.2026 01:30

Dzień dobry się z państwem, ponawiam pytanko czy byłaby możliwość dopisania do kodu informację w formie dźwięku o postępie (przejściu na następną rangę)? Płacę jak na prezydenta.

 

SMA

#include <amxmodx>
#include <csx>
#include <fakemeta>

#define ForArray(%1,%2) for(new %1 = 0; %1 < sizeof %2; %1++)
#define TASK_HUD 666

new const rankName[][] =
{
    "Silver I", "Silver II", "Silver III", "Silver IV", "Silver Elite", "Silver Elite Master",
    "Gold Nova I", "Gold Nova II", "Gold Nova III", "Gold Nova IV", "Gold Nova Master",
    "Master Guardian I", "Master Guardian II", "Master Guardian Elite",
    "Distinguished Master Guardian", "Legendary Eagle", "Legendary Eagle Master",
    "Supreme Master First Class", "The Global Elite"
};

new const rankKills[][] =
{
    { 0, 29 }, { 30, 59 }, { 60, 119 }, { 120, 209 }, { 210, 324 }, { 325, 499 },
    { 500, 729 }, { 730, 999 }, { 1000, 1399 }, { 1400, 1849 }, { 1850, 2299 },
    { 2300, 2899 }, { 2900, 3549 }, { 3550, 4999 }, { 5000, 5899 }, { 5900, 6899 },
    { 6900, 7999 }, { 8000, 9299 }, { 9300, 12000 }
};

new hudObject;
new g_userOldRank[33];

public plugin_init()
{
    register_plugin("Info Hud I Rangi CsGo", "1.6", "ProToTyp e: N1K1Cz");
   
    hudObject = CreateHudSyncObj();
}

public client_putinserver(id)
{
    if (!is_user_bot(id) && !is_user_hltv(id))
    {
        g_userOldRank[id] = -1;
        set_task(1.0, "displayHud", id + TASK_HUD, .flags="b");
    }
}

// Zmienione na client_disconnected dla wersji 1.10
public client_disconnected(id)
{
    remove_task(id + TASK_HUD);
}

public displayHud(taskID)
{
    new index = taskID - TASK_HUD;
   
    if(!is_user_connected(index))
    {
        remove_task(taskID);
        return;
    }
   
    static userName[33], requiredKills, userPosition, userRankIndex, userStats[8], body[8];
    new target = index;
   
    // Obsługa widoku obserwatora (Spectator)
    if (!is_user_alive(index))
    {
        new spec = pev(index, pev_iuser2);
        if (spec > 0 && is_user_alive(spec))
        {
            target = spec;
        }
        else
        {
            ClearSyncHud(index, hudObject);
            return;
        }
    }

    // Pobieranie statystyk celu
    userPosition = get_user_stats(target, userStats, body);
    userRankIndex = getRankIndex(userStats[0]);
   
    // Logika powiadomienia o awansie (tylko dla gracza, który faktycznie awansuje)
    if (target == index)
    {
        if (g_userOldRank[index] != -1 && userRankIndex > g_userOldRank[index])
        {
            // Dźwięk awansu z folderu gry i napis na środku
            client_cmd(index, "spk events/tutor_msg.wav");
            set_hudmessage(255, 215, 0, -1.0, 0.3, 0, 6.0, 5.0);
            show_hudmessage(index, "GRATULACJE!^nAWANSOWALES DO RANGI: %s", rankName[userRankIndex]);
        }
        g_userOldRank[index] = userRankIndex;
    }

    get_user_name(target, userName, charsmax(userName));
   
    // Obliczanie progu fragów
    if (userRankIndex < sizeof(rankKills) - 1)
        requiredKills = rankKills[userRankIndex + 1][0];
    else
        requiredKills = rankKills[userRankIndex][1];

    // Kolor jasnoniebieski (cyjan), pozycja po lewej stronie
    set_hudmessage(0, 160, 255, 0.02, 0.20, 0, 0.1, 1.1, 0.1, 0.1, -1);
   
    ShowSyncHudMsg(index, hudObject,
        "[Nick: %s]^n\
        [Ranga: %s]^n\
        [Postep: %i / %i]^n\
        [Fragi: %i]^n\
        [Ranking: %i / %i]^n\
        [Vip: %s]",
        userName,
        rankName[userRankIndex],
        userStats[0],
        requiredKills,
        get_user_frags(target),
        userPosition,
        get_statsnum(),
        (get_user_flags(target) & ADMIN_LEVEL_H) ? "Tak" : "Nie"
    );
}

public getRankIndex(kills)
{
    for (new i = sizeof(rankKills) - 1; i >= 0; i--)
    {
        if (kills >= rankKills[i][0])
            return i;
    }
    return 0;
}

Dźwięk dodajesz tutaj cstrike/sound/events/tutor_msg.wav

jak coś daj znać na priv to zrobimy od podstaw ;)