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
 

mordoryjacz - zdjęcie

mordoryjacz

Rejestracja: 15.10.2021
Aktualnie: Przegląda temat Csdm 2.1
Dostępny Ostatnio: 54 minut temu
***--

#780208 hud.amxx problem z pluginem i mała przeróbka

Napisane przez mordoryjacz w 30.01.2026 12:50

 

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

 

ale ai wjechalo xD


  • +
  • -
  • 1


#780189 Rozgrzewka

Napisane przez mordoryjacz w 10.01.2026 13:01

#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#include <hamsandwich>
#include <fakemeta>

new const warmup_sounds[][] = { "misc/rozgrzewka1.mp3", "misc/rozgrzewka2.mp3" };
new const warmup_weapons[][] = { "weapon_ak47", "weapon_m4a1", "weapon_deagle", "weapon_mp5navy", "weapon_famas", "weapon_awp" };
new const weapon_names[][] = { "AK-47", "M4A1", "Deagle", "MP5", "Famas", "AWP" };

new iTimer, iWeaponIndex, bool:bOnlyHS, bool:iRozgrzewka;
new syncHud;

public plugin_init() {
    register_plugin("Rozgrzewka", "0.0", "Rozgrzewka");
    
    register_event("HLTV", "event_round_start", "a", "1=0", "2=0");
    
    RegisterHam(Ham_Killed, "player", "fw_PlayerKilled", 1);
    RegisterHam(Ham_Spawn, "player", "fw_PlayerSpawn", 1);
    RegisterHam(Ham_TraceAttack, "player", "fw_TraceAttack");
    RegisterHam(Ham_Weapon_PrimaryAttack, "weapon_c4", "fw_C4PrimaryAttack");
    
    register_clcmd("buy", "Blokada");
    register_clcmd("buyammo1", "Blokada");
    register_clcmd("buyammo2", "Blokada");
    register_clcmd("cl_autobuy", "Blokada");
    register_clcmd("cl_rebuy", "Blokada");
    
    register_forward(FM_Touch, "fw_Touch");
    
    syncHud = CreateHudSyncObj();
}

public plugin_precache() {
    for(new i = 0; i < sizeof warmup_sounds; i++) {
        precache_generic(warmup_sounds[i]);
    }
}

public event_round_start() {
    if(!iRozgrzewka && get_gametime() < 15.0) {
        start_warmup();
    }
}

public start_warmup() {
    iRozgrzewka = true;
    iTimer = 30;
    iWeaponIndex = random(sizeof warmup_weapons);
    bOnlyHS = (random(2) == 1);
    
    server_cmd("csstats_pause 1");
    
    new iRandSound = random(sizeof warmup_sounds);
    client_cmd(0, "mp3 play sound/%s", warmup_sounds[iRandSound]);
    
    set_task(1.0, "warmup_timer", 1337, _, _, "a", iTimer);
}

public warmup_timer() {
    iTimer--;
    
    set_hudmessage(0, 160, 255, -1.0, 0.05, 0, 0.1, 1.0, 0.1, 0.1, -1);
    ShowSyncHudMsg(0, syncHud, "--- ROZGRZEWKA ---^nCzas: %d sek^nBron: %s^nTryb: %s", 
        iTimer, weapon_names[iWeaponIndex], bOnlyHS ? "[ONLY HS]" : "[NORMALNY]");

    if(iTimer <= 0) {
        end_warmup();
    }
}

public end_warmup() {
    iRozgrzewka = false;
    remove_task(1337);
    
    server_cmd("csstats_pause 0");
    server_cmd("sv_restart 1");
    
    client_cmd(0, "mp3 stop");
    
    set_hudmessage(255, 0, 0, -1.0, 0.2, 1, 1.0, 5.0);
    show_hudmessage(0, "KONIEC ROZGRZEWKI! POWODZENIA!");
}

public fw_PlayerSpawn(id) {
    if(!is_user_alive(id) || !iRozgrzewka)
        return;
    
    strip_user_weapons(id);
    give_item(id, "weapon_knife");
    
    new weapon_id = give_item(id, warmup_weapons[iWeaponIndex]);
    if(weapon_id > 0) {
        cs_set_user_bpammo(id, get_weaponid(warmup_weapons[iWeaponIndex]), 250);
    }
}

public Blokada(id) {
    if(iRozgrzewka) return PLUGIN_HANDLED;
    return PLUGIN_CONTINUE;
}

public fw_C4PrimaryAttack(ent) {
    if(iRozgrzewka) return HAM_SUPERCEDE;
    return HAM_IGNORED;
}

public fw_Touch(entity, id) {
    if(!iRozgrzewka || !is_user_connected(id))
        return FMRES_IGNORED;

    static classname[32];
    pev(entity, pev_classname, classname, 31);
    
    if(equal(classname, "weapon_c4")) {
        return FMRES_SUPERCEDE;
    }
    
    return FMRES_IGNORED;
}

public fw_PlayerKilled(victim, attacker, shouldgib) {
    if(iRozgrzewka) {
        set_task(0.7, "respawn_player", victim);
    }
}

public respawn_player(id) {
    if(is_user_connected(id) && iRozgrzewka) {
        ExecuteHamB(Ham_CS_RoundRespawn, id);
    }
}

public fw_TraceAttack(victim, attacker, Float:damage, Float:direction, tracehandle, damagebits) {
    if(iRozgrzewka && bOnlyHS && is_user_connected(attacker)) {
        if(get_tr2(tracehandle, TR_iHitgroup) != HIT_HEAD) {
            return HAM_SUPERCEDE;
        }
    }
    return HAM_IGNORED;
}

Załączone pliki


  • +
  • -
  • 1


#780109 Rozgrzewka

Napisane przez mordoryjacz w 26.12.2025 21:14

#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#include <hamsandwich>
#include <fakemeta>

new const warmup_sounds[][] = { "misc/rozgrzewka1.mp3", "misc/rozgrzewka2.mp3" };
new const warmup_weapons[][] = { "weapon_ak47", "weapon_m4a1", "weapon_deagle", "weapon_mp5navy", "weapon_famas", "weapon_awp" };
new const weapon_names[][] = { "AK-47", "M4A1", "Deagle", "MP5", "Famas", "AWP" };

new iTimer, iWeaponIndex, bool:bOnlyHS, bool:iRozgrzewka;
new syncHud;

public plugin_init() {
    register_plugin("Rozgrzewka", "0.0", "Rozgrzewka");
    
    register_event("HLTV", "event_round_start", "a", "1=0", "2=0");
    
    RegisterHam(Ham_Killed, "player", "fw_PlayerKilled", 1);
    RegisterHam(Ham_Spawn, "player", "fw_PlayerSpawn", 1);
    RegisterHam(Ham_TraceAttack, "player", "fw_TraceAttack");
    
    syncHud = CreateHudSyncObj();
}

public plugin_precache() {
    for(new i = 0; i < sizeof warmup_sounds; i++) {
        precache_generic(warmup_sounds[i]);
    }
}

public event_round_start() {
    if(!iRozgrzewka && get_gametime() < 15.0) {
        start_warmup();
    }
}

public start_warmup() {
    iRozgrzewka = true;
    iTimer = 30;
    iWeaponIndex = random(sizeof warmup_weapons);
    bOnlyHS = (random(2) == 1);
    
    server_cmd("csstats_pause 1");
    
    new iRandSound = random(sizeof warmup_sounds);
    client_cmd(0, "mp3 play sound/%s", warmup_sounds[iRandSound]);
    
    set_task(1.0, "warmup_timer", 1337, _, _, "a", iTimer);
}

public warmup_timer() {
    iTimer--;
    
    set_hudmessage(0, 160, 255, -1.0, 0.05, 0, 0.1, 1.0, 0.1, 0.1, -1);
    ShowSyncHudMsg(0, syncHud, "--- ROZGRZEWKA ---^nCzas: %d sek^nBron: %s^nTryb: %s", 
        iTimer, weapon_names[iWeaponIndex], bOnlyHS ? "[ONLY HS]" : "[NORMALNY]");

    if(iTimer <= 0) {
        end_warmup();
    }
}

