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

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

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

23-апр
10-апр
11-апр
02-дек

9 страниц V   1 2 ... 7 8 »
Раскрутка Counter-Strike 1.6

Steam Bonus

Статус пользователя kennybear
сообщение 17.1.2015, 16:25
Сообщение #1


Стаж: 8 лет 6 месяцев

Сообщений: 1394
Благодарностей: 710
Полезность: 593

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

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




Кто хочет посмотреть плагин в действии можете зайти на мой сервер со стима и посмотреть все сами Адрес: 46.174.48.160:27015
Изменил худ что бы у всех умещалось на экране
Прикрепленный файл  steam_bonus.sma ( 4,75 килобайт ) Кол-во скачиваний: 376


Отредактировал: kennybear, - 21.4.2016, 19:53


АРЕНА ГЕЙМЕРОВ [21] 2014-2020
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 10 раз
   Цитировать сообщение
Статус пользователя GOOD FELLOW
сообщение 17.1.2015, 16:33
Сообщение #2


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

Стаж: 9 лет

Сообщений: 2294
Благодарностей: 1187
Полезность: 890

С менюшек перешли на бонусы для стим? Оригинальность зашкаливает, тут уже их очень много на форуме лежит
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя kennybear
сообщение 17.1.2015, 16:37
Сообщение #3


Стаж: 8 лет 6 месяцев

Сообщений: 1394
Благодарностей: 710
Полезность: 593

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

Когда искал себе с таким функционалом то бесплатно не мог найти,поэтому как нашел в другом источнике решил поделится со всеми


АРЕНА ГЕЙМЕРОВ [21] 2014-2020
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя BornToBeFree
сообщение 17.1.2015, 16:56
Сообщение #4


Стаж: 8 лет 8 месяцев

Сообщений: 741
Благодарностей: 287
Полезность: 602

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

Добавить бы в него ещё квары, типо выдать только деньги и/или гранаты, показывать худ сообщения или нет


Скидка 5% при заказе сервера
Чтобы получить 5% скидку при заказе сервера на хостинге Serva4ok.ru
Необходимо ввести это кодовое слово gKUt-FENO-ZonE-aIaa
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя kennybear
сообщение 17.1.2015, 17:02
Сообщение #5


Стаж: 8 лет 6 месяцев

Сообщений: 1394
Благодарностей: 710
Полезность: 593

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

Цитата(ExTPuMaJI @ 17.1.2015, 17:56) *
Добавить бы в него ещё квары, типо выдать только деньги и/или гранаты, показывать худ сообщения или нет

так в исходнике можно это изменить,вырежи не нужные строки,могу скинуть исходник без худа,или вообще другой плагин в котором дает только деньги и боевую гранату,никакого худа

Отредактировал: kennybear, - 17.1.2015, 17:03


АРЕНА ГЕЙМЕРОВ [21] 2014-2020
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя GOOD FELLOW
сообщение 17.1.2015, 17:02
Сообщение #6


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

Стаж: 9 лет

Сообщений: 2294
Благодарностей: 1187
Полезность: 890

ExTPuMaJI, это проще простого сделать, регаешь квары, а потом через if делаешь
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя kennybear
сообщение 17.1.2015, 17:07
Сообщение #7


Стаж: 8 лет 6 месяцев

Сообщений: 1394
Благодарностей: 710
Полезность: 593

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

Цитата(GOOD FELLOW @ 17.1.2015, 18:02) *
ExTPuMaJI, это проще простого сделать, регаешь квары, а потом через if делаешь

Может он не умеет


АРЕНА ГЕЙМЕРОВ [21] 2014-2020
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя GOOD FELLOW
сообщение 17.1.2015, 17:12
Сообщение #8


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

Стаж: 9 лет

Сообщений: 2294
Благодарностей: 1187
Полезность: 890

Тогда это все объясняет
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
magis1337
сообщение 17.1.2015, 17:17
Сообщение #9
Стаж: 7 лет 11 месяцев
Город: Odessa

Сообщений: 2782
Благодарностей: 1535
Полезность: 918

host5.ru
Меценат Меценат

Прикрепленное изображение
это так и должно быть? или текст не поместился?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя kennybear
сообщение 17.1.2015, 17:21
Сообщение #10


Стаж: 8 лет 6 месяцев

Сообщений: 1394
Благодарностей: 710
Полезность: 593

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

Цитата(magis1337 @ 17.1.2015, 18:17) *
Прикрепленное изображение
это так и должно быть? или текст не поместился?

не должно так быть,сам редактировал худ чтоли?у меня все нормально умещается,худ лучше не делай длинный,и кодировку не забывай выставлять


АРЕНА ГЕЙМЕРОВ [21] 2014-2020
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
magis1337
сообщение 17.1.2015, 17:22
Сообщение #11
Стаж: 7 лет 11 месяцев
Город: Odessa

Сообщений: 2782
Благодарностей: 1535
Полезность: 918

host5.ru
Меценат Меценат

