Страница 1 от 1
Happy Hour XP on time played
Публикувано на: 10 Мар 2019, 09:12
от Leonardo Da Vinci
Здравейте! Използвам Ранг Системата на @OciXCroM и add-on към нея - Да получаваш EXP според изиграното време.
Трябва да се направи още един плъгин ( към нея да има Happy Hour ). Ако може да има квар за настройване на времето ( от кога до кога ) и за XP-то (дали да е 2x или 3x например).
Благодаря предварително!
Happy Hour XP on time played
Публикувано на: 10 Мар 2019, 11:08
от DaRk_StyLe
Направо използвай този плъгин за даване на XP през определено време. Ако не е "happy hour", ще се дава стойността на xp_amount, а ако е "happy hour", се умножава xp_amount * hh_multiply_xp.
Cvars:
- hh_begins - в колко часа започва "happy hour", по подразбиране в 20:00;
- hh_ends - в колко часа приключва "happy hour", по подразбиране в 22:00;
- xp_frequency - през колко секунди да се дава XP, по подразбиране през 60 секунди;
- xp_amount - колко XP да се дава през определено време, по подразбиране 1 XP;
- hh_multiply_xp - по колко да се умножава xp_amount по време на "happy hour", по подразбиране по 2;
► Покажи скъсения текст
Код за потвърждение: Избери целия код
#include < amxmodx >
#include < crxranks >
const XP_TaskID = 123;
new Pcvar_Begins;
new Pcvar_Ends;
new Pcvar_Frequency;
new Pcvar_Amount;
new Pcvar_Multiply;
public plugin_init()
{
register_plugin( "Happy Hour: XP", "1.0", "DaRk_StyLe" );
Pcvar_Begins = register_cvar( "hh_begins", "20" );
Pcvar_Ends = register_cvar( "hh_ends", "22" );
Pcvar_Frequency = register_cvar( "xp_frequency", "60.0" );
Pcvar_Amount = register_cvar( "xp_amount", "1" );
Pcvar_Multiply = register_cvar( "hh_multiply_xp", "2" );
}
public client_putinserver( id )
{
remove_task( id + XP_TaskID );
set_task( get_pcvar_float( Pcvar_Frequency ), "Award_XP", id + XP_TaskID, .flags = "b" );
}
public Award_XP( id )
{
id -= XP_TaskID;
if( is_user_connected( id ) )
{
if( is_happy_hour() )
{
crxranks_give_user_xp( id, get_pcvar_num( Pcvar_Amount ) * get_pcvar_num( Pcvar_Multiply ) );
}
else
{
crxranks_give_user_xp( id, get_pcvar_num( Pcvar_Amount ) );
}
}
}
bool:is_happy_hour()
{
new Hour;
time( Hour );
new Begins = get_pcvar_num( Pcvar_Begins );
new Ends = get_pcvar_num( Pcvar_Ends );
return bool:( ( Begins < Ends ) ? ( Begins <= Hour < Ends ) : ( Begins <= Hour || Hour < Ends ) );
}