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

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

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

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

Плагин Доминирование

Статус пользователя mortalcs
сообщение 13.1.2013, 4:36
Сообщение #1
Стаж: 14 лет

Сообщений: 1145
Благодарностей: 607
Полезность: 1025


Плагин – Доминирование это простенькая система доминирования наподобие TF2 или CSS. Если игрок убивает 3 раза подряд другого игрока, то убийце засчитывают доминирование над его жертвой. Местью считается событие, в котором игрок, над которым доминирует неприятель, смог убить его. Что входит в плагин:

Выводиться в чат сообщения на счет доминирования и мести между игроками
Доминирующим игрокам и их жертвам лично напоминается об этом в чате во время повторных убийств
Если игрок, над которым кто-то доминирует, покинул сервер, то это тоже отмечается в чате
События доминирования и мести сопровождаются аналогичными звуками из Team Fortress 2.
Квары:
cv_dominations_frags – кол-во убийств до доминирования (изначально “3″)
cv_dominations_sounds 1/0 – вкл/выкл звуки. (изначально “1″)
cv_dominations_total 1/0 – перед сменой карты выводит в чате игрока с максимальным количеством доминирований. (изначально “1″)

Авторы: Psycrow
Версия: 0.6
Языки: русский
Прикрепленный файл  Simple_Dominations.zip ( 367,28 килобайт ) Кол-во скачиваний: 135
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   Цитировать сообщение
cah9
сообщение 13.1.2013, 5:07
Сообщение #2
Стаж: 13 лет

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

Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright © 1997-2006 ITB CompuPhase, AMX Mod X Team

textEV2zLW.sma(9) : fatal error 100: cannot read from file: "WPMGPrintChatColor"

Compilation aborted.
1 Error.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя mortalcs
сообщение 13.1.2013, 5:14
Сообщение #3
Стаж: 14 лет

Сообщений: 1145
Благодарностей: 607
Полезность: 1025

WPMGPrintChatColor.inc
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя maloi1881
сообщение 13.1.2013, 5:20
Сообщение #4


Стаж: 15 лет

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

Цитата(mortalcs @ 13.1.2013, 6:14) *

Куда это файл закинуть?:)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя mortalcs
сообщение 13.1.2013, 5:22
Сообщение #5
Стаж: 14 лет

Сообщений: 1145
Благодарностей: 607
Полезность: 1025

в папку include
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя maloi1881
сообщение 13.1.2013, 6:02
Сообщение #6


Стаж: 15 лет

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

А по точней путь :)

Отредактировал: maloi1881, - 13.1.2013, 6:08
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя pulse.
сообщение 13.1.2013, 6:23
Сообщение #7
Стаж: 13 лет

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

Ваш_сервер/cstrike/addons/amxmodx/scripting/include

Хороший плагин, правда чат засоряет.

Отредактировал: pulse., - 13.1.2013, 6:22
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя maloi1881
сообщение 13.1.2013, 7:00
Сообщение #8


Стаж: 15 лет

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

Цитата(pulse. @ 13.1.2013, 6:23) *
Ваш_сервер/cstrike/addons/amxmodx/scripting/include

Хороший плагин, правда чат засоряет.

thx)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Fred Perry
сообщение 13.1.2013, 8:35
Сообщение #9


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

Стаж: 16 лет

Сообщений: 6594
Благодарностей: 2370
Полезность: 813

Цитата(pulse. @ 13.1.2013, 6:23) *
Хороший плагин, правда чат засоряет.

Привыкли уже.


You become responsible, forever, for what you have tamed
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя pulse.
сообщение 22.2.2013, 18:27
Сообщение #10
Стаж: 13 лет

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

Можете пожалуйста кому не влом в исходник скинуть сюда в код и в спойлер, а то у меня вот-так:
Код
Р?РіСЂРѕРє !g%s !tпокадает сервер, РЅРµ отомстив своему

Скрытый текст
Код
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <hamsandwich>
#include <xs>
#include <engine>
#include <WPMGPrintChatColor>

#define PLUGIN "Dominations"
#define VERSION "0.6"
#define AUTHOR "Psycrow"

#define sound_domination    "next21_dominations/tf_domination.wav"
#define sound_revenge         "next21_dominations/tf_revenge.wav"
#define sound_freeze_cam     "next21_dominations/freeze_cam.wav"

new dm_frags[33][33]            // Кол-во убийств для доминирования [игрок][жертва]
new dm_dominations_now[33]         // Кол-во доминирований на данный момент у игрока
new bool:dm_domination[33][33]         // Флаг доминирования [игрок][жертва]


