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
Konu
Merhaba deneme yapar mısınız
(örnek: amx_cvar spawn_bar_time 2.5 → 2.5 saniyelik bar)
(ö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, "")
}Son Düzenleme: 13-10-2025, 20:24, Düzenleyen: SamsunLee.
(13-10-2025, 20:22)SamsunLee Adlı Kullanıcıdan Alıntı: Merhaba deneme yapar mısınızyok kanka olmamış altta yeşil çubuklar gibi birşey çıkıyor . bar değil
(ö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, "")
}
denermısın kanka?
https://www.webailesi.com/ds-spawnbar-16920.sma
https://www.webailesi.com/ds-spawnbar-16920.sma
Discord : mejaxx Steam : mejaxbey
(15-10-2025, 18:48)taha aydemir26 Adlı Kullanıcıdan Alıntı:rica ederim konuyu çözüldü yaparsan iyi olur birde.(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
Discord : mejaxx Steam : mejaxbey
İ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.
İ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.
Benzer Konular
Yorum
365
Okunma
Yorum
444
Okunma
15-05-2026, 01:22
Yorum
574
Okunma
12-04-2026, 22:45
)

