Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <amxmodx>
- #if !defined MAX_NAME_LENGTH
- #define MAX_NAME_LENGTH 32
- #endif
- #define HUD_COLOR 127, 212, 255
- #define HUD_POSITION 0.02, 0.20
- #define HUD_DURATION 7.0
- enum _:Cvar
- {
- amx_night_time_start,
- amx_night_time_end,
- amx_night_time_map,
- amx_night_time_timelimit,
- amx_night_time_extend_map
- }
- new g_pCvar[Cvar], g_szNightMap[MAX_NAME_LENGTH], g_szCurrentMap[MAX_NAME_LENGTH]
- public plugin_init()
- {
- register_plugin("Night Map Change","1.0","hackera457")
- register_cvar("hackera457_nightmapchange","1.0",FCVAR_SERVER|FCVAR_SPONLY|FCVAR_UNLOGGED)
- g_pCvar[amx_night_time_start] = register_cvar("amx_night_time_start","00")
- g_pCvar[amx_night_time_end] = register_cvar("amx_night_time_end","10")
- g_pCvar[amx_night_time_map] = register_cvar("amx_night_time_map","de_dust2")
- g_pCvar[amx_night_time_timelimit] = register_cvar("amx_night_time_timelimit","540")
- g_pCvar[amx_night_time_extend_map] = register_cvar("amx_night_time_extend_map","10")
- }
- public plugin_cfg()
- {
- get_pcvar_string(g_pCvar[amx_night_time_map], g_szNightMap,charsmax(g_szNightMap))
- get_mapname(g_szCurrentMap,charsmax(g_szCurrentMap))
- set_task(1.0,"CheckNightTime",.flags="b")
- if(is_night() && equali(g_szCurrentMap,g_szNightMap))
- {
- set_cvar_num("mp_timelimit",get_pcvar_num(g_pCvar[amx_night_time_timelimit]))
- set_cvar_num("amx_extendmap_max", get_pcvar_num(g_pCvar[amx_night_time_extend_map]))
- }
- }
- public client_putinserver(id)
- {
- if (is_night())
- {
- set_task(5.0, "Task_DelayedInfo", id)
- }
- }
- public Task_DelayedInfo(id)
- {
- set_hudmessage(HUD_COLOR,HUD_POSITION,.holdtime=HUD_DURATION)
- show_hudmessage(id, "Night MAP: START from %i:00 to %i:00 - Map %s",get_pcvar_num(g_pCvar[amx_night_time_start]),get_pcvar_num(g_pCvar[amx_night_time_end]), g_szNightMap)
- }
- public CheckNightTime()
- {
- if(is_night() && !equali(g_szCurrentMap,g_szNightMap))
- engine_changelevel(g_szNightMap)
- }
- bool:is_night()
- {
- static iHour, iStart, iEnd
- time(iHour)
- iStart = get_pcvar_num(g_pCvar[amx_night_time_start])
- iEnd = get_pcvar_num(g_pCvar[amx_night_time_end])
- return bool:(iStart < iEnd ? (iStart <= iHour < iEnd) : (iStart <= iHour || iHour < iEnd))
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement