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

LS VipSistem (VipMenu)

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

Модератор: Leonidddd

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

Данный раздел форума служит для добавления новых плагинов в базу нашего форума. После того, как администратор/модератор утвердит плагин, он будет перемещен в раздел "Утвежденные плагины".

Правила при добавлении новых плагинов:

1. При вставке кода плагина необходимо использовать тег [pawn], в противном случае, если тег [pawn] не отображает ваш код, можно использовать тег [code].
2. Любые изображения должны быть загружены, как вложения к вашему сообщению.
3. Обязательно выкладывайте исходник sma плагина. Запрещено выкладывать amxx файл.
4. Обязательно указывайте настоящих авторов плагина, если вы использовали чьи-то наработки или функции, указывайте их авторов в сообщении.
5. Необходимо заполнять детальную информацию о плагине (версию, настройки, используемые модули, список изменений и другую).

LS VipSistem (VipMenu)

Сообщение nemec21 » 12 июн 2016, 03:01

Описание: Если у вас есть привилегии с флагом ADMIN_LEVEL_H

1. Меню выбора пистолетов (Пистолеты выбираются 1 раз, в следующих раундах выдает ваш выбор, пока вы сами не захотите сменить пистолет).
2. При спавне игрока дается бронь, каска, флеш (2), HE, smoke.
3. Со 2 раунда даёт АК- 47, M4A1, Famas, sg552, с 3 раунда + AWP, m249.
4. Показывает дату и текущее время сервера.
5. Меню блокируется на картах - "awp_india","fy_pool_day","aim_map_hlo","35hp_2", "fy_snow"
Код: Выделить всё
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>
#include <hamsandwich>
#include <strip_weapon>

#define DipVip ADMIN_LEVEL_H

new key = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_5|MENU_KEY_6|MENU_KEY_7|MENU_KEY_0
new g_szBlockMapPrefixList
[][] =
{
    "awp_india",
    "fy_pool_day",
    "aim_map_hlo",
    "35hp_2",
    "fy_snow"
}
new gl_RoundsCount

enum _
:PISTOLS
{
    DEAGLE,
    USP,
    GLOCK
}

new bool:g_UsePistol[33][PISTOLS]
new szMapName[32]

public plugin_init()
{
    register_plugin ("LS VipzSistem", "1.0", "[N][e][m][e][c]")

    get_mapname(szMapName, charsmax(szMapName))
    for(new i; i < sizeof(g_szBlockMapPrefixList); i++)
    {
        if (contain(g_szBlockMapPrefixList[i], szMapName) != INVALID_HANDLE)
        {
            pause("d");                   
        
}
    }
    register_event("HLTV", "EventStartRound", "a", "1=0", "2=0")
    register_event("TextMsg", "EventRestartRound", "a", "2=#Game_will_restart_in","2=#Game_Commencing")
    register_menu("VipMenu", key, "VipMenuFunc")
    register_menu("AmxPistols", key, "PistolsMenu")

    RegisterHam(Ham_Spawn, "player", "SpawnPlayer", 1)
 }

public EventStartRound()
    gl_RoundsCount++

public EventRestartRound()
    gl_RoundsCount = 0

public client_authorized
(id)
    reset_pistols(id)

public SpawnPlayer(id)
{
    if(!is_user_alive(id))
        return 
        
    if
(get_user_flags(id) & DipVip)
    {
        give_item(id,"weapon_hegrenade")
        give_item(id,"weapon_flashbang")
        cs_set_user_bpammo(id , CSW_FLASHBANG, 2)
        give_item(id,"weapon_smokegrenade")
        give_item(id,"item_assaultsuit")
        give_item(id,"item_thighpack")

        VipMenu(id)

        if(g_UsePistol[id][DEAGLE])
        {
            strip_weapons(id,SECONDARY_ONLY)
            give_item(id,"weapon_deagle")
            cs_set_user_bpammo(id , CSW_DEAGLE, 35)
        }

        if(g_UsePistol[id][USP])
        {
            strip_weapons(id,SECONDARY_ONLY)
            give_item(id,"weapon_usp")
            cs_set_user_bpammo(id , CSW_USP, 100)
        }

        if(g_UsePistol[id][GLOCK])
        {
            strip_weapons(id,SECONDARY_ONLY)
            give_item(id,"weapon_glock18")
            cs_set_user_bpammo(id , CSW_GLOCK18, 120)
        }
    }
}