public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR)
    
    RegisterHam(Ham_Killed,"player","Dominations")
    register_cvar("cv_dominations_frags","3")
    register_cvar("cv_dominations_sounds","1")
    register_cvar("cv_dominations_total","1")
    
    if(get_timeleft() < 99999999 && get_cvar_num("cv_dominations_total"))
        set_task(180.0, "check_timeleft")
}

public plugin_precache()
{        
    precache_sound(sound_domination)
    precache_sound(sound_revenge)
    precache_sound(sound_freeze_cam)
}

public client_connect(id)
{    
    for(new i=0; i < 33; i++)
    {
        dm_frags[id][i] = 0
        dm_frags[i][id] = 0
        dm_domination[id][i] = false
        dm_domination[i][id] = false
    }
    
    dm_dominations_now[id] = 0
}

public client_disconnect(id)
{
    new playersnames[33][32], count
    for(new i=0; i < 33; i++)
        if(dm_frags[i][id] >= get_cvar_num("cv_dominations_frags"))
            get_user_name(i, playersnames[count++], 31)
    
    if(count == 0)
        return PLUGIN_CONTINUE
    
    new victimname[32], message[256], len
    get_user_name(id, victimname, 31)
    
    if(count == 1)
        PrintChatColor(0,PRINT_COLOR_RED,"!g[%s] !tР?РіСЂРѕРє !g%s !tпокадает сервер, РЅРµ отомстив своему палачу !g%s", PLUGIN, victimname, playersnames[0])
    else
    {
        PrintChatColor(0,PRINT_COLOR_RED,"!g[%s] !tР?РіСЂРѕРє !g%s !tпокадает сервер, РЅРµ отомстив СЃРІРѕРёРј палачам:", PLUGIN, victimname)
        for(new x = 0; x < count; x++)
        {
            len += format(message[len], 255-len, "!g%s!t%s ", playersnames[x], x < (count-1) ? ", ":"")
            if(len > 96 )
                break
        }
        PrintChatColor(0,PRINT_COLOR_RED,"%s", message)
    }
    
    return PLUGIN_CONTINUE
}

public Dominations(victim, attacker)
{
    if(!is_user_connected(attacker) || !is_user_connected(victim))
        return HAM_IGNORED
    
    if(cs_get_user_team(attacker) == cs_get_user_team(victim))
        return HAM_IGNORED
    
    dm_frags[attacker][victim] += 1
    dm_frags[victim][attacker] = 0
    
    if(dm_frags[attacker][victim] == get_cvar_num("cv_dominations_frags"))
    {
        dm_domination[attacker][victim] = true
        dm_dominations_now[attacker]++
        new player_name_v[33], player_name_a[33]
        get_user_name(victim, player_name_v, 31)
        get_user_name(attacker, player_name_a, 31)
        PrintChatColor(0,PRINT_COLOR_RED,"!g[%s] !tР?РіСЂРѕРє !g%s !tтеперь доминирует над РёРіСЂРѕРєРѕРј !g%s", PLUGIN ,player_name_a, player_name_v) // Объявляем всем, что началось доминирование между игроками
        if(get_cvar_num("cv_dominations_sounds"))
            emit_sound(attacker,CHAN_AUTO,sound_domination,1.0, 1.0, 0, 100 )
    }
    
    if(dm_frags[attacker][victim] > get_cvar_num("cv_dominations_frags"))
    {
        new player_name_v[33], player_name_a[33]
        get_user_name(victim, player_name_v, 31)
        get_user_name(attacker, player_name_a, 31)
        PrintChatColor(attacker,PRINT_COLOR_RED,"!g[%s] !tР’С‹ СЃРЅРѕРІР° убили СЃРІРѕСЋ жертву !g%s", PLUGIN ,player_name_v) // Объявляем убийце, что жертва являеться его жертвой доминирования
        PrintChatColor(victim,PRINT_COLOR_RED,"!g[%s] !tВас СЃРЅРѕРІР° СѓР±РёР» ваш палач !g%s", PLUGIN ,player_name_a)  // Объявляем жертве доминирования, что убийца являеться его палачом
        if(get_cvar_num("cv_dominations_sounds"))
            client_cmd(victim, "spk %s", sound_freeze_cam)
    }
    
    if(dm_frags[victim][attacker] == 0 && dm_domination[victim][attacker])
    {
        dm_domination[victim][attacker] = false
        if(dm_dominations_now[victim] != 0)
            dm_dominations_now[victim]--
        new player_name_v[33], player_name_a[33]
        get_user_name(victim, player_name_v, 31)
        get_user_name(attacker, player_name_a, 31)
        PrintChatColor(0,PRINT_COLOR_RED,"!g[%s] !tР?РіСЂРѕРє !g%s !tотомстил своему обидчику !g%s", PLUGIN, player_name_a, player_name_v)  // Объявляем, что жертва смогла отомстить
        if(get_cvar_num("cv_dominations_sounds"))
            emit_sound(attacker,CHAN_AUTO,sound_revenge,1.0, 1.0, 0, 100 )
    }
    
    return HAM_IGNORED
}

public check_timeleft()
{
    new time_string[12]
    format(time_string, 11, "%d.0",get_timeleft())
    set_task(str_to_float(time_string), "Dominations_total")
}

public Dominations_total(id)
{
    new dm_max, player_name[33]
    for (new i = 0; i < 33; i++ )
    {
        if(dm_dominations_now[i] > dm_max)
        {
            dm_max = dm_dominations_now[i]
            get_user_name(i, player_name, 31)
        }
    }
    
    if(dm_max > 2)
        PrintChatColor(id,PRINT_COLOR_RED,"!g[%s] !tР?РіСЂРѕРє !g%s !tсохранил !g%d !tдоминирований", PLUGIN, player_name, dm_max)
}


upd: Хочу текст, и путь к файлу свой поставить..

Отредактировал: pulse., - 22.2.2013, 18:29
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Andrei
сообщение 22.2.2013, 18:30
Сообщение #11


Стаж: 15 лет

Сообщений: 1335
Благодарностей: 693
Полезность: 740

О господи,ты даже перекодировать не можеш.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя pulse.
сообщение 22.2.2013, 18:31
Сообщение #12
Стаж: 13 лет

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

Цитата(Andrei @ 22.2.2013, 18:30) *
О господи,ты даже перекодировать не можеш.

Научи blush2.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
NeWeRtH
сообщение 22.2.2013, 18:37
Сообщение #13
Стаж: 13 лет

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

через notepad ubeysya.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя pulse.
сообщение 22.2.2013, 18:40
Сообщение #14
Стаж: 13 лет

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

Не умею :'(, да и notepada`a нету
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Andrei
сообщение 22.2.2013, 18:43
Сообщение #15


Стаж: 15 лет

Сообщений: 1335
Благодарностей: 693
Полезность: 740

Акелпад
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя pulse.
сообщение 22.2.2013, 18:45
Сообщение #16
Стаж: 13 лет

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

Цитата(Andrei @ 22.2.2013, 19:43) *
Акелпад

Скажи как? Я сохранял в UTF-8, но все равно так.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
NeWeRtH
сообщение 22.2.2013, 18:49
Сообщение #17
Стаж: 13 лет

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

Воть
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <hamsandwich>
#include <xs>
#include <engine>
#include <WPMGPrintChatColor>

#define PLUGIN "Dominations"
#define VERSION "0.6"
#define AUTHOR "Psycrow"

#define sound_domination "next21_dominations/tf_domination.wav"
#define sound_revenge "next21_dominations/tf_revenge.wav"
#define sound_freeze_cam "next21_dominations/freeze_cam.wav"

new dm_frags[33][33] // ˮ뮢⩩񲢠嬿 寬鮨𮢠 [餰﫝[禰򢠝
new dm_dominations_now[33] // ˮ뮢ﭨ 塭 �殲 󠨣𮪠
new bool:dm_domination[33][33] // իᣠ寬鮨𮢠 [餰﫝[禰򢠝


public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)

RegisterHam(Ham_Killed,"player","Dominations")
register_cvar("cv_dominations_frags","3")
register_cvar("cv_dominations_sounds","1")
register_cvar("cv_dominations_total","1")

if(get_timeleft() < 99999999 && get_cvar_num("cv_dominations_total"))
set_task(180.0, "check_timeleft")
}

public plugin_precache()
{
precache_sound(sound_domination)
precache_sound(sound_revenge)
precache_sound(sound_freeze_cam)
}

public client_connect(id)
{
for(new i=0; i < 33; i++)
{
dm_frags[id][i] = 0
dm_frags[i][id] = 0
dm_domination[id][i] = false
dm_domination[i][id] = false
}

dm_dominations_now[id] = 0
}

public client_disconnect(id)
{
new playersnames[33][32], count
for(new i=0; i < 33; i++)
if(dm_frags[i][id] >= get_cvar_num("cv_dominations_frags"))
get_user_name(i, playersnames[count++], 31)

if(count == 0)
return PLUGIN_CONTINUE

new victimname[32], message[256], len
get_user_name(id, victimname, 31)

if(count == 1)
PrintChatColor(0,PRINT_COLOR_RED,"!g[%s] !tИгрок !g%s !tпокадает сервер, не отомстив своему палачу !g%s", PLUGIN, victimname, playersnames[0])
else
{
PrintChatColor(0,PRINT_COLOR_RED,"!g[%s] !tИгрок !g%s !tпокадает сервер, не отомстив своим палачам:", PLUGIN, victimname)
for(new x = 0 ; x < count ; x++)
{
len += format(message[len], 255-len, "!g%s!t%s ", playersnames[x], x < (count-1) ? ", ":"")
if(len > 96 )
break
}
PrintChatColor(0,PRINT_COLOR_RED,"%s", message)
}

return PLUGIN_CONTINUE
}

public Dominations(victim, attacker)
{
if(!is_user_connected(attacker) || !is_user_connected(victim))
return HAM_IGNORED

if(cs_get_user_team(attacker) == cs_get_user_team(victim))
return HAM_IGNORED

dm_frags[attacker][victim] += 1
dm_frags[victim][attacker] = 0

if(dm_frags[attacker][victim] == get_cvar_num("cv_dominations_frags"))
{
dm_domination[attacker][victim] = true
dm_dominations_now[attacker]++
new player_name_v[33], player_name_a[33]
get_user_name(victim, player_name_v, 31)
get_user_name(attacker, player_name_a, 31)
PrintChatColor(0,PRINT_COLOR_RED,"!g[%s] !tИгрок !g%s !tтеперь доминирует над игроком !g%s", PLUGIN ,player_name_a, player_name_v) // ϡ򿢫��㲥쬠��ᬮ񼠤ﭨ �峠餰﫠�
if(get_cvar_num("cv_dominations_sounds"))
emit_sound(attacker,CHAN_AUTO,sound_domination,1.0, 1.0, 0, 100 )
}

if(dm_frags[attacker][victim] > get_cvar_num("cv_dominations_frags"))
{
new player_name_v[33], player_name_a[33]
get_user_name(victim, player_name_v, 31)
get_user_name(attacker, player_name_a, 31)
PrintChatColor(attacker,PRINT_COLOR_RED,"!g[%s] !tВы снова убили свою жертву !g%s", PLUGIN ,player_name_v) // ϡ򿢫��󡨩����禰򢠠��泼񿠥䮠禰򢮩 寬鮨𮢠
PrintChatColor(victim,PRINT_COLOR_RED,"!g[%s] !tВас снова убил ваш палач !g%s", PLUGIN ,player_name_a) // ϡ򿢫��禰򢥠寬鮨𮢠, ��󡨩��㬿泼񿠥䮠࡫Ḯ썊 if(get_cvar_num("cv_dominations_sounds"))
client_cmd(victim, "spk %s", sound_freeze_cam)
}

if(dm_frags[victim][attacker] == 0 && dm_domination[victim][attacker])
{
dm_domination[victim][attacker] = false
if(dm_dominations_now[victim] != 0)
dm_dominations_now[victim]--
new player_name_v[33], player_name_a[33]
get_user_name(victim, player_name_v, 31)
get_user_name(attacker, player_name_a, 31)
PrintChatColor(0,PRINT_COLOR_RED,"!g[%s] !tИгрок !g%s !tотомстил своему обидчику !g%s", PLUGIN, player_name_a, player_name_v) // ϡ򿢫�� ��禰򢠠񬮣젠ﳮ�鳼
if(get_cvar_num("cv_dominations_sounds"))
emit_sound(attacker,CHAN_AUTO,sound_revenge,1.0, 1.0, 0, 100 )
}

return HAM_IGNORED
}

public check_timeleft()
{
new time_string[12]
format(time_string, 11, "%d.0",get_timeleft())
set_task(str_to_float(time_string), "Dominations_total")
}

public Dominations_total(id)
{
new dm_max, player_name[33]
for (new i = 0 ; i < 33 ; i++ )
{
if(dm_dominations_now[i] > dm_max)
{
dm_max = dm_dominations_now[i]
get_user_name(i, player_name, 31)
}
}

if(dm_max > 2)
PrintChatColor(id,PRINT_COLOR_RED,"!g[%s] !tИгрок !g%s !tсохранил !g%d !tдоминирований", PLUGIN, player_name, dm_max)
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
  Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: