13/04/2019, 01:07 PM
(Última modificación: 13/04/2019, 02:09 PM por rojedafeik. Edited 1 time in total.)
Hola, tengo este error al compilar este plugin. me pueden ayudar? uso amxmodx 1.8.2
Código PHP:
#include <amxmodx>
#include <amxmisc>
#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "Author"
new g_maxplayers;
new playerid;
new Seccion[33];
new g_szBanRazon[33][128];
new g_szKickRazon[33][128];
new BanTime[33];
enum
{
BAN,
KICK
}
enum _:DATA_TIME
{
zText[32],
tiempo
}
new const TiempoDeBan[][DATA_TIME]=
{
{"5 Minutos", 5},
{"10 Minutos", 10},
{"30 Minutos", 30},
{"1 Hora", 60},
{"Permanente", 0}
}
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("amx_admincmd", "menu_principal", ADMIN_KICK)
register_clcmd("Razon_de_ban", "IngRazonBan")
register_clcmd("Razon_de_kick", "IngRazonKick")
g_maxplayers = get_maxplayers()
}
public menu_principal(const id)
{
new menu = menu_create("\r___________________^n^n\wMenu de comandos^n\r___________________", "HandPrincipal")
menu_additem(menu, "kickear jugador")
menu_additem(menu, "Banear jugador")
menu_setprop(menu, MPROP_EXITNAME, "Salir"); menu_setprop(menu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(menu, MPROP_BACKNAME, "Volver")
menu_display(id, menu)
}
public HandPrincipal(const id, const menu, const item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED;
}
switch(item)
{
case 0:
{
MenuAndSecciones(id)
Seccion[id] = KICK
}
case 1:
{
MenuAndSecciones(id)
Seccion[id] = BAN
}
}
return PLUGIN_HANDLED;
}
public MenuAndSecciones(const id)
{
new menu = menu_create(fmt("\r___________________^n^n\w%s jugador^n\r___________________", Seccion[id] == BAN ? "Banear" : "Kickear"), "HandSelec")
new name[32], IDS[12]
for(new i = 1; i <= g_maxplayers; i++)
{
if(is_user_connected(i))
{
get_user_name(i, name, charsmax(name))
formatex(IDS, charsmax(IDS), "%d %d", i, get_user_userid(i))
menu_additem(menu, fmt("%s%s", is_user_admin(i) ? "\y" : "\w", name), IDS)
}
}
menu_setprop(menu, MPROP_EXITNAME, "Salir"); menu_setprop(menu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(menu, MPROP_BACKNAME, "Volver")
menu_display(id, menu)
}
public HandSelec(const id, const menu, const item)
{
new lol, buffer[12], userid
menu_item_getinfo(menu, item, lol, buffer, charsmax(buffer), _, _, lol)
new szid[3], szuserid[9]
parse(buffer, szid, charsmax(szid), szuserid, charsmax(szuserid))
playerid = str_to_num(szid)
userid = str_to_num(szuserid)
if(!is_user_connected(playerid))
{
return PLUGIN_HANDLED;
}
if(userid != get_user_userid(playerid))
{
return PLUGIN_HANDLED;
}
if(is_user_admin(playerid))
{
client_print(id, print_center, "El usuario es admin")
return PLUGIN_HANDLED;
}
menu_to_player(id)
return PLUGIN_HANDLED;
}
public menu_to_player(id)
{
new name[32]; get_user_name(playerid, name, charsmax(name))
new ip[15]; get_user_ip(playerid, ip, charsmax(ip))
new status[15]; get_user_authid(playerid, status, charsmax(status))
new menu = menu_create(fmt("\r___________________^n^n\w%s: \y%s^n\wip:\y %s^n\wstatus:\y %s^n\r___________________", Seccion[id] == BAN ? "Banear ah" : "Kickear ah", name, ip, status), "Hand_menu_to_player")
menu_additem(menu, fmt("Razon de %s: \y%s", Seccion[id] == BAN ? "ban" : "kick", Seccion[id] == BAN ? g_szBanRazon[id] : g_szKickRazon[id]))
if(Seccion[id] == BAN) menu_additem(menu, fmt("Tiempo de ban: \y%s", TiempoDeBan[BanTime[id]][zText]))
menu_additem(menu, fmt("%s jugador", Seccion[id] == BAN ? "Banear" : "Kickear"), _, _, menu_makecallback( (Seccion[id] == BAN) ? "CallBackBan" : "CallBackKick"))
menu_setprop(menu, MPROP_EXITNAME, "Salir"); menu_setprop(menu, MPROP_NEXTNAME, "Siguiente"); menu_setprop(menu, MPROP_BACKNAME, "Volver")
menu_display(id, menu)
}
public CallBackKick(const id, const menu, const item)
{
if(strlen(g_szKickRazon[id]) < 1)
return ITEM_DISABLED;
return ITEM_ENABLED;
}
public CallBackBan(const id, const menu, const item)
{
if(strlen(g_szBanRazon[id]) < 1)
return ITEM_DISABLED;
return ITEM_ENABLED;
}
public Hand_menu_to_player(const id, const menu, const item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu)
Seccion[id] = 0
return PLUGIN_HANDLED;
}
if(Seccion[id] == BAN)
{
switch(item)
{
case 0: client_cmd(id, "messagemode ^"Razon_de_ban^"");
case 1:
{
switch(BanTime[id])
{
case 0..3:
{
BanTime[id]++
}
case 4: BanTime[id] = 0;
}
menu_to_player(id)
}
case 2:
{
BanTime[id] = 0
client_cmd(id, "amx_ban ^"#%i^" ^"%d^" ^"%s^"", get_user_userid(playerid), TiempoDeBan[BanTime[id]][tiempo], g_szBanRazon[id])
formatex(g_szBanRazon[id], charsmax(g_szBanRazon), "")
}
}
}
else if(Seccion[id] == KICK)
{
switch(item)
{
case 0: client_cmd(id, "messagemode ^"Razon_de_kick^"");
case 1:
{
client_cmd(id, "amx_kick #%i 'Razon: %s'", get_user_userid(playerid), g_szKickRazon[id])
formatex(g_szKickRazon[id], charsmax(g_szKickRazon), "")
}
}
}
return PLUGIN_HANDLED;
}
public IngRazonBan(index)
{
read_args(g_szBanRazon[index], charsmax(g_szBanRazon[]));
remove_quotes(g_szBanRazon[index]);
trim(g_szBanRazon[index]);
if( strlen(g_szBanRazon[index]) < 3 )
{
client_print(index, print_center, "Razon muy corta");
client_cmd(index, "messagemode ^"Razon_de_ban^"");
return PLUGIN_HANDLED;
}
if( strlen(g_szBanRazon[index]) > 20 )
{
client_print(index, print_center, "Razon muy larga");
client_cmd(index, "messagemode ^"Razon_de_ban^"");
return PLUGIN_HANDLED;
}
menu_to_player(index)
return PLUGIN_HANDLED;
}
public IngRazonKick(index)
{
read_args(g_szKickRazon[index], charsmax(g_szKickRazon[]));
remove_quotes(g_szKickRazon[index]);
trim(g_szKickRazon[index]);
if( strlen(g_szKickRazon[index]) < 3 )
{
client_print(index, print_center, "Razon muy corta");
client_cmd(index, "messagemode ^"Razon_de_kick^"");
return PLUGIN_HANDLED;
}
if( strlen(g_szKickRazon[index]) > 20 )
{
client_print(index, print_center, "Razon muy larga");
client_cmd(index, "messagemode ^"Razon_de_kick^"");
return PLUGIN_HANDLED;
}
menu_to_player(index)
return PLUGIN_HANDLED;
}
Código:
Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright (c) 1997-2013 ITB CompuPhase, AMX Mod X Team
Error: Undefined symbol "fmt" on line 80
Error: Undefined symbol "fmt" on line 88
Error: Undefined symbol "fmt" on line 131
Error: Undefined symbol "fmt" on line 132
Error: Undefined symbol "fmt" on line 134
Error: Undefined symbol "fmt" on line 136
6 Errors.
Could not locate output file C:\Users\Reynolds\Desktop\bankick.amx (compile failed).