public end_warmup() {
    iRozgrzewka = false;
    remove_task(1337);
    
    server_cmd("csstats_pause 0");
    server_cmd("sv_restart 1");
    
    client_cmd(0, "mp3 stop");
    
    set_hudmessage(255, 0, 0, -1.0, 0.2, 1, 1.0, 5.0);
    show_hudmessage(0, "KONIEC ROZGRZEWKI! POWODZENIA!");
}

public fw_PlayerSpawn(id) {
    if(!is_user_alive(id) || !iRozgrzewka)
        return;
        
    strip_user_weapons(id);
    give_item(id, "weapon_knife");
    
    new weapon_id = give_item(id, warmup_weapons[iWeaponIndex]);
    if(weapon_id > 0) {
        cs_set_user_bpammo(id, get_weaponid(warmup_weapons[iWeaponIndex]), 250);
    }
}

public fw_PlayerKilled(victim, attacker, shouldgib) {
    if(iRozgrzewka) {
        set_task(0.7, "respawn_player", victim);
    }
}

public respawn_player(id) {
    if(is_user_connected(id) && iRozgrzewka) {
        ExecuteHamB(Ham_CS_RoundRespawn, id);
    }
}

public fw_TraceAttack(victim, attacker, Float:damage, Float:direction, tracehandle, damagebits) {
    if(iRozgrzewka && bOnlyHS && is_user_connected(attacker)) {
        if(get_tr2(tracehandle, TR_iHitgroup) != HIT_HEAD) {
            return HAM_SUPERCEDE;
        }
    }
    return HAM_IGNORED;
}

Załączone pliki


  • +
  • -
  • 1


#780065 ultimate_warmup v1.71

Napisane przez mordoryjacz w 07.12.2025 13:16

public muza_on()
{
	client_cmd(0,"mp3 stop");
	client_cmd(0,"mp3 play sound/restart.mp3"); //MP3 version
}

  • +
  • -
  • 1


#780058 Spis map /mapy.

Napisane przez mordoryjacz w 06.12.2025 19:17

Wiesz co mapmanager jest pisany pod AMX Mod X v 1.10 Ja korzystam z 1.8.2 i mam galileo zamiast zwykłego mapchoosera i ten plugin fajnie działa z tym galileo i jak wybierzesz mapę to ją dodaję do nominacji i zamyka od razu listę map. A chciałbym, żeby to właśnie się nie działo tylko tak jak w mapmanger, że klikasz jakąś mapkę dodaje Ci do nominacji ale menu się nie zamyka tylko dalej możesz przeglądać mapy dopóki sam nie zamkniesz menu klawiszem 0 np.

to w takim razie musisz edytowac galielo w ktorym juz jest nominacja 


  • +
  • -
  • 1


#780051 Spis map /mapy.

Napisane przez mordoryjacz w 06.12.2025 13:17

a można do tego dodać opcję żeby menu po wybraniu mapy się nie zamykało tylko dalej możemy przeglądać kolejne mapy aż sami wciśniemy klawisz wyjścia?

zamien to

public cbMenu(id,menu,item)
{
    new name[32],acc,info[1],cb
    menu_item_getinfo(menu,item,acc,info,0,name,31,cb)
    client_cmd(id,"say %s",name)
    return PLUGIN_CONTINUE
}

na to

public cbMenu(id,menu,item)
{
    new name[32],acc,info[1],cb
    menu_item_getinfo(menu,item,acc,info,0,name,31,cb)
    client_cmd(id,"say %s",name)
    menu_destroy(menu);
    zrob_menu()
    return PLUGIN_CONTINUE
}

  • +
  • -
  • 1


#780047 Przywitaj sie

Napisane przez mordoryjacz w 05.12.2025 19:40

.

Załączone pliki


  • +
  • -
  • 1


#779056 [ROZWIĄZANE] Counter Strike 1.6 problem

Napisane przez mordoryjacz w 25.10.2024 22:48

wystarczylo zmienic wersje cs z bety na legacy


  • +
  • -
  • 1


#778945 [ROZWIĄZANE] Kolejka -dodanie blokady komendy

Napisane przez mordoryjacz w 06.10.2024 18:16

to musisz w pluginie ktory ma ta komende /respawn zrobic blokade


  • +
  • -
  • 1


#778942 [ROZWIĄZANE] CodMod Przerobienie Huda

Napisane przez mordoryjacz w 06.10.2024 17:40

public PokazInformacje(id) 
{
	id -= ZADANIE_POKAZ_INFORMACJE;
		
	if(!is_user_connected(id)) {
		remove_task(id+ZADANIE_POKAZ_INFORMACJE);
		return PLUGIN_CONTINUE;
	}
	
	new iTarget = id;
	
	if(!is_user_alive(iTarget)) {
		iTarget = pev(id, pev_iuser2);
	}	
	
	set_hudmessage(0, 255, 0, 0.02, 0.23, 0, 0.0, 0.3, 0.0, 0.0);
 	ShowSyncHudMsg(id, SyncHudObj, "[Forum: Twojeforum]^n[Klasa : %s]^n[Doswiadczenie : %i / %i]^n[Poziom : %i]^n[Perk : %s]^n[Zycie: %d]", nazwy_klas[klasa_gracza[iTarget]], doswiadczenie_gracza[iTarget], PobierzDoswiadczeniePoziomu(poziom_gracza[iTarget]), poziom_gracza[iTarget], nazwy_perkow[perk_gracza[iTarget]], get_user_health(iTarget));
	
	return PLUGIN_CONTINUE;
} 

Załączone pliki


  • +
  • -
  • 1


#778941 [ROZWIĄZANE] Kolejka -dodanie blokady komendy

Napisane przez mordoryjacz w 06.10.2024 17:30

#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>
#include <cstrike>
#include <fakemeta_util>

#include <deathrun_stats>

#define PLUGIN "Kolejka do TT"
#define VERSION "1.0"
#define AUTHOR "DarkGL"

#define dmg(%1,%2) (ArraySize(arKolejka) > 0 && ArrayGetCell(arKolejka,0) == %2 && get_user_team(%1) == 1)
#define dmg2(%1,%2) (ArraySize(arKolejka) > 0 && ArrayGetCell(arKolejka,0) == %1 && get_user_team(%2) == 1)

new Array: arKolejka;
new kolor;
new hud;

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	
	arKolejka = ArrayCreate(1,32);
	
	kolor = register_cvar("kolejka_kolorek", "0 255 0");
	
	register_clcmd("say /respawn", "spawn");
	
	register_event("HLTV", "event_RoundStart", "a", "1=0", "2=0"); 
	
	RegisterHam(Ham_TakeDamage, "player", "HamTakeDamage");
	RegisterHam(Ham_Spawn,"player","HamSpawned",1)
	
	register_event("DeathMsg", "DeathMsg", "a", "1=0")
	
	hud = CreateHudSyncObj();
	
	set_task(1.0, "wyswietl",.flags = "b");
}

public DeathMsg(){
	new victim = read_data(2)
	
	new iRet = iFind(victim);
	if(iRet != -1){
		ArrayDeleteItem(arKolejka,iRet);
		
		if(iRet	== 0 && ArraySize(arKolejka) > 0 && ArrayGetCell(arKolejka,0) == victim){
			ArrayDeleteItem(arKolejka,0);
			if(ArraySize(arKolejka) > 0)	fm_set_user_rendering(ArrayGetCell(arKolejka,0), kRenderFxGlowShell, 0, 255, 0, kRenderNormal, 40);
		}
	}
	
	return PLUGIN_HANDLED;
}

public spawn(id) {
	if(iFind(id) != -1) {
		client_print(id, print_chat, "[DR] Gdy jesteś w kolejce, nie możesz się respawnować!");
		return PLUGIN_HANDLED
	}
}

public HamSpawned(id){
	if(!is_user_alive(id))	return ;
	
	fm_set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderNormal, 40);
}

public event_RoundStart() {
	ArrayClear(arKolejka);
}

public HamTakeDamage(victim, inflictor, attacker)
	return (dmg(victim, attacker) || dmg2(victim, attacker) || !is_user_connected(attacker)) ? HAM_IGNORED : HAM_SUPERCEDE;

public fwPlayerFinished(id) {
	if( is_user_alive( id ) && cs_get_user_team( id ) == CS_TEAM_CT ){
		new iRet = iFind(id);
		if(iRet == -1)	ArrayPushCell(arKolejka,id);
		
		if(is_user_alive(ArrayGetCell(arKolejka,0)))	fm_set_user_rendering(ArrayGetCell(arKolejka,0), kRenderFxGlowShell, 0, 255, 0, kRenderNormal, 40);
		else ArrayDeleteItem( arKolejka , 0 );
	}
}

public wyswietl() {
	
	new msg[512];
	new bool: bNone = true;
	new szName[64]
	
	for(new i = 0;i<ArraySize(arKolejka);i++){
		if(!is_user_alive(ArrayGetCell(arKolejka,i))){
			ArrayDeleteItem(arKolejka,i)
			continue;
		}
		
		get_user_name(ArrayGetCell(arKolejka,i), szName,charsmax(szName));
		
		formatex(msg, 511, "%s%d. %s^n", msg, i+1, szName); 
		bNone = false;
	}
	
	if(bNone) formatex(msg, 511, "Lista jest pusta");
	
	new color[15], rgb[3][4]; get_pcvar_string(kolor, color, 14);
	parse(color, rgb[0], 3, rgb[1], 3, rgb[2], 3);
	
	set_dhudmessage(0, 69, 255, 0.85, 0.2, 2, 0.02, 1.0, 0.01);
	show_dhudmessage(0, "** Kolejka **^n%s^n^n", msg);
}

public client_disconnect(id)	arClear(id);
public client_connect(id)	arClear(id);

arClear(id){
	new iRet = iFind(id);
	
	if(iRet == -1)	return	;
	
	ArrayDeleteItem(arKolejka,iRet)
}

iFind(id){
	for(new i = 0;i<ArraySize(arKolejka);i++){
		if(ArrayGetCell(arKolejka,i) == id)	return i;
	}
	return -1;
}

stock __dhud_color;
stock __dhud_x;
stock __dhud_y;
stock __dhud_effect;
stock __dhud_fxtime;
stock __dhud_holdtime;
stock __dhud_fadeintime;
stock __dhud_fadeouttime;
stock __dhud_reliable;
 
stock set_dhudmessage( red = 0, green = 160, blue = 0, Float:x = -1.0, Float:y = 0.65, effects = 2, Float:fxtime = 6.0, Float:holdtime = 3.0, Float:fadeintime = 0.1, Float:fadeouttime = 1.5, bool:reliable = false )
{
    #define clamp_byte(%1)       ( clamp( %1, 0, 255 ) )
    #define pack_color(%1,%2,%3) ( %3 + ( %2 << 8 ) + ( %1 << 16 ) )
 
    __dhud_color       = pack_color( clamp_byte( red ), clamp_byte( green ), clamp_byte( blue ) );
    __dhud_x           = _:x;
    __dhud_y           = _:y;
    __dhud_effect      = effects;
    __dhud_fxtime      = _:fxtime;
    __dhud_holdtime    = _:holdtime;
    __dhud_fadeintime  = _:fadeintime;
    __dhud_fadeouttime = _:fadeouttime;
    __dhud_reliable    = _:reliable;
 
    return 1;
}
 
stock show_dhudmessage( index, const message[], any:... )
{
    new buffer[ 128 ];
    new numArguments = numargs();
 
    if( numArguments == 2 )
    {
        send_dhudMessage( index, message );
    }
    else if( index || numArguments == 3 )
    {
        vformat( buffer, charsmax( buffer ), message, 3 );
        send_dhudMessage( index, buffer );
    }
    else
    {
        new playersList[ 32 ], numPlayers;
        get_players( playersList, numPlayers, "ch" );
 
        if( !numPlayers )
        {
            return 0;
        }
 
        new Array:handleArrayML = ArrayCreate();
 
        for( new i = 2, j; i < numArguments; i++ )
        {
            if( getarg( i ) == LANG_PLAYER )
            {
                while( ( buffer[ j ] = getarg( i + 1, j++ ) ) ) {}
                j = 0;
 
                if( GetLangTransKey( buffer ) != TransKey_Bad )
                {
                    ArrayPushCell( handleArrayML, i++ );
                }
            }
        }
 
        new size = ArraySize( handleArrayML );
 
        if( !size )
        {
            vformat( buffer, charsmax( buffer ), message, 3 );
            send_dhudMessage( index, buffer );
        }
        else
        {
            for( new i = 0, j; i < numPlayers; i++ )
            {
                index = playersList[ i ];
 
                for( j = 0; j < size; j++ )
                {
                    setarg( ArrayGetCell( handleArrayML, j ), 0, index );
                }
 
                vformat( buffer, charsmax( buffer ), message, 3 );
                send_dhudMessage( index, buffer );
            }
        }
 
        ArrayDestroy( handleArrayML );
    }
 
    return 1;
}
 
stock send_dhudMessage( const index, const message[] )
{
    message_begin( __dhud_reliable ? ( index ? MSG_ONE : MSG_ALL ) : ( index ? MSG_ONE_UNRELIABLE : MSG_BROADCAST ), SVC_DIRECTOR, _, index );
    {
        write_byte( strlen( message ) + 31 );
        write_byte( DRC_CMD_MESSAGE );
        write_byte( __dhud_effect );
        write_long( __dhud_color );
        write_long( __dhud_x );
        write_long( __dhud_y );
        write_long( __dhud_fadeintime );
        write_long( __dhud_fadeouttime );
        write_long( __dhud_holdtime );
        write_long( __dhud_fxtime );
        write_string( message );
    }
    message_end();
}

nie wiem czy bedzie dzialac sprawdz i czy oto chodzilo


  • +
  • -
  • 1


#778830 pośmiertne info - plugin?

Napisane przez mordoryjacz w 16.09.2024 15:55

https://darkgl.pl/20...ci-nowa-wersja/

 

pierwszy lepszy z internetu 


  • +
  • -
  • 1


#778813 prośba poprawienie pluginy

Napisane przez mordoryjacz w 12.09.2024 20:37

#include <amxmodx>
#include <amxmisc>

public plugin_init() {
	register_plugin("Komendy Serwerowe", "1.0", "xxxxxxxx")

	register_clcmd("say /komendy","open_menu");
	register_clcmd("say_team komendy","open_menu");
}

public open_menu(id) {

	new menu = menu_create("\w[ \rKomendy \rSerwera \w] \w» \yby \rDD2.pl Rakietka", "cmd");
	
	menu_additem(menu, "\w» \y/skiny \w» Tutaj mozesz zarzadzac swoimi skinami do broni");
	menu_additem(menu, "\w» \y/skrzynie \w» Lista posiadanych skrzynek");
	menu_additem(menu, "\w» \y/klucze \w» Lista posiadanych kluczy");
	menu_additem(menu, "\w» \y/rynek \w» Rynek skinow/skrzyn/kluczy");
	menu_additem(menu, "\w» \y/wymiana \w» Menu wymian miedzy graczami");
	menu_additem(menu, "\w» \y/daj \w» Przekazywanie itemow");
	menu_additem(menu, "\w» \y/hud \w» Zarzadzanie hud");
	menu_additem(menu, "\w» \y/rangi \w» Spis rang serwera");
	menu_additem(menu, "\w» \y/konto \w» Zarzadzanie kontem");
	menu_additem(menu, "\w» \y/menu \w» Menu serwera");
	
	menu_display(id ,menu);
}

public cmd(id, item, menu) { 	
	if(item == MENU_EXIT) {
		menu_destroy(menu);
		return PLUGIN_HANDLED;
	}
	
	switch(item) {
		case 0:	client_cmd(id, "say /skiny");	
		case 1:	client_cmd(id, "say /skrzynie");
		case 2:	client_cmd(id, "say /klucze");
		case 3:	client_cmd(id, "say /rynek");
		case 4:	client_cmd(id, "say /wymiana");
		case 5:	client_cmd(id, "say /daj");
		case 6: client_cmd(id, "say /hud");
		case 7: client_cmd(id, "say /rangi");
		case 8: client_cmd(id, "say /konto");
		case 9: client_cmd(id, "say /menu");
	}
	
	return PLUGIN_CONTINUE;
}

  • +
  • -
  • 1


#776757 [ROZWIĄZANE] Awp od 5 ct

Napisane przez mordoryjacz w 13.04.2023 20:39

https://forums.allie...ad.php?p=444328


  • +
  • -
  • 2


#776500 Problem z kompilacja menu serwera

Napisane przez mordoryjacz w 24.02.2023 15:10

#include <amxmodx>
#include <amxmisc>
 
#define PLUGIN "Menu Gracza"
#define VERSION "1.0"
#define AUTHOR "Killer_cyc[DDS]"

new const komenda_menu[][] = { "say /menuserwera", "say_team /menuserwera", "say /menu", "say_team /menu", "say /menuglowne", "say_team /menuglowne" };
 
public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)

	for(new i; i < sizeof komenda_menu; i++) 
		register_clcmd(komenda_menu[i], "pokaz_menu");	  
}

public pokaz_menu(id)
{
	new menu = menu_create("\d====\rHide & Seek Ganiany\d====^n\w[>]Menu serwera:^n[>]Rekrutacja na admina \rON  ^n\d======\rCS-Maliver.pl\d======", "menu_wybor");
 
	menu_additem(menu, "\r[DOSTEPNE KONKURSY] - \dotwiera menu dostenych konkursow");
	menu_additem(menu, "\ySklep\w - \dotwiera menu sklepu");
	menu_additem(menu, "\yMonety - \dotwiera menu systemu monet");    
	menu_additem(menu, "\yCzapki\w - \dotwiera menu czapek");
	menu_additem(menu, "\yLjsmenu\w - \dotwiera ljsmenu");
	menu_additem(menu, "\yLjtop\w - \dstats top menu");
	menu_additem(menu, "\yBindy\w - \dotwiera menu z dostepnymi bindami");
	menu_additem(menu, "\yMute\w - \dmenu z mutowaniem graczy");
	menu_additem(menu, "\yReport\w - \dzglos cheatera");
	menu_additem(menu, "\yKontakt\w - \dkontakt z administracja");
	menu_additem(menu, "\yVip\w - \dinfo o vipie");
	menu_additem(menu, "\ySklepSms\w - \dkup Vip'a za sms");
	menu_additem(menu, "\yKup vipa\w - \dkup Vip'a za psc/przelew");
	menu_additem(menu, "\ySkarga\w - \dzloz skarge z wlasnym powodem");
	menu_additem(menu, "\yRegulamin\w - \dotwiera regulamin serwera");
	menu_additem(menu, "\ySieciowe serwery\w - \dpokazuje ip wszystkich serwerow sieciowych");

	menu_display(id, menu);
}
 
public menu_wybor(id, menu, item)
{
	if(item==MENU_EXIT) {
		menu_destroy(menu)
		return PLUGIN_HANDLED
	}
   
	switch(item) {
		case 0: client_cmd(id, "say /konkursy")
		case 1: client_cmd(id, "say /sklep")
		case 2: client_cmd(id, "say /monety")
		case 3: client_cmd(id, "say /czapki")
		case 4: client_cmd(id, "say /ljsmenu") 
		case 5: client_cmd(id, "say /Ljtop")
		case 6: client_cmd(id, "say /bindy")
		case 7: client_cmd(id, "say /mute")
		case 8: client_cmd(id, "say /report")
		case 9: client_cmd(id, "say /kontakt") 
		case 10: client_cmd(id, "say /Vip")
		case 11: client_cmd(id, "say /Sklepsms")
		case 12: client_cmd(id, "say /Zamow")
		case 13: client_cmd(id, "say /Skarga")
		case 14: client_cmd(id, "say /Regulamin")
		case 15: client_cmd(id, "say /serwery")
	}
	return PLUGIN_HANDLED
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1045\\ f0\\ fs16 \n\\ par }
*/

Załączone pliki


  • +
  • -
  • 1