• Страница 1 из 1
  • 1
Косячность разминки (Knife WarmUP)
Дата: Среда, 12.09.2018, 14:30 | Сообщение # 1
Любитель
Offline
  • Gordon200
  • Репутация: 0
  • Сообщений:25
  • Пользователь
  • Статус пользователя Собираю паблик на минимальных плагинах.

Код
#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>
#include <fakemeta>
     
new Timer, SecondsCvar;
new bool:g_knife = true
  
new const track[] = {   "sound/knife_warm/knife.mp3" }
#define MAP35HP // закомментируй если не хочешь чтобы в ножевом раунде у игроков было по 35 ХП
new Count[33]
public plugin_init()
{
    register_plugin( "Knife WarnUP" , "1.0", "ill" )
           
    register_event("DeathMsg", "on_death", "a")
    register_event( "CurWeapon", "EventCurWeapon", "be", "2!29" )
    #if defined MAP35HP
    RegisterHam(Ham_Spawn, "player", "Spawn_Player")
    #endif
    
    
    register_clcmd("say /count", "CC")
    SecondsCvar = register_cvar("auto_rr_time","61.0")
    Timer = get_pcvar_num(SecondsCvar)
    set_task(1.0, "start_rr_timer", _, _, _, "a", Timer)
}

public CC (id)
{
   client_print_color(id, print_team_default, "^3[^4LCSDM^3] ^1Каунтов: %d", Count[id])
}

public plugin_precache()
{
   precache_generic(track)
}

public client_connect(id)
{
   Count [id]= 0
}

public on_death()
{
        new victim
        victim = read_data(2)
           
        if(g_knife)
                set_task(1.0, "fnRevivePlayer", victim)
}
#if defined MAP35HP
public Spawn_Player(id)
{
   if(g_knife)
   {
      set_pev( id, pev_health, 35.0 )
   }
}
#endif
  
public fnRevivePlayer(id)
{
       if(!is_user_alive(id))
       ExecuteHamB(Ham_CS_RoundRespawn, id)
}
     
public EventCurWeapon(id)
{
        if(g_knife)
                engclient_cmd(id, "weapon_knife")
}

public start_rr_timer(id)
{
   
   if(g_knife)
   {
      client_cmd(0, "mp3 play %s", track)
   }
   if(Count [id]< 1)
   {
      Count[id]++
   }
   else
   {
      client_cmd(0, "mp3 play %s", track)
   }
   Timer--
   set_hudmessage(0, 255, 0, -1.0, 0.08, 0, _, 1.0)
   show_hudmessage(0, "Спокойный CSDM ©^nРестарт через: [ %d ]", Timer)
     
   if(Timer < 1)
   {
                server_cmd("sv_restartround 1")
                set_task(3.0, "rr_end")
                g_knife = false
   }
}
     
public rr_end()
{
   client_cmd(0, "mp3 stop")
   set_hudmessage(random_num(0, 255), random_num(0, 255), random_num(0, 255), -1.0, 0.78, 0, 1.0, 5.0, 0.1, 2.0, -1)
   show_hudmessage(0, "Ну теперь за стволы!^nПриятного хаоса!")
}
Хотел добавить в этот плагин музыку, но чё-то не как.
Музыка просто повторяется уже даже в ушах стоит этот звук столько раз изменял.
Пытался даже с счётом (Count), но всё равно никак
Думал попробовать написать самому, но отложил эту идею.

Добавлено (12.09.2018, 15:11)
---------------------------------------------
Упс. Заменил плагин который был на вашем сайте ~_~.

Дата: Среда, 12.09.2018, 15:13 | Сообщение # 2
  • Maxee
  • Репутация:
  • Сообщений:
  • Удаленные
Попробуй так:

Код
#include <amxmodx>
#include <amxmisc>
#include <dhudmessage>
#include <hamsandwich>
#include <fun>

new Timer, SecondsCvar
new bool:g_knife = true

public plugin_init()
{
    register_plugin( " [Public]Restart" , "1.0", "DRAGON" )
    
    register_event("DeathMsg", "on_death", "a")
    register_event( "CurWeapon", "EventCurWeapon", "be", "2!29" )
    
    RegisterHam(Ham_Spawn, "player", "fw_PlayerSpawn_Post", 1)
    
    SecondsCvar = register_cvar("auto_rr_time","35")  // Время разминка(в секундах,по умалчанию "35")

    Timer = get_pcvar_num(SecondsCvar)
    set_task(1.0, "start_rr_timer", _, _, _, "a", Timer)
}

public plugin_precache()
{
    precache_sound("sound/12.mp3")
}

public fw_PlayerSpawn_Post(id)
{
    if(!is_user_alive(id))
        return
  
    if(g_knife)
  set_user_health(id, 35) //Выдаёт 35 HP каждому игроку (Изменить значение можешь с 35 = 100 )
}

public on_death()
{
    new victim
    victim = read_data(2)
    
    if(g_knife)
  set_task(1.0, "fnRevivePlayer", victim)
}

public client_putinserver(id)
{
    if(g_knife)
  set_task(3.0, "Start_sound", id)
}

public Start_sound(id)
{
    if(g_knife)
    {
  client_cmd(id, "mp3 play sound/12.mp3")
  if(!is_user_alive(id) && (get_user_team(id) == 1 || get_user_team(id) == 2) )
   ExecuteHamB(Ham_CS_RoundRespawn, id)
    }
}

public fnRevivePlayer(id)
{
    if(!is_user_alive(id))
  ExecuteHamB(Ham_CS_RoundRespawn, id)
}

public EventCurWeapon(id)
{
    if(g_knife)
  engclient_cmd(id, "weapon_knife") // Оружие по умолчанию - нож
}

public start_rr_timer()
{
    Timer--
    
    set_dhudmessage(135, 206, 235, -1.0, 0.08, 0, 0.0, 0.01)
    show_dhudmessage(0, "Разминка на ножах!^nРестарт через [%d] секунд", Timer)

    if(Timer < 1)
    {
  server_cmd("sv_restartround 1")
  set_task(3.0, "rr_end")
  client_cmd(0, "mp3 stop");
  g_knife = false
    }
}

public rr_end()
{
    set_dhudmessage( random_num(0, 255), random_num(0, 255), random_num(0, 255), -1.0, 0.78, 2, 6.0, 3.0, 0.1, 1.5, false )
    show_dhudmessage(0, "Разминка завершена^nПриятной игры! :)")
}
Сообщение отредактировал Maxee - Среда, 12.09.2018, 15:13
Дата: Среда, 12.09.2018, 15:51 | Сообщение # 3
Скриптер
Мастер
Offline
  • MakapoH
  • Репутация: 71
  • Сообщений:140
  • Разработчик
Maxee, precache_sound не поддерживает mp3 формат)
https://github.com/alliedmodders/amxmodx/blob/879b061bc835ec1ed1a43855a74b54b2f4ab370a/plugins/include/amxmodx.inc#L271
Дата: Среда, 12.09.2018, 17:21 | Сообщение # 4
  • Maxee
  • Репутация:
  • Сообщений:
  • Удаленные
Цитата MakapoH ()
Maxee, precache_sound не поддерживает mp3 формат)


Но музыка же воспроизводится..
Дата: Пятница, 14.09.2018, 20:24 | Сообщение # 5
Любитель
Offline
  • pro1000kill
  • Репутация: 18
  • Сообщений:27
  • Пользователь
  • Статус пользователя Релизер Army Bonus System
Даже если .mp3 и он рабочий (То есть воспроизводится), все равно рекомендую перекомпилировать его в .wav (Можно обратиться ко мне, я скомпилирую) и закинуть туда.
Вроде заметил что у тебя стоит Count[id], а потом ты проверяешь каждого игрока, меньше ли Count, если нет, то ты играешь звук всем. Конечно так себе уши раздробить можно.
P.s у Maxee должно быть правильно сделано.
  • Страница 1 из 1
  • 1
Поиск:
(threadpage)