Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

Auto ClanWar System

, Нужно дополнить
Статус пользователя Fraig
сообщение 15.1.2015, 21:09
Сообщение #1
Стаж: 14 лет

Сообщений: 93
Благодарностей: 7
Полезность: < 0

Есть такой плагин, называется он Auto ClanWar Systeam V0.1.

Немного расскажу как он работает: Это система для проведения CW или MIXов, после установки самого плагина сервер находится в обычном состоянии, паблик короче, если ввести команду cw_start "Team A" "Team B" 5 (cw_start <название команды 1> <название команды 2> <кол-во игроков в команде>) или выполнить через меню cw_menu, то запускается разминка, далее матч начнется автоматически после того, как все игроки напишут в чат !r. Если матч заканчивается или меняется карта, то сервер переходит в обычный режим. Дело в том, что эту команду может вводить только админ, а делать ее доступной для всех не есть хорошо (игроки будут баловаться, менять настройки или наоборот - просто не смогут запустить, не сообразят), получается что если на сервере нет админа другим игрокам просто нечего будет делать. Поэтому нужно сделать так, чтобы сервер постоянно находился в режиме (cw_start "Team A" "Team B" 5, другими словами в режиме разминки), то есть зайдя на него не нужно было что-то прописывать в консоль, а нужно просто сообщить о готовности.

У меня возникла одна идея, но, к сожалению, в скриптинге я ничего не понимаю: Если на сервер подключается игрок (любой, независимо админ он или нет), то срабатывает команда cw_start "Team A" "Team B" 5 (если во время матча ввести данную команду, то ничего не происходит - проверял), можно ли такое реализовать? Или можно сделать как-то по другому?

________

Будет ли работать такой вариант? Подскажите

Код:
public client_connect(id){
cmd_cw_start(0);
}


Исходник от Bloo (включены все inl файлы из папки Auto_ClanWar_System)
Прикрепленный файл  auto_clanwar_system.sma ( 65,7 килобайт ) Кол-во скачиваний: 129


Отредактировал: Fraig, - 15.1.2015, 21:43
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   Цитировать сообщение
Статус пользователя selest
сообщение 23.2.2015, 21:05
Сообщение #2


Стаж: 12 лет

Сообщений: 408
Благодарностей: 7
Полезность: < 0

UP
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя selest
сообщение 25.2.2015, 20:52
Сообщение #3


Стаж: 12 лет

Сообщений: 408
Благодарностей: 7
Полезность: < 0

Цитата(selest @ 23.2.2015, 22:05) *
UP

UP
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
voed
сообщение 25.2.2015, 21:09
Сообщение #4
Стаж: 11 лет

Сообщений: 2593
Благодарностей: 1760
Полезность: 405

Цитата
Будет ли работать такой вариант? Подскажите

Код:

public client_putinserver( id )
{
if ( current )
{
new str[32]
get_user_authid ( id, str, 31 )
if ( equal (steam_id_cap[0], str ) )
team_cap [0] = id
if ( equal (steam_id_cap[1], str ) )
team_cap [1] = id

if ( ( cvar_record_pov_dem == 2 ) || ( cvar_record_pov_dem == 1 && current >= 4 && current <= 7 ) )
set_task(5.0, "start_pov_demo", id)
}
else
{
server_cmd("cw_start TEAM1 TEAM2 5")
}
}


Отредактировал: voed, - 25.2.2015, 21:10
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя selest
сообщение 26.2.2015, 12:57
Сообщение #5


Стаж: 12 лет

Сообщений: 408
Благодарностей: 7
Полезность: < 0

i
Уведомление:
не нужно цитировать большие посты целиком

