Replace some arrays by bitfield macros
This commit is contained in:
parent
5413c59bc7
commit
c156c220c4
|
@ -36,29 +36,32 @@ new g_clcmdMisc[MAX_CLCMDS][2];
|
||||||
new g_clcmdNum;
|
new g_clcmdNum;
|
||||||
|
|
||||||
new g_coloredMenus;
|
new g_coloredMenus;
|
||||||
new g_cstrike = 0;
|
new bool:g_cstrike = false;
|
||||||
new g_fakemeta = 0, m_iMenu, m_bTeamChanged, Menu_ChooseAppearance;
|
new bool:g_fakemeta = false, m_iMenu, m_bTeamChanged, Menu_ChooseAppearance;
|
||||||
|
|
||||||
new Array:g_bantimes;
|
new Array:g_bantimes;
|
||||||
new Array:g_slapsettings;
|
new Array:g_slapsettings;
|
||||||
|
|
||||||
new g_CSTeamNames[3][] = {
|
new const g_CSTeamNames[3][] = {
|
||||||
"TERRORIST",
|
"TERRORIST",
|
||||||
"CT",
|
"CT",
|
||||||
"SPECTATOR"
|
"SPECTATOR"
|
||||||
};
|
};
|
||||||
new g_CSTeamNumbers[3][] = {
|
new const g_CSTeamNumbers[3][] = {
|
||||||
"1",
|
"1",
|
||||||
"2",
|
"2",
|
||||||
"6"
|
"6"
|
||||||
};
|
};
|
||||||
new g_CSTeamiNumbers[3] = {
|
new const g_CSTeamiNumbers[3] = {
|
||||||
1,
|
1,
|
||||||
2,
|
2,
|
||||||
3
|
3
|
||||||
};
|
};
|
||||||
|
|
||||||
new g_CSPlayerCanSwitchFromSpec[MAX_PLAYERS + 1];
|
new SwitchFromSpecStatus;
|
||||||
|
#define AllowSwitchFromSpec(%1) SwitchFromSpecStatus |= 1<<(%1&31)
|
||||||
|
#define ForbidSwitchFromSpec(%1) SwitchFromSpecStatus &= ~(1<<(%1&31))
|
||||||
|
#define CanSwitchFromSpec(%1) SwitchFromSpecStatus & 1<<(%1&31)
|
||||||
new g_transferingAdmin;
|
new g_transferingAdmin;
|
||||||
|
|
||||||
new allow_spectators, mp_limitteams;
|
new allow_spectators, mp_limitteams;
|
||||||
|
@ -66,7 +69,10 @@ new allow_spectators, mp_limitteams;
|
||||||
new p_amx_tempban_maxtime;
|
new p_amx_tempban_maxtime;
|
||||||
new Trie:g_tempBans;
|
new Trie:g_tempBans;
|
||||||
|
|
||||||
new g_silent[MAX_PLAYERS + 1];
|
new SilentTransferStatus;
|
||||||
|
#define EnableSilentTransfer(%1) SilentTransferStatus |= 1<<(%1&31)
|
||||||
|
#define DisableSilentTransfer(%1) SilentTransferStatus &= ~(1<<(%1&31))
|
||||||
|
#define HasSilentTransfer(%1) SilentTransferStatus & 1<<(%1&31)
|
||||||
|
|
||||||
public plugin_natives()
|
public plugin_natives()
|
||||||
{
|
{
|
||||||
|
@ -122,11 +128,11 @@ public plugin_init()
|
||||||
|
|
||||||
if (LibraryExists("cstrike", LibType_Library))
|
if (LibraryExists("cstrike", LibType_Library))
|
||||||
{
|
{
|
||||||
g_cstrike = 1;
|
g_cstrike = true;
|
||||||
}
|
}
|
||||||
if (LibraryExists("fakemeta", LibType_Library))
|
if (LibraryExists("fakemeta", LibType_Library))
|
||||||
{
|
{
|
||||||
g_fakemeta = 1;
|
g_fakemeta = true;
|
||||||
m_iMenu = 205;
|
m_iMenu = 205;
|
||||||
m_bTeamChanged = 501;
|
m_bTeamChanged = 501;
|
||||||
Menu_ChooseAppearance = 3;
|
Menu_ChooseAppearance = 3;
|
||||||
|
@ -757,8 +763,8 @@ public cmdKickMenu(id, level, cid)
|
||||||
|
|
||||||
public client_putinserver(id)
|
public client_putinserver(id)
|
||||||
{
|
{
|
||||||
g_CSPlayerCanSwitchFromSpec[id] = false;
|
ForbidSwitchFromSpec(id);
|
||||||
g_silent[id] = false;
|
DisableSilentTransfer(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
public Event_TeamInfo()
|
public Event_TeamInfo()
|
||||||
|
@ -766,7 +772,7 @@ public Event_TeamInfo()
|
||||||
new id = read_data(1);
|
new id = read_data(1);
|
||||||
if (is_user_connected(id))
|
if (is_user_connected(id))
|
||||||
{
|
{
|
||||||
g_CSPlayerCanSwitchFromSpec[id] = true;
|
AllowSwitchFromSpec(id);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -786,7 +792,7 @@ public actionTeamMenu(id, key)
|
||||||
{
|
{
|
||||||
case 6:
|
case 6:
|
||||||
{
|
{
|
||||||
g_silent[id] = !g_silent[id];
|
HasSilentTransfer(id) ? (DisableSilentTransfer(id)) : (EnableSilentTransfer(id));
|
||||||
displayTeamMenu(id, g_menuPosition[id]);
|
displayTeamMenu(id, g_menuPosition[id]);
|
||||||
}
|
}
|
||||||
case 7:
|
case 7:
|
||||||
|
@ -843,9 +849,9 @@ public actionTeamMenu(id, key)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (g_CSPlayerCanSwitchFromSpec[player] && g_cstrike && (CS_TEAM_T <= cs_get_user_team(player) <= CS_TEAM_CT))
|
if (CanSwitchFromSpec(player) && g_cstrike && (CS_TEAM_T <= cs_get_user_team(player) <= CS_TEAM_CT))
|
||||||
{
|
{
|
||||||
if (is_user_alive(player) && (!g_silent[id] || destTeamSlot == 2))
|
if (is_user_alive(player) && (~HasSilentTransfer(id) || destTeamSlot == 2))
|
||||||
{
|
{
|
||||||
new deaths = cs_get_user_deaths(player);
|
new deaths = cs_get_user_deaths(player);
|
||||||
user_kill(player, 1);
|
user_kill(player, 1);
|
||||||
|
@ -857,7 +863,7 @@ public actionTeamMenu(id, key)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (is_user_alive(player) && (!g_silent[id] || destTeamSlot == 2))
|
if (is_user_alive(player) && (~HasSilentTransfer(id) || destTeamSlot == 2))
|
||||||
{
|
{
|
||||||
user_kill(player, 1);
|
user_kill(player, 1);
|
||||||
}
|
}
|
||||||
|
@ -1010,7 +1016,7 @@ displayTeamMenu(id, pos)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
len += formatex(menuBody[len], charsmax(menuBody) - len, "^n7. %L: %L", id, "TRANSF_SILENT", id, g_silent[id] ? "YES" : "NO");
|
len += formatex(menuBody[len], charsmax(menuBody) - len, "^n7. %L: %L", id, "TRANSF_SILENT", id, HasSilentTransfer(id) ? "YES" : "NO");
|
||||||
len += formatex(menuBody[len], charsmax(menuBody) - len, "^n8. %L^n", id, "TRANSF_TO", g_CSTeamNames[g_menuOption[id] % 3]);
|
len += formatex(menuBody[len], charsmax(menuBody) - len, "^n8. %L^n", id, "TRANSF_TO", g_CSTeamNames[g_menuOption[id] % 3]);
|
||||||
|
|
||||||
if (end != g_menuPlayersNum[id])
|
if (end != g_menuPlayersNum[id])
|
||||||
|
|
Loading…
Reference in New Issue
Block a user