Русское сообщество по скриптингу

Наводим курсор, выбираем действие (Target Do)

Утвержденные плагины для AMX Mod X администратором/модератором форума.

Модератор: Leonidddd

Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.

В данном разделе форума разрешено создавать темы, касающие только работоспособных плагинов для AMX Mod X. Новые плагины нужно выкладывать в разделе "Новые плагины".

Наводим курсор, выбираем действие (Target Do)

Сообщение rangel » 05 окт 2009, 11:04

Описание: плагин для выполнения действий над энтитей, на которую наставлен прицел.


Код: Выделить всё
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>
#if defined engine
#include <engine>
#else
#include <fakemeta>
#endif

#define PLUGIN "Target Do"
#define VERSION "1.0"
#define AUTHOR "IIyCTou"

new g_Menu;

new index,bodypart
new name
[32],nameid[32],namemenu[32]

public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_clcmd("target","td")
}

build_menu()
{
    menu_additem(g_Menu, "Kick", "1");
    menu_additem(g_Menu, "Banip 5 min", "2");
    menu_additem(g_Menu, "Banip Permanently", "3");
    menu_additem(g_Menu, "SysBizz", "4");
    menu_additem(g_Menu, "UnSysBizz", "5");
    menu_additem(g_Menu, "To Spectator", "6");
    menu_additem(g_Menu, "Slay", "7");
    //menu_setprop(g_Menu, MPROP_PERPAGE, 0);
}
 

public actionTargetMenu
(id, menu, item)
{
    if( item < 0 ) return PLUGIN_CONTINUE;
    new cmd[3];
    new access, callback;
    menu_item_getinfo(menu, item, access, cmd,2,_,_, callback);
    new iChoice = str_to_num(cmd);
    if (iChoice==1)
    {
        server_cmd("amx_kick ^"%s^"",name)    
    
}
    if (iChoice==2)
    {
        server_cmd("amx_banip ^"%s^" 5",name)    
    
}
    if (iChoice==3)
    {
        server_cmd("amx_banip ^"%s^" 0",name)    
    
}
    if (iChoice==4)
    {
        server_cmd("amx_sysbizz ^"%s^"",name)    
    
}
    if (iChoice==5)
    {
        server_cmd("amx_unsysbizz ^"%s^"",name)    
    
}
    if (iChoice==6)
    {
        user_kill(index, 1)
        cs_set_user_team(index,CS_TEAM_SPECTATOR)
    }
    if (iChoice==7)
    {
        server_cmd("amx_slay ^"%s^"",name)    
    
}
    
    menu_destroy
(g_Menu)
    return PLUGIN_HANDLED;
}


public td(id)
{
    
    get_user_aiming
(id,index,bodypart)
    
    if
(index && is_valid_ent2(index) && index!=id)
    {
        if(index<=32)
        {
            if(is_user_alive(index) && !(get_user_flags(index) & ADMIN_IMMUNITY))
            {
                get_user_name(index,name,31)
                get_user_name(id,nameid,31)
                format(namemenu,31,"Target: %s",name)
                g_Menu = menu_create(namemenu,"actionTargetMenu");
                build_menu()
                menu_display(id, g_Menu, 0);
            }
        }
        else if(get_solidity(index)!=4)
        {
                get_user_name(index,name,31)
                get_user_name(id,nameid,31)
                format(namemenu,31,"Target: %s",name)
                g_Menu = menu_create(namemenu,"actionTargetMenu");
                build_menu()
                menu_display(id, g_Menu, 0);
        }
    }
   // else client_print_color(id,Blue,"Target is failed")
}


public is_valid_ent2(ent)
{
#if defined engine
    return is_valid_ent(ent)
#else
    return pev_valid(ent)
#endif
}

public get_solidity(ent)
{
#if defined engine
    return entity_get_int(ent,EV_INT_solid)
#else
    return pev(ent,pev_solid)
#endif
}


Утверждено. //Leonidddd
Аватара пользователя
rangel
 
Сообщения: 140
Зарегистрирован: 28 сен 2009, 18:52
Благодарил (а): 40 раз.
Поблагодарили: 26 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6

Re: Наводим курсор, выбираем действие (Target Do)

Сообщение DJ_WEST » 05 окт 2009, 15:48

Скриншоты, пожалуйста, добавляй через вложение. Исправил.
Не пишите мне в ЛС: если вам нужна помощь на бесплатной основе. Любые вопросы на форум.
Аватара пользователя
DJ_WEST
Администратор
 
Сообщения: 3641
Зарегистрирован: 22 авг 2009, 00:38
Благодарил (а): 48 раз.
Поблагодарили: 2209 раз.
Опыт программирования: Больше трех лет
Языки программирования: Counter-Strike 1.6
Counter-Strike: Source
Left 4 Dead
Left 4 Dead 2

Re: Наводим курсор, выбираем действие (Target Do)

Сообщение makc121 » 13 окт 2009, 22:47

а где ссылка на скачьку ??
Аватара пользователя
makc121
 
Сообщения: 116
Зарегистрирован: 13 окт 2009, 22:18
Благодарил (а): 24 раз.
Поблагодарили: 5 раз.