public VipMenu(id)
{
    new ctime[64]
    get_time("%m/%d/%Y - %H.%M.%S", ctime, 63)

    static weaponmenu[650], len

    
    len 
= 0
    len 
= formatex(weaponmenu[len], charsmax(weaponmenu) - len, "     ...[LAST SHOT 18+]...^n             \yVIP \rМеню^n^n\d ...%s...^n^n", ctime)

    len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, (gl_RoundsCount > 1) ? "\r1. \wАК-47^n" : "")
    key |= MENU_KEY_1

    len 
+= formatex(weaponmenu[len], charsmax(weaponmenu) - len, (gl_RoundsCount > 1) ? "\r2. \wМ4А1^n" : "")
    key |= MENU_KEY_2

    len 
+= formatex(weaponmenu[len], charsmax(weaponmenu) - len, (gl_RoundsCount > 2) ? "\r3. \wAWP^n" : "")
    key |= MENU_KEY_3

    len 
+= formatex(weaponmenu[len], charsmax(weaponmenu) - len, (gl_RoundsCount > 1) ? "\r4. \wFamas^n" : "")
    key |= MENU_KEY_4

    len 
+= formatex(weaponmenu[len], charsmax(weaponmenu) - len, (gl_RoundsCount > 1) ? "\r5. \wШтурмовик^n" : "")
    key |= MENU_KEY_5

    len 
+= formatex(weaponmenu[len], charsmax(weaponmenu) - len, (gl_RoundsCount > 2) ? "\r6. \wПулемёт^n" : "")
    key |= MENU_KEY_6

    len 
+= formatex(weaponmenu[len], charsmax(weaponmenu) - len, "\r7. \wВаш пистолет")
    key |= MENU_KEY_7

    if
(g_UsePistol[id][DEAGLE])
    {
        len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, " \r[\yDEAGLE\r]^n")
    }

    else if(g_UsePistol[id][USP])
    {
        len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, " \r[\yUSP\r]^n")
    }

    else if(g_UsePistol[id][GLOCK])
    {
        len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, " \r[\yGLOCK18\r]^n")
    }
    else
    
{
        len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, " \r[\dSTANDART\r]^n")
    }

    len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, "\r[VIP] \yбонус \w- напишите в чате \rvips^n^n")

    len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, "\r0. \wВыход")
    key |= MENU_KEY_0

    show_menu
(id, key, weaponmenu, 30, "VipMenu")
}

public VipMenuFunc(id, key)
{
    switch(key)
    {
        case 0:
        if(gl_RoundsCount > 1)
        {
            strip_weapons(id,PRIMARY_ONLY)
            give_item(id,"weapon_ak47")
            cs_set_user_bpammo(id , CSW_AK47, 90)
        }
        else
        
{
            VipMenu(id)
        }
        case 1:
        if(gl_RoundsCount > 1)
        {
            strip_weapons(id,PRIMARY_ONLY)
            give_item(id, "weapon_m4a1")
            cs_set_user_bpammo(id , CSW_M4A1, 90)
        }
        else
        
{
            VipMenu(id)
        }
        case 2:
        if(gl_RoundsCount > 2)
        {
            strip_weapons(id,PRIMARY_ONLY)
            give_item(id, "weapon_awp")
            cs_set_user_bpammo(id , CSW_AWP, 30)
        }
        else
        
{
            VipMenu(id)
        }
        case 3:
        if(gl_RoundsCount > 1)
        {
            strip_weapons(id,PRIMARY_ONLY)
            give_item(id, "weapon_famas")
            cs_set_user_bpammo(id , CSW_FAMAS, 90)
        }
        else
        
{
            VipMenu(id)
        }
        case 4:
        if(gl_RoundsCount > 1)
        {
            strip_weapons(id,PRIMARY_ONLY)
            give_item(id, "weapon_sg552")
            cs_set_user_bpammo(id , CSW_SG552, 90)
        }
        else
        
{
            VipMenu(id)
        }
        case 5:
        if(gl_RoundsCount > 2)
        {
            strip_weapons(id,PRIMARY_ONLY)
            give_item(id, "weapon_m249")
            cs_set_user_bpammo(id , CSW_M249, 200)
        }
        else
        
{
            VipMenu(id)
        }
        case 6:
        {
            AmxPistolsMenu(id)
        }
        case 9: return
    
}
}

