Как да оправим банването през amx_banmenu & amxmodmenu?

В този раздел можете да намерите полезни кодове и уроци свързани с PAWN скриптинга.
Аватар
WaLkZ
Извън линия
Администратор
Администратор
Мнения: 799
Регистриран на: 05 Окт 2016, 21:13
Местоположение: Варна
Се отблагодари: 75 пъти
Получена благодарност: 227 пъти
Обратна връзка:

Как да оправим банването през amx_banmenu & amxmodmenu?

Мнение от WaLkZ » 09 Окт 2016, 23:37

Първо трябва да знаете версията на вашия AMX Mod X.
Трябва Ви plmenu.sma от него. Можете да го вземете от amxmodx/scripting. Аз ще използвам този на AMX Mod X 1.8.1. :)

Отворете plmenu.sma с някой текстообработващ редактор(Notepad, Notepad++, Wordpad и т.н.).

Намерете:

Код за потвърждение: Избери целия код

public actionBanMenu(id, key)
Намерете в тази публична команда това:

Код за потвърждение: Избери целия код

			if (equal("4294967295", authid2)
				|| equal("HLTV", authid2)
				|| equal("STEAM_ID_LAN", authid2)
				|| equali("VALVE_ID_LAN", authid2))
			{
				/* END OF MODIFICATIONS BY MISTAGEE */
				new ipa[32]
				get_user_ip(player, ipa, 31, 1)
				
				server_cmd("addip %d %s;writeip", g_menuSettings[id], ipa)
			}
			else
			{
				server_cmd("banid %d #%d kick;writeid", g_menuSettings[id], userid2)
			}
Направете го така:

Код за потвърждение: Избери целия код

			new ipa[32]
			get_user_ip(player, ipa, 31, 1)
				
			server_cmd("addip %d %s;writeip", g_menuSettings[id], ipa)
Записвате файла, компилирате и го замествате със стария plmenu.amxx в папката amxmodx/plugins.

Автор: He3aBucuM

Аватар
mount4
Извън линия
Потребител
Потребител
Мнения: 187
Регистриран на: 03 Ное 2016, 19:54
Местоположение: Варна
Обратна връзка:

Re: Как да оправим банването през amx_banmenu & amxmodmenu?

Мнение от mount4 » 04 Ное 2016, 21:22

Здр,

Какво му има на банването през менютата ?

И нещо не виждам разлика м/у горното и долното ? :О

Код за потвърждение: Избери целия код

/* END OF MODIFICATIONS BY MISTAGEE */
            new ipa[32]
            get_user_ip(player, ipa, 31, 1)
            
            server_cmd("addip %d %s;writeip", g_menuSettings[id], ipa)

Код за потвърждение: Избери целия код

new ipa[32]
         get_user_ip(player, ipa, 31, 1)
            
         server_cmd("addip %d %s;writeip", g_menuSettings[id], ipa)
94.190.190.195:27015 -> Изображение <-- Runemod here !
94.190.190.195:27017 -> Изображение

Segmentation fault Изображение <-- Opera browser !

Аватар
WaLkZ
Извън линия
Администратор
Администратор
Мнения: 799
Регистриран на: 05 Окт 2016, 21:13
Местоположение: Варна
Се отблагодари: 75 пъти
Получена благодарност: 227 пъти
Обратна връзка:

Re: Как да оправим банването през amx_banmenu & amxmodmenu?

Мнение от WaLkZ » 04 Ное 2016, 21:26

Е как да не виждаш ? Премахва се цяла if else конструкция.

Аватар
mount4
Извън линия
Потребител
Потребител
Мнения: 187
Регистриран на: 03 Ное 2016, 19:54
Местоположение: Варна
Обратна връзка:

Re: Как да оправим банването през amx_banmenu & amxmodmenu?

Мнение от mount4 » 05 Ное 2016, 01:29

Ааа да вярно :Д
Какво му има на банването, това че не банва по ip ли ?

--------------------------------

А ако някой иска да махне перманентното банване от менюто -> търсите в този същия файл това:

Код за потвърждение: Избери целия код

	g_bantimes = ArrayCreate();
	// Load up the old default values
	ArrayPushCell(g_bantimes, 0);
	ArrayPushCell(g_bantimes, 5);
	ArrayPushCell(g_bantimes, 10);
	ArrayPushCell(g_bantimes, 15);
	ArrayPushCell(g_bantimes, 30);
	ArrayPushCell(g_bantimes, 45);
	ArrayPushCell(g_bantimes, 60);
и слагате "//" пред "ArrayPushCell(g_bantimes, 0);" Може да добавите и опция за банване за повече от 1 час.
Това става с добавянве на нов ред ArrayPushCell(g_bantimes, 120);

и накрая се получава това:

Код за потвърждение: Избери целия код

	g_bantimes = ArrayCreate();
	// Load up the old default values
	//ArrayPushCell(g_bantimes, 0);
	ArrayPushCell(g_bantimes, 5);
	ArrayPushCell(g_bantimes, 10);
	ArrayPushCell(g_bantimes, 15);
	ArrayPushCell(g_bantimes, 30);
	ArrayPushCell(g_bantimes, 45);
	ArrayPushCell(g_bantimes, 60);
	ArrayPushCell(g_bantimes, 120);
94.190.190.195:27015 -> Изображение <-- Runemod here !
94.190.190.195:27017 -> Изображение

Segmentation fault Изображение <-- Opera browser !

Аватар
j.stefanov
Извън линия
Потребител
Потребител
Мнения: 3
Регистриран на: 20 Авг 2017, 19:27

Как да оправим банването през amx_banmenu & amxmodmenu?

Мнение от j.stefanov » 26 Авг 2017, 02:45

Премахнете ми мнението, ако е проблем.
Видях, че @mount4 е показал как да добавяме още времена в менюто, не съм пробвал през plmenu-то да добавя още времена, но през amxx.cfg се получи, но щом добавя време като 10 080 минути и почва да го отчита разделено (10минути и 80 минути).
Въпроса ми как да го напиша във amxx.cfg-то за да излиза точно или трябва през plmenu да го направя?
И ако направи същия проблем и през plmenu как да го оправя?

Аватар
DaRk_StyLe
Извън линия
AMXX Скриптър
AMXX Скриптър
Мнения: 264
Регистриран на: 26 Окт 2016, 12:40
Се отблагодари: 11 пъти
Получена благодарност: 33 пъти

Как да оправим банването през amx_banmenu & amxmodmenu?

Мнение от DaRk_StyLe » 26 Авг 2017, 07:28

Добавяш следните редове в plmenu.sma и компилираш наново. След това си промени стойностите в amxx.cfg.

Код за потвърждение: Избери целия код

ArrayPushCell(g_bantimes, 10) // 10 минути
ArrayPushCell(g_bantimes, 80) // 80 минути

Аватар
j.stefanov
Извън линия
Потребител
Потребител
Мнения: 3
Регистриран на: 20 Авг 2017, 19:27

Как да оправим банването през amx_banmenu & amxmodmenu?

Мнение от j.stefanov » 26 Авг 2017, 15:19

Не ме разбра.. аз искам да има 10 080 (1 седмица) време в менюто, не 10 и 80 минути.

Аватар
DaRk_StyLe
Извън линия
AMXX Скриптър
AMXX Скриптър
Мнения: 264
Регистриран на: 26 Окт 2016, 12:40
Се отблагодари: 11 пъти
Получена благодарност: 33 пъти

Как да оправим банването през amx_banmenu & amxmodmenu?

Мнение от DaRk_StyLe » 26 Авг 2017, 15:29

Опитай ArrayPushCell(g_bantimes, 10080) в plmenu.sma, след което добави и такава опция от amxx.cfg.

Аватар
LoShIaA
Извън линия
Потребител
Потребител
Мнения: 323
Регистриран на: 20 Окт 2016, 14:44
Местоположение: Стара Загора
Се отблагодари: 120 пъти
Получена благодарност: 9 пъти

Как да оправим банването през amx_banmenu & amxmodmenu?

Мнение от LoShIaA » 22 Окт 2017, 13:18

Искам да попитмам понеже кода при plmenu-то на amxx 1.8.3 малко е променен:

Код за потвърждение: Избери целия код

			if (equal("4294967295", authid2)
				|| equal("HLTV", authid2)
				|| equal("STEAM_ID_LAN", authid2)
				|| equali("VALVE_ID_LAN", authid2))
			{
				/* END OF MODIFICATIONS BY MISTAGEE */
				new ipa[32];
				get_user_ip(player, ipa, charsmax(ipa), 1);

				server_cmd("addip %d %s;writeip", banTime, ipa);
				if (g_tempBans)
				{
					TrieSetString(g_tempBans, ipa, authid);
				}
			}
			else
			{
				server_cmd("banid %d #%d kick;writeid", banTime, userid2);
				if (g_tempBans)
				{
					TrieSetString(g_tempBans, authid2, authid);
				}
			}
Това цялото ли трябва да се замени с:

Код за потвърждение: Избери целия код

			new ipa[32]
			get_user_ip(player, ipa, 31, 1)
				
			server_cmd("addip %d %s;writeip", g_menuSettings[id], ipa)

Аватар
DaRk_StyLe
Извън линия
AMXX Скриптър
AMXX Скриптър
Мнения: 264
Регистриран на: 26 Окт 2016, 12:40
Се отблагодари: 11 пъти
Получена благодарност: 33 пъти

Как да оправим банването през amx_banmenu & amxmodmenu?

Мнение от DaRk_StyLe » 24 Окт 2017, 20:47

► Покажи скъсения текст

Публикувай отговор
  • Подобни теми
    Отговори
    Преглеждания
     Последно мнение

Обратно към “Полезни кодове/уроци”

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 4 госта