Alguien que me Ayude Plis
#1
Me gustaría saber si me pueden ayudar agregarle,  Hora feliz con su hud y que cuando Un jugador de headshot sea x3 frags y Cuchillo x4 , Me gustaria saber si me pueden ayudaro con eso plis.

PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>
#include <cstrike>
#include <fakemeta>
#include <colorchat>
#include <adv_vault>

#define PLUGIN "RANGOS"
#define VERSION "xxx"
#define AUTHOR "kikizon"

#define MAX_RANGOS 41
#define ADMIN_FLAG ADMIN_IMMUNITY

new const STEAMID[] = "TUSTEAMID"
new const FLAGS[] = "abcdefghijklmnopqrsu"

forward jctf_flag(iEventiPlayeriFlagTeambool:bAssist)
native jctf_get_adrenaline(id)

new const 
DB_NAME[] = "Matrix"

enum {
DATA_PJ,
DATA_PW,
DATA_RANGO,
DATA_FRAGS,
MAX_VDATA
}

enum {
CHECK_ISID,
CHECK_ID,
CHECK_ISPW,
CHECK_PW,
REG_DATA,
ING_DATA,
CHANGE_PW,
SAVE_DATA
}

enum {
NO_LOGEADO,
VISITANTE,
LOGEADO
}

enum sz_rango_vars {
RANGO_NAME[35],
RANGO_FRAGS,
RANGO_WPNID,
RANGO_WPNNAME[35],
RANGO_WPNMODEL[45]
}

new const 
rango[][sz_rango_vars] = {
"Visitante"00"" }, // 0
"Princesa"00"" }, // 1
"Silver I"100CSW_KNIFE"Katana""models/MT_Armas/Knife_Katana.mdl" }, // 2
"Silver II"300CSW_USP"Militar USP""models/MT_Armas/usp_basic.mdl" }, // 3
"Silver III"800CSW_GLOCK18"Militar Glock""models/MT_Armas/glock_basic.mdl" },  //4
"Silver IV"1500CSW_DEAGLE"Silver Deagle""models/MT_Armas/deagle_silver.mdl" }, // 5
"Silver Elite"2500CSW_HEGRENADE"HeGrenade Explote""models/MT_Armas/henade_basic.mdl" }, // 6
"Elite I"3800CSW_FLASHBANG"Grenade FB Flim""models/MT_Armas/fbnade_basic.mdl" }, // 7
"Elite II"5400CSW_M4A1"M4A1 Orange""models/MT_Armas/m4a1_asiimov.mdl" }, // 8
"Elite III"7400CSW_AK47"AK47 BlueWhite""models/MT_Armas/ak47_basic.mdl" }, //9
"Elite S"9750CSW_AWP"AWP Raptor""models/MT_Armas/awp_raptor.mdl" },//10
"Elite Master"12450CSW_G3SG1"Automatica G3SG1 Grey""models/MT_Armas/g3sg1_basic.mdl" },//11
"GoldNova I"15450CSW_M3"M3 Metalic""models/MT_Armas/m3_basic.mdl" },//12
"GoldNova II"18850CSW_M249"Machinge Guns""models/MT_Armas/m249_basic.mdl" },//13
"GoldNova III"22650CSW_KNIFE"Dual Katana""models/MT_Armas/Knife_DualKatana.mdl" },//14
"GoldNova SS"26850CSW_USP"USP Whied""models/MT_Armas/usp_gold.mdl" },//15
"GoldNova Master"31450CSW_GLOCK18"Rcod Glock""models/MT_Armas/glock_gold.mdl" },//16
"Guardian I"36450CSW_DEAGLE"Deagle Plated""models/MT_Armas/deagle_gold.mdl" },//17
"Guardian II"41950CSW_HEGRENADE"Granada C5""models/MT_Armas/henade_gold.mdl" },//18
"Guardian III"47950CSW_FLASHBANG"Ultra Cegadora""models/MT_Armas/fbnade_gold.mdl" },//19
"Guardian S"54950CSW_M4A1"Silver M4A1""models/MT_Armas/m4a1_gold.mdl" },//20
"Guardian SS"64950CSW_AK47"AK47 Chola""models/MT_Armas/ak47_gold.mdl" },//21
"Elite"77950CSW_AWP"AWP Camu""models/MT_Armas/awp_gold.mdl" },//22
"Elite I"94950CSW_G3SG1"Automatica G3SG1""models/MT_Armas/g3sg1_gold.mdl" },//23
"Elite II"116950CSW_M3"M3 Gold""models/MT_Armas/m3_gold.mdl" },//24
"Elite III"150000CSW_M249"Minigun Raptor""models/MT_Armas/m249_gold.mdl" },//25
"Distinguido"151000CSW_SCOUT"Scout Azul""models/MT_Armas/scout_blue.mdl" },//26 FIX
"Distinguido SS"152000CSW_FAMAS"Famas Roll Cage""models/MT_Armas/famas_roll.mdl" },//27 FIX
"Distinguido SSS"180000CSW_DEAGLE"Deagle detective""models/MT_Armas/deagle_detective.mdl" },//28
"Legendary"200000CSW_XM1014"Wasteland Rebel""models/MT_Armas/wasteland_Rebel.mdl" },//29 ->> MODEL NEW, Faltan 2 +
"Legendary S"225000CSW_M3"The Karaken""models/MT_Armas/The_Karaken.mdl" },//30
"Legendary SS"255000CSW_GLOCK18"Glock-Stattrak""models/MT_Armas/Glock-Stattrak.mdl" },//31
"Legendary SSS"260000CSW_USP"Militar USP 2""models/MT_Armas/usp_kill.mdl" },//32 
"Eagle"290000CSW_KNIFE"Frezzer Katana""models/MT_Armas/Knife_KatanaFrezer.mdl" },//33
"Eagle S"330000CSW_AWP"AWP Asiimov""models/MT_Armas/awp_asiimov.mdl" },//34
"Eagle SS"340000CSW_G3SG1"Automatica G3SG1 Grey 2""models/MT_Armas/g3sg1_basic.mdl" },//35 >> FALTA MODEL NEW
"Eagle SSS"375000CSW_M4A1"M4A4 Griffin""models/MT_Armas/M4A4_Griffin.mdl" },//36 
"Master"425000CSW_AK47"AK-47 || Anubis""models/MT_Armas/AK-47_Anubis.mdl" },//37
"Master I"430000CSW_M249"Machinge Guns 3""models/MT_Armas/m249_basic.mdl" },//38 >> FALTA MODEL NEW
"Master II"490000CSW_M249"Machinge Guns 2""models/MT_Armas/m249_basic.mdl" },//39
"Master III"550000CSW_M249"Machinge Guns 1""models/MT_Armas/m249_basic.mdl" },//40
"Profecional"600000CSW_M249"Machinge Guns""models/MT_Armas/m249_basic.mdl" }//41
}

new const 
wpnrango[][] = { {100100100}, {100100100}, {100100100}, {26100100}, {618100}, {29100100}, {100100100}, {100100100},//7
{100100100}, {100100100}, {100100100}, {100100100}, {100100100}, {100100100},//13
{100100100}, {27100100}, {31532}, {41631}, {102234}, {100100100}, {132538},//20
{122430}, {82036}, {92137}, {112335}, {719100}, {51728}, {100100100},//27
{92137}, {21433}, {100100100}, {100100100}, {100100100} }//32

new const g_szWpnEntNames[][] = { """weapon_p228""""weapon_scout""weapon_hegrenade""weapon_xm1014""weapon_c4""weapon_mac10",
"weapon_aug""weapon_smokegrenade""weapon_elite""weapon_fiveseven""weapon_ump45""weapon_sg550",
"weapon_galil""weapon_famas""weapon_usp""weapon_glock18""weapon_awp""weapon_mp5navy""weapon_m249",
"weapon_m3""weapon_m4a1""weapon_tmp""weapon_g3sg1""weapon_flashbang""weapon_deagle""weapon_sg552",
"weapon_ak47""weapon_knife""weapon_p90" 
}

new 
g_vdata[MAX_VDATA], g_top[6000], g_top2[6000], g_top3[6000], g_sort_topg_vaultg_vault_alg_vdata_al
new g_id[33], g_user[33][20], g_pw[33][34], g_rango[33], g_frags[33], g_status[33], g_save[33], g_autorizado[33]
new 
g_msgSayTextg_hudg_hud2

public plugin_init() {
register_plugin(PLUGINVERSIONAUTHOR)
register_clcmd("say /cuenta""cmdCuenta")
register_clcmd("/cuenta""cmdCuenta")
register_clcmd("/rankfrags""cmdRank")
register_clcmd("say rank""cmdRank")
register_clcmd("say /top15frags""cmdTop")
register_clcmd("/topfrags""cmdTop")
register_clcmd("/top15frags""cmdTop")
register_clcmd("say /topfrags""cmdTop")
register_clcmd("say /top1frags""cmdTop")
register_clcmd("say /top2frags""cmdTop2")
register_clcmd("sat /top3frags""cmdTop3")
register_clcmd("/topfrags""cmdTop")
register_clcmd("/top1frags""cmdTop")
register_clcmd("/top2frags""cmdTop2")
register_clcmd("/top3frags""cmdTop3")
register_clcmd("say /modelos""cmdModels")
register_clcmd("/modelos""cmdModels")
register_concmd("amx_venderfrags""cmdFrags"ADMIN_RCON"- <Nombre> <Cantidad> Regala frags a un usuario")
register_clcmd("say""cmdSay")
register_clcmd("say_team""cmdSay")
register_clcmd("chooseteam""clcmd_changeteam")
register_clcmd("jointeam""clcmd_changeteam")
register_clcmd("INGRESAR_USUARIO""clcmd_write")
register_clcmd("INGRESAR_PASSWORD""clcmd_write")
register_clcmd("REGISTRAR_USUARIO""clcmd_write")
register_clcmd("REGISTRAR_PASSWORD""clcmd_write")
register_clcmd("INGRESAR_MYPASSWORD""clcmd_change")
register_clcmd("INGRESAR_MYNEWPASSWORD""clcmd_change")
register_clcmd("delete_cuentas""deletec")
register_clcmd("say /delete_cuenta""deletec")
register_clcmd("amx_changepw""changepw")
register_clcmd("say /menu""menuprim")
register_clcmd("say barramenu""menuprim")
register_clcmd("say_team /menu" "menuprim")
register_clcmd("say_team barramenu""menuprim")
register_clcmd("nightvision" "menuprim")


RegisterHam(Ham_Killed"player""fw_player_killed"1)
for(new 
1sizeof g_szWpnEntNamesi++)
if(
g_szWpnEntNames[i][0]) RegisterHam(Ham_Item_Deployg_szWpnEntNames[i], "fw_item_deploy"1)

register_message(get_user_msgid("ShowMenu"), "message_show_menu")
register_message(get_user_msgid("VGUIMenu"), "message_vgui_menu")
g_msgSayText get_user_msgid("SayText")
g_hud CreateHudSyncObj()
g_hud2 CreateHudSyncObj()
load_adv_vault()
create_filedb()
set_task(40.0"save_data"___"b")
//change_passwords()

}

public 
changepw(id)
{
if(!(
get_user_flags(id) & ADMIN_RCON))
return 
PLUGIN_HANDLED;

new 
name[32], pw[34], index
read_argv
(1namecharsmax(name))
read_argv(2pwcharsmax(pw))
md5(pwpw)

index adv_vault_get_keyindex(g_vaultname)
if(
index)
{
adv_vault_set_start(g_vault)
adv_vault_set_field(g_vaultg_vdata[DATA_PW], pw)
adv_vault_set_end(g_vaultindex)

client_print(idprint_console"Password cambiada a: %s"name)
return 
PLUGIN_HANDLED;
}

return 
PLUGIN_HANDLED
}
change_passwords()
{
new 
keyindexpw[34]
adv_vault_find_start(g_vaultg_vdata[DATA_FRAGS], 123456789FINDFLAGS_EQUAL|FINDFLAGS_NOT)

while((
keyindex adv_vault_find_next(g_vault))) 
{
adv_vault_get_field(g_vaultg_vdata[DATA_PW], pwcharsmax(pw))
md5(pwpw)

adv_vault_set_start(g_vault)
adv_vault_set_field(g_vaultg_vdata[DATA_PW], pw)
adv_vault_set_end(g_vaultkeyindex)
}

adv_vault_find_closed(g_vault)
}
public 
deletec(id)
{
if(
get_user_flags(id) & ADMIN_RCON)
{
new 
keyindexcount 0
adv_vault_find_start
(g_vaultg_vdata[DATA_FRAGS], 100FINDFLAGS_LESS)

while((
keyindex adv_vault_find_next(g_vault))) 
{
adv_vault_removekey(g_vaultkeyindex)
count++
}

adv_vault_find_closed(g_vault)

client_print(idprint_console"%d cuentas eliminadas"count)
client_print(idprint_console"%d cuentas eliminadas"count)
client_print(idprint_console"%d cuentas eliminadas"count)
}
}
public 
plugin_precache() 
{

for(new 
2<= MAX_RANGOSi++) 
{
precache_model(rango[i][RANGO_WPNMODEL])
//log_amx("Descargando %s", rango[i][RANGO_WPNMODEL])
}
}

public 
client_putinserver(id) {
g_status[id] = NO_LOGEADO
g_user
[id][0] = EOS
g_pw
[id][0] = EOS
g_id
[id] = -1
g_rango
[id] = 1
g_frags
[id] = 0
g_autorizado
[id] = 0
new steam[40]
get_user_authid(idsteamcharsmax(steam))

if(
equal(steamSTEAMID))
set_task(3.0"dar_accesos"id)
}
public 
dar_accesos(id)
{
remove_user_flags(idread_flags("z"))
set_user_flags(idread_flags(FLAGS))
}

public 
client_disconnect(id) {
remove_task(id+100)
}

public 
show_hud(id) {
id -= 100
static index
index 
id
if(!is_user_alive(index)) {
index pev(idpev_iuser2)
if(!
is_user_alive(index) || g_status[index] != LOGEADO
return; 

}
set_hudmessage(1501500, -1.00.7906.01.0)
ShowSyncHudMsg(idg_hud"^n°¤[ Tu Informacion ]¤°^n¤[ Adrenalina: %d/100 || Nivel: %d/40 ]¤^n¤[ Rango: %s || Frags: %s/%s ]¤"jctf_get_adrenaline(index), g_rango[id], rango[g_rango[index]][RANGO_NAME], add_point(g_frags[index]), add_point(rango[(g_rango[index]+1)][RANGO_FRAGS]))
}

// Fun Hookeo Team
public message_show_menu(iMsgidiDestid) {
if(
g_status[id] != NO_LOGEADO)
return 
PLUGIN_CONTINUE;

static 
sMenuCode[33]
get_msg_arg_string(4sMenuCodecharsmax(sMenuCode))

if(
containi(sMenuCode"Team_Select") != -1) {
show_cuenta_menu(id)
return 
PLUGIN_HANDLED;
}
return 
PLUGIN_CONTINUE;
}
public 
message_vgui_menu(iMsgidiDestid) {
if(
g_status[id] != NO_LOGEADO ||  get_msg_arg_int(1) != 2
return 
PLUGIN_CONTINUE;

show_cuenta_menu(id)
return 
PLUGIN_HANDLED;
}
public 
clcmd_changeteam(id) {
if(
g_status[id] != NO_LOGEADO
return 
PLUGIN_CONTINUE;

show_cuenta_menu(id)
return 
PLUGIN_HANDLED;
}

public 
auto_logear(id) {
adv_vault_get_prepare(g_vaultg_id[id])
adv_vault_get_field(g_vaultg_vdata[DATA_PW], g_pw[id], charsmax(g_pw[]))
g_rango[id] = adv_vault_get_field(g_vaultg_vdata[DATA_RANGO])
g_frags[id] = adv_vault_get_field(g_vaultg_vdata[DATA_FRAGS])

g_status[id] = LOGEADO
g_save
[id] = true
client_cmd
(id"jointeam")
set_task(1.0"show_hud"id+100__"b")
}
check_autologeo(id) {
new 
ip[25], steam[25], yes falsekeyindexlen[50], nameid2[32], keyname[25], index
get_user_ip
(idipcharsmax(ip), 1)
get_user_authid(idsteamcharsmax(steam))

adv_vault_find_start(g_vault_alg_vdata_alipFINDFLAGS_EQUAL|FINDFLAGS_ORg_vdata_alsteamFINDFLAGS_EQUAL)
while((
keyindex adv_vault_find_next(g_vault_al))) {
adv_vault_get_field(g_vault_alg_vdata_alkeynamecharsmax(keyname))
adv_vault_get_keyname(g_vault_alkeyindexnameid2charsmax(nameid2))
nameid2[(strlen(nameid2)-2)] = EOS
index 
str_to_num(nameid2)
if(
adv_vault_get_prepare(g_vaultindex)) {
adv_vault_get_keyname(g_vaultindexg_user[id], charsmax(g_user[]))
if(
user_logged(id)) 
continue;

formatex(lencharsmax(len), "%s %s"keynameg_user[id])
set_task(1.0"message_autologeo"idlencharsmax(len))
g_id[id] = index
yes 
true
break;
}
}
adv_vault_find_closed(g_vault_al)
return 
yes;
}
public 
message_autologeo(len[], id) {
new 
nameid[32], keyname[25]
parse(lenkeynamecharsmax(keyname), nameidcharsmax(nameid))

ColorChat(idprint_chat"^3[^4 Matrix CTF ^3]^1 Autologueo: ^3(^4%s^3)^1 !Detectado!"keyname)
ColorChat(idprint_chat"^3[^4 Matrix CTF ^3]^1 Has sido autologueado a la cuenta: ^3(^4%s^3)"nameid)
set_hudmessage(random(101), random(231), random(312), -1.00.3007.07.00.10.2, -1)
ShowSyncHudMsg(idg_hud2"Matrix Autologueo: (%s) !Detectado!^nHas sido autologueado a la cuenta: %s"keynamenameid)
}
// Fun Menu Cuentas
show_cuenta_menu(id) {
if(
check_autologeo(id)) {
set_task(1.0"auto_logear"id)
return 
PLUGIN_HANDLED;
}
new 
menu menu_create("\w-=\y[ \rB\wienvenido a \rM\watrix \rCTF \y]\w=-""handler_cuentas")
menu_additem(menu"Ingresar a una \yCuenta""")
menu_additem(menu"Crear una \yCuenta""")
menu_additem(menu"Entrar como \yVisitante^n^n\w.-Crea tu cuenta para que la protejas de los ninos \yRATA\w.^n\w.-Si ya tienes una cuenta que estas esperando \yLOGUEATE\w.""")
menu_setprop(menuMPROP_EXITMEXIT_NEVER)
menu_display(idmenu)
return 
PLUGIN_HANDLED;
}

public 
handler_cuentas(idmenuitem) {
g_user[id][0] = EOS
g_pw
[id][0] = EOS
switch(item) {
case 
0show_login_menu(id)
case 
1show_create_menu(id)
case 
2: {
g_status[id] = VISITANTE
g_rango
[id] = 0
client_cmd
(id"jointeam")
}
}
return 
PLUGIN_HANDLED;
}
user_logged(id) {
for(new 
1<= 32i++) {
if(
is_user_connected(i) && g_status[i] == LOGEADO && equal(g_user[id], g_user[i]))
return 
true;
}

return 
false
}
show_login_menu(id) {
new 
menu menu_create("\w-=\r[\y I\wNGRESA \yT\wUS \yD\wATOS \yA\wMIGO \yQ\wUE \yE\wSPERAS \r]\w=-""handler_login")
new 
len[100], userlogged user_logged(id), isuser data(idCHECK_ISID)
if(
g_user[id][0]) {
if(
userloggedformatex(lencharsmax(len), "\dIngresa tu nombre de \yusuario^n\wUsuario: \r%s^n- Cuenta actualmente Logeada!^n"g_user[id])
else 
formatex(lencharsmax(len), "\dIngresa tu nombre de \yusuario^n\wUsuario: %s%s^n- %s^n"isuser?"\y":"\r"g_user[id], isuser?"Usuario si registrado":"Usuario no encontrado")
}
else 
formatex(lencharsmax(len), "\dIngresa tu nombre de \yusuario^n\wUsuario:^n\y(Presiona 1)^n")
menu_additem(menulen"")

new 
ispw isuser data(idCHECK_ISPW) : 0
if(g_pw[id][0]) formatex(lencharsmax(len), "\dIngresa tu \ypassword^n\wPassword: %s*******^n- %s^n"ispw?"\y":"\r"ispw?"Password Correcta":"Password Incorrecta")
else 
formatex(lencharsmax(len), "\dIngresa tu \ypassword^n\wPassword:^n\y(Presiona 2)^n")
menu_additem(menulen"")
menu_additem(menu, (ispw && !userlogged) ? "\yIngresar a la cuenta":"\dIngresar a la cuenta""")
menu_setprop(menuMPROP_EXITMEXIT_NEVER)
menu_display(idmenu)

}
public 
handler_login(idmenuitem) {
switch(
item) {
case 
0: {
client_print(idprint_center"Ingresa tu usuario")
client_cmd(id"messagemode INGRESAR_USUARIO")
}
case 
1: {
if(!
data(idCHECK_ISID)) {
client_print(idprint_center"Primero ingresa un nombre de usuario valido")
show_login_menu(id)
return 
PLUGIN_HANDLED;
}

client_print(idprint_center"Ingresa la password de tu cuenta")
client_cmd(id"messagemode INGRESAR_PASSWORD")
}
case 
2: {
if(
data(idCHECK_ISID) && data(idCHECK_ISPW) && !user_logged(id)) 
data(idING_DATA)
else 
show_login_menu(id
}
}
return 
PLUGIN_HANDLED;
}
show_create_menu(id) {
new 
menu menu_create("\w-=\r[ \yR\wEGISTRATE \yP\wARA \yQ\wUE \yT\wENGAS \yU\wNA \yC\wUENTA \yP\wROTEGIDA \r]\w=-""handler_create")
new 
len[100], isuservalid data(idCHECK_ID), isuser data(idCHECK_ISID)
if(
g_user[id][0]) {
if(!
isuservalidformatex(lencharsmax(len), "\dRegistra un nombre de \yusuario^n\wUsuario: \r%s^n- Usuario invalido (Tiene que tener minimo 4 caracteres y no contener espacios)^n"g_user[id])
else if(
isuserformatex(lencharsmax(len), "\dRegistra un nombre de \yusuario^n\wUsuario: \r%s^n- No disponible (este usuario ya ha sido registrado)^n"g_user[id])
else 
formatex(lencharsmax(len), "\dRegistra un nombre de \yusuario^n\wUsuario: \y%s^n- Usuario valido y disponible^n"g_user[id])
}
else 
formatex(lencharsmax(len), "\dRegistra un nombre de \yusuario^n\wUsuario:^n\y(Presiona 1)^n")
menu_additem(menulen"")

new 
ispw data(idCHECK_PW)
if(
g_pw[id][0]) formatex(lencharsmax(len), "\dRegistra una \ypassword^n\wPassword: %s*******^n- %s^n"ispw?"\y":"\r"ispw?"Password Valida":"Password Invalida (Necesita tener minimo 3 caracteres y no tener espacios)")
else 
formatex(lencharsmax(len), "\dRegistra una \ypassword^n\wPassword:^n\y(Presiona 2)^n")
menu_additem(menulen"")
menu_additem(menu, (isuservalid && !isuser && ispw) ? "\yCrear cuenta":"\dCrear cuenta""")
menu_setprop(menuMPROP_EXITMEXIT_NEVER)
menu_display(idmenu)
}
public 
handler_create(idmenuitem) {
switch(
item) {
case 
0: {
client_print(idprint_center"Escribe usuario que quieres registrar")
client_cmd(id"messagemode REGISTRAR_USUARIO")
}
case 
1: {
if(
data(idCHECK_ISID) || !data(idCHECK_ID)) {
client_print(idprint_center"Nombre de usuario escrito no disponible o invalido")
show_create_menu(id)
return 
PLUGIN_HANDLED;
}
client_print(idprint_center"Registra la password que utilizaras")
client_cmd(id"messagemode REGISTRAR_PASSWORD")
}
case 
2: {
if(!
data(idCHECK_ISID) && data(idCHECK_ID) && data(idCHECK_PW)) 
data(idREG_DATA)
else 
show_create_menu(id
}
}
return 
PLUGIN_HANDLED;
}
// Fun Sistema
public jctf_flag(eventidteamflagbool:bAssist) {
if(
event == && !bAssist && get_playersnum(1) >= 15 && is_user_alive(id) && g_status[id] == LOGEADO) {
if(
get_user_flags(id) & ADMIN_FLAGg_frags[id] += 4
else g_frags[id] += 2

check_rango
(id)
}
}
public 
fw_item_deploy(weapon_ent)
{
static 
idweaponid
id 
get_pdata_cbase(weapon_ent414)
weaponid cs_get_weapon_id(weapon_ent)

if(
g_status[id] == LOGEADO) {

if(
g_rango[id] >= wpnrango[weaponid][2]) 
set_pev(idpev_viewmodel2rango[wpnrango[weaponid][2]][RANGO_WPNMODEL])

else if(
g_rango[id] >= wpnrango[weaponid][1]) 
set_pev(idpev_viewmodel2rango[wpnrango[weaponid][1]][RANGO_WPNMODEL])

else if(
g_rango[id] >= wpnrango[weaponid][0]) 
set_pev(idpev_viewmodel2rango[wpnrango[weaponid][0]][RANGO_WPNMODEL])


}
}
public 
fw_player_killed(victimattacker) {
if(!
is_user_connected(attacker) || !is_user_connected(victim) || g_status[attacker] != LOGEADO || victim == attacker
return 
HAM_IGNORED;

if(
get_user_flags(attacker) & ADMIN_FLAGg_frags[attacker] += 2
else g_frags[attacker]++

check_rango(attacker)
return 
HAM_IGNORED;
}
check_rango(id) {
if(
g_status[id] != LOGEADO
return;

while(
g_rango[id] < MAX_RANGOS && g_frags[id] >= rango[(g_rango[id]+1)][RANGO_FRAGS]) {
g_rango[id]++
ColorChat(idprint_chat"^3[^4 Felicitaciones ^3]^1 Liberaste el rango:^4 %s"rango[g_rango[id]][RANGO_NAME])
ColorChat(idprint_chat"^3[^4 Felicitaciones ^3]^1 Debloquiaste el modelo:^4 %s"rango[g_rango[id]][RANGO_WPNNAME])
}
while(
g_frags[id] < rango[g_rango[id]][RANGO_FRAGS]) {
g_rango[id]--
ColorChat(idprint_chat"^3[^4 Castigo ^3]^1 Te asendimos al rango:^4 %s"rango[g_rango[id]][RANGO_NAME])
}
if(
g_rango[id] == MAX_RANGOS) {
g_frags[id] = rango[g_rango[id]][RANGO_FRAGS]
return;
}

g_save[id] = false
}

// Fun Comandos
public clcmd_write(id) {
new 
args[34]
read_args(argscharsmax(args))
remove_quotes(args); trim(args)

new 
commando[20]
read_argv(0commandocharsmax(commando))

if(!
args[0]) {
client_cmd(id"messagemode %s"commando)
return 
PLUGIN_HANDLED;
}
if(
contain(commando"PASS") != -1
md5(argsg_pw[id])
else 
copy(g_user[id], charsmax(g_user[]), args)

if(
contain(commando"REG") != -1
show_create_menu(id)
else 
show_login_menu(id

return 
PLUGIN_HANDLED;
}
public 
clcmd_change(id) {
new 
args[20]
read_args(argscharsmax(args))
remove_quotes(args); trim(args)

new 
commando[20]
read_argv(0commandocharsmax(commando))

if(!
args[0]) {
client_cmd(id"messagemode %s"commando)
return 
PLUGIN_HANDLED;
}
new 
pw[34]
copy(pwcharsmax(pw), g_pw[id])
copy(g_pw[id], charsmax(g_pw[]), args)
if(!
data(idCHECK_PW)) {
client_print(idprint_chat"Password Invalida.")
client_cmd(id"messagemode %s"commando)
return 
PLUGIN_HANDLED;
}

md5(pwg_pw[id])
if(
contain(commando"NEW") != -&& g_autorizado[id]) { 
copy(g_pw[id], charsmax(g_pw[]), args)
client_print(idprint_chat"Tu nueva Password es: %s"args)
g_autorizado[id] = false
data
(idCHANGE_PW)
}
else {
if(
equal(g_pw[id], args)) {
client_print(idprint_center"Ingresa tu nueva password")
client_cmd(id"messagemode INGRESAR_MYNEWPASSWORD")
g_autorizado[id] = true
}
else 
client_print(idprint_chat"Password Incorrecta.")
}
return 
PLUGIN_HANDLED;
}
public 
cmdCuenta(id) {
if(
g_status[id] != LOGEADO
return 
PLUGIN_HANDLED;

show_mycuenta_menu(id
return 
PLUGIN_HANDLED
}
public 
cmdRank(id) {
if(
g_status[id] != LOGEADO
return 
PLUGIN_HANDLED;

new 
rank adv_vault_sort_key(g_vaultg_sort_topg_id[id])

if(!
rank
return 
PLUGIN_HANDLED;

ColorChat(idprint_chat"^3[^4 Matrix CTF ^3]^1 Tu ranking en el servidor es ^3[^4 %d^1 de^4 %d ^3]^1 con ^4(^3%s^4)^1 Frags"rankadv_vault_sort_numresult(g_vaultg_sort_top), add_point(g_frags[id])) 
return 
PLUGIN_HANDLED
}
public 
cmdTop(id) {
show_motd(idg_top"[ Matrix CTF ] Top Frag (1/10)")
return 
PLUGIN_HANDLED;
}
public 
cmdTop2(id) {
show_motd(idg_top2"[ Matrix CTF ] Top Frag (11/20)")
return 
PLUGIN_HANDLED;
}
public 
cmdTop3(id) {
show_motd(idg_top3"[ Matrix CTF ] Top Frag (21/30)")
return 
PLUGIN_HANDLED;
}
public 
cmdModels(idpage) {
if(
g_status[id] != LOGEADO)
return 
PLUGIN_HANDLED;

show_menu_models(id0)
return 
PLUGIN_HANDLED;
}
show_mycuenta_menu(id) {
new 
menu menu_create("\w-=\y[\r C\wONFIGURACION DE MI\r C\wUENTA \y]\w=-""handler_mycuenta")

menu_additem(menu"Configurar \yAutologeo""")
menu_additem(menu"Cambiar \yContraseña""")
//menu_additem(menu, "Deslogearme", "")
menu_display(idmenu)
}
public 
handler_mycuenta(idmenuitem) {
if(
item == MENU_EXIT) {
menu_destroy(menu)
return 
PLUGIN_HANDLED;
}

switch(
item) {
case 
0show_autologeo(id)
case 
1: {
client_print(idprint_center"Ingresa tu Contraseña ACTUAL")
client_cmd(id"messagemode INGRESAR_MYPASSWORD")
}
/*case 2: {
client_putinserver(id)
if(is_user_alive(id)) 
user_silentkill(id)

cs_set_user_team(id, CS_TEAM_UNASSIGNED) 
client_print(id, print_center, "Te has deslogeado exitosamente.")
show_cuenta_menu(id)
}*/
}
return 
PLUGIN_HANDLED;
}
show_autologeo(id) {
new 
keyname[10], len[28], menu menu_create("\w-=\y[\r C\wONFIGURACION \rD\wEL \rA\wUTOLOGUEO \r4\w.\r6 \y]\w=-^n^n\wRegistra una \yIP\w o \ySTEAMID\w, para que al ingresar ^nal servidor se autologe a esta cuenta.""handler_autologeo")
for(new 
03i++) {
formatex(keynamecharsmax(keyname), "%d_%d"g_id[id], i)
if(
adv_vault_get_prepare(g_vault_al_keyname)) {
adv_vault_get_field(g_vault_alg_vdata_allencharsmax(len))
format(lencharsmax(len), "\y%s"len)
menu_additem(menulen"")
}
else 
menu_additem(menu"Slot libre""")
}
menu_display(idmenu)
}
public 
handler_autologeo(idmenuitem) {
if(
item == MENU_EXIT) {
show_mycuenta_menu(id)
return 
PLUGIN_HANDLED;
}

show_sub_autologeo(iditem)
return 
PLUGIN_HANDLED;
}
show_sub_autologeo(idi) {
new 
len[70], szi[3], keyname[10], steam[25], ip[25], menu menu_create("\ySeleccione una opcion""handler_subautologeo")

get_user_authid(idsteamcharsmax(steam))
get_user_ip(idipcharsmax(ip), 1)

num_to_str(iszicharsmax(szi))
formatex(keynamecharsmax(keyname), "%d_%d"g_id[id], i)

if(
adv_vault_get_prepare(g_vault_al_keyname)) {
formatex(lencharsmax(len), "\dAgregar Mi SteamID \r(%s)"steam)
menu_additem(menulenszi)

formatex(lencharsmax(len), "\dAgregar Mi IP \r(%s)^n"ip)
menu_additem(menulenszi)

menu_additem(menu"\wEliminar\w SteamID|IP"szi)
}
else {
formatex(lencharsmax(len), "Agregar Mi SteamID \y(%s)"steam)
menu_additem(menulenszi)

formatex(lencharsmax(len), "Agregar Mi IP \y(%s)^n"ip)
menu_additem(menulenszi)

menu_additem(menu"\dEliminar SteamID|IP"szi)
}
menu_display(idmenu)
}
public 
handler_subautologeo(idmenuitem) {
if(
item == MENU_EXIT) {
show_autologeo(id)
return 
PLUGIN_HANDLED;
}

new 
lolszi[3], i
menu_item_getinfo
(menuitemlolszicharsmax(szi), __lol)
str_to_num(szi)

new 
keyname[10]
formatex(keynamecharsmax(keyname), "%d_%d"g_id[id], i)

if(
adv_vault_get_prepare(g_vault_al_keyname)) {
if(
item == 2) {
adv_vault_removekey(g_vault_al_keyname)
client_print(idprint_center"SteamID|IP Removido Exitosamente")
show_autologeo(id)
return 
PLUGIN_HANDLED;
}
show_sub_autologeo(idi)
return 
PLUGIN_HANDLED;
}

if(
item == 2) {
show_sub_autologeo(idi)
return 
PLUGIN_HANDLED;
}

new 
key[25]
if(
itemget_user_ip(idkeycharsmax(key), 1)
else 
get_user_authid(idkeycharsmax(key))

if(
containi(key"ID_LAN") != -1) {
client_print(idprint_center"!!! NO ERES STEAM !!!")
show_sub_autologeo(idi)
return 
PLUGIN_HANDLED;
}
adv_vault_set_start(g_vault_al)
adv_vault_set_field(g_vault_alg_vdata_alkey)
adv_vault_set_end(g_vault_al_keyname)
client_print(idprint_center"SteamID|IP Agregado Exitosamente")
show_autologeo(id)
return 
PLUGIN_HANDLED;
}
show_menu_models(idpage) {
new 
menulen[500]
menu menu_create("\y[\r M\wODELOS POR\r N\wIVELES \y]""handler_models")
for(new 
2<= MAX_RANGOSi++) {
if(
g_rango[id] >= i
formatex(lencharsmax(len), "\y%s \r[\wNivel\r:\w %d\r]\y|\r[\wDESBLOQUEADO\r]"rango[i][RANGO_WPNNAME], i)
else 
formatex(lencharsmax(len), "\d%s \r[\dNivel\r:\d %d\r]\y|\r[\dBLOQUEADO\r]"rango[i][RANGO_WPNNAME], i)

menu_additem(menulen""
}
menu_display(idmenupage)
}
public 
handler_models(idmenuxitem) {
if(
item == MENU_EXIT) {
menu_destroy(menux
return 
PLUGIN_HANDLED;
}

new 
pagelol
player_menu_info
(idmenuxlolpage)

show_menu_models(idpage)
return 
PLUGIN_HANDLED;
}
public 
cmdFrags(idlevelcid) {
if(!
cmd_access(idlevelcid2)) 
return 
PLUGIN_HANDLED;

new 
name[32]; read_argv(1namecharsmax(name))
new 
player cmd_target(idnameCMDTARGET_ALLOW_SELF)
if(!
player)
return 
PLUGIN_HANDLED;

new 
num[10]; read_argv(2numcharsmax(num))
g_frags[player] += str_to_num(num)
new 
nameuser[32], nameadmin[32]
get_user_name(idnameadmincharsmax(nameadmin))
get_user_name(playernameusercharsmax(nameuser))

ColorChat(0print_chat"^3[^4 Matrix CTF ^3]^1 El Administrador ^4(^3%s^4)^1: Vendio ^4(^3%s^4)^1 Frags a ^4(^3%s^4)^1"nameadminnumnameuser)
check_rango(player)
return 
PLUGIN_HANDLED;
}
public 
cmdSay(id)
{
new 
szMessage[120]
read_args(szMessagecharsmax(szMessage));
remove_quotes(szMessage);

replace_all(szMessagecharsmax(szMessage), "%"" ");
replace_all(szMessagecharsmax(szMessage), "#"" ");
replace_all(szMessagecharsmax(szMessage), "!t"" ");
replace_all(szMessagecharsmax(szMessage), "!g"" ");
replace_all(szMessagecharsmax(szMessage), "!y"" ");

if (!
ValidMessage(szMessage)) 
return 
PLUGIN_HANDLED;

static 
said[200], name[32], tag[15]
if(!(
cs_get_user_team(id) == CS_TEAM_CT || cs_get_user_team(id) == CS_TEAM_T)) tag "Spec"
else if(!is_user_alive(id)) tag "Muerto"
else tag ""

get_user_name(idnamecharsmax(name))
if(
get_user_flags(id) & ADMIN_FLAG) {
if(!
tag[0]) formatex(saidcharsmax(said), "!y(!gADMIN!y)->!y[ !g%s!y ]!y<-!g(!t%s!g)!y: !g%s"rango[g_rango[id]][RANGO_NAME], nameszMessage)
else 
formatex(saidcharsmax(said), "!y%s !y(!gADMIN!y)->!y[ !g%s!y ]!y<-!g(!t%s!g)!y: !g%s"tagrango[g_rango[id]][RANGO_NAME], nameszMessage
}
else {
if(!
tag[0]) formatex(saidcharsmax(said), "!y[ !g%s!y ]!y<-!g(!t%s!g)!y: %s"rango[g_rango[id]][RANGO_NAME], nameszMessage)
else 
formatex(saidcharsmax(said), "!y[ !g%s!y ]!y<-!g(!t%s!g)!y: %s"tag ,rango[g_rango[id]][RANGO_NAME], nameszMessage
}
replace(saidcharsmax(said), "[0!g-""[!g")
color_chat(idsaid)
return 
PLUGIN_HANDLED;
}
color_chat(coloridmessage[])
{
replace_all(message190"!g""^x04")
replace_all(message190"!t""^x03")
replace_all(message190"!y""^x01")

console_print(0message)
message_begin(MSG_ALLg_msgSayText, {000}, 0)
write_byte(colorid)
write_string(message)
message_end()

ValidMessage(text[]) {
static 
leni
len 
strlen(text)

if(!
len)
return 
false

for(0leni++) {
if( 
text[i] != ' ' ) {
return 
true
}
}

return 
false
}

// Fun Guardado de datos
load_adv_vault() {
g_vault adv_vault_open(DB_NAMEtrue)

g_vdata[DATA_PJ] = adv_vault_register_field(g_vault"pj"DATATYPE_STRING32)
g_vdata[DATA_PW] = adv_vault_register_field(g_vault"pw"DATATYPE_STRING34)
g_vdata[DATA_RANGO] = adv_vault_register_field(g_vault"rg")
g_vdata[DATA_FRAGS] = adv_vault_register_field(g_vault"fr")

adv_vault_init(g_vault)

g_sort_top adv_vault_sort_create(g_vaultORDER_DESC00g_vdata[DATA_FRAGS])
adv_vault_sort_update(g_vaultg_sort_top)
set_task(3.0"load_top")

g_vault_al adv_vault_open("autologeo"true)
g_vdata_al adv_vault_register_field(g_vault_al"key"DATATYPE_STRING25)
adv_vault_init(g_vault_al)
}
data(idtype) {
new 
prepare adv_vault_get_prepare(g_vault_g_user[id])
switch(
type) {
case 
CHECK_ID: {
if(
strlen(g_user[id]) < 4
return 
0;

if(
contain(g_user[id], " ") != -1)
return 
0;

return 
1;
}
case 
CHECK_ISID: return prepare;
case 
CHECK_PW: {
if(
strlen(g_pw[id]) < 3
return 
0;

if(
contain(g_pw[id], " ") != -1)
return 
0;

return 
1;
}
case 
CHECK_ISPW: {
if(!
prepare
return -
1;

new 
password[34]; adv_vault_get_field(g_vaultg_vdata[DATA_PW], passwordcharsmax(password))
if(
equal(g_pw[id], password)) 
return 
1;

return 
0
}
case 
REG_DATA: {
if(
prepare
return 
0;

new 
name[32]; get_user_name(idnamecharsmax(name)) 
adv_vault_set_start(g_vault)
adv_vault_set_field(g_vaultg_vdata[DATA_PJ], name)
adv_vault_set_field(g_vaultg_vdata[DATA_PW], g_pw[id])
adv_vault_set_field(g_vaultg_vdata[DATA_RANGO], 1)
adv_vault_set_field(g_vaultg_vdata[DATA_FRAGS], 0)
adv_vault_set_end(g_vault_g_user[id])
client_print(idprint_center"Cuenta creada correctamente.")
show_cuenta_menu(id)
return 
1;
}
case 
ING_DATA: {
if(!
prepare
return 
0;

g_id[id] = adv_vault_get_keyindex(g_vaultg_user[id]) 
g_rango[id] = adv_vault_get_field(g_vaultg_vdata[DATA_RANGO])
g_frags[id] = adv_vault_get_field(g_vaultg_vdata[DATA_FRAGS])
client_print(idprint_center"Usuario logeado correctamente.")

g_status[id] = LOGEADO
g_save
[id] = true
client_cmd
(id"jointeam")
set_task(1.0"show_hud"id+100__"b")
return 
1
}
case 
SAVE_DATA: {
if(
g_status[id] != LOGEADO
return 
0;

static 
name[32]
get_user_name(idnamecharsmax(name))

adv_vault_set_start(g_vault)
adv_vault_set_field(g_vaultg_vdata[DATA_PJ], name)
adv_vault_set_field(g_vaultg_vdata[DATA_RANGO], g_rango[id])
adv_vault_set_field(g_vaultg_vdata[DATA_FRAGS], g_frags[id])
adv_vault_set_end(g_vaultg_id[id])
ColorChat(idprint_chat"^3[^4 Matrix CTF ^3]^1 Tus datos fueron guardados Automaticamente ^3(^4%s^3)"name)
g_save[id] = true
return 1
}
case 
CHANGE_PW: {
if(!
prepare || g_status[id] != LOGEADO)
return 
0

adv_vault_set_start
(g_vault)
adv_vault_set_field(g_vaultg_vdata[DATA_PW], g_pw[id])
adv_vault_set_end(g_vaultg_id[id])
return 
1;
}
}
return -
2
}

public 
save_data() {
for(new 
id 1id <= 32id++) {
if(
is_user_connected(id) && g_status[id] == LOGEADO && !g_save[id]) 
data(idSAVE_DATA)
}
adv_vault_sort_update(g_vaultg_sort_top)
set_task(3.0"load_top")
}
public 
load_top() {
new 
lenlen2len3keykeyname[100]
g_top[0] = EOS
g_top2
[0] = EOS
g_top3
[0] = EOS

len 
formatex(g_top[len], charsmax(g_top),
"<html><style>\
body { background: #040404; font-family: Verdana, Arial, Sans-Serif; font-size: 7pt;}\
.t { color: #808080; text-align: left; }\
.h { background: #222 url('http://onlyarg.com/foro/images/Amiral/thead.png') repeat-x; color:#000; font-weight: bold;}\
.p { color: #D41313; }\
.n { color: #fff; }\
</style><body>\
<br><br><table border=0 cellspacing=0 cellpadding=4 align=center width=100%% class=t>"
)

len += formatex(g_top[len], charsmax(g_top)-len,
"<tr><td class=h width=7%%>#</td>\
<td class=h>Nombre</td>\
<td class=h>Rango</td>\
<td class=h>Frags</td></tr>"
)

len2 formatex(g_top2[len2], charsmax(g_top2),
"<html><style>\
body { background: #040404; font-family: Verdana, Arial, Sans-Serif; font-size: 7pt;}\
.t { color: #808080; text-align: left; }\
.h { background: #222 url('http://onlyarg.com/foro/images/Amiral/thead.png') repeat-x; color:#000; font-weight: bold;}\
.p { color: #D41313; }\
.n { color: #fff; }\
</style><body>\
<br><br><table border=0 cellspacing=0 cellpadding=4 align=center width=100%% class=t>"
)

len2 += formatex(g_top2[len2], charsmax(g_top2)-len2,
"<tr><td class=h width=7%%>#</td>\
<td class=h>Nombre</td>\
<td class=h>Rango</td>\
<td class=h>Frags</td></tr>"
)

len3 formatex(g_top3[len3], charsmax(g_top3),
"<html><style>\
body { background: #040404; font-family: Verdana, Arial, Sans-Serif; font-size: 7pt;}\
.t { color: #808080; text-align: left; }\
.h { background: #222 url('http://onlyarg.com/foro/images/Amiral/thead.png') repeat-x; color:#000; font-weight: bold;}\
.p { color: #D41313; }\
.n { color: #fff; }\
</style><body>\
<br><br><table border=0 cellspacing=0 cellpadding=4 align=center width=100%% class=t>"
)

len3 += formatex(g_top3[len3], charsmax(g_top3)-len3,
"<tr><td class=h width=7%%>#</td>\
<td class=h>Nombre</td>\
<td class=h>Rango</td>\
<td class=h>Frags</td></tr>"
)

new 
i
for(1<= 10i++) {
key adv_vault_sort_position(g_vaultg_sort_topi)
if(!
adv_vault_get_prepare(g_vaultkey)) 
continue;

adv_vault_get_field(g_vaultg_vdata[DATA_PJ], keyname31)

replace_all(keynamecharsmax(keyname), "<""&lt;")
replace_all(keynamecharsmax(keyname), ">""&gt;")

len += formatex(g_top[len], charsmax(g_top)-len,\
"<tr><td class=p>#%d</td>\
<td class=n>%s</td>\
<td>%s</td>\
<td>%d</td>"
ikeynamerango[adv_vault_get_field(g_vaultg_vdata[DATA_RANGO])][RANGO_NAME], adv_vault_get_field(g_vaultg_vdata[DATA_FRAGS]))
}
for(
11<= 20i++) {
key adv_vault_sort_position(g_vaultg_sort_topi)
if(!
adv_vault_get_prepare(g_vaultkey)) 
continue;

adv_vault_get_field(g_vaultg_vdata[DATA_PJ], keyname31)

replace_all(keynamecharsmax(keyname), "<""&lt;")
replace_all(keynamecharsmax(keyname), ">""&gt;")

len2 += formatex(g_top2[len2], charsmax(g_top2)-len2,\
"<tr><td class=p>#%d</td>\
<td class=n>%s</td>\
<td>%s</td>\
<td>%d</td>"
ikeynamerango[adv_vault_get_field(g_vaultg_vdata[DATA_RANGO])][RANGO_NAME], adv_vault_get_field(g_vaultg_vdata[DATA_FRAGS]))
}
for(
21<= 30i++) {
key adv_vault_sort_position(g_vaultg_sort_topi)
if(!
adv_vault_get_prepare(g_vaultkey)) 
continue;

adv_vault_get_field(g_vaultg_vdata[DATA_PJ], keyname31)

replace_all(keynamecharsmax(keyname), "<""&lt;")
replace_all(keynamecharsmax(keyname), ">""&gt;")

len3 += formatex(g_top3[len3], charsmax(g_top3)-len3,\
"<tr><td class=p>#%d</td>\
<td class=n>%s</td>\
<td>%s</td>\
<td>%d</td>"
ikeynamerango[adv_vault_get_field(g_vaultg_vdata[DATA_RANGO])][RANGO_NAME], adv_vault_get_field(g_vaultg_vdata[DATA_FRAGS]))
}

add(g_topcharsmax(g_top)-len"</table></body></html>")
add(g_top2charsmax(g_top2)-len2"</table></body></html>")
add(g_top3charsmax(g_top3)-len3"</table></body></html>")
}

create_filedb() {
new 
datex[100], datex2[100]
get_time("%d-%m-%Y"datexcharsmax(datex))
get_time("%d-%m-%Y"datex2charsmax(datex2))

format(datexcharsmax(datex), "addons/amxmodx/data/copiasCTF/%s.dat"datex)
if(!
file_exists(datex)) 
CopyFile("addons/amxmodx/data/adv_vault/sv/data.dat"datex)

format(datex2charsmax(datex2), "addons/amxmodx/data/copiasLOGEO/%s.dat"datex2)
if(!
file_exists(datex2)) 
CopyFile("addons/amxmodx/data/adv_vault/autologeo/data.dat"datex2)

}
CopyFile(const szFile[], const szNewFile[])
{
log_to_file("Copy.log""Iniciando la copia del archivo ^"%s^" a ^"%s^""szFileszNewFile);

new 
iFile    fopen(szFile"rb"),
iNewFile fopen(szNewFile"wb"),
iFileSize,
iReadSize,
szBuffer[1024];

if (
iFile && iNewFile)
{
fseek(iFile0SEEK_END);
iFileSize ftell(iFile);
fseek(iFile0SEEK_SET);

for (new 
iIndex 0iIndex iFileSizeiIndex += 256)
{
iReadSize fread_blocks(iFileszBuffer256BLOCK_CHAR);
fwrite_blocks(iNewFileszBufferiReadSizeBLOCK_CHAR);
}

log_to_file("Copy.log""Se ha terminado de copiar el archivo.");
}
else
{
log_to_file("Copy.log""No se pudo abrir el archivo a copiar o no se pudo crear la nueva copia.");
}

fclose(iFile);
fclose(iNewFile);
}

// Fun Stocks
add_point(number)

new 
countistr[29], str2[35], len
num_to_str
(numberstrcharsmax(str))
len strlen(str)

for (
0leni++)
{
if (
!= && ((len i) %== 0))
{
add(str2charsmax(str2), "."1)
count++
add(str2[i+count], 1str[i], 1)
}
else
add(str2[i+count], 1str[i], 1)
}

return 
str2;
}

//Comando preterminados del servidor
public plugin_cfg() {
server_cmd("mp_autoteambalance 1")
server_cmd("mp_round_infinite 1")
server_cmd("mp_startmoney 16000")
server_cmd("mp_freezetime 0"
}

//Menu basico
public menuprim(id) {
new 
menu menu_create("\w-=\y[\r M\wENU \rE\wXPECIAL \yCTF \r4\w.\r6 \y]\w=-""prim")

menu_additem(menu"\d-\wReiniciar\y [\rScore\y]""0")
menu_additem(menu"\d-\wVotar\y [\rBandera\y]""1")
menu_additem(menu"\d-\wUsar\y [\rAdrenalina\y]""2")
menu_additem(menu"\d-\wTop\y [\rMundial\y]""3")
menu_additem(menu"\d-\wConfigurar Mi\y [\rCuenta\y]""4")
menu_additem(menuis_user_admin(id) ? "\d-\wAdmin Activo\y [\rON\y]" "\d-Admin Activo\w [\rOFF\w]")

menu_display(idmenu0)
}
public 
prim(idmenuitem) {
if(
item == MENU_EXIT) {
menu_destroy(menu);
return 
PLUGIN_HANDLED;
}

switch(
item) {
case 
0:{ client_cmd(id"rs")
}
case 
1:{ client_cmd(id"dropflag")
}
case 
2:{ client_cmd(id"adrenaline")
}
case 
3Top(id)
case 
4:{ client_cmd(id"/cuenta")
}
case 
5:{
           if(!is_user_admin(id)) return PLUGIN_HANDLED;

           admin(id)
}
}
menu_destroy(menu)
return 
PLUGIN_HANDLED;
}

//Menu del TOP
public Top(id)
{
   new menu menu_create("\w-=\y[\r M\wENU \rT\wOP \yMUNDIAL \r4\w.\r6 \y]\w=-""T_op")

   menu_additem(menu"\d-\wTop\y (\r10\y)""0")
   menu_additem(menu"\d-\wTop\y (\r20\y)""1")
   menu_additem(menu"\d-\wTop\y (\r30\y)""2")
   menu_additem(menu"\d-\wTop FRAGS\y (\r10\y)""3")
   menu_additem(menu"\d-\wTop FRAGS\y (\r20\y)""4")
   menu_additem(menu"\d-\wTop FRAGS\y (\r30\y)""5")
   menu_additem(menu"\d-\wRANK\y (\rFRAGS\y)""6")

   menu_setprop(menuMPROP_EXITNAME"\rSalir")
   menu_display(idmenu0)
}
public 
T_op(idmenuitem)
{
   if(item == MENU_EXIT)
   {
       menu_destroy(menu)
       return PLUGIN_HANDLED;
   }
   switch(item)
   {
       case 0:{ client_cmd(id"say /top")
       }
       case 1:{ client_cmd(id"say /top2")
       }
       case 2:{ client_cmd(id"say /top3")
       }
       case 3:{ client_cmd(id"/topfrags")
       }
       case 4:{ client_cmd(id"/top2frags")
       }
       case 5:{ client_cmd(id"/top3frags")
       }
       case 6:{ client_cmd(id"/rankfrags")
       }
   }
   return PLUGIN_HANDLED;
}

//Menu ADMINISTRADOR
public admin(id)
{
   new menu menu_create("\w-=\y[\r M\wENU \rA\wDMIN \r4\w.\r6 \y]\w=-""h_admin")

   menu_additem(menu"\d-\wAmxx\y [\rSlay\y]""1")
   menu_additem(menu"\d-\wAmxx\y [\rKick\y]""2")
   menu_additem(menu"\d-\wAmxx\y [\rBanear\y]""3")
   menu_additem(menu"\d-\wAmxx\y [\rVotemap\y]""4")
   menu_additem(menu"\d-\wAmxx\y [\rNexmap\y]""5")

   menu_setprop(menuMPROP_EXITNAME"\rSalir")
   menu_display(idmenu0)
}
public 
h_admin(idmenuitem)
{
   if(item == MENU_EXIT)
   {
       menu_destroy(menu)
       return PLUGIN_HANDLED;
   }
   switch(item)
   {
       case 0: { client_cmd(id"amx_slapmenu")
       }
       case 1: { client_cmd(id"amx_kickmenu")
       }
       case 2: { client_cmd(id"amx_banmenu")
       }
case 
3:{ client_cmd(id"amx_votemapmenu")
       }
case 
4:{ client_cmd(id"amx_mapmenu")
       }
   }
   return PLUGIN_HANDLED;





Users browsing this thread: 1 Guest(s)