gerekli düzenlemeler yapılmıştır.
Kod: Tümünü seç
#include <amxmodx>
#include <amxmisc>
enum Color
{
NORMAL = 1, // clients scr_concolor cvar color
GREEN, // Green Color
TEAM_COLOR, // Red, grey, blue
GREY, // grey
RED, // Red
BLUE, // Blue
}
new TeamName[][] =
{
"",
"TERRORIST",
"CT",
"SPECTATOR"
}
ColorChat(id, Color:type, const msg[], {Float,Sql,Result,_}:...)
{
static message[256];
switch(type)
{
case NORMAL: // clients scr_concolor cvar color
{
message[0] = 0x01;
}
case GREEN: // Green
{
message[0] = 0x04;
}
default: // White, Red, Blue
{
message[0] = 0x03;
}
}
vformat(message[1], 251, msg, 4);
// Make sure message is not longer than 192 character. Will crash the server.
message[192] = '^0';
static team, ColorChange, index, MSG_Type;
if(id)
{
MSG_Type = MSG_ONE;
index = id;
} else {
index = FindPlayer();
MSG_Type = MSG_ALL;
}
team = get_user_team(index);
ColorChange = ColorSelection(index, MSG_Type, type);
ShowColorMessage(index, MSG_Type, message);
if(ColorChange)
{
Team_Info(index, MSG_Type, TeamName[team]);
}
}
ShowColorMessage(id, type, message[])
{
message_begin(type, get_user_msgid("SayText"), _, id);
write_byte(id)
write_string(message);
message_end();
}
Team_Info(id, type, team[])
{
message_begin(type, get_user_msgid("TeamInfo"), _, id);
write_byte(id);
write_string(team);
message_end();
return 1;
}
ColorSelection(index, type, Color:Type)
{
switch(Type)
{
case RED:
{
return Team_Info(index, type, TeamName[1]);
}
case BLUE:
{
return Team_Info(index, type, TeamName[2]);
}
case GREY:
{
return Team_Info(index, type, TeamName[0]);
}
}
return 0;
}
FindPlayer()
{
static i;
i = -1;
while(i <= get_maxplayers())
{
if(is_user_connected(++i))
{
return i;
}
}
return -1;
}
new tag[32],
tag2,
yetki[32],
yetki2,
isim[32],
sifre[300],
configs_dizini[64],
satir_ekle[512],
guvenlik[33]
public plugin_init() {
register_plugin("Slot Olmak", "v0.0", "OrjinaLp.")
register_clcmd("say","say_komutlari")
register_clcmd("Sifre","sifre_giris")
tag2 = register_cvar("amx_slot_tag","Amx # ")
yetki2 = register_cvar("amx_slot_yetki","bi")
get_pcvar_string(tag2,tag,31)
get_pcvar_string(yetki2,yetki,31)
}
public client_connect(id){guvenlik[id] = true;}
public say_komutlari(id) {
new komut[32]
read_argv(1, komut, 31)
if (equal(komut, "/slotol"))
{
if(get_user_flags(id) & ADMIN_KICK)
{
ColorChat(id,GREEN,"Yetkin Var")
return PLUGIN_HANDLED
}
if(!is_user_alive(id))
{
ColorChat(id,GREEN,"Oluyken Slot Olamazsin.")
return PLUGIN_HANDLED
}
guvenlik[id] = true;
if (guvenlik[id])
{
client_cmd(id,"messagemode Sifre")
}
else
{
ColorChat(id,GREEN,"[SLOT]^1 Zaten Slotsun.")
return PLUGIN_HANDLED
}
return PLUGIN_HANDLED
}
if (equal(komut, "/bilgilerim"))
{
if(get_user_flags(id) && ADMIN_KICK)
{
bilgi_task(id)
}
else
{
ColorChat(id,GREEN,"[SLOT]^1 Slot Olmadiginiz Icin Bilgileriniz Yok")
}
return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
}
public client_putinserver(id){
if(!(get_user_flags(id) & ADMIN_KICK))
{
set_task(7.0,"reklam",id)
}
else
{
set_task(7.0,"reklam2",id)
}
}
public reklam(id){
ColorChat(id,GREEN,"[SLOT]^1 Slot olmak istiyorsaniz ^3/slotol^1 yaziniz.")
}
public reklam2(id){
ColorChat(id,GREEN,"[SLOT]^1 Bilgilerinizi ogrenmek istiyorsaniz ^3/bilgilerim^1 yaziniz.")
}
public sifre_giris(id){
if (guvenlik[id])
{
read_args(sifre, charsmax(sifre))
remove_quotes(sifre)
get_user_name(id,isim,31)
get_configsdir(configs_dizini, 63)
format(configs_dizini, 63, "%s/users.ini", configs_dizini)
formatex(satir_ekle, 511, "^r^n^"%s%s^" ^"%s^" ^"%s^" ^"a^"", tag, isim, sifre, yetki)
write_file(configs_dizini, satir_ekle)
slot_aktif_et(configs_dizini)
client_cmd(id,"name ^"%s%s^"",tag,isim)
bilgi_task(id)
}
else
{
ColorChat(id,GREEN,"[SLOT]^1 Zaten Slotsun.")
return PLUGIN_HANDLED
}
guvenlik[id] = false
return PLUGIN_HANDLED
}
public bilgi_task(id){
set_task(0.1,"bilgi",id)
set_task(0.2,"bilgi",id)
set_task(0.3,"bilgi",id)
set_task(0.4,"bilgi",id)
set_task(0.5,"bilgi",id)
set_task(0.6,"bilgi",id)
set_task(0.7,"bilgi",id)
set_task(0.8,"bilgi",id)
set_task(0.9,"bilgi",id)
set_task(1.0,"bilgi",id)
set_task(1.1,"bilgi",id)
set_task(1.2,"bilgi",id)
set_task(1.3,"bilgi",id)
set_task(1.4,"bilgi",id)
set_task(1.5,"bilgi",id)
set_task(1.6,"bilgi",id)
set_task(1.7,"bilgi",id)
set_task(1.8,"bilgi",id)
set_task(1.9,"bilgi",id)
set_task(2.0,"bilgi",id)
set_task(2.1,"bilgi",id)
set_task(2.2,"bilgi",id)
set_task(2.3,"bilgi",id)
set_task(2.4,"bilgi",id)
set_task(2.5,"bilgi",id)
set_task(2.6,"bilgi",id)
set_task(2.7,"bilgi",id)
set_task(2.8,"bilgi",id)
set_task(2.9,"bilgi",id)
set_task(3.0,"bilgi",id)
}
public bilgi(id){
new ismim[32],sifrem[32],yetkilerim[32]
get_user_name(id,ismim,31)
get_flags(get_user_flags(id), yetkilerim, 31)
ColorChat(id,GREEN, "***********************************")
ColorChat(id,GREEN, "*** ^1Nickiniz ^4:^3 %s",ismim)
ColorChat(id,GREEN, "*** ^1Sifreniz ^4:^3 %s",sifrem)
ColorChat(id,GREEN, "*** ^1Yetkileriniz ^4:^3 %s",yetkilerim)
ColorChat(id,GREEN, "***********************************")
}
slot_aktif_et(dosya_adi[]){
new Dosya=fopen(dosya_adi,"r");
if (Dosya)
{
new Yazi[512];
new Yetki_Harfi[32];
new Yetki[32]
new Isim_Veri[44];
new Sifre[32];
while (!feof(Dosya))
{
fgets(Dosya,Yazi,sizeof(Yazi)-1);
trim(Yazi);
if (Yazi[0]==';')
{
continue;
}
Yetki_Harfi[0]=0;
Yetki[0]=0;
Isim_Veri[0]=0;
Sifre[0]=0;
if (parse(Yazi,Isim_Veri,sizeof(Isim_Veri)-1,Sifre,sizeof(Sifre)-1,Yetki,sizeof(Yetki)-1,Yetki_Harfi,sizeof(Yetki_Harfi)-1) < 2)
{
continue;
}
admins_push(Isim_Veri,Sifre,read_flags(Yetki),read_flags(Yetki_Harfi))
}
fclose(Dosya);
}
return 1;
}