Re: Наводим курсор, выбираем действие (Target Do)

Сообщение rangel » 13 окт 2009, 23:01

исходный код в 1 посту, выложил на редактирование плагин не доделан но работает, я придумал идею кому нужно тот допишет :dntknw:
Аватара пользователя
rangel
 
Сообщения: 140
Зарегистрирован: 28 сен 2009, 18:52
Благодарил (а): 40 раз.
Поблагодарили: 26 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6

Re: Наводим курсор, выбираем действие (Target Do)

Сообщение toxa001 » 14 окт 2009, 00:57

Может кто подскажет, почему команды без плагина:
amx_migraine name 1
amx_migraine name 0

работают, а в плагине:
server_cmd("amx_migraine ^"%s^" ^"0^"", name)
server_cmd("amx_migraine ^"%s^" ^"1^"", name)

не работают.

Заранее спасибо.
Аватара пользователя
toxa001
 
Сообщения: 5
Зарегистрирован: 12 сен 2009, 14:34
Благодарил (а): 4 раз.
Поблагодарили: 0 раз.
Опыт программирования: Около 3 месяцев
Языки программирования: Counter-Strike 1.6

Re: Наводим курсор, выбираем действие (Target Do)

Сообщение rangel » 14 окт 2009, 07:29

хах)
Код: Выделить всё
new text[64]
format(text,63,"amx_mirage ^"%s^" 0", name)
server_cmd(text) 


вроде как то так

Добавлено спустя 2 минуты 1 секунду:
заметил лишний код и библиотеки, сегодня переделаю всё...
Аватара пользователя
rangel
 
Сообщения: 140
Зарегистрирован: 28 сен 2009, 18:52
Благодарил (а): 40 раз.
Поблагодарили: 26 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6

Re: Наводим курсор, выбираем действие (Target Do)

Сообщение toxa001 » 14 окт 2009, 11:14

Код: Выделить всё
        if (iChoice==4)
        {
            server_cmd("amx_migraine ^"%s^" 1", name)   
        }
        if (iChoice==5)
        {
            server_cmd("amx_migraine ^"%s^" 0", name)   
        }


Так тоже не работает ... , а как написано выше не компилится =)
Аватара пользователя
toxa001
 
Сообщения: 5
Зарегистрирован: 12 сен 2009, 14:34
Благодарил (а): 4 раз.
Поблагодарили: 0 раз.
Опыт программирования: Около 3 месяцев
Языки программирования: Counter-Strike 1.6

Re: Наводим курсор, выбираем действие (Target Do)

Сообщение rangel » 14 окт 2009, 11:18

toxa001 писал(а):
Код: Выделить всё
        if (iChoice==4)
        {
            server_cmd("amx_migraine ^"%s^" 1", name)   
        }
        if (iChoice==5)
        {
            server_cmd("amx_migraine ^"%s^" 0", name)   
        }


Так тоже не работает ... , а как написано выше не компилится =)




Код: Выделить всё
         if (iChoice==4)
         {
             new text[64]
             format(text,63,"amx_migraine ^"%s^" 1", name)
             server_cmd(text)   
         }
         if (iChoice==5)
         {
             new text[64]
             format(text,63,"amx_migraine ^"%s^" 0", name)
             server_cmd(text)
         }
Аватара пользователя
rangel
 
Сообщения: 140
Зарегистрирован: 28 сен 2009, 18:52
Благодарил (а): 40 раз.
Поблагодарили: 26 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6

Re: Наводим курсор, выбираем действие (Target Do)

Сообщение DJ_WEST » 14 окт 2009, 12:04

Может кто подскажет, почему команды без плагина:
amx_migraine name 1
amx_migraine name 0

работают, а в плагине:
server_cmd("amx_migraine ^"%s^" ^"0^"", name)
server_cmd("amx_migraine ^"%s^" ^"1^"", name)

не работают.

Может эти команды зарегистрированы как register_clcmd, а нужно register_concmd.
Не пишите мне в ЛС: если вам нужна помощь на бесплатной основе. Любые вопросы на форум.
Аватара пользователя
DJ_WEST
Администратор
 
Сообщения: 3641
Зарегистрирован: 22 авг 2009, 00:38
Благодарил (а): 48 раз.
Поблагодарили: 2209 раз.
Опыт программирования: Больше трех лет
Языки программирования: Counter-Strike 1.6
Counter-Strike: Source
Left 4 Dead
Left 4 Dead 2

Re: Наводим курсор, выбираем действие (Target Do)

Сообщение toxa001 » 14 окт 2009, 12:06

register_clcmd("amx_migraine", "AdminCommand_Migraine", ADMIN_LEVEL_A, "- < name/@CT/@TE/@ALL > < 0/1 >")
Аватара пользователя
toxa001
 
Сообщения: 5
Зарегистрирован: 12 сен 2009, 14:34
Благодарил (а): 4 раз.
Поблагодарили: 0 раз.
Опыт программирования: Около 3 месяцев
Языки программирования: Counter-Strike 1.6

След.

Вернуться в Утвержденные плагины

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9