⭐🚀 TkyNET | Blacklist ve Profesyonel DDoS Korumalı TeamSpeak 3 Sunucuları 🚀⭐
Sponsor Görsel
🇹🇷 TR Lokasyon | 🛡️ Gelişmiş DDoS Koruması | ⚡ Düşük Ping | 🎧 Kesintisiz TS3 | Hostlar
Sponsor Görsel 2
SponsorSponsor

Konu

#1
Selam arkadaşlar dm mod serverim mevcut öldükten sonra ekranda 1 saniye kadar spawn bar çıkmasını istiyorum dolunca tekrar respawn olacak şekilde cvar ayarı ile ayarlanabilirse süre sevinirim yapan arkadaşlara şimdiden teşekkürler.

Not : bar nedir diyenler için reload bar plugininde ( şarjor değiştirirken çıkan bar ) ekranda çıkan o çubuktan bahsediyorum. ilgilenen arkadaşlara şimdiden tekrardan teşekkürler
#2
Merhaba deneme yapar mısınız
(örnek: amx_cvar spawn_bar_time 2.5 → 2.5 saniyelik bar)

Kod:
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <hamsandwich>

#define TASK_RESPAWN 1337

new Float:g_fRespawnTime
new g_iMaxPlayers

public plugin_init()
{
    register_plugin("Spawn Bar Respawn", "1.0", "SamsunLee")

    register_event("DeathMsg", "on_player_death", "a")

    // CVAR: spawn bar süresi (saniye)
    register_cvar("spawn_bar_time", "1.0")

    g_iMaxPlayers = get_maxplayers()
}

public on_player_death()
{
    new victim = read_data(2)
    if(!is_user_connected(victim))
        return

    // cvar süresini oku
    g_fRespawnTime = get_cvar_float("spawn_bar_time")
    if(g_fRespawnTime <= 0.0)
        g_fRespawnTime = 1.0

    show_spawn_bar(victim, g_fRespawnTime)

    set_task(g_fRespawnTime, "respawn_player", TASK_RESPAWN + victim)
}

public respawn_player(taskid)
{
    new id = taskid - TASK_RESPAWN
    if(!is_user_connected(id) || is_user_alive(id))
        return

    ExecuteHamB(Ham_CS_RoundRespawn, id)
}

// Basit bir “progress bar” efekti (reload bar mantığında)
public show_spawn_bar(id, Float:time)
{
    new barLength = 20
    new Float:step = time / float(barLength)
    new i

    for(i = 1; i <= barLength; i++)
    {
        new Float:delay = step * float(i)
        set_task(delay, "update_bar", id, "", 0, "b")
    }

    // HUD temizle
    set_task(time + 0.1, "clear_bar", id)
}

public update_bar(id)
{
    static Float:elapsed
    if(!is_user_connected(id))
        return

    // Toplam bar uzunluğu
    new total = 20
    static current
    current++

    if(current > total)
    {
        current = 0
        remove_task(id)
        return
    }

    new bar[64]
    new i
    for(i = 0; i < total; i++)
        bar[i] = (i < current) ? '|' : ' '

    bar[total] = 0

    set_hudmessage(0, 255, 0, -1.0, 0.7, 0, 0.0, 0.1, 0.0, 0.0, -1)
    show_hudmessage(id, "[%s]", bar)
}

public clear_bar(id)
{
    if(!is_user_connected(id)) return
    set_hudmessage(0, 0, 0, -1.0, 0.7, 0, 0.0, 0.1, 0.0, 0.0, -1)
    show_hudmessage(id, "")
}

Seymen ✦ [SamsunLee*]💻 Web/UI/UX Designer & Developer |[email protected]
Son Düzenleme: 13-10-2025, 20:24, Düzenleyen: SamsunLee.
#3
(13-10-2025, 20:22)SamsunLee Adlı Kullanıcıdan Alıntı: Merhaba deneme yapar mısınız
(örnek: amx_cvar spawn_bar_time 2.5 → 2.5 saniyelik bar)

Kod:
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <hamsandwich>

#define TASK_RESPAWN 1337

new Float:g_fRespawnTime
new g_iMaxPlayers

public plugin_init()
{
    register_plugin("Spawn Bar Respawn", "1.0", "SamsunLee")

    register_event("DeathMsg", "on_player_death", "a")

    // CVAR: spawn bar süresi (saniye)
    register_cvar("spawn_bar_time", "1.0")

    g_iMaxPlayers = get_maxplayers()
}

public on_player_death()
{
    new victim = read_data(2)
    if(!is_user_connected(victim))
        return

    // cvar süresini oku
    g_fRespawnTime = get_cvar_float("spawn_bar_time")
    if(g_fRespawnTime <= 0.0)
        g_fRespawnTime = 1.0

    show_spawn_bar(victim, g_fRespawnTime)

    set_task(g_fRespawnTime, "respawn_player", TASK_RESPAWN + victim)
}

public respawn_player(taskid)
{
    new id = taskid - TASK_RESPAWN
    if(!is_user_connected(id) || is_user_alive(id))
        return

    ExecuteHamB(Ham_CS_RoundRespawn, id)
}

// Basit bir “progress bar” efekti (reload bar mantığında)
public show_spawn_bar(id, Float:time)
{
    new barLength = 20
    new Float:step = time / float(barLength)
    new i

    for(i = 1; i <= barLength; i++)
    {
        new Float:delay = step * float(i)
        set_task(delay, "update_bar", id, "", 0, "b")
    }

    // HUD temizle
    set_task(time + 0.1, "clear_bar", id)
}

public update_bar(id)
{
    static Float:elapsed
    if(!is_user_connected(id))
        return

    // Toplam bar uzunluğu
    new total = 20
    static current
    current++

    if(current > total)
    {
        current = 0
        remove_task(id)
        return
    }

    new bar[64]
    new i
    for(i = 0; i < total; i++)
        bar[i] = (i < current) ? '|' : ' '

    bar[total] = 0

    set_hudmessage(0, 255, 0, -1.0, 0.7, 0, 0.0, 0.1, 0.0, 0.0, -1)
    show_hudmessage(id, "[%s]", bar)
}

public clear_bar(id)
{
    if(!is_user_connected(id)) return
    set_hudmessage(0, 0, 0, -1.0, 0.7, 0, 0.0, 0.1, 0.0, 0.0, -1)
    show_hudmessage(id, "")
}

yok kanka olmamış altta yeşil çubuklar gibi birşey çıkıyor . bar değil
#4
denermısın kanka?
https://www.webailesi.com/ds-spawnbar-16920.sma
Discord : mejaxx Steam : mejaxbey
#5
Kod:
rg_send_bartime(const index, const duration, const bool:observer = true);
Steam
#6
(13-10-2025, 21:18)mejaxamaa Adlı Kullanıcıdan Alıntı: denermısın kanka?
https://www.webailesi.com/ds-spawnbar-16920.sma

teşekkürler ++rep verildi eline sağlık
#7
(15-10-2025, 18:48)taha aydemir26 Adlı Kullanıcıdan Alıntı:
(13-10-2025, 21:18)mejaxamaa Adlı Kullanıcıdan Alıntı: denermısın kanka?
https://www.webailesi.com/ds-spawnbar-16920.sma

teşekkürler ++rep verildi eline sağlık
rica ederim konuyu çözüldü yaparsan iyi olur birde.
Discord : mejaxx Steam : mejaxbey
#8
İstek konusu, @mejaxamaa adlı kullanıcı tarafından 2 gün içinde çözülmüştür.
İsteği çözdüğü için mejaxamaa Adlı kullanıcıya 1 rep puanı ve 1 yardım etme puanı otomatik olarak verilmiştir.
mejaxamaa Adlı kullanıcı sizin dışınızda toplam 8 kişiye yardım etmiştir.

Herhangi bir konuda hata olduğunu düşünüyorsanız destek sistemi üzerinden iletişim kurabilirsiniz.

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da