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

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

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

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

Отключение плагинов на определённых картах

, не работает
Статус пользователя corefir
сообщение 1.2.2015, 20:04
Сообщение #1


Стаж: 14 лет

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

По идее, плагин не должен работать на картах awp_ 35hp_ ka_ he_
Но он работает. В чем проблема?

Код:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>

#define PLUGIN "AdminWeaponMenu"
#define VERSION "1.0"
#define AUTHOR "StudenT"

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 gRoundNum
new gRoundNum_2
new g_Maxplayers
new mapname[32]
new key = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_0

public plugin_init()
{
get_mapname(mapname, charsmax(mapname))
if(containi(mapname, "awp_") != -1 && containi(mapname, "35hp_") != -1 && containi(mapname, "ka_") != -1 && containi(mapname, "he_") != -1)
{
return
}
else
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_menu("AdminWeapon", key, "AdminWeaponFunc")
g_Maxplayers = get_maxplayers()
register_event("HLTV", "EventStartRound", "a", "1=0", "2=0")
register_event("TextMsg", "EventRestartRound", "a", "2=#Game_Commencing", "2=#Game_will_restart_in")
}
}

public EventStartRound()
{
gRoundNum++
gRoundNum_2++

for(new id = 1; id <= g_Maxplayers; id++)
{
if(!is_user_connected(id))
continue
if((get_user_flags(id) & ADMIN_KICK) && !(get_user_flags(id) & ADMIN_LEVEL_D))
{
set_task(0.0, "AdminWeaponMenu", id)
}

}
}

public EventRestartRound()
{
gRoundNum = 0
gRoundNum_2 = 0
}

public AdminWeaponMenu(id)
{
static weaponmenu[650], len
len = 0
len = formatex(weaponmenu[len], charsmax(weaponmenu) - len, "\yЖелаете взять оружие?^n^n")

len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, "\r1. \wДигл \y+ \wБроня \y+ \wВсе грены^n")
key |= MENU_KEY_1

if(cs_get_user_team(id) == CS_TEAM_T)
{
if(gRoundNum > 1)
{
len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, "\r2. \wКалаш \y+ \wДигл \y+ \wБроня \y+ \wВсе грены^n")
key |= MENU_KEY_2
}
else
{
len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, "\d2. Калаш \y+ \dДигл \y+ \dБроня \y+ \dВсе грены (\rсо 2 раунда\d)^n")
key &= ~MENU_KEY_2
}
}
if(cs_get_user_team(id) == CS_TEAM_CT)
{
if(gRoundNum > 1)
{
len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, "\r2. \wЭмка \y+ \wДигл \y+ \wБроня \y+ \wВсе грены^n")
key |= MENU_KEY_2
}
else
{
len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, "\d2. Эмка \y+ \dДигл \y+ \dБроня \y+ \dВсе грены (\rсо 2 раунда\d)^n")
key &= ~MENU_KEY_2
}
}

if(gRoundNum_2 > 1)
{
len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, "\r3. \wAWP \y+ \wДигл \y+ \wБроня \y+ \wВсе грены^n")
key |= MENU_KEY_3
}
else
{
len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, "\d3. AWP \y+ \dДигл \y+ \dБроня \y+ \dВсе грены (\rс 2 раунда\d)^n")
key &= ~MENU_KEY_3
}

if(gRoundNum_2 > 2)
{
len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, "\r4. \wПулемёт \y+ \wДигл \y+ \wБроня \y+ \wВсе грены^n^n")
key |= MENU_KEY_4
}
else
{
len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, "\d4. Пулемёт \y+ \dДигл \y+ \dБроня \y+ \dВсе грены (\rс 3 раунда\d)^n^n")
key &= ~MENU_KEY_4
}

len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, "\r0. \wНет, спасибо \y:)")
key |= MENU_KEY_0

show_menu(id, key, weaponmenu, -1, "AdminWeapon")
return PLUGIN_HANDLED
}

public AdminWeaponFunc(id, key)
{
switch(key)
{
case 0:
{
drop_weapons(id, 2)
give_item(id,"weapon_deagle")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"weapon_hegrenade")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_smokegrenade")
give_item(id,"item_assaultsuit")
}

case 1:
{
if(cs_get_user_team(id) == CS_TEAM_T)
{
if(gRoundNum > 1)
{
drop_weapons(id, 1)
drop_weapons(id, 2)
give_item(id,"weapon_ak47")
give_item(id,"ammo_762nato")
give_item(id,"ammo_762nato")
give_item(id,"ammo_762nato")
give_item(id,"ammo_762nato")
give_item(id,"weapon_hegrenade")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_smokegrenade")
give_item(id,"weapon_deagle")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"item_assaultsuit")
}
else
{
return PLUGIN_CONTINUE
}
}
if(cs_get_user_team(id) == CS_TEAM_CT)
{
if(gRoundNum > 1)
{
drop_weapons(id, 1)
drop_weapons(id, 2)
give_item(id,"weapon_m4a1")
give_item(id,"ammo_556nato")
give_item(id,"ammo_556nato")
give_item(id,"ammo_556nato")
give_item(id,"weapon_hegrenade")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_smokegrenade")
give_item(id,"weapon_deagle")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"item_assaultsuit")
}
else
{
return PLUGIN_CONTINUE
}
}
}

case 2:
{
if(gRoundNum_2 > 1)
{
drop_weapons(id, 1)
drop_weapons(id, 2)
give_item(id,"weapon_awp")
give_item(id,"ammo_338magnum")
give_item(id,"ammo_338magnum")
give_item(id,"ammo_338magnum")
give_item(id,"weapon_hegrenade")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_smokegrenade")
give_item(id,"weapon_deagle")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"item_assaultsuit")
}
else
{
return PLUGIN_CONTINUE
}
}

case 3:
{
if(gRoundNum_2 > 2)
{
drop_weapons(id, 1)
drop_weapons(id, 2)
give_item(id, "weapon_m249")
give_item(id,"ammo_556natobox")
give_item(id,"ammo_556natobox")
give_item(id,"ammo_556natobox")
give_item(id,"ammo_556natobox")
give_item(id,"ammo_556natobox")
give_item(id,"ammo_556natobox")
give_item(id,"ammo_556natobox")
give_item(id,"weapon_hegrenade")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_smokegrenade")
give_item(id,"weapon_deagle")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"item_assaultsuit")
}
else
{
return PLUGIN_CONTINUE
}
}
}
return PLUGIN_HANDLED
}

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, charsmax(wname))
engclient_cmd(id, "drop", wname)
}
}
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя cstriker
сообщение 1.2.2015, 20:09
Сообщение #2


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

Стаж: 13 лет

Сообщений: 1233
Благодарностей: 586
Полезность: 869

Что мешает сделать через конфиги?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
voed
сообщение 1.2.2015, 20:09
Сообщение #3
Стаж: 11 лет

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

Код:
if(containi(mapname, "awp_") || containi(mapname, "35hp_") || containi(mapname, "ka_") || containi(mapname, "he_"))

Если уж хочешь таким способом

Отредактировал: voed, - 1.2.2015, 20:10
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя corefir
сообщение 1.2.2015, 20:12
Сообщение #4


Стаж: 14 лет

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

Цитата(voed @ 1.2.2015, 20:09) *
Код:
if(containi(mapname, "awp_") || containi(mapname, "35hp_") || containi(mapname, "ka_") || containi(mapname, "he_"))

Если уж хочешь таким способом

теперь вообще не работает
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Fullserver
сообщение 1.2.2015, 20:15
Сообщение #5


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

Стаж: 11 лет

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

corefir,

Код:
if(containi(mapname, "awp_") != -1 || containi(mapname, "35hp_") != -1 || containi(mapname, "ka_") != -1 || containi(mapname, "he_") != -1)


&& означается что выполняются сразу все условия, || - любое из условий.

Отредактировал: Fullserver, - 1.2.2015, 20:17
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя corefir
сообщение 1.2.2015, 20:17
Сообщение #6


Стаж: 14 лет

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

Цитата(Fullserver @ 1.2.2015, 20:15) *
corefir,

Код:
if(containi(mapname, "awp_") != -1 || containi(mapname, "35hp_") != -1 || containi(mapname, "ka_") != -1 || containi(mapname, "he_") != -1)

да-да, до меня уже допёрло, сделал. спасибо всем. закрывайте.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
voed
сообщение 1.2.2015, 20:19
Сообщение #7
Стаж: 11 лет

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

Цитата(corefir @ 1.2.2015, 20:12) *
теперь вообще не работает

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