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
 

no-reference - zdjęcie

no-reference

Rejestracja: 28.09.2024
Aktualnie: Nieaktywny
Poza forum Ostatnio: wczoraj, 17:31
-----

#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