Free VIP Add time

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.
Аватар
lantimilan
Извън линия
Foreigner
Foreigner
Мнения: 424
Регистриран на: 29 Ное 2017, 22:49
Се отблагодари: 31 пъти
Получена благодарност: 3 пъти

Free VIP Add time

Мнение от lantimilan » 17 Юли 2019, 21:36

Hello i see some post for free vip said satarday and sunday 24 hours free vip , and from monday to friday is 20:00--11:00 morning i ask can i set this form in my old plugin witch im using ?

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

#include < amxmodx >
#include < engine >

#define VIP_FLAG ADMIN_LEVEL_C

new g_iCvars[ 3 ];
public plugin_init( )
{
	register_plugin( "Free VIP", "1.0", "L1nDi" );
	g_iCvars[ 0 ] = register_cvar( "free_vip_on", "1" );
	g_iCvars[ 1 ] = register_cvar( "free_vip_start_time", "23" );
	g_iCvars[ 2 ] = register_cvar( "free_vip_end_time", "10" );
}

public plugin_natives( )
{

	register_library( "free_vip" );
	register_native( "is_free_vip_time", "native_is_free_vip_time", 1 );
}
public client_PostThink( id )
{

	if( ! get_pcvar_num( g_iCvars[ 0 ] ) )
    return PLUGIN_CONTINUE;

	

	if( IsVipHour( get_pcvar_num( g_iCvars[ 1 ] ), get_pcvar_num( g_iCvars[ 2 ] ) ) )

	{

		if( ~ get_user_flags( id ) & VIP_FLAG )

		set_user_flags( id, VIP_FLAG );

	}

	return PLUGIN_CONTINUE;

}



public native_is_free_vip_time( )

{

	return IsVipHour( get_pcvar_num( g_iCvars[ 1 ] ), get_pcvar_num( g_iCvars[ 2 ] ) )

}



bool:IsVipHour( iStart, iEnd )

{

	new iHour; time( iHour );

	return bool:( iStart < iEnd ? ( iStart <= iHour < iEnd ) : ( iStart <= iHour || iHour < iEnd ) )

}

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

Free VIP Add time

Мнение от OciXCrom » 19 Юли 2019, 14:43

Wow. Your plugin checks the time and user flags 100 times each second. Don't use such BS, I rewrote it.

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

#include <amxmodx>

const Float:CONNECT_DELAY = 1.0
const FREEVIP_START = 20
const FREEVIP_END = 11
const FREEVIP_FLAGS = ADMIN_LEVEL_C

new bool:g_bIsWeekend;

public plugin_init()
{
	register_plugin("Free VIP", "1.0", "OciXCrom")

	new szDay[2]
	get_time("%w", szDay, charsmax((szDay)))

	new iDay = str_to_num(szDay)

	if(iDay == 0 || iDay == 6)
	{
		g_bIsWeekend = true
	}
}

public plugin_natives()
{
	register_library("free_vip")
	register_native("is_free_vip_time", "_is_free_vip_time")
}

public bool:_is_free_vip_time(iPlugin, iParams)
{
	return (g_bIsWeekend || is_happy_hour(FREEVIP_START, FREEVIP_END))
}

public client_putinserver(id)
{
    if(g_bIsWeekend || is_happy_hour(FREEVIP_START, FREEVIP_END))
    {
		set_task(CONNECT_DELAY, "set_freevip", id)
    }
}

public set_freevip(id)
{
	set_user_flags(id, FREEVIP_FLAGS)
}

bool:is_happy_hour(const iStart, const iEnd)
{
    static iHour; time(iHour)
    return bool:(iStart < iEnd ? (iStart <= iHour < iEnd) : (iStart <= iHour || iHour < iEnd))
}

Аватар
lantimilan
Извън линия
Foreigner
Foreigner
Мнения: 424
Регистриран на: 29 Ное 2017, 22:49
Се отблагодари: 31 пъти
Получена благодарност: 3 пъти

Free VIP Add time

Мнение от lantimilan » 19 Юли 2019, 15:26

Okey thanks very much ;)

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

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

Кой е на линия

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