Code:
/*
With this plugin, you can show some advertisement or rules to the players.
*** The main folder is AMXX configs DIR ***
Default Motds dir is "addons/amxmodx/configs/motd";
you can change it by #define MOTD_FOLDER to other string
The plugin will read the dir for Motds
Max support for MAX_MOTD_SUPPORT (default 5) motd files.
If you want to change this,just #define MAX_MOTD_SUPPORT to another number.
In each Motd,only the first 1,200 characters are effective,(not include '0' - newline)
Default Motd Header config file is "addons/amxmodx/configs/motd_header.cfg"
Also, you can change it by #define MOTD_HEADER_CONFIG to other string.
Add Advanced Motd's headers to this file. Form the second line,one line one title!
If a motd has no header,will use the server name instead.
Motd files can be HTML formatted with VGUI2.
A Motd will showed when a player dies every <five or ...> rounds.
v1.2 changed Log:
fixed a bug when reloadmotd.(last time,forgot to reset max_motd zero,^_^)
v1.1 changed Log:
change MOTD folder dir
can define MOTD_FOLDER and MOTD_HEADER_CONFIG
load MOTD files and config file using file handle
fixed bugs in read file content function
Cvars:
amx_advancedmotd ,default 1; disable to show motd to the players,set it to 0
amx_showmotdeveryrounds ,default 5; Set how many rounds to show one motd when dying.
*/
Code:
#include <amxmodx>
#include <amxmisc>
#define PLUGIN "Advanced Motd"
#define VERSION "1.2"
#define AUTHOR "KinSprite"
#define MAX_MOTD_SUPPORT 5
#define MOTD_FOLDER "motd"
#define MOTD_HEADER_CONFIG "motd_header.cfg"
new g_advancedmotd
new g_showmotdeveryrounds
new motd[MAX_MOTD_SUPPORT][1200]
new motd_header[MAX_MOTD_SUPPORT][32]
new max_motd
new bool:motd_showed[33] = false
new round_counter
new showmotd_counter[33]
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_concmd("amx_reloadmotd","cmd_reloadmotd",ADMIN_IMMUNITY," - reload Advanced Motd")
g_advancedmotd = register_cvar("amx_advancedmotd","1")
g_showmotdeveryrounds = register_cvar("amx_showmotdeveryrounds","5")
set_task(1.2,"load_motd")
register_logevent("startnewround",2,"0=World triggered","1=Round_Start")
register_event("DeathMsg", "show_Advmotd","a")
return PLUGIN_CONTINUE
}