public AmxPistolsMenu(id)
{
    static pistolsmenu[650], len

    len 
= 0
    len 
= formatex(pistolsmenu[len], charsmax(pistolsmenu) - len, "\yPistols \rМЕНЮ^n^n")

    len += formatex(pistolsmenu[len], charsmax(pistolsmenu) - len, "\r1. \wDEAGLE^n")
    key |= MENU_KEY_1

    len 
+= formatex(pistolsmenu[len], charsmax(pistolsmenu) - len, "\r2. \wUSP^n")
    key |= MENU_KEY_2

    len 
+= formatex(pistolsmenu[len], charsmax(pistolsmenu) - len, "\r3. \wGLOCK 18^n^n")
    key |= MENU_KEY_3

    len 
+= formatex(pistolsmenu[len], charsmax(pistolsmenu) - len, "\r0. \wНазад")

    show_menu(id, key, pistolsmenu, 30, "AmxPistols")
}
stock reset_pistols( id)
{
    for(new i; i<PISTOLS; i++)
        g_UsePistol[id][i] = false;
}
public PistolsMenu(id, key)
{
    switch(key)
    {
        case 0:
        {
            reset_pistols(id)
            g_UsePistol[id][DEAGLE] = true
        
            strip_weapons
(id,SECONDARY_ONLY)
            give_item(id,"weapon_deagle")
            cs_set_user_bpammo(id , CSW_DEAGLE, 35)
            VipMenu(id)
        }
        case 1:
        {
            reset_pistols(id)
            g_UsePistol[id][USP] = true
        
            strip_weapons
(id,SECONDARY_ONLY)
            give_item(id,"weapon_usp")
            cs_set_user_bpammo(id , CSW_USP, 100)
            VipMenu(id)
        }
        case 2:
        {
            reset_pistols(id)
            g_UsePistol[id][GLOCK] = true
               
            strip_weapons
(id,SECONDARY_ONLY)
            give_item(id,"weapon_glock18")
            cs_set_user_bpammo(id , CSW_GLOCK18, 120)
            VipMenu(id)
        }
        case 9:
        {
            VipMenu(id)
        }
    }
}


У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось nemec21 22 июн 2016, 00:51, всего редактировалось 5 раз(а).
Аватара пользователя
nemec21
 
Сообщения: 799
Зарегистрирован: 07 фев 2016, 17:08
Откуда: Беларусь
Благодарил (а): 212 раз.
Поблагодарили: 44 раз.
Опыт программирования: Около 6 месяцев
Языки программирования: Counter-Strike 1.6

Re: LS VipzSistem (VipMenu)

Сообщение Subb98 » 12 июн 2016, 03:04

За оформление 5 баллов (я про меню).
«Очень хорошо. Лучше вы, чем я» © Donald J. Trump
Аватара пользователя
Subb98
Модератор
 
Сообщения: 5485
Зарегистрирован: 24 мар 2011, 19:42
Откуда: г. Пермь
Благодарил (а): 1329 раз.
Поблагодарили: 2343 раз.
Опыт программирования: Больше трех лет
Языки программирования: PHP

Re: LS VipzSistem (VipMenu)

Сообщение nemec21 » 12 июн 2016, 03:10

Влад что то не то???
Аватара пользователя
nemec21
 
Сообщения: 799
Зарегистрирован: 07 фев 2016, 17:08
Откуда: Беларусь
Благодарил (а): 212 раз.
Поблагодарили: 44 раз.
Опыт программирования: Около 6 месяцев
Языки программирования: Counter-Strike 1.6

Re: LS VipSistem (VipMenu)

Сообщение Subb98 » 12 июн 2016, 03:13

nemec21, наоборот, всё хорошо. Меню оформлено очень красиво, мне нравится.
«Очень хорошо. Лучше вы, чем я» © Donald J. Trump
Аватара пользователя
Subb98
Модератор
 
Сообщения: 5485
Зарегистрирован: 24 мар 2011, 19:42
Откуда: г. Пермь
Благодарил (а): 1329 раз.
Поблагодарили: 2343 раз.
Опыт программирования: Больше трех лет
Языки программирования: PHP

Re: LS VipSistem (VipMenu)

Сообщение nemec21 » 12 июн 2016, 03:28

Влад, забыл тебе вопрос задать
Тут нужен?

Код: Выделить всё
return


Код: Выделить всё
    if(g_deagle)
    {
        deagle_m(id)
        return
    
}

    if(g_usp)
    {
        usp_m(id)
        return
    
}

    if(g_glock)
    {
        glock_m(id)
        return
    
}
:-[
Аватара пользователя
nemec21
 
Сообщения: 799
Зарегистрирован: 07 фев 2016, 17:08
Откуда: Беларусь
Благодарил (а): 212 раз.
Поблагодарили: 44 раз.
Опыт программирования: Около 6 месяцев
Языки программирования: Counter-Strike 1.6

Re: LS VipSistem (VipMenu)

Сообщение Subb98 » 12 июн 2016, 03:33

nemec21, если будет выполняться только одно условие и другие варианты невозможны, то большого смысла возвращать что-либо нет, разве, что преждевременно останавливая функцию ты добиваешься некоторой оптимизации.
«Очень хорошо. Лучше вы, чем я» © Donald J. Trump
Аватара пользователя
Subb98
Модератор
 
Сообщения: 5485
Зарегистрирован: 24 мар 2011, 19:42
Откуда: г. Пермь
Благодарил (а): 1329 раз.
Поблагодарили: 2343 раз.
Опыт программирования: Больше трех лет
Языки программирования: PHP

Re: LS VipSistem (VipMenu)

Сообщение nemec21 » 12 июн 2016, 03:38

Просто если ты умер я заметил и если возврат не делать, выдает как бы все пистолеты, потом отбирает их и выдает ввбранный

Добавлено спустя 2 минуты 22 секунды:
Ладно спасибо, посижу подумаю, Может что подправлю
Аватара пользователя
nemec21
 
Сообщения: 799
Зарегистрирован: 07 фев 2016, 17:08
Откуда: Беларусь
Благодарил (а): 212 раз.
Поблагодарили: 44 раз.
Опыт программирования: Около 6 месяцев
Языки программирования: Counter-Strike 1.6

Re: LS VipSistem (VipMenu)

Сообщение Pafos » 12 июн 2016, 12:40

nemec21,
Код твой - быдлокод , но ты учишься так что норм :thumbs_up
VipSistem
:-D
Аватара пользователя
Pafos
 
Сообщения: 574
Зарегистрирован: 07 апр 2014, 18:03
Откуда: pfnClientConnect
Забанен
Благодарил (а): 129 раз.
Поблагодарили: 97 раз.
Опыт программирования: Больше трех лет
Языки программирования: Pawn

Re: LS VipSistem (VipMenu)

Сообщение Dexter_308 » 06 фев 2018, 22:45

обнова планируется по плагину или пока нет?
Аватара пользователя
Dexter_308
 
Сообщения: 1
Зарегистрирован: 22 фев 2016, 15:47
Благодарил (а): 3 раз.
Поблагодарили: 0 раз.
Опыт программирования: Меньше месяца
Языки программирования: Counter-Strike 1.6


Вернуться в Добавленные новые плагины

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

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