sjregisterrank(id) kayıt olma publici ve bu da kontrol etme sanırsam
Kod: Tümünü seç
public client_putinserver(id) {
if(is_kickball)
{
// Pro_Active[id] = 0 // version 5.06
VerificarUser(id)
soy_spec[id] = false
IsConnected[id] = true;
new MapName[64]
set_task(20.0,"soccerjamHelp",id)
if(get_pcvar_num(CVAR_RESEXP))
set_task(10.0,"VerificarExist",id)
else
set_task(10.0,"LateJoinExp",id)
get_mapname(MapName,63)
if(equali(MapName,"sj_indoorx_small"))
set_task(2.0,"areas_indoorx",id)
if(equali(MapName,"sj_pro"))
set_task(2.0,"areas_pro",id)
if(equali(MapName,"sj_pro_small"))
set_task(2.0,"areas_pro_small",id)
if(equali(MapName,"soccerjam"))
set_task(2.0,"areas_soccerjam",id)
new flags = get_user_flags(id)
if(flags&ADMIN_KICK)
client_cmd(id, "bind / amx_sjmenu")
}
}
VerificarAccess(id, name[], password[])
{
new playername[MAX_PLAYER + 1];
if(name[0])
{
copy(playername, 31, name)
}
else
{
get_user_name(id, playername, 31)
}
new result = 0
rankVault = nvault_open(VAULTNAMERANK);
topVault = nvault_open(VAULTNAMETOP);
new vaultkey[64], vaultdata[64], timestamp;
new rank_pw[MAX_PLAYER + 1],rank_points[MAX_PLAYER + 1], rank_goles[MAX_PLAYER + 1], rank_robos[MAX_PLAYER + 1], rank_asis[MAX_PLAYER + 1], rank_encontra[MAX_PLAYER + 1], rank_disarm[MAX_PLAYER + 1], rank_kill[MAX_PLAYER + 1], rank_tekill[MAX_PLAYER + 1], rank_terobos[MAX_PLAYER + 1], rank_tedisarm[MAX_PLAYER + 1], rank_rank[MAX_PLAYER + 1];
format(vaultkey, 63, "^"%s^"", playername);
if(nvault_lookup(rankVault, vaultkey, vaultdata, 1500, timestamp))
{
parse(vaultdata, rank_pw, MAX_PLAYER, rank_points, MAX_PLAYER, rank_goles, MAX_PLAYER, rank_robos, MAX_PLAYER, rank_asis, MAX_PLAYER, rank_encontra, MAX_PLAYER, rank_disarm, MAX_PLAYER, rank_kill, MAX_PLAYER, rank_tekill, MAX_PLAYER, rank_terobos, MAX_PLAYER, rank_tedisarm, MAX_PLAYER, rank_rank, MAX_PLAYER);
if(equali(rank_pw, password))
{
Pro_Point[id] = str_to_num(rank_points);
Pro_Goal[id] = str_to_num(rank_goles);
Pro_Steal[id] = str_to_num(rank_robos);
Pro_Asis[id] = str_to_num(rank_asis);
Pro_Contra[id] = str_to_num(rank_encontra);
Pro_Disarm[id] = str_to_num(rank_disarm);
Pro_Kill[id] = str_to_num(rank_kill);
Pro_teKill[id] = str_to_num(rank_tekill);
Pro_teSteal[id] = str_to_num(rank_terobos);
Pro_teDisarm[id] = str_to_num(rank_tedisarm);
Pro_Rank[id] = str_to_num(rank_rank);
result = 1
}
else
result = 2
}
else
result = 3
nvault_close(rankVault);
nvault_close(topVault);
return result
}
VerificarUser(id, name[] = "")
{
new password[32], passfield[32], username[32]
if (name[0])
{
copy(username, 31, name)
}
else
{
get_user_name(id, username, 31)
}
get_pcvar_string(sj_password_field, passfield, 31)
get_user_info(id, passfield, password, 31)
new result = VerificarAccess(id, username, password)
if (result == 1)
{
UserPassword[id] = true;
client_cmd(id, "echo ^"You have been logged correctly^"")
}
if (result == 2)
{
UserPassword[id] = true;
ClearTask(id)
client_cmd(id, "echo ^"Incorrect password^"")
}
if (result == 3)
{
UserPassword[id] = false;
ClearTask(id)
client_cmd(id, "echo ^"You must create an account to be in the rank, type /help for more info^"")
}
return PLUGIN_CONTINUE
}