kennybear, вообще то, это на твоем сервере!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя kennybear
сообщение 17.1.2015, 17:24
Сообщение #12


Стаж: 8 лет 6 месяцев

Сообщений: 1394
Благодарностей: 710
Полезность: 593

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

Цитата(magis1337 @ 17.1.2015, 18:22) *
kennybear, вообще то, это на твоем сервере!

разрешение какое у тебя?


АРЕНА ГЕЙМЕРОВ [21] 2014-2020
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
magis1337
сообщение 17.1.2015, 17:25
Сообщение #13
Стаж: 7 лет 11 месяцев
Город: Odessa

Сообщений: 2782
Благодарностей: 1535
Полезность: 918

host5.ru
Меценат Меценат

1366x768
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя BornToBeFree
сообщение 17.1.2015, 17:27
Сообщение #14


Стаж: 8 лет 8 месяцев

Сообщений: 741
Благодарностей: 287
Полезность: 602

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

Цитата(GOOD FELLOW @ 17.1.2015, 18:02) *
Это проще простого сделать, регаешь квары, а потом через if делаешь

Это что-то типо этого?
Пример
Код:
#define TEST // вначале исходника


#if defined TEST
if(!get_bit(g_bProcedure, id))
{
cs_set_user_money(id, cs_get_user_money(id) + NUM_MONEY);
client_print_color(id, print_team_red, "^3%s ^1Ты получаешь бонус ^4'%d$'", PREFIX, NUM_MONEY);
set_bit(g_bProcedure, id);
}
#endif


Скидка 5% при заказе сервера
Чтобы получить 5% скидку при заказе сервера на хостинге Serva4ok.ru
Необходимо ввести это кодовое слово gKUt-FENO-ZonE-aIaa
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
BariN
сообщение 17.1.2015, 17:33
Сообщение #15
Стаж: 8 лет 5 месяцев

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

Если администратор играет с Steam в данном плагине функция которая автоматом выдаёт все гранаты они спорить не будут?
Код:
#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>
#include <cstrike>
#include <fun>

#define VIP ADMIN_LEVEL_H
#define ADMIN ADMIN_BAN
#define MAX_MAPS 100

#pragma tabsize 0

new g_iConfigsDir[64]
new g_iMapList[64], g_iMap[MAX_MAPS][64], g_iMapNum

const KEYSMENU = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_5|MENU_KEY_6|MENU_KEY_7|MEN
U_KEY_8|MENU_KEY_9|MENU_KEY_0

const PRIMARY_WEAPONS_BIT_SUM =
(1<<CSW_SCOUT)|(1<<CSW_XM1014)|(1<<CSW_MAC10)|(1<<CSW_AUG)|(1<<CSW_UMP45)|(1<<CSW_SG550)|(1<<CSW_GALIL)|(1<<CSW_FAMAS)|(1<<CSW_AWP)|(1<<
CSW_MP5NAVY)|(1<<CSW_M249)|(1<<CSW_M3)|(1<<CSW_M4A1)|(1<<CSW_TMP)|(1<<CSW_G3SG1)|(1<<CSW_SG552)|(1<<CSW_AK47)|(1<<CSW_P90)
const SECONDARY_WEAPONS_BIT_SUM = (1<<CSW_P228)|(1<<CSW_ELITE)|(1<<CSW_FIVESEVEN)|(1<<CSW_USP)|(1<<CSW_GLOCK18)|(1<<CSW_DEAGLE)

new can_take_round, can_take[33], can_take_hp[33], g_wait_resp[33], can_take_money[33], can_take_nade[33]
new g_msgSayText, g_maxplayers, g_msgScoreAttrib
new block

public plugin_init()
{
register_plugin("Vip Menu", "1.0", "ill")

register_event("HLTV", "event_round_start", "a", "1=0", "2=0")
register_event("TextMsg", "Event_Restart", "a", "2&#Game_C", "2&#Game_w")
register_clcmd("say /adminka", "ShowMotdAdm")
register_clcmd("say /vipka", "ShowMotdVip")
register_clcmd("say /admin", "print_adminlist")

register_clcmd("amx_vip", "press_menu")
register_menu("Vip Menu", KEYSMENU, "admin_menu")

RegisterHam(Ham_Spawn, "player", "fw_SpawnPost", 1)

g_maxplayers = get_maxplayers()
g_msgSayText = get_user_msgid("SayText")
g_msgScoreAttrib = get_user_msgid("ScoreAttrib")

static MapName[64]
get_mapname(MapName, 63)

new i = 0
while(i < g_iMapNum) {
if(containi(MapName, g_iMap[i++]) != -1) {
block = true
}
}
}


public plugin_precache() {
get_configsdir(g_iConfigsDir, charsmax(g_iConfigsDir))

format(g_iMapList, charsmax(g_iMapList), "%s/MapList.ini", g_iConfigsDir)
if(file_exists(g_iMapList)) {
new i = 0, iLen
while(i < MAX_MAPS && read_file(g_iMapList, i, g_iMap[g_iMapNum], charsmax(g_iMap), iLen)) {
i++
if(g_iMap[g_iMapNum][0] == ';' || !iLen)
continue
g_iMapNum++
}
} else {
write_file(g_iMapList, "; Map LIST")
}
}

