Поиск Поиск Show time maps for CSDM

Сообщения
15
Реакции
3
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
Всем привет!
Нужен плагин для CSDM, что бы таймер вместо времени раунда показывал Сколько осталось времени до конца карты
Весь форум перерыл, но знаю что где то видел его)
 
Сообщения
400
Реакции
147
Помог
11 раз(а)
Joni,
C++:
#include <amxmodx>

public plugin_init()
{
    register_plugin("Show timeleft for CSDM", "1.0", "neygomon");
    set_task(1.0, "RegMsg");
}

public RegMsg()
{
    new msg = get_user_msgid("RoundTime");
    if(get_msg_block(msg) != BLOCK_NOT)
        set_msg_block(msg, BLOCK_NOT);
   
    register_message(msg, "msgRoundTime");
    register_message(get_user_msgid("HideWeapon"), "msgHideWeapon");
}

public msgRoundTime(msgId, msgDesc, msgEnt)
    set_msg_arg_int(1, ARG_SHORT, get_timeleft());
   
public msgHideWeapon(msgId, msgDesc, msgEnt)
{
    static flags; flags = get_msg_arg_int(1);
    if(flags & (1 << 4)) set_msg_arg_int(1, ARG_BYTE, flags & ~(1 << 4));
}
 
Последнее редактирование модератором:
  • Нравится
Реакции: ifx
Сообщения
71
Реакции
30
Помог
6 раз(а)
Joni,
C++:
#include amxmodx
#include reapi

public plugin_init ()
{
    register_plugin("Timeleft HUD","1.0","unknown")
    
    RegisterHookChain(RG_CBasePlayer_Spawn, "CBasePlayer_Spawn", 1);
}

public CBasePlayer_Spawn(id)
{
    if (!is_user_alive(id))    return;
    
    set_member(id, m_iHideHUD, get_member(id, m_iHideHUD) & ~(1<<4));
    message_begin(MSG_ONE, get_user_msgid("RoundTime"), _, id);
    write_short(get_timeleft());
    message_end();
}
 
Сообщения
15
Реакции
3
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
CannibaL86, После продления , он не сбивается , не подскажешь?
 
Сообщения
94
Реакции
14
Помог
5 раз(а)
Izmayl7, Не показывает до конца карты, показывает раунд.
 
Сообщения
2,713
Реакции
2,993
Помог
59 раз(а)
Не знаю что вам мешает сделать раунд, допустим 20 минут.

И потом mp_timelimit 20
mp_roundtime 20.0
 
Сообщения
133
Реакции
441
Помог
2 раз(а)
Код:
#include <amxmodx>

public plugin_init()
{
  register_plugin("Round HUD - Timeleft", "1", "medusa");
  register_message(get_user_msgid("RoundTime"),"MsgRoundTime");
}

public MsgRoundTime(const iMsgID, const iMsgDest, const iMsgEnt)
{
    set_msg_arg_int(1, ARG_SHORT, get_timeleft());
}
максимальный mp_timelimit 546.1 получился который мог отображать HUD - больше будет 00.00
20180519144643_1.jpg
 
Последнее редактирование:
Сообщения
15
Реакции
3
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
Пробывал все варианты , после продления 0:00 хотя карта продлена на 15 минут , это можно как то сделать ?
 

Вложения

Сообщения
1
Реакции
0
Разобрались как сделать? А то тоже заинтересовался, нужен для csdm сервера.
 
Сообщения
227
Реакции
3
Предупреждения
12
w0w, Только после смерти отображает время которое было добавлено
 

ifx

Сообщения
330
Реакции
149
Помог
4 раз(а)
Joni, умри и таймер покажет норм цифры
 
Сообщения
1,419
Реакции
2,508
Помог
59 раз(а)
w0w, Только после смерти отображает время которое было добавлено
Тогда нужно отсылать сообщение RoundTime а не регистрировать его. Пример:

Код:
new g_iMsgRoundTime;

public plugin_init()
{
    g_iMsgRoundTime = get_user_msgid("RoundTime");
}

func()
{
    message_begin(MSG_BROADCAST, g_iMsgRoundTime);
    write_short(32000); // time in seconds
    message_end();
}
 

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу