Заявка за ауторестарт плъгин

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.

Модератори: Extreme, Extreme, Extreme, Extreme, Extreme, Extreme, Extreme

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

Заявка за ауторестарт плъгин

Мнение от OciXCrom » 21 Май 2020, 02:37

JackEyedJones написа: 20 Май 2020, 19:25

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

#include <amxmodx>

#define MINUTES 3

new iRestartTime;

public plugin_init()
{
	register_plugin("AutoRR", "0.1a", "aTmAx")
	register_clcmd("say fightleft", "TimeLeft")
	register_clcmd("say_team fightleft", "TimeLeft")
}

public TimeLeft(id)
{
	iRestartTime = (get_timeleft() / 60);
	client_print(id, print_chat, "There are %d minutes left in the fight.", iRestartTime);

	if(iRestartTime <= MINUTES) server_cmd("sv_restart 1")
}
В момента взима оставащатото време в секунди чрез get_timeleft(), дели го на 60 секунди за да го преобразува в минути и ако е по малко от дефинираното MINUTES рестартира рунда. mp_timelimit изобщо няма връзка в това тук и изобщо целта на плъгина не включва неговото използване.
Кодът ще се активира само при написване на командата в чата.

"Ауторестарт" :think:

Добавено преди 5 минути 18 секунди:
Пища това от телефона - добавил съм само рестарт на рунда след Х минути с цели 3 реда код. Предполагам ще получите идея как да направите останалото.

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

#include <amxmodx>

const RESTART_SLED_KOLKO_MINUTI = 30

public plugin_init()
{
    register_plugin("Restart sled X minuti", "1.0", "OciXCrom")
    set_task(RESTART_SLED_KOLKO_MINUTI * 60.0, "restartirai_runda", .flags = "c")
}

public restartirai_runda()
{
    server_cmd("sv_restartround 1")
}

Аватар
devilchy
Извън линия
Потребител
Потребител
Мнения: 223
Регистриран на: 03 Фев 2017, 14:08
Местоположение: Burgas
Се отблагодари: 3 пъти
Получена благодарност: 6 пъти
Обратна връзка:

Заявка за ауторестарт плъгин

Мнение от devilchy » 21 Май 2020, 21:59

Май няма да има друг @ociXCrom ...

Аватар
devilchy
Извън линия
Потребител
Потребител
Мнения: 223
Регистриран на: 03 Фев 2017, 14:08
Местоположение: Burgas
Се отблагодари: 3 пъти
Получена благодарност: 6 пъти
Обратна връзка:

Заявка за ауторестарт плъгин

Мнение от devilchy » 25 Май 2020, 22:06

Ще може ли някой да добави останалите неща във плъгина на ocixCrom... :think:
Последно промяна от stambeto2006 на 25 Май 2020, 22:30, променено общо 1 път.
Причина: Следващият път използвай бутона за "Избутване на темата"!

Аватар
atmax
Извън линия
Потребител
Потребител
Мнения: 492
Регистриран на: 22 Мар 2018, 15:06
Се отблагодари: 37 пъти
Получена благодарност: 43 пъти

Заявка за ауторестарт плъгин

Мнение от atmax » 26 Май 2020, 13:17

Може и да знам, но в момента не се сещам как да взема стойност от този таск за да изведем резултата като Timeleft..
Може би така, но не съм сигурен:

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

#include <amxmodx>

new Float:autorr = 60 * 30;

public plugin_init()
{
	register_plugin("Restart sled X minuti", "1.0", "OciXCrom")
	register_clcmd("say timeleft", "TimeLeft")
	register_clcmd("say_team timeleft", "TimeLeft")
	set_task(Float:autorr, "restartirai_runda", .flags = "c")
}

public restartirai_runda()
{
	autorr += get_gametime();
	server_cmd("sv_restartround 1")
}

public TimeLeft(id)
{
	if(is_user_connected(id))
	{
		client_print(id, print_chat, "[Time Left] %d second(s)", floatround((autorr - get_gametime())))
		return 1;
	}
	return PLUGIN_CONTINUE
}
Извън темата
Не съм пробвал даже дали се компилира, така че.. :D
Rest in peace my friend I always will remember you! 🖤👊

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

Заявка за ауторестарт плъгин

Мнение от OciXCrom » 26 Май 2020, 15:02

Не трябва да взимаш никаква стойност от task-а. Точното време когато рундът ще свърши моожеш да го запазиш в глобална променлива когато задаваш task-а, понеже знаеш кога ще стане.

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

new g_iEndTime

public plugin_init()
{
	g_iEndTime = get_systime() + RESTART_SLED_KOLKO_MINUTI * 60
}
И timeleft-а можеш да го намериш с g_iEndTime - get_systime() (в секунди).

Аватар
atmax
Извън линия
Потребител
Потребител
Мнения: 492
Регистриран на: 22 Мар 2018, 15:06
Се отблагодари: 37 пъти
Получена благодарност: 43 пъти

Заявка за ауторестарт плъгин

Мнение от atmax » 27 Май 2020, 10:54

*Done* Готов си :o

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

#include <amxmodx>

const RESTART_SLED_KOLKO_MINUTI = 30
new g_iEndTime, timeleft

public plugin_init()
{
	register_plugin("Restart sled X minuti", "1.0", "OciXCrom")
	register_clcmd("say timeleft", "TimeLeft")
	register_clcmd("say_team timeleft", "TimeLeft")
	set_task(RESTART_SLED_KOLKO_MINUTI * 60.0, "restartirai_runda", .flags = "c")
	g_iEndTime = get_systime() + RESTART_SLED_KOLKO_MINUTI * 60
}

public restartirai_runda()
{
    server_cmd("sv_restartround 1")
}

public TimeLeft(id)
{
	timeleft = g_iEndTime - get_systime()
	if(is_user_connected(id))
	{
		client_print(id, print_chat, "[Time Left] %d minutes", timeleft / 60)
	}
	return PLUGIN_CONTINUE
}
Rest in peace my friend I always will remember you! 🖤👊

Аватар
devilchy
Извън линия
Потребител
Потребител
Мнения: 223
Регистриран на: 03 Фев 2017, 14:08
Местоположение: Burgas
Се отблагодари: 3 пъти
Получена благодарност: 6 пъти
Обратна връзка:

Заявка за ауторестарт плъгин

Мнение от devilchy » 28 Май 2020, 12:53

Отказвам се няма да стане... @atmax Благодаря ти за помоща и в тоя и в другата тема ... ЛОК !

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

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

Кой е на линия

Потребители разглеждащи този форум: Bing [Bot] и 11 госта