не работает(
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Statsenko_91
сообщение 2.1.2016, 20:33
Сообщение #6


Стаж: 13 лет

Сообщений: 387
Благодарностей: 121
Полезность: 457

Добрый вечер, форумчане!

На сегодняшний день есть актуальный мод/плагин "Auto ClanWar"? И желательно именно такой как описан в первом посте.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
XyLiGaN
сообщение 2.1.2016, 20:41
Сообщение #7
Стаж: 13 лет
Город: Югорск

Сообщений: 11668
Благодарностей: 6450
Полезность: 1052

Меценат Меценат

Statsenko_91, Это конечно не такое как описано в 1-м посте, но я думаю хуже не будет)
Подарок на новый год! (Пост #877080)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя adva
сообщение 2.1.2016, 20:59
Сообщение #8


Иконка группы

Стаж: 12 лет

Сообщений: 2543
Благодарностей: 1676
Полезность: 819

Меценат Меценат

Цитата(XyLiGaN @ 2.1.2016, 21:37) *
Statsenko_91, Это конечно не такое как описано в 1-м посте, но я думаю хуже не будет)
Подарок на новый год! (Пост #877080)


Он конечно не АВТО, но если на сервере есть админ, то этот плагин самое то, чтобы провести КВ.
Всё необходимое есть. А вот сделать чёткий автоплагин, это нужно потратить столько трудов, что врятли кто-то решится написать аналог фасткапа )

Отредактировал: adva, - 2.1.2016, 21:00
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
Статус пользователя Statsenko_91
сообщение 2.1.2016, 23:11
Сообщение #9


Стаж: 13 лет

Сообщений: 387
Благодарностей: 121
Полезность: 457

adva, в нем так понимаю Say команд нету. И так же он не считает раунды до 15, потом смена а раунды сохраняет, такого нету?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя adva
сообщение 2.1.2016, 23:13
Сообщение #10


Иконка группы

Стаж: 12 лет

Сообщений: 2543
Благодарностей: 1676
Полезность: 819

Меценат Меценат

Цитата(Statsenko_91 @ 3.1.2016, 0:06) *
adva, в нем так понимаю Say команд нету. И так же он не считает раунды до 15, потом смена а раунды сохраняет, такого нету?

нету.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Statsenko_91
сообщение 2.1.2016, 23:15
Сообщение #11


Стаж: 13 лет

Сообщений: 387
Благодарностей: 121
Полезность: 457

adva, в таком случае скажи, плиз, чем хуже данный плагин?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя adva
сообщение 2.1.2016, 23:30
Сообщение #12


Иконка группы

Стаж: 12 лет

Сообщений: 2543
Благодарностей: 1676
Полезность: 819

Меценат Меценат

Цитата(Statsenko_91 @ 3.1.2016, 0:11) *
adva, в таком случае скажи, плиз, чем хуже данный плагин?

Во-первых, я не скриптер, и я не могу судить что лучше, а что хуже
Во-вторых, я заказывал сей плагин под свой приватный КВ сервер
В-третьих, мне его достаточно, чтобы проводить КВ между своими игроками.
Мне не надо ждать пока кто-то нажмёт !ready
Мне не нужна статистика
Демка у меня пишется за счёт HLTV, можно добавить отдельный плагин для записи POV
Разминка есть, кнайф есть, овертайм есть.
Всё выведенено в одну менюшку.
Что ещё требуется для проведения кв ?
Мне достаточно! ))))

Отредактировал: adva, - 2.1.2016, 23:31
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Alloha
сообщение 2.1.2016, 23:38
Сообщение #13
Стаж: 10 лет

Сообщений: 210
Благодарностей: 118
Полезность: < 0

Cкрытый текст
Код
// Required admin access level
#define ADMIN_VOICE    ADMIN_CHAT

// Delay before a connected player see the text announce
// #define ANNOUNCE_TASK_DELAY 30.0

// Comment this out if you don't want that a "no sound" player can hear admins using +adminvoice
// All other player settings are respected whatever this is commented or not.
#define SUPER_ADMIN_PRIORITY

/* ** END OF EDITABLE ** */

/*    Changelog
*
* v1.0.2 (04/19/08)
* -few code corrections
* -updated player spawn detection
* -added HLTV & BOT checks
*
* v1.0.1 (03/31/08)
* -added colored chat
* -added chat command /vm that display voices settings
* -inform new players about /vm command
* -display adminlisten status when toggle_adminlisten command is used
* -added support for amx_show_activity cvar on amx_(un)mute command
*
* v1.0.0 (03/26/08)
* First release
*
*/

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>

#define VERSION "1.0.2"

#define MAX_PLAYERS    32

#define OFFSET_TEAM        114

new g_iClientSettings[MAX_PLAYERS+1][2]
new bool:g_bPlayerNonSpawnEvent[MAX_PLAYERS+1]
new g_iFwFmClientCommandPost
new bool:g_bAlive[MAX_PLAYERS+1]

new g_iAdminVoice
new bool:g_bAdmin[MAX_PLAYERS+1]
new bool:g_bInterAdminVoice[MAX_PLAYERS+1]
new bool:g_bAdminListen[MAX_PLAYERS+1]

new bool:g_bMuted[MAX_PLAYERS+1]
new g_szClientsIp[MAX_PLAYERS+1][22]
new Array:g_aMutedPlayersIps

new g_iMaxPlayers
new g_msgidSayText
new g_pcvarAlivesHear, g_pcvarDeadsHear
// new g_amx_show_activity

public plugin_init()
{
    register_plugin("Voices Management", VERSION, "ConnorMcLeod")
    register_dictionary("voicesmanagement.txt")
    register_dictionary("common.txt")

    g_pcvarAlivesHear = register_cvar("vm_alives", "1")  // 0:alive teamates , 1:alives , 2:all
    g_pcvarDeadsHear = register_cvar("vm_deads", "2")    // 0:dead teamates , 1:deads , 2:all

    register_forward(FM_Voice_SetClientListening, "Forward_SetClientListening")
    register_event("VoiceMask", "Event_VoiceMask", "b")

    register_event("TextMsg", "Event_TextMsg_Restart", "a", "2=#Game_will_restart_in")
    register_event("ResetHUD", "Event_ResetHUD", "b")
    register_event("DeathMsg", "Event_DeathMsg", "a")

    register_clcmd("+adminvoice", "AdminCommand_VoiceOn")
    register_clcmd("-adminvoice", "AdminCommand_VoiceOff")

    register_clcmd("+interadminvoice", "AdminCommand_InterAdminOn")
    register_clcmd("-interadminvoice", "AdminCommand_InterAdminOff")

    register_clcmd("+adminlisten", "AdminCommand_ListenOn")
    register_clcmd("-adminlisten", "AdminCommand_ListenOff")
    register_clcmd("toggle_adminlisten", "AdminCommand_ListenToggle")

//    register_concmd("amx_mute", "AdminCommand_Mute", ADMIN_VOICE, "<name/#userid>")
//    register_concmd("amx_unmute", "AdminCommand_UnMute", ADMIN_VOICE, "<name/#userid>")

    register_clcmd("say /vm", "ClientCommand_SayStatus")
    register_clcmd("say_team /vm", "ClientCommand_SayStatus")

    register_clcmd("fullupdate", "ClientCommand_fullupdate")
}

public plugin_cfg()
{
    server_cmd("sv_alltalk 1;alias sv_alltalk")
    server_exec()
    g_iMaxPlayers = get_maxplayers()
    g_aMutedPlayersIps = ArrayCreate(22)
    g_msgidSayText = get_user_msgid("SayText")
    // g_amx_show_activity = get_cvar_pointer("amx_show_activity")
}

public ClientCommand_SayStatus(id)
{
    new iDeads = get_pcvar_num(g_pcvarDeadsHear),
        iAlives = get_pcvar_num(g_pcvarAlivesHear)

    new szDeadsStatus[18], szAlivesStatus[19]

    switch( iAlives )
    {
        case 0:szAlivesStatus = "VM_ALIVES_TEAMATES"
        case 1:szAlivesStatus = "VM_ALIVES"
        case 2:szAlivesStatus = "VM_ALL"
    }

    switch( iDeads )
    {
        case 0:szDeadsStatus = "VM_DEADS_TEAMATES"
        case 1:szDeadsStatus = "VM_DEADS"
        case 2:szDeadsStatus = "VM_ALL"
    }

    col_mess(id, id, "%L", id, "VM_ALIVES_STATUS", id, szAlivesStatus)
    col_mess(id, id, "%L", id, "VM_DEADS_STATUS", id, szDeadsStatus)
}

/*
public taskAnnounce(id)
{
    if( is_user_connected(id) )
    {
        col_mess(id, id, "%L", id, "VM_ANNOUCE")
    }
}
*/

public ClientCommand_fullupdate(id)
{
    g_bPlayerNonSpawnEvent[id] = true
    static const szFwFmClientCommandPost[] = "fwFmClientCommandPost"
    g_iFwFmClientCommandPost = register_forward(FM_ClientCommand, szFwFmClientCommandPost, 1)
    return PLUGIN_CONTINUE
}

public fwFmClientCommandPost(iPlayerId) {
    unregister_forward(FM_ClientCommand, g_iFwFmClientCommandPost, 1)
    g_bPlayerNonSpawnEvent[iPlayerId] = false
    return FMRES_HANDLED
}

public Event_TextMsg_Restart()
{
    for(new id=1; id <= g_iMaxPlayers; ++id)
    {
        if(g_bAlive[id])
        {
            g_bPlayerNonSpawnEvent[id] = true
        }
    }
}

public Event_ResetHUD(id)
{
    if( !is_user_alive(id) )
    {
        return
    }

    if(g_bPlayerNonSpawnEvent[id])
    {
        g_bPlayerNonSpawnEvent[id] = false
        return
    }
    g_bAlive[id] = true
}

public client_authorized(id)
{
    g_bAdmin[id] = bool:(get_user_flags(id) & ADMIN_VOICE)
}

public client_putinserver(id)
{
    g_bAlive[id] = false
    g_bAdminListen[id] = false
    g_bInterAdminVoice[id] = false

    if(is_user_bot(id) || is_user_hltv(id))
        return

    static szIp[22]
    get_user_ip(id, szIp, 21)
    g_szClientsIp[id] = szIp

    static szTempIp[22], iArraySize
    iArraySize = ArraySize(g_aMutedPlayersIps)
    for(new i; i<iArraySize; i++)
    {
        ArrayGetString(g_aMutedPlayersIps, i, szTempIp, 21)
        if( equal(szIp, szTempIp) )
        {
            ArrayDeleteItem(g_aMutedPlayersIps, i)
            g_bMuted[id] = true
            break
        }
    }

//    set_task(ANNOUNCE_TASK_DELAY, "taskAnnounce", id)
}

public client_disconnect(id)
{
    if(g_iAdminVoice == id)
    {
        g_iAdminVoice = 0
    }
    if(g_bMuted[id])
    {
        ArrayPushString(g_aMutedPlayersIps, g_szClientsIp[id])
        g_bMuted[id] = false
    }
}

public Event_DeathMsg()
{
    g_bAlive[read_data(2)] = false
}

public Event_VoiceMask(id)
{
    g_iClientSettings[id][0] = read_data(1)
    g_iClientSettings[id][1] = read_data(2)
}

public Forward_SetClientListening(iReceiver, iSender, bool:bListen)
{
#if defined SUPER_ADMIN_PRIORITY
    if(g_iAdminVoice)
    {
        if(g_iAdminVoice == iSender)
        {
            engfunc(EngFunc_SetClientListening, iReceiver, iSender, true)
            forward_return(FMV_CELL, true)
            return FMRES_SUPERCEDE
        }
        engfunc(EngFunc_SetClientListening, iReceiver, iSender, false)
        forward_return(FMV_CELL, false)
        return FMRES_SUPERCEDE
    }

    if( !g_iClientSettings[iReceiver][0] || g_iClientSettings[iReceiver][1] & (1<<(iSender-1)) )
    {
        return FMRES_IGNORED
    }
#else
    if( !g_iClientSettings[iReceiver][0] || g_iClientSettings[iReceiver][1] & (1<<(iSender-1)) )
    {
        return FMRES_IGNORED
    }

    if(g_iAdminVoice)
    {
        if(g_iAdminVoice == iSender)
        {
            engfunc(EngFunc_SetClientListening, iReceiver, iSender, true)
            forward_return(FMV_CELL, true)
            return FMRES_SUPERCEDE
        }
        engfunc(EngFunc_SetClientListening, iReceiver, iSender, false)
        forward_return(FMV_CELL, false)
        return FMRES_SUPERCEDE
    }
#endif
    if(g_bMuted[iSender])
    {
        engfunc(EngFunc_SetClientListening, iReceiver, iSender, false)
        forward_return(FMV_CELL, false)
        return FMRES_SUPERCEDE
    }

    if(g_bInterAdminVoice[iSender])
    {
        if(g_bAdmin[iReceiver])
        {
            engfunc(EngFunc_SetClientListening, iReceiver, iSender, true)
            forward_return(FMV_CELL, true)
            return FMRES_SUPERCEDE
        }
        engfunc(EngFunc_SetClientListening, iReceiver, iSender, false)
        forward_return(FMV_CELL, false)
        return FMRES_SUPERCEDE
    }

    if(g_bAdminListen[iReceiver])
    {
        engfunc(EngFunc_SetClientListening, iReceiver, iSender, true)
        forward_return(FMV_CELL, true)
        return FMRES_SUPERCEDE
    }

    if(g_bAlive[iReceiver])
    {
        switch(get_pcvar_num(g_pcvarAlivesHear))
        {
            case 0:
            {
                if( g_bAlive[iSender] && get_pdata_int(iReceiver, OFFSET_TEAM) == get_pdata_int(iSender, OFFSET_TEAM) )
                {
                    engfunc(EngFunc_SetClientListening, iReceiver, iSender, true)
                    forward_return(FMV_CELL, true)
                    return FMRES_SUPERCEDE
                }
            }
            case 1:
            {
                if( g_bAlive[iSender] )
                {
                    engfunc(EngFunc_SetClientListening, iReceiver, iSender, true)
                    forward_return(FMV_CELL, true)
                    return FMRES_SUPERCEDE
                }
            }
            case 2:
            {
                engfunc(EngFunc_SetClientListening, iReceiver, iSender, true)
                forward_return(FMV_CELL, true)
                return FMRES_SUPERCEDE
            }
        }
    }
    else
    {
        switch(get_pcvar_num(g_pcvarDeadsHear))
        {
            case 0:
            {
                if( !g_bAlive[iSender] && get_pdata_int(iReceiver, OFFSET_TEAM) == get_pdata_int(iSender, OFFSET_TEAM) )
                {
                    engfunc(EngFunc_SetClientListening, iReceiver, iSender, true)
                    forward_return(FMV_CELL, true)
                    return FMRES_SUPERCEDE
                }
            }
            case 1:
            {
                if( !g_bAlive[iSender] )
                {
                    engfunc(EngFunc_SetClientListening, iReceiver, iSender, true)
                    forward_return(FMV_CELL, true)
                    return FMRES_SUPERCEDE
                }
            }
            case 2:
            {
                engfunc(EngFunc_SetClientListening, iReceiver, iSender, true)
                forward_return(FMV_CELL, true)
                return FMRES_SUPERCEDE
            }
        }
    }

    engfunc(EngFunc_SetClientListening, iReceiver, iSender, false)
    forward_return(FMV_CELL, false)
    return FMRES_SUPERCEDE
}

public AdminCommand_ListenOn(id)
{
    if( !g_bAdmin[id] )
        return PLUGIN_HANDLED

    g_bAdminListen[id] = true

    return PLUGIN_HANDLED
}

public AdminCommand_ListenOff(id)
{
    if( g_bAdminListen[id] )
    {
        g_bAdminListen[id] = false
    }

    return PLUGIN_HANDLED
}

public AdminCommand_ListenToggle(id)
{
    if( !g_bAdmin[id] )
    {
        return PLUGIN_HANDLED
    }

    g_bAdminListen[id] = !g_bAdminListen[id]

    col_mess(id, id, "%L", id, "VM_LISTEN_STATUS", g_bAdminListen[id] ? "ON" : "OFF")

    return PLUGIN_HANDLED
}

public AdminCommand_VoiceOn(id)
{
    if(!g_bAdmin[id])
    {
        return PLUGIN_HANDLED
    }

    if(g_iAdminVoice)
    {
        col_mess(id, id, "%L", id, "VM_ALREADY_INUSE")
        return PLUGIN_HANDLED
    }

    g_iAdminVoice = id

    new name[32]
    pev(id, pev_netname, name, 31)

    for(new player = 1; player <= g_iMaxPlayers; player++)
    {
        if( is_user_connected(player) && !is_user_hltv(player) && !is_user_bot(player) )
        {
            col_mess(player, id, "%L", player, "VM_ADMIN_TALK", name)
        }
    }

    client_cmd(id, "+voicerecord")

    return PLUGIN_HANDLED
}

public AdminCommand_VoiceOff(id)
{
    if( !g_bAdmin[id] )
    {
        return PLUGIN_HANDLED
    }

    if(g_iAdminVoice != id)
    {
        client_cmd(id, "-voicerecord")
        return PLUGIN_HANDLED
    }

    client_cmd(id, "-voicerecord")
    g_iAdminVoice = 0
    return PLUGIN_HANDLED
}

public AdminCommand_InterAdminOn(id)
{
    if( !g_bAdmin[id] )
    {
        return PLUGIN_HANDLED
    }

    g_bInterAdminVoice[id] = true
    client_cmd(id, "+voicerecord")

    new name[32]
    get_user_name(id, name, 31)
    for(new i=1; i<=g_iMaxPlayers; i++)
    {
        if( !g_bAdmin[i] || !is_user_connected(i) )
        {
            continue
        }
        col_mess(i, id, "%L", i, "VM_INTER_START", name)
    }

    return PLUGIN_HANDLED
}

public AdminCommand_InterAdminOff(id)
{
    if(!g_bInterAdminVoice[id])
        return PLUGIN_HANDLED

    g_bInterAdminVoice[id] = false
    client_cmd(id, "-voicerecord")

    new name[32]
    get_user_name(id, name, 31)
    for(new i=1; i<=g_iMaxPlayers; i++)
    {
        if( !g_bAdmin[i] || !is_user_connected(i) )
        {
            continue
        }
        col_mess(i, id, "%L", i, "VM_INTER_STOP", name)
    }

    return PLUGIN_HANDLED
}

/*
public AdminCommand_Mute(id, level, cid)
{
    if( !cmd_access(id, level, cid, 2, true) )
    {
        return PLUGIN_HANDLED
    }

    new szPlayer[32]
    read_argv(1, szPlayer, 31)
    new iPlayer = cmd_target(id, szPlayer, CMDTARGET_OBEY_IMMUNITY | CMDTARGET_NO_BOTS)

    if( !iPlayer )
    {
        return PLUGIN_HANDLED
    }

    if( g_bAdmin[iPlayer] )
    {
        client_print(id, print_console, "%L", id ? id : LANG_SERVER, "VM_MUTE_ADMIN")
        return PLUGIN_HANDLED
    }

    if( g_bMuted[iPlayer] )
    {
        client_print(id, print_console, "%L", id ? id : LANG_SERVER, "VM_AR_MUTED")
        return PLUGIN_HANDLED
    }

    g_bMuted[iPlayer] = true
    client_print(id, print_console, "%L", id ? id : LANG_SERVER, "VM_MUTED")

    if(g_amx_show_activity)
    {
        new name[32], name2[32]
        get_user_name(id, name, 31)
        get_user_name(iPlayer, name2, 31)
        show_activity_col(id, name, name2, "VM_MUTE_ACTIVITY")
    }
    return PLUGIN_HANDLED
}

public AdminCommand_UnMute(id, level, cid)
{
    if( !cmd_access(id, level, cid, 2, true) )
    {
        return PLUGIN_HANDLED
    }

    new szPlayer[32], iPlayer
    read_argv(1, szPlayer, 31)
    iPlayer = cmd_target(id, szPlayer, CMDTARGET_OBEY_IMMUNITY | CMDTARGET_NO_BOTS)

    if( !iPlayer )
    {
        return PLUGIN_HANDLED
    }

    if( !g_bMuted[iPlayer] )
    {
        client_print(id, print_console, "%L", id ? id : LANG_SERVER, "VM_NOT_MUTED")
        return PLUGIN_HANDLED
    }

    g_bMuted[iPlayer] = false
    client_print(id, print_console, "%L", id ? id : LANG_SERVER, "VM_UNMUTED")

    if(g_amx_show_activity)
    {
        new name[32], name2[32]
        get_user_name(id, name, 31)
        get_user_name(iPlayer, name2, 31)

        show_activity_col(id, name, name2, "VM_UNMUTE_ACTIVITY")
    }

    return PLUGIN_HANDLED
}
*/

col_mess(id, sender, string[], any:...)
{
    static szMessage[128]
    szMessage[0] = 0x01
    vformat(szMessage[1], 127, string, 4)

    replace_all(szMessage, 127, "!n", "^x01")
    replace_all(szMessage, 127, "!t", "^x03")
    replace_all(szMessage, 127, "!g", "^x04")

    message_begin(MSG_ONE_UNRELIABLE, g_msgidSayText, _, id)
    write_byte(sender)
    write_string(szMessage)
    message_end()
}

/*
show_activity_col(id, name[], name2[], ML_KEY[])
{
    switch(get_pcvar_num(g_amx_show_activity))
    {
        case 5: // hide name only to admins, show nothing to normal users
        {        
            for (new i=1; i<=g_iMaxPlayers; i++)
            {
                if (is_user_connected(i) && !is_user_bot(i) && !is_user_hltv(i))
                {
                    if (is_user_admin(i))
                    {
                        col_mess(i, id, " ** !g[VM] !n%L: %L", i, "ADMIN", i, ML_KEY, name2)
                    }
                }
            }
        }
        case 4: // show name only to admins, show nothing to normal users
        {
            for (new i=1; i<=g_iMaxPlayers; i++)
            {
                if (is_user_connected(i) && !is_user_bot(i) && !is_user_hltv(i))
                {
                    if (is_user_admin(i))
                    {
                        col_mess(i, id, " ** !g[VM] !n%L !t%s!n: %L", i, "ADMIN", name, i, ML_KEY, name2)
                    }
                }
            }
        }
        case 3: // show name only to admins, hide name from normal users
        {
            for (new i=1; i<=g_iMaxPlayers; i++)
            {
                if (is_user_connected(i) && !is_user_bot(i) && !is_user_hltv(i))
                {
                    if (is_user_admin(i))
                    {
                        col_mess(i, id, " ** !g[VM] !n%L !t%s!n: %L", i, "ADMIN", name, i, ML_KEY, name2)
                    }
                    else
                    {
                        col_mess(i, id, " ** !g[VM] !n%L: %L", i, "ADMIN", i, ML_KEY, name2)
                    }
                }
            }
        }
        case 2: // show name to all
        {
            for (new i=1; i<=g_iMaxPlayers; i++)
            {
                if (is_user_connected(i) && !is_user_bot(i) && !is_user_hltv(i))
                {
                    col_mess(i, id, " ** !g[VM] !n%L !t%s!n: %L", i, "ADMIN", name, i, ML_KEY, name2)
                }
            }
        }
        case 1: // hide name to all
        {
            for (new i=1; i<=g_iMaxPlayers; i++)
            {
                if (is_user_connected(i) && !is_user_bot(i) && !is_user_hltv(i))
                {
                    col_mess(i, id, " ** !g[VM] !n%L: %L", i, "ADMIN", i, ML_KEY, name2)
                }
            }
        }
    }
}
*/


Может что то подойдет для вас!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Statsenko_91
сообщение 3.1.2016, 11:21
Сообщение #14


Стаж: 13 лет

Сообщений: 387
Благодарностей: 121
Полезность: 457

adva, блин, извиняюсь конечно, но что то нету там овертайма(
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя adva
сообщение 3.1.2016, 12:44
Сообщение #15


Иконка группы

Стаж: 12 лет

Сообщений: 2543
Благодарностей: 1676
Полезность: 819

Меценат Меценат

Цитата(Statsenko_91 @ 3.1.2016, 12:16) *
adva, блин, извиняюсь конечно, но что то нету там овертайма(



То же извиняюсь, но видимо я исходник с овертаймом на работе оставил... Скину не неделе.

Могу пока дать скомпилированный...

Cкрин

Cкрин


Отредактировал: adva, - 3.1.2016, 12:44
Прикрепленные файлы:
Прикрепленный файл  lite_cw.rar ( 12,47 килобайт ) Кол-во скачиваний: 44
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 3 раз
   + Цитировать сообщение
Статус пользователя best101
сообщение 22.5.2017, 1:00
Сообщение #16


Стаж: 10 лет

Сообщений: 155
Благодарностей: 6
Полезность: < 0

Нашел кто решение, для автозапуска CW, т.е. что бы при подключении игрока, сразу предлагало !ready ????
И что бы сервер постоянно находился в режиме CW (включенном).
(аналогичный вопрос с 1-го поста)

Отредактировал: best101, - 22.5.2017, 1:15
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: