Mapchooser от 12 до 23 часа

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.
Аватар
petr0w
Извън линия
Потребител
Потребител
Мнения: 222
Регистриран на: 31 Окт 2016, 02:38
Се отблагодари: 5 пъти
Получена благодарност: 14 пъти
Обратна връзка:

Mapchooser от 12 до 23 часа

Мнение от petr0w » 11 Дек 2016, 11:27

Mapchooser да работи от 12 (на обяд) до 11 (вечерта). След това сървъра да си е дъст2 само ?
Bulgarska Trewa -91.132.63.63:27015

Аватар
By Shorty
Извън линия
Потребител
Потребител
Мнения: 51
Регистриран на: 11 Окт 2016, 15:31
Местоположение: Благоевград
Обратна връзка:

Re: Mapchooser от 12 до 23 часа

Мнение от By Shorty » 11 Дек 2016, 12:49

Здравей намерих това в нета но няма sma файл така че до колко е сигурен този плъгин незнам ето ти линк
http://makeserver.kz/plugins-cs16/20725 ... dosyk.html

Това е за през деня (с 06 по 00.00): maps_day.ini
Това е за през ноща (с 00 по 06.00): maps_night.ini
Connect 93.123.18.9:27015 }|{ E H C K A *OTPOBA* [Free VIP] 31/32 Status Изображение

93.123.18.9:27015 Click for connect with STEAM

Аватар
petr0w
Извън линия
Потребител
Потребител
Мнения: 222
Регистриран на: 31 Окт 2016, 02:38
Се отблагодари: 5 пъти
Получена благодарност: 14 пъти
Обратна връзка:

Re: Mapchooser от 12 до 23 часа

Мнение от petr0w » 11 Дек 2016, 12:57

Не ми се рискува със руски изработки без сорс код ..
Bulgarska Trewa -91.132.63.63:27015

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

Re: Mapchooser от 12 до 23 часа

Мнение от mount4 » 11 Дек 2016, 15:22

Пробвай:
mapchooser+.zip
(9.12 KiB) Свалено 88 пъти
mapchooser+.zip
(9.12 KiB) Свалено 88 пъти
Добавих това в оригиналното mapchooser.sma от AMXX 1.8.2

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

public is_dust2_time()
{
	new hour, minute, secound
     
    time( hour, minute, secound )
	
	if(hour > 23 || hour < 12)
		return true
	
	return 0
}

public voteNextmap()
{
	if(is_dust2_time())
	{
		set_cvar_string("amx_nextmap", "de_dust2");
		client_print(0, print_center, "It's dust2 time, so the next map will be de_dust2 again.")
		return;
	}
94.190.190.195:27015 -> Изображение <-- Runemod here !
94.190.190.195:27017 -> Изображение

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

Аватар
OciXCrom
Извън линия
Администратор
Администратор
Мнения: 7206
Регистриран на: 06 Окт 2016, 19:20
Местоположение: /resetscore
Се отблагодари: 117 пъти
Получена благодарност: 1295 пъти
Обратна връзка:

Re: Mapchooser от 12 до 23 часа

Мнение от OciXCrom » 11 Дек 2016, 16:47

Не е нужна никаква промяна по който да е плъгин.
Добавяш този плъгин:

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

#include <amxmodx>

#define NORMAL_FILE "mapcycle.txt"
#define NORMAL_START 12
#define NORMAL_END 23

#define SECONDARY_FILE "mapcycle_dust.txt"
#define SECONDARY_DISABLE "mapchooser"

new g_pFile

public plugin_init()
{
    register_plugin("Hour-Cycle", "1.0", "OciXCrom @ amxx-bg.info/forum")
    g_pFile = get_cvar_pointer("mapcyclefile")
    
    if(!use_normal_cycle())
        pause("ac", SECONDARY_DISABLE)
}

public plugin_end()
    set_pcvar_string(g_pFile, use_normal_cycle() ? NORMAL_FILE : SECONDARY_FILE)

bool:use_normal_cycle()
{
    new szHour[3]
    get_time("%H", szHour, charsmax(szHour))
    
    new iHour = str_to_num(szHour)
    return (NORMAL_START <= iHour <= NORMAL_END)
} 
В cstrike папката въвеждаш обикновените карти в mapcycle.txt. Създаваш и още един mapcycle с името mapcycle_dust.txt, в който добавяш само картата de_dust2. От 12 до 23 сървърът ще ползва файла mapcycle.txt, а в останалите часове ще е mapcycle_dust.txt и плъгинът с име mapchooser.amxx ще е изключен. Ако плъгинът ти е с друго име, промени го в кода.

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

Re: Mapchooser от 12 до 23 часа

Мнение от mount4 » 11 Дек 2016, 18:23

Какво значение има дали ще го направи с променен плъгин или отделен ?

Защо взимаш времето така ? Първо като стринг и после го конвертираш в num ?
Не е ли по-добре така ?

new hour, minute, secound
time( hour, minute, secound )
94.190.190.195:27015 -> Изображение <-- Runemod here !
94.190.190.195:27017 -> Изображение

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

Аватар
OciXCrom
Извън линия
Администратор
Администратор
Мнения: 7206
Регистриран на: 06 Окт 2016, 19:20
Местоположение: /resetscore
Се отблагодари: 117 пъти
Получена благодарност: 1295 пъти
Обратна връзка:

Re: Mapchooser от 12 до 23 часа

Мнение от OciXCrom » 11 Дек 2016, 21:15

Защото не съм се сетил, че съществува тази функция. :coolface:

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

#include <amxmodx>

#define NORMAL_FILE "mapcycle.txt"
#define NORMAL_START 12
#define NORMAL_END 23

#define SECONDARY_FILE "mapcycle_dust.txt"
#define SECONDARY_DISABLE "mapchooser"

new g_pFile

public plugin_init()
{
    register_plugin("Hour-Cycle", "1.0", "OciXCrom @ amxx-bg.info/forum")
    g_pFile = get_cvar_pointer("mapcyclefile")
    
    if(!use_normal_cycle())
        pause("ac", SECONDARY_DISABLE)
}

public plugin_end()
    set_pcvar_string(g_pFile, use_normal_cycle() ? NORMAL_FILE : SECONDARY_FILE)

bool:use_normal_cycle()
{
    new iHour; time(iHour)
    return (NORMAL_START <= iHour <= NORMAL_END)
}
По принцип няма кой знае каква разлика дали ще е с промяна или с отделен плъгин, обаче според мен си е в пъти по-удобно да мога да променя картата или пък да добавя повече dust карти в един файл, отколко да ги "hard-code"-вам в .sma файла.

ПС - public не е нужно в проверката ти. Когато се връща булева стойност, правилно е отпред да има bool таг. Минутите и секундите също са ненужни.

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

public is_dust2_time()
{
   new hour, minute, secound
     
    time( hour, minute, secound )
   
   if(hour > 23 || hour < 12)
      return true
   
   return 0
}
=>

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

bool:is_dust2_time()
{
    new iHour; time(iHour)
    return (12 <= iHour <= 23)
}

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

Re: Mapchooser от 12 до 23 часа

Мнение от mount4 » 11 Дек 2016, 21:24

Объркал си това "return (12 <= iHour <= 23)"
Часа НЕ трябва да е по-голям от 12 ами по-малък и за 23 същото -> трябва да е по-голям от 23 не по-малък.
Освен това не съм сигурен дали не трябва да бъде така -> return (12 <= iHour && iHour <= 23)
функцията трябва да изглежда така:

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

bool:is_dust2_time()
{ new iHour; time(iHour); return (hour > 23 || hour < 12); }
едит: сега виждам че и в твоя код си объркал проверката.
Направи я така: return (iHour > NORMAL_END || iHour < NORMAL_START)
Последно промяна от mount4 на 11 Дек 2016, 21:31, променено общо 2 пъти.
94.190.190.195:27015 -> Изображение <-- Runemod here !
94.190.190.195:27017 -> Изображение

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

Аватар
OciXCrom
Извън линия
Администратор
Администратор
Мнения: 7206
Регистриран на: 06 Окт 2016, 19:20
Местоположение: /resetscore
Се отблагодари: 117 пъти
Получена благодарност: 1295 пъти
Обратна връзка:

Re: Mapchooser от 12 до 23 часа

Мнение от OciXCrom » 11 Дек 2016, 21:27

Мда, понеже при мен е наобратно проверката. Може да стане и просто return !(12 <= iHour <= 23).

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

Re: Mapchooser от 12 до 23 часа

Мнение от mount4 » 11 Дек 2016, 21:30

Да, вярно :D
94.190.190.195:27015 -> Изображение <-- Runemod here !
94.190.190.195:27017 -> Изображение

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

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

Обратно към “Заявки за плъгини”

Кой е на линия

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