public ShowMotdAdm(id)
{
show_motd(id, "adminka.txt")
return PLUGIN_HANDLED
}

public ShowMotdVip(id)
{
show_motd(id, "vip.txt")
return PLUGIN_HANDLED
}

public client_connect(id)
{
client_cmd(id, "^"bind^" ^"f3^" ^"amx_vip^"")
}

public client_putinserver(id)
{
if(get_user_flags(id) & VIP)
{
new name[33]
get_user_name(id, name, 32)
colored_print(0, "^x01Подключается^x04 VIP ^x01игрок ^x04%s", name)
}
}

public Event_Restart()
{
can_take_round = 0
}

public event_round_start()
{
can_take_round++

for (new id = 1; id <= g_maxplayers; id++)
{
if (g_wait_resp[id] > 0)
g_wait_resp[id]--

can_take[id] = true
can_take_hp[id] = true
can_take_money[id] = true
can_take_nade[id] = true


}
}

public fw_SpawnPost(id)
{
if(!is_user_alive(id))
return

if(!(get_user_flags(id) & VIP))
return

fm_set_user_scoreattrib(id, 4)

if(can_take_round >= 2)
{
give_item(id, "weapon_hegrenade")
give_item(id, "weapon_flashbang")
give_item(id, "weapon_flashbang")
give_item(id, "item_assaultsuit");
}

if(can_take_round == 2)
{
colored_print(id, "^x04[VIP] ^x01Вип меню активировано.")
}
}

public press_menu(id)
{
if(!(get_user_flags(id) & VIP))
{
colored_print(id, "^x04Недостаточно прав для использования команды")
return PLUGIN_HANDLED
}



show_vip_menu(id)

return PLUGIN_HANDLED
}

public show_vip_menu(id)
{
static menu[560], len
len = 0

len += formatex(menu[len], charsmax(menu) - len, "\rVIP МЕНЮ [Качественный Сервер]^n^n")

if(!block)
{
len += formatex(menu[len], charsmax(menu) - len, "\r1. \wВзять \r[\yМ16+Граната\r]^n")
len += formatex(menu[len], charsmax(menu) - len, "\r2. \wВзять \r[\yАК-47+Граната\r]^n")
len += formatex(menu[len], charsmax(menu) - len, "\r3. \wВзять \r[\yАВП+Гранаты\r]^n^n")
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "\d1. Взять [М16+Граната]^n")
len += formatex(menu[len], charsmax(menu) - len, "\d2. Взять [АК-47+Граната]^n")
len += formatex(menu[len], charsmax(menu) - len, "\d3. Взять [АВП+Гранаты]^n^n")
}

len += formatex(menu[len], charsmax(menu) - len, "\r4. \wКикнуть^n")
len += formatex(menu[len], charsmax(menu) - len, "\r5. \wГолосование за карту^n")
len += formatex(menu[len], charsmax(menu) - len, "\r6. \wЗаткнуть игрока^n^n")

if(!block)
{

len += formatex(menu[len], charsmax(menu) - len, "\r7. \wДобавить 15HP \r[1 раз за раунд]^n")
len += formatex(menu[len], charsmax(menu) - len, "\r8. \wВзять 5000$ \r[1 раз за раунд]^n")
len += formatex(menu[len], charsmax(menu) - len, "\r9. \wВсе гранаты \r[1 раз за раунд]^n^n")
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "\d7. Добавить 15HP [1 раз за раунд]^n")
len += formatex(menu[len], charsmax(menu) - len, "\d8. Взять 5000$ [1 раз за раунд]^n")
len += formatex(menu[len], charsmax(menu) - len, "\d9. Все гранаты [1 раз за раунд]^n^n")
}
len += formatex(menu[len], charsmax(menu) - len, "\r0.\y Выход")

show_menu(id, KEYSMENU, menu, -1, "Vip Menu")

return PLUGIN_CONTINUE
}

public admin_menu(id, key)
{
switch (key)
{
case 0:
{
if(block)
{
colored_print(id, "^x04На этой карте запрещено");
return PLUGIN_HANDLED
}

if(can_take_round < 2)
{
colored_print(id, "^x03Доступно только с 2го раунда")
return PLUGIN_HANDLED
}

if(!can_take[id])
{
colored_print(id, "^x03Можно взять в след. раунде!")
return PLUGIN_HANDLED
}

drop_weapons(id, 1)
drop_weapons(id, 2)

give_item(id,"weapon_hegrenade")
give_item(id,"weapon_deagle")
give_item(id,"weapon_m4a1")
cs_set_user_bpammo(id, CSW_M4A1, 90)
cs_set_user_bpammo(id, CSW_DEAGLE, 35)
new name[32]
get_user_name(id, name, 31)
colored_print(id, "^x04[Админ] ^x03%s взял M4A1+DGL+HE", name)

can_take[id] = false
}
case 1:
{
if(block)
{
colored_print(id, "^x04На этой карте запрещено");
return PLUGIN_HANDLED
}

if(can_take_round < 3)
{
colored_print(id, "^x03Доступно только с 2го раунда")
return PLUGIN_HANDLED
}

if(!can_take[id])
{
colored_print(id, "^x0Можно взять в след. раунде!")
return PLUGIN_HANDLED
}

drop_weapons(id, 1)
drop_weapons(id, 2)

give_item(id,"weapon_hegrenade")
give_item(id,"weapon_deagle")
give_item(id,"weapon_ak47")
cs_set_user_bpammo(id, CSW_AK47, 90)
cs_set_user_bpammo(id, CSW_DEAGLE, 35)
new name[32]
get_user_name(id, name, 31)
colored_print(id, "^x04[Вип меню] ^x03%s взял AK47+DGL+HE", name)

can_take[id] = false
}
case 2:
{
if(block)
{
colored_print(id, "^x04На этой карте запрещено");
return PLUGIN_HANDLED
}
if(can_take_round < 3)
{
colored_print(id, "^x03Доступно только с 3го раунда")
return PLUGIN_HANDLED
}

if(!can_take[id])
{
colored_print(id, "^x03Можно взять в след. раунде!")
return PLUGIN_HANDLED
}

drop_weapons(id, 1)
drop_weapons(id, 2)

give_item(id, "weapon_flashbang")
give_item(id, "weapon_flashbang")
give_item(id, "weapon_hegrenade")
give_item(id, "weapon_smokegrenade")
set_user_armor(id, 100)
give_item(id,"weapon_deagle")
give_item(id,"weapon_awp")
cs_set_user_bpammo(id, CSW_AWP, 30)
cs_set_user_bpammo(id, CSW_DEAGLE, 35)
new name[32]
get_user_name(id, name, 31)
colored_print(id, "^x04[Вип меню] ^x03%s взял AWP+DGL+HE+ARMOR", name)

can_take[id] = false
}
case 3:
{
client_cmd(id, "amx_kickmenu")
}
case 4:
{
client_cmd(id, "amx_votemapmenu")
}
case 5:
{
client_cmd(id, "amx_gagmenu")
}
case 6:
{
if(block)
{
colored_print(id, "^x04На этой карте запрещено");
return PLUGIN_HANDLED
}
if(!is_user_alive(id))
{
colored_print(id, "^x03Вы мертвы");
return PLUGIN_HANDLED
}

if(!can_take_hp[id])
{
colored_print(id, "^x03Можно взять в след. раунде!")
return PLUGIN_HANDLED
}

if(get_user_health(id) >= 50)
{
colored_print(id, "^x03Можно взять только когда меньше 50 НР")
return PLUGIN_HANDLED
}
set_user_health(id, get_user_health(id) + 15)
new name[32]
get_user_name(id, name, 31)
colored_print(id, "^x04[Вип меню] ^x03%s Вы добавили +15 HP", name)
can_take_hp[id] = false
}
case 7:
{
if(block)
{
colored_print(id, "^x04На этой карте запрещено");
return PLUGIN_HANDLED
}

if(can_take_round < 5)
{
colored_print(id, "^x03Доступно только с 5го раунда")
return PLUGIN_HANDLED
}

if(!can_take_money[id])
{
colored_print(id, "^x03Можно взять только раз за раунд")
return PLUGIN_HANDLED
}
cs_set_user_money(id, cs_get_user_money(id) + 5000)
new name[32]
get_user_name(id, name, 31)
colored_print(id, "^x04[Вип меню] ^x03%s взял 5000$", name)
can_take_money[id] = false
}
case 8:
{
if(block)
{
colored_print(id, "^x04На этой карте запрещено");
return PLUGIN_HANDLED
}

if(can_take_round < 3)
{
colored_print(id, "^x03Доступно только с 3го раунда")
return PLUGIN_HANDLED
}

if(!can_take_nade[id])
{
colored_print(id, "^x03Можно взять только раз за раунд")
return PLUGIN_HANDLED
}
give_item(id, "weapon_flashbang")
give_item(id, "weapon_hegrenade")
give_item(id, "weapon_smokegrenade")

new name[32]
get_user_name(id, name, 31)
colored_print(id, "^x04[Вип меню] ^x03%s взял все гранаты", name)
can_take_nade[id] = false
}
}
return PLUGIN_CONTINUE
}

public print_viplist(user)
{
new adminnames[33][32]
new message[256]
new id, count, x, len

for(id = 1 ; id <= g_maxplayers ; id++)
if(is_user_connected(id))
if(get_user_flags(id) & VIP)
get_user_name(id, adminnames[count++], 31)

len = format(message, 255, "Випы онлайн: ")
if(count > 0) {
for(x = 0 ; x < count ; x++) {
len += format(message[len], 255-len, "%s%s ", adminnames[x], x < (count-1) ? ", ":"")
if(len > 96 ) {
colored_print(user, "^x04%s", message)
len = format(message, 255, "")
}
}
colored_print(user, "^x04%s", message)
}
else {
len += format(message[len], 255-len, "Отсутствуют")
colored_print(user, "^x04%s", message)
}
}

public print_adminlist(user)
{
new adminnames[33][32]
new message[256]
new id, count, x, len

for(id = 1 ; id <= g_maxplayers ; id++)
if(is_user_connected(id))
if(get_user_flags(id) & ADMIN)
get_user_name(id, adminnames[count++], 31)

len = format(message, 255, "Админы онлайн: ")
if(count > 0) {
for(x = 0 ; x < count ; x++) {
len += format(message[len], 255-len, "%s%s ", adminnames[x], x < (count-1) ? ", ":"")
if(len > 96 ) {
colored_print(user, "^x04%s", message)
len = format(message, 255, "")
}
}
colored_print(user, "^x04%s", message)
}
else {
len += format(message[len], 255-len, "Отсутствуют")
colored_print(user, "^x04%s", message)
}

print_viplist(user)
}

stock fm_set_user_scoreattrib(id, attrib=4)
{
message_begin(MSG_BROADCAST, g_msgScoreAttrib, _, 0);
write_byte(id);
write_byte(attrib);
message_end();
}

stock drop_weapons(id, dropwhat)
{
static weapons[32], num, i, weaponid
num = 0
get_user_weapons(id, weapons, num)

for (i = 0; i < num; i++)
{
weaponid = weapons[i]

if ((dropwhat == 1 && ((1<<weaponid) & PRIMARY_WEAPONS_BIT_SUM)) || (dropwhat == 2 && ((1<<weaponid) & SECONDARY_WEAPONS_BIT_SUM)))
{
static wname[32]
get_weaponname(weaponid, wname, sizeof wname - 1)
engclient_cmd(id, "drop", wname)
}
}
}

stock colored_print( target, const message[], any:... )
{
static buffer[ 512 ]

if( !target )
{
static player
for( player = 1; player <= g_maxplayers; player++ )
{
if ( !is_user_connected( player ) )
continue;

vformat( buffer, charsmax( buffer ), message, 3 )

message_begin( MSG_ONE_UNRELIABLE, g_msgSayText, _, player )
write_byte( player )
write_string( buffer )
message_end()
}
}

else
{
vformat( buffer, charsmax( buffer ), message, 3 )

message_begin( MSG_ONE, g_msgSayText, _, target )
write_byte( target )
write_string( buffer )
message_end()
}
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя kennybear
сообщение 17.1.2015, 17:43
Сообщение #16


Стаж: 8 лет 6 месяцев

Сообщений: 1394
Благодарностей: 710
Полезность: 593

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

Цитата(BariN @ 17.1.2015, 18:33) *
Если администратор играет с Steam в данном плагине функция которая автоматом выдаёт все гранаты они спорить не будут?
Код:
#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>
#include <cstrike>
#include <fun>

#define VIP ADMIN_LEVEL_H
#define ADMIN ADMIN_BAN
#define MAX_MAPS 100

#pragma tabsize 0

new g_iConfigsDir[64]
new g_iMapList[64], g_iMap[MAX_MAPS][64], g_iMapNum

const KEYSMENU = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_5|MENU_KEY_6|MENU_KEY_7|MEN
U_KEY_8|MENU_KEY_9|MENU_KEY_0

const PRIMARY_WEAPONS_BIT_SUM =
(1<<CSW_SCOUT)|(1<<CSW_XM1014)|(1<<CSW_MAC10)|(1<<CSW_AUG)|(1<<CSW_UMP45)|(1<<CSW_SG550)|(1<<CSW_GALIL)|(1<<CSW_FAMAS)|(1<<CSW_AWP)|(1<<
CSW_MP5NAVY)|(1<<CSW_M249)|(1<<CSW_M3)|(1<<CSW_M4A1)|(1<<CSW_TMP)|(1<<CSW_G3SG1)|(1<<CSW_SG552)|(1<<CSW_AK47)|(1<<CSW_P90)
const SECONDARY_WEAPONS_BIT_SUM = (1<<CSW_P228)|(1<<CSW_ELITE)|(1<<CSW_FIVESEVEN)|(1<<CSW_USP)|(1<<CSW_GLOCK18)|(1<<CSW_DEAGLE)

new can_take_round, can_take[33], can_take_hp[33], g_wait_resp[33], can_take_money[33], can_take_nade[33]
new g_msgSayText, g_maxplayers, g_msgScoreAttrib
new block

public plugin_init()
{
register_plugin("Vip Menu", "1.0", "ill")

register_event("HLTV", "event_round_start", "a", "1=0", "2=0")
register_event("TextMsg", "Event_Restart", "a", "2&#Game_C", "2&#Game_w")
register_clcmd("say /adminka", "ShowMotdAdm")
register_clcmd("say /vipka", "ShowMotdVip")
register_clcmd("say /admin", "print_adminlist")

register_clcmd("amx_vip", "press_menu")
register_menu("Vip Menu", KEYSMENU, "admin_menu")

RegisterHam(Ham_Spawn, "player", "fw_SpawnPost", 1)

g_maxplayers = get_maxplayers()
g_msgSayText = get_user_msgid("SayText")
g_msgScoreAttrib = get_user_msgid("ScoreAttrib")

static MapName[64]
get_mapname(MapName, 63)

new i = 0
while(i < g_iMapNum) {
if(containi(MapName, g_iMap[i++]) != -1) {
block = true
}
}
}


public plugin_precache() {
get_configsdir(g_iConfigsDir, charsmax(g_iConfigsDir))

format(g_iMapList, charsmax(g_iMapList), "%s/MapList.ini", g_iConfigsDir)
if(file_exists(g_iMapList)) {
new i = 0, iLen
while(i < MAX_MAPS && read_file(g_iMapList, i, g_iMap[g_iMapNum], charsmax(g_iMap), iLen)) {
i++
if(g_iMap[g_iMapNum][0] == ';' || !iLen)
continue
g_iMapNum++
}
} else {
write_file(g_iMapList, "; Map LIST")
}
}

public ShowMotdAdm(id)
{
show_motd(id, "adminka.txt")
return PLUGIN_HANDLED
}

public ShowMotdVip(id)
{
show_motd(id, "vip.txt")
return PLUGIN_HANDLED
}

public client_connect(id)
{
client_cmd(id, "^"bind^" ^"f3^" ^"amx_vip^"")
}

public client_putinserver(id)
{
if(get_user_flags(id) & VIP)
{
new name[33]
get_user_name(id, name, 32)
colored_print(0, "^x01Подключается^x04 VIP ^x01игрок ^x04%s", name)
}
}

public Event_Restart()
{
can_take_round = 0
}

public event_round_start()
{
can_take_round++

for (new id = 1; id <= g_maxplayers; id++)
{
if (g_wait_resp[id] > 0)
g_wait_resp[id]--

can_take[id] = true
can_take_hp[id] = true
can_take_money[id] = true
can_take_nade[id] = true


}
}

public fw_SpawnPost(id)
{
if(!is_user_alive(id))
return

if(!(get_user_flags(id) & VIP))
return

fm_set_user_scoreattrib(id, 4)

if(can_take_round >= 2)
{
give_item(id, "weapon_hegrenade")
give_item(id, "weapon_flashbang")
give_item(id, "weapon_flashbang")
give_item(id, "item_assaultsuit");
}

if(can_take_round == 2)
{
colored_print(id, "^x04[VIP] ^x01Вип меню активировано.")
}
}

public press_menu(id)
{
if(!(get_user_flags(id) & VIP))
{
colored_print(id, "^x04Недостаточно прав для использования команды")
return PLUGIN_HANDLED
}



show_vip_menu(id)

return PLUGIN_HANDLED
}

public show_vip_menu(id)
{
static menu[560], len
len = 0

len += formatex(menu[len], charsmax(menu) - len, "\rVIP МЕНЮ [Качественный Сервер]^n^n")

if(!block)
{
len += formatex(menu[len], charsmax(menu) - len, "\r1. \wВзять \r[\yМ16+Граната\r]^n")
len += formatex(menu[len], charsmax(menu) - len, "\r2. \wВзять \r[\yАК-47+Граната\r]^n")
len += formatex(menu[len], charsmax(menu) - len, "\r3. \wВзять \r[\yАВП+Гранаты\r]^n^n")
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "\d1. Взять [М16+Граната]^n")
len += formatex(menu[len], charsmax(menu) - len, "\d2. Взять [АК-47+Граната]^n")
len += formatex(menu[len], charsmax(menu) - len, "\d3. Взять [АВП+Гранаты]^n^n")
}

len += formatex(menu[len], charsmax(menu) - len, "\r4. \wКикнуть^n")
len += formatex(menu[len], charsmax(menu) - len, "\r5. \wГолосование за карту^n")
len += formatex(menu[len], charsmax(menu) - len, "\r6. \wЗаткнуть игрока^n^n")

if(!block)
{

len += formatex(menu[len], charsmax(menu) - len, "\r7. \wДобавить 15HP \r[1 раз за раунд]^n")
len += formatex(menu[len], charsmax(menu) - len, "\r8. \wВзять 5000$ \r[1 раз за раунд]^n")
len += formatex(menu[len], charsmax(menu) - len, "\r9. \wВсе гранаты \r[1 раз за раунд]^n^n")
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "\d7. Добавить 15HP [1 раз за раунд]^n")
len += formatex(menu[len], charsmax(menu) - len, "\d8. Взять 5000$ [1 раз за раунд]^n")
len += formatex(menu[len], charsmax(menu) - len, "\d9. Все гранаты [1 раз за раунд]^n^n")
}
len += formatex(menu[len], charsmax(menu) - len, "\r0.\y Выход")

show_menu(id, KEYSMENU, menu, -1, "Vip Menu")

return PLUGIN_CONTINUE
}

public admin_menu(id, key)
{
switch (key)
{
case 0:
{
if(block)
{
colored_print(id, "^x04На этой карте запрещено");
return PLUGIN_HANDLED
}

if(can_take_round < 2)
{
colored_print(id, "^x03Доступно только с 2го раунда")
return PLUGIN_HANDLED
}

if(!can_take[id])
{
colored_print(id, "^x03Можно взять в след. раунде!")
return PLUGIN_HANDLED
}

drop_weapons(id, 1)
drop_weapons(id, 2)

give_item(id,"weapon_hegrenade")
give_item(id,"weapon_deagle")
give_item(id,"weapon_m4a1")
cs_set_user_bpammo(id, CSW_M4A1, 90)
cs_set_user_bpammo(id, CSW_DEAGLE, 35)
new name[32]
get_user_name(id, name, 31)
colored_print(id, "^x04[Админ] ^x03%s взял M4A1+DGL+HE", name)

can_take[id] = false
}
case 1:
{
if(block)
{
colored_print(id, "^x04На этой карте запрещено");
return PLUGIN_HANDLED
}

if(can_take_round < 3)
{
colored_print(id, "^x03Доступно только с 2го раунда")
return PLUGIN_HANDLED
}

if(!can_take[id])
{
colored_print(id, "^x0Можно взять в след. раунде!")
return PLUGIN_HANDLED
}

drop_weapons(id, 1)
drop_weapons(id, 2)

give_item(id,"weapon_hegrenade")
give_item(id,"weapon_deagle")
give_item(id,"weapon_ak47")
cs_set_user_bpammo(id, CSW_AK47, 90)
cs_set_user_bpammo(id, CSW_DEAGLE, 35)
new name[32]
get_user_name(id, name, 31)
colored_print(id, "^x04[Вип меню] ^x03%s взял AK47+DGL+HE", name)

can_take[id] = false
}
case 2:
{
if(block)
{
colored_print(id, "^x04На этой карте запрещено");
return PLUGIN_HANDLED
}
if(can_take_round < 3)
{
colored_print(id, "^x03Доступно только с 3го раунда")
return PLUGIN_HANDLED
}

if(!can_take[id])
{
colored_print(id, "^x03Можно взять в след. раунде!")
return PLUGIN_HANDLED
}

drop_weapons(id, 1)
drop_weapons(id, 2)

give_item(id, "weapon_flashbang")
give_item(id, "weapon_flashbang")
give_item(id, "weapon_hegrenade")
give_item(id, "weapon_smokegrenade")
set_user_armor(id, 100)
give_item(id,"weapon_deagle")
give_item(id,"weapon_awp")
cs_set_user_bpammo(id, CSW_AWP, 30)
cs_set_user_bpammo(id, CSW_DEAGLE, 35)
new name[32]
get_user_name(id, name, 31)
colored_print(id, "^x04[Вип меню] ^x03%s взял AWP+DGL+HE+ARMOR", name)

can_take[id] = false
}
case 3:
{
client_cmd(id, "amx_kickmenu")
}
case 4:
{
client_cmd(id, "amx_votemapmenu")
}
case 5:
{
client_cmd(id, "amx_gagmenu")
}
case 6:
{
if(block)
{
colored_print(id, "^x04На этой карте запрещено");
return PLUGIN_HANDLED
}
if(!is_user_alive(id))
{
colored_print(id, "^x03Вы мертвы");
return PLUGIN_HANDLED
}

if(!can_take_hp[id])
{
colored_print(id, "^x03Можно взять в след. раунде!")
return PLUGIN_HANDLED
}

if(get_user_health(id) >= 50)
{
colored_print(id, "^x03Можно взять только когда меньше 50 НР")
return PLUGIN_HANDLED
}
set_user_health(id, get_user_health(id) + 15)
new name[32]
get_user_name(id, name, 31)
colored_print(id, "^x04[Вип меню] ^x03%s Вы добавили +15 HP", name)
can_take_hp[id] = false
}
case 7:
{
if(block)
{
colored_print(id, "^x04На этой карте запрещено");
return PLUGIN_HANDLED
}

if(can_take_round < 5)
{
colored_print(id, "^x03Доступно только с 5го раунда")
return PLUGIN_HANDLED
}

if(!can_take_money[id])
{
colored_print(id, "^x03Можно взять только раз за раунд")
return PLUGIN_HANDLED
}
cs_set_user_money(id, cs_get_user_money(id) + 5000)
new name[32]
get_user_name(id, name, 31)
colored_print(id, "^x04[Вип меню] ^x03%s взял 5000$", name)
can_take_money[id] = false
}
case 8:
{
if(block)
{
colored_print(id, "^x04На этой карте запрещено");
return PLUGIN_HANDLED
}

if(can_take_round < 3)
{
colored_print(id, "^x03Доступно только с 3го раунда")
return PLUGIN_HANDLED
}

if(!can_take_nade[id])
{
colored_print(id, "^x03Можно взять только раз за раунд")
return PLUGIN_HANDLED
}
give_item(id, "weapon_flashbang")
give_item(id, "weapon_hegrenade")
give_item(id, "weapon_smokegrenade")

new name[32]
get_user_name(id, name, 31)
colored_print(id, "^x04[Вип меню] ^x03%s взял все гранаты", name)
can_take_nade[id] = false
}
}
return PLUGIN_CONTINUE
}

public print_viplist(user)
{
new adminnames[33][32]
new message[256]
new id, count, x, len

for(id = 1 ; id <= g_maxplayers ; id++)
if(is_user_connected(id))
if(get_user_flags(id) & VIP)
get_user_name(id, adminnames[count++], 31)

len = format(message, 255, "Випы онлайн: ")
if(count > 0) {
for(x = 0 ; x < count ; x++) {
len += format(message[len], 255-len, "%s%s ", adminnames[x], x < (count-1) ? ", ":"")
if(len > 96 ) {
colored_print(user, "^x04%s", message)
len = format(message, 255, "")
}
}
colored_print(user, "^x04%s", message)
}
else {
len += format(message[len], 255-len, "Отсутствуют")
colored_print(user, "^x04%s", message)
}
}

public print_adminlist(user)
{
new adminnames[33][32]
new message[256]
new id, count, x, len

for(id = 1 ; id <= g_maxplayers ; id++)
if(is_user_connected(id))
if(get_user_flags(id) & ADMIN)
get_user_name(id, adminnames[count++], 31)

len = format(message, 255, "Админы онлайн: ")
if(count > 0) {
for(x = 0 ; x < count ; x++) {
len += format(message[len], 255-len, "%s%s ", adminnames[x], x < (count-1) ? ", ":"")
if(len > 96 ) {
colored_print(user, "^x04%s", message)
len = format(message, 255, "")
}
}
colored_print(user, "^x04%s", message)
}
else {
len += format(message[len], 255-len, "Отсутствуют")
colored_print(user, "^x04%s", message)
}

print_viplist(user)
}

stock fm_set_user_scoreattrib(id, attrib=4)
{
message_begin(MSG_BROADCAST, g_msgScoreAttrib, _, 0);
write_byte(id);
write_byte(attrib);
message_end();
}

stock drop_weapons(id, dropwhat)
{
static weapons[32], num, i, weaponid
num = 0
get_user_weapons(id, weapons, num)

for (i = 0; i < num; i++)
{
weaponid = weapons[i]

if ((dropwhat == 1 && ((1<<weaponid) & PRIMARY_WEAPONS_BIT_SUM)) || (dropwhat == 2 && ((1<<weaponid) & SECONDARY_WEAPONS_BIT_SUM)))
{
static wname[32]
get_weaponname(weaponid, wname, sizeof wname - 1)
engclient_cmd(id, "drop", wname)
}
}
}

stock colored_print( target, const message[], any:... )
{
static buffer[ 512 ]

if( !target )
{
static player
for( player = 1; player <= g_maxplayers; player++ )
{
if ( !is_user_connected( player ) )
continue;

vformat( buffer, charsmax( buffer ), message, 3 )

message_begin( MSG_ONE_UNRELIABLE, g_msgSayText, _, player )
write_byte( player )
write_string( buffer )
message_end()
}
}

else
{
vformat( buffer, charsmax( buffer ), message, 3 )

message_begin( MSG_ONE, g_msgSayText, _, target )
write_byte( target )
write_string( buffer )
message_end()
}
}

не будут

Цитата(magis1337 @ 17.1.2015, 18:25) *
1366x768


Вот смотри как у меня


АРЕНА ГЕЙМЕРОВ [21] 2014-2020
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя TauJIeP
сообщение 18.1.2015, 14:06
Сообщение #17


Стаж: 9 лет 8 месяцев
Город: Уральск

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

Не компилится он. И нельзя скачать его.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
maxiuser
сообщение 18.1.2015, 16:40
Сообщение #18
Стаж: 7 лет 10 месяцев

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

Цитата(kennybear @ 17.1.2015, 22:43) *
не будут



Вот смотри как у меня

Поставь сам себе бан за такие модели игроков.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя nik72rus
сообщение 19.2.2015, 4:53
Сообщение #19
Стаж: 7 лет 4 месяца

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

ребят))кто хорошо дружит с редактированием плагина)) можете вместо 1000$ броню со шлемом поставить??
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя kennybear
сообщение 19.2.2015, 10:49
Сообщение #20


Стаж: 8 лет 6 месяцев

Сообщений: 1394
Благодарностей: 710
Полезность: 593

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

Цитата(nik72rus @ 19.2.2015, 5:53) *
ребят))кто хорошо дружит с редактированием плагина)) можете вместо 1000$ броню со шлемом поставить??

можно


АРЕНА ГЕЙМЕРОВ [21] 2014-2020
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
9 страниц V   1 2 ... 7 8 »
 
Ответить в данную темуНачать новую тему
 
0 пользователей и 3 гостей читают эту тему: