#include <amxmodx>
#define PLUGIN "Hirdetesek"
#define VERSION "1.1"
#define AUTHOR "DeRoiD"
#define MAXUZENETEK 20
#define UZENETID 933207
#pragma semicolon 1
new OsszesHirdetes[MAXUZENETEK][512], ElozoHirdetes = UZENETID;
new FajlUt[] = "addons/amxmodx/configs/hirdetesek.cfg";
new HirdetesiEffectHang[] = "hirdetesek/effect";
new OsszesSor, KovetkezoSor = 0;
new HirdetesiIdo, HirdetesiEffect;
public plugin_precache() {
new Hang[64];
format(Hang, 63, "%s.wav", HirdetesiEffectHang);
precache_sound(Hang);
}
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR);
if(file_exists(FajlUt))
{
HirdetesiIdo = register_cvar("HirdetesiIdo", "120.0");
HirdetesiEffect = register_cvar("HirdetesiEffect", "1");
HirdetesekBetoltese();
}
else
{
set_fail_state("HIBA: Nem talalhato a hirdetesek.cfg fajl!");
}
}
public HirdetesekBetoltese() {
new Sor, Lekeres[512], SorEllenorzes[32];
OsszesSor = file_size(FajlUt, 1);
for(new SorSzam; SorSzam < OsszesSor; SorSzam++)
{
read_file(FajlUt, SorSzam, Lekeres, 511, Sor);
format(SorEllenorzes, 1, "%s", Lekeres);
if(equal(";", SorEllenorzes) || equal("", SorEllenorzes))
{
continue;
}
remove_quotes(Lekeres);
KovetkezoSor++;
format(OsszesHirdetes[KovetkezoSor], 511, "%s", Lekeres);
}
if(KovetkezoSor > 0)
{
set_task(get_pcvar_float(HirdetesiIdo), "Hirdetesek", UZENETID, _, _, "b");
log_amx("Hirdetesek v1.0 by: DeRoiD");
log_amx("Hirdetesek szama: %d | Hirdetesi Ido: %3.1f", KovetkezoSor, get_pcvar_float(HirdetesiIdo));
}
}
public Hirdetesek() {
new VeletlenszeruSzam = random_num(1, KovetkezoSor);
if(VeletlenszeruSzam == ElozoHirdetes || equal(OsszesHirdetes[KovetkezoSor], ""))
{
set_task(0.1, "Hirdetesek");
}
else
{
ElozoHirdetes = VeletlenszeruSzam;
new OsszesJatekos[32], Jatekosok;
get_players(OsszesJatekos, Jatekosok, "c");
for(new Jatekos; Jatekos < Jatekosok; Jatekos++)
{
HirdetesUzenetek(OsszesJatekos[Jatekos], OsszesHirdetes[VeletlenszeruSzam], get_pcvar_num(HirdetesiEffect));
}
}
}
public HirdetesUzenetek(id, const UzenetAdat[], Hang) {
if(Hang == 1)
{
new Hang[64];
format(Hang, 63, "%s.wav", HirdetesiEffectHang);
client_cmd(id, "spk %s", Hang);
}
static Uzenet[512];
vformat(Uzenet, 511, UzenetAdat, 3);
replace_all(Uzenet, 511, "!z", "^4");
replace_all(Uzenet, 511, "!s", "^1");
replace_all(Uzenet, 511, "!cs", "^3");
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, id);
write_byte(id);
write_string(Uzenet);
message_end();
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1038\\ f0\\ fs16 \n\\ par }
*/