Thanks ConnorMcLeod, Your code is more humanlike and more understandable for me, thanks, but when I change map and enter server then I want to open /menu and It says I've already opened it before, and I've to wait 5minutes.
PHP Code:
#include <amxmodx>
#include <amxmisc>
#define PLUGIN "Plugin name"
#define VERSION "1.0"
#define AUTHOR "author"
new Trie:g_tPlayerAbility
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /menu", "CmdMenu")
g_tPlayerAbility = TrieCreate()
}
public CmdMenu(id)
{
if(HasUserAbility(id))
{
new szSteamID[32]
get_user_authid(id, szSteamID, charsmax(szSteamID))
TrieSetCell(g_tPlayerAbility, szSteamID, get_systime() + 300)
//ShowMenu(id)
}
else
{
client_print(id, print_chat, "you can use menu only every 5 minutes")
}
}
bool:HasUserAbility(id)
{
new iExpireTime, szSteamID[32]
get_user_authid(id, szSteamID, charsmax(szSteamID))
if( TrieGetCell(g_tPlayerAbility, szSteamID, iExpireTime) )
{
if( iExpireTime < get_systime() )
{
return false
}
TrieDeleteKey(g_tPlayerAbility, szSteamID)
}
return true
}
public plugin_end( )
{
TrieDestroy( g_tPlayerAbility );
}