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

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

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

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

Включение плагина на конкретной карте

, configs/maps не предлагать...
Статус пользователя tenb63rus
сообщение 22.2.2015, 13:17
Сообщение #1


Стаж: 12 лет

Сообщений: 817
Благодарностей: 476
Полезность: 850

Всем привет, у меня есть пара плагинов, которые должны работать, например только на de_ картах, на остальных же должны отключаться (останавливаться).
При этом мне важно распололожение и порядок плагинов в plugins.ini, поэтому метод прописывания в configs/maps/plugins-de_.ini не подходит.
Пытался использовать код из плагина 35hp_fix (от serfreeman1337)
Код:
public plugin_cfg(){
new map[32]
get_mapname(map,31)

if(!equal(map,"35hp_",5))
pause("ad")
}

Эффекта не получил, плагин везде отключается, прошу помощи.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя ex3m777
сообщение 22.2.2015, 13:29
Сообщение #2


Стаж: 13 лет
Город: Москва

Сообщений: 2037
Благодарностей: 1135
Полезность: 968

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

Код:
new bool:g_iBlockBonus;


Код:
	new iMap_Name[32], iMap_Prefix[][] = { "de_" };
get_mapname(iMap_Name, charsmax(iMap_Name))
for(new i; i < sizeof iMap_Prefix; i++)
{
if(containi(iMap_Name, iMap_Prefix[i]) != -1)
g_iBlockBonus = true
}


добавь в public plugin_init()

еще тебе нужно будет добавить вот этот код

Код:
if(g_iBlockBonus) return 0;


это уже в зависимости от плагина.. хз тебе куда его

Отредактировал: ex3m777, - 22.2.2015, 13:41


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя tenb63rus
сообщение 22.2.2015, 13:45
Сообщение #3


Стаж: 12 лет

Сообщений: 817
Благодарностей: 476
Полезность: 850

Цитата(ex3m777 @ 22.2.2015, 13:29) *
Скрытый текст
Код:
new bool:g_iBlockBonus;


Код:
	new iMap_Name[32], iMap_Prefix[][] = { "de_" };
get_mapname(iMap_Name, charsmax(iMap_Name))
for(new i; i < sizeof iMap_Prefix; i++)
{
if(containi(iMap_Name, iMap_Prefix[i]) != -1)
g_iBlockBonus = true
}


добавь в public plugin_init()

еще тебе нужно будет добавить вот этот код

Код:
if(g_iBlockBonus) return 0;


это уже в зависимости от плагина.. хз тебе куда его

Чет не получилось, пытаюсь вот в этот плагин добавить:
c4timer
Код:
#include <amxmodx>

#define PLUGIN "c4 timer"
#define VERSION "1.1"
#define AUTHOR "cheap_suit"

new g_c4timer
new mp_c4timer

new cvar_showteam
new cvar_flash
new cvar_sprite
new cvar_msg

new g_msg_showtimer
new g_msg_roundtime
new g_msg_scenario

#define MAX_SPRITES 2
new const g_timersprite[MAX_SPRITES][] = { "bombticking", "bombticking1" }
new const g_message[] = "Detonation time intiallized....."

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_cvar(PLUGIN, VERSION, FCVAR_SPONLY|FCVAR_SERVER)

cvar_showteam = register_cvar("amx_showc4timer", "3")
cvar_flash = register_cvar("amx_showc4flash", "0")
cvar_sprite = register_cvar("amx_showc4sprite", "1")
cvar_msg = register_cvar("amx_showc4msg", "0")
mp_c4timer = get_cvar_pointer("mp_c4timer")

g_msg_showtimer = get_user_msgid("ShowTimer")
g_msg_roundtime = get_user_msgid("RoundTime")
g_msg_scenario = get_user_msgid("Scenario")

register_event("HLTV", "event_hltv", "a", "1=0", "2=0")
register_logevent("logevent_plantedthebomb", 3, "2=Planted_The_Bomb")
}

public event_hltv()
g_c4timer = get_pcvar_num(mp_c4timer)

public logevent_plantedthebomb()
{
new showtteam = get_pcvar_num(cvar_showteam)

static players[32], num, i
switch(showtteam)
{
case 1: get_players(players, num, "ace", "TERRORIST")
case 2: get_players(players, num, "ace", "CT")
case 3: get_players(players, num, "ac")
default: return
}
for(i = 0; i < num; ++i) set_task(1.0, "update_timer", players[i])
}

public update_timer(id)
{
message_begin(MSG_ONE_UNRELIABLE, g_msg_showtimer, _, id)
message_end()

message_begin(MSG_ONE_UNRELIABLE, g_msg_roundtime, _, id)
write_short(g_c4timer)
message_end()

message_begin(MSG_ONE_UNRELIABLE, g_msg_scenario, _, id)
write_byte(1)
write_string(g_timersprite[clamp(get_pcvar_num(cvar_sprite), 0, (MAX_SPRITES - 1))])
write_byte(150)
write_short(get_pcvar_num(cvar_flash) ? 20 : 0)
message_end()

if(get_pcvar_num(cvar_msg))
{
set_hudmessage(255, 180, 0, 0.44, 0.87, 2, 6.0, 6.0)
show_hudmessage(id, g_message)
}
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1033\\ f0\\ fs16 \n\\ par }
*/


Отредактировал: tenb63rus, - 22.2.2015, 13:46
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ex3m777
сообщение 22.2.2015, 14:07
Сообщение #4


Стаж: 13 лет
Город: Москва

Сообщений: 2037
Благодарностей: 1135
Полезность: 968

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

у меня тоже не получилось, наверное Я что-то упустил)) Я только учусь pardon.gif


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя user.gameover.user
сообщение 22.2.2015, 14:31
Сообщение #5
Стаж: 15 лет

Сообщений: 1470
Благодарностей: 426
Полезность: 700

конфигами всё можно сделать,в нужном порядке пропиши
Код
plugin1.amxx disabled
plugin2.amxx
plugin1.amxx

должно и так работать,но я переименовывал нужный плагин чтоб наверняка
Код
plugin1.amxx disabled
plugin2.amxx
plugin1dm.amxx


Отредактировал: user.gameover.user, - 22.2.2015, 14:32
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Factor
сообщение 22.2.2015, 17:51
Сообщение #6


Стаж: 14 лет

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

Вставь это Код:
new map[32];get_mapname(map,31);
if(containi(map,"de_")) pause("a"); //Если карта не de_, то отключает данный плагин.

в Код:
plugin_init()
, в плагин который нужно отключить.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Legenda
сообщение 22.2.2015, 20:33
Сообщение #7


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

Стаж: 16 лет

Сообщений: 3619
Благодарностей: 1706
Полезность: 1010

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

что мешает оставить оригинальный plugins.ini пустым ?
и подключать все плагины только через configs/maps/****
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя tenb63rus
сообщение 22.2.2015, 20:38
Сообщение #8


Стаж: 12 лет

Сообщений: 817
Благодарностей: 476
Полезность: 850

Цитата(Factor @ 22.2.2015, 17:51) *
Вставь это Код:
new map[32];get_mapname(map,31);
if(containi(map,"de_")) pause("a"); //Если карта не de_, то отключает данный плагин.

в Код:
plugin_init()
, в плагин который нужно отключить.

Получилось, сделал по аналогии кода с 1 поста,
Цитата
pause("ad")
За что отвечают эти флаги, где можно почитать?
Цитата(Legenda @ 22.2.2015, 20:33) *
что мешает оставить оригинальный plugins.ini пустым ?
и подключать все плагины только через configs/maps/****

Если понадобится убрать/добавить какие то плагины, придется каждый конфиг вручную редактировать. Если можно сделать посредством скриптинга, зачем усложнять?

Отредактировал: tenb63rus, - 22.2.2015, 20:44
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Legenda
сообщение 22.2.2015, 21:00
Сообщение #9


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

Стаж: 16 лет

Сообщений: 3619
Благодарностей: 1706
Полезность: 1010

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

Цитата(tenb63rus @ 22.2.2015, 21:38) *
Получилось, сделал по аналогии кода с 1 поста, За что отвечают эти флаги, где можно почитать?

Если понадобится убрать/добавить какие то плагины, придется каждый конфиг вручную редактировать. Если можно сделать посредством скриптинга, зачем усложнять?

тебе в любом случаи нужно редактировать что-то
либо плагин либо конфиг
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Factor
сообщение 22.2.2015, 21:28
Сообщение #10


Стаж: 14 лет

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

Цитата(tenb63rus @ 22.2.2015, 21:38) *
За что отвечают эти флаги, где можно почитать?

http://amxmodx.org/doc/index.html?page=sou...ore%2Fpause.htm
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: