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

Rozgrzewka


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

#1 no-reference

    Nowy

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:4
  • Imię:Adam
Offline

Napisano 25.12.2025 11:43

Cześć,

 

Poszukuję rozgrzewki, która:

  • trwałaby maksymalnie 30 sekund,
  • co mapę losowo wybierałaby dla każdego gracza (CT/TT) tę samą broń, np. tylko AK / deagle / SMG, etc., 
  • co mapę losowo wybierałaby tryb rozgrzewki - zwykły albo only hs, 
  • na środku w górnej części ekranu widniałoby podsumowanie rozgrzewki: rozgrzewka, czas trwania rozgrzewki, broń, tryb, 
  • w tle puszczałaby losową muzykę z właściwego pliku FTP
  • statystyki osiągnięte podczas rozgrzewki nie wliczałyby się do rankingu. 

Przejrzałem trochę pluginów na forum i nie znalazłem dokładnie tego, czego szukam - macie może jakieś wskazówki?

 

Dzięki.  


  • +
  • -
  • 0

#2 mordoryjacz

    Profesjonalista

  • Użytkownik

Reputacja: 35
Życzliwy

  • Postów:206
Offline

Napisano 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

#3 no-reference

    Nowy

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:4
  • Imię:Adam
Offline

Napisano 27.12.2025 10:30

Z podziękowaniem - wszystko śmiga ;) 


  • +
  • -
  • 0

#4 MzKzMzUzE

    Pomocny

  • Użytkownik

Reputacja: -1
Nowy

  • Postów:55
  • Steam:steam
Offline

Napisano 27.12.2025 11:26

Wrzuciłem z ciekawości na chwilę do siebie - można latać i tak z jaką się chce bronią.


  • +
  • -
  • 0




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

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