cache float & int values for faster GetStyleSettings

This commit is contained in:
rtldg 2021-10-08 06:44:19 +00:00
parent 24337ba172
commit 93826ddfd8

View File

@ -38,6 +38,13 @@
#define EFL_CHECK_UNTOUCH (1<<24) #define EFL_CHECK_UNTOUCH (1<<24)
enum struct style_setting_t
{
int i;
float f;
char str[128];
}
// game type (CS:S/CS:GO/TF2) // game type (CS:S/CS:GO/TF2)
EngineVersion gEV_Type = Engine_Unknown; EngineVersion gEV_Type = Engine_Unknown;
bool gB_Protobuf = false; bool gB_Protobuf = false;
@ -1237,10 +1244,9 @@ public Action Command_Style(int client, int args)
if(GetStyleSettingBool(iStyle, "unranked")) if(GetStyleSettingBool(iStyle, "unranked"))
{ {
char sName[64]; char sName[64];
gSM_StyleKeys[iStyle].GetString("name", sName, 64); GetStyleSetting(iStyle, "name", sName, sizeof(sName));
FormatEx(sDisplay, 64, "%T %s", "StyleUnranked", client, sName); FormatEx(sDisplay, 64, "%T %s", "StyleUnranked", client, sName);
} }
else else
{ {
float time = 0.0; float time = 0.0;
@ -1264,13 +1270,12 @@ public Action Command_Style(int client, int args)
} }
char sName[64]; char sName[64];
gSM_StyleKeys[iStyle].GetString("name", sName, 64); GetStyleSetting(iStyle, "name", sName, sizeof(sName));
FormatEx(sDisplay, 64, "%s - %s: %s", sName, sWR, sTime); FormatEx(sDisplay, 64, "%s - %s: %s", sName, sWR, sTime);
} }
else else
{ {
gSM_StyleKeys[iStyle].GetString("name", sDisplay, 64); GetStyleSetting(iStyle, "name", sDisplay, sizeof(sDisplay));
} }
} }
@ -1403,7 +1408,7 @@ void ChangeClientStyle(int client, int style, bool manual)
} }
char sName[64]; char sName[64];
gSM_StyleKeys[style].GetString("name", sName, 64); GetStyleSetting(style, "name", sName, sizeof(sName));
Shavit_PrintToChat(client, "%T", "StyleSelection", client, gS_ChatStrings.sStyle, sName, gS_ChatStrings.sText); Shavit_PrintToChat(client, "%T", "StyleSelection", client, gS_ChatStrings.sStyle, sName, gS_ChatStrings.sText);
} }
@ -2019,31 +2024,31 @@ public int Native_GetStyleStrings(Handle handler, int numParams)
{ {
case sStyleName: case sStyleName:
{ {
gSM_StyleKeys[style].GetString("name", sValue, size); GetStyleSetting(style, "name", sValue, size);
} }
case sShortName: case sShortName:
{ {
gSM_StyleKeys[style].GetString("shortname", sValue, size); GetStyleSetting(style, "shortname", sValue, size);
} }
case sHTMLColor: case sHTMLColor:
{ {
gSM_StyleKeys[style].GetString("htmlcolor", sValue, size); GetStyleSetting(style, "htmlcolor", sValue, size);
} }
case sChangeCommand: case sChangeCommand:
{ {
gSM_StyleKeys[style].GetString("command", sValue, size); GetStyleSetting(style, "command", sValue, size);
} }
case sClanTag: case sClanTag:
{ {
gSM_StyleKeys[style].GetString("clantag", sValue, size); GetStyleSetting(style, "clantag", sValue, size);
} }
case sSpecialString: case sSpecialString:
{ {
gSM_StyleKeys[style].GetString("specialstring", sValue, size); GetStyleSetting(style, "specialstring", sValue, size);
} }
case sStylePermission: case sStylePermission:
{ {
gSM_StyleKeys[style].GetString("permission", sValue, size); GetStyleSetting(style, "permission", sValue, size);
} }
default: default:
{ {
@ -2064,13 +2069,13 @@ public int Native_GetStyleStringsStruct(Handle plugin, int numParams)
} }
stylestrings_t strings; stylestrings_t strings;
gSM_StyleKeys[style].GetString("name", strings.sStyleName, sizeof(strings.sStyleName)); GetStyleSetting(style, "name", strings.sStyleName, sizeof(strings.sStyleName));
gSM_StyleKeys[style].GetString("shortname", strings.sShortName, sizeof(strings.sShortName)); GetStyleSetting(style, "shortname", strings.sShortName, sizeof(strings.sShortName));
gSM_StyleKeys[style].GetString("htmlcolor", strings.sHTMLColor, sizeof(strings.sHTMLColor)); GetStyleSetting(style, "htmlcolor", strings.sHTMLColor, sizeof(strings.sHTMLColor));
gSM_StyleKeys[style].GetString("command", strings.sChangeCommand, sizeof(strings.sChangeCommand)); GetStyleSetting(style, "command", strings.sChangeCommand, sizeof(strings.sChangeCommand));
gSM_StyleKeys[style].GetString("clantag", strings.sClanTag, sizeof(strings.sClanTag)); GetStyleSetting(style, "clantag", strings.sClanTag, sizeof(strings.sClanTag));
gSM_StyleKeys[style].GetString("specialstring", strings.sSpecialString, sizeof(strings.sSpecialString)); GetStyleSetting(style, "specialstring", strings.sSpecialString, sizeof(strings.sSpecialString));
gSM_StyleKeys[style].GetString("permission", strings.sStylePermission, sizeof(strings.sStylePermission)); GetStyleSetting(style, "permission", strings.sStylePermission, sizeof(strings.sStylePermission));
return SetNativeArray(2, strings, sizeof(stylestrings_t)); return SetNativeArray(2, strings, sizeof(stylestrings_t));
} }
@ -2224,13 +2229,13 @@ public int Native_GetStyleSetting(Handle handler, int numParams)
{ {
int style = GetNativeCell(1); int style = GetNativeCell(1);
char sKey[256]; char sKey[64];
GetNativeString(2, sKey, 256); GetNativeString(2, sKey, sizeof(sKey));
int maxlength = GetNativeCell(4); int maxlength = GetNativeCell(4);
char sValue[256]; char sValue[128];
bool ret = gSM_StyleKeys[style].GetString(sKey, sValue, maxlength); bool ret = GetStyleSetting(style, sKey, sValue, sizeof(sValue));
SetNativeString(3, sValue, maxlength); SetNativeString(3, sValue, maxlength);
return ret; return ret;
@ -2240,17 +2245,26 @@ public int Native_GetStyleSettingInt(Handle handler, int numParams)
{ {
int style = GetNativeCell(1); int style = GetNativeCell(1);
char sKey[256]; char sKey[64];
GetNativeString(2, sKey, 256); GetNativeString(2, sKey, sizeof(sKey));
return GetStyleSettingInt(style, sKey); return GetStyleSettingInt(style, sKey);
} }
int GetStyleSettingInt(int style, char[] key) int GetStyleSettingInt(int style, char[] key)
{ {
char sValue[16]; style_setting_t ss;
gSM_StyleKeys[style].GetString(key, sValue, 16); gSM_StyleKeys[style].GetArray(key, ss, style_setting_t::i+1);
return StringToInt(sValue); return ss.i;
}
bool SetStyleSettingInt(int style, char[] key, int value, bool replace=true)
{
style_setting_t ss;
ss.i = value;
ss.f = float(value);
int strcells = IntToString(value, ss.str, sizeof(ss.str));
return gSM_StyleKeys[style].SetArray(key, ss, strcells+2, replace);
} }
public int Native_GetStyleSettingBool(Handle handler, int numParams) public int Native_GetStyleSettingBool(Handle handler, int numParams)
@ -2268,21 +2282,35 @@ bool GetStyleSettingBool(int style, char[] key)
return GetStyleSettingInt(style, key) != 0; return GetStyleSettingInt(style, key) != 0;
} }
bool SetStyleSettingBool(int style, char[] key, bool value, bool replace=true)
{
return SetStyleSettingInt(style, key, value ? 1 : 0, replace);
}
public any Native_GetStyleSettingFloat(Handle handler, int numParams) public any Native_GetStyleSettingFloat(Handle handler, int numParams)
{ {
int style = GetNativeCell(1); int style = GetNativeCell(1);
char sKey[256]; char sKey[64];
GetNativeString(2, sKey, 256); GetNativeString(2, sKey, sizeof(sKey));
return GetStyleSettingFloat(style, sKey); return GetStyleSettingFloat(style, sKey);
} }
float GetStyleSettingFloat(int style, char[] key) float GetStyleSettingFloat(int style, char[] key)
{ {
char sValue[16]; style_setting_t ss;
gSM_StyleKeys[style].GetString(key, sValue, 16); gSM_StyleKeys[style].GetArray(key, ss, style_setting_t::f+1);
return StringToFloat(sValue); return ss.f;
}
bool SetStyleSettingFloat(int style, char[] key, float value, bool replace=true)
{
style_setting_t ss;
ss.i = RoundFloat(value);
ss.f = value;
int strcells = FloatToString(value, ss.str, sizeof(ss.str));
return gSM_StyleKeys[style].SetArray(key, ss, strcells+2, replace);
} }
public any Native_HasStyleSetting(Handle handler, int numParams) public any Native_HasStyleSetting(Handle handler, int numParams)
@ -2290,8 +2318,8 @@ public any Native_HasStyleSetting(Handle handler, int numParams)
// TODO: replace with sm 1.11 StringMap.ContainsKey // TODO: replace with sm 1.11 StringMap.ContainsKey
int style = GetNativeCell(1); int style = GetNativeCell(1);
char sKey[256]; char sKey[64];
GetNativeString(2, sKey, 256); GetNativeString(2, sKey, sizeof(sKey));
return HasStyleSetting(style, sKey); return HasStyleSetting(style, sKey);
} }
@ -2318,71 +2346,88 @@ public any Native_SetMaxVelocity(Handle plugin, int numParams)
bool HasStyleSetting(int style, char[] key) bool HasStyleSetting(int style, char[] key)
{ {
char sValue[1]; int value[1];
return gSM_StyleKeys[style].GetString(key, sValue, 1); return gSM_StyleKeys[style].GetArray(key, value, 1);
}
bool SetStyleSetting(int style, const char[] key, const char[] value, bool replace=true)
{
style_setting_t ss;
ss.i = StringToInt(value);
ss.f = StringToFloat(value);
int strcells = strcopy(ss.str, sizeof(ss.str), value);
if (strcells < 1) strcells = 1;
return gSM_StyleKeys[style].SetArray(key, ss, strcells+2, replace);
}
bool GetStyleSetting(int style, const char[] key, char[] value, int size)
{
style_setting_t ss;
if (gSM_StyleKeys[style].GetArray(key, ss, sizeof(ss)))
{
strcopy(value, size, ss.str);
return true;
}
return false;
} }
public any Native_SetStyleSetting(Handle handler, int numParams) public any Native_SetStyleSetting(Handle handler, int numParams)
{ {
int style = GetNativeCell(1); int style = GetNativeCell(1);
char sKey[256]; char sKey[64];
GetNativeString(2, sKey, 256); GetNativeString(2, sKey, sizeof(sKey));
char sValue[256]; char sValue[128];
GetNativeString(3, sValue, 256); GetNativeString(3, sValue, sizeof(sValue));
bool replace = GetNativeCell(4); bool replace = GetNativeCell(4);
return gSM_StyleKeys[style].SetString(sKey, sValue, replace); return SetStyleSetting(style, sKey, sValue, replace);
} }
public any Native_SetStyleSettingFloat(Handle handler, int numParams) public any Native_SetStyleSettingFloat(Handle handler, int numParams)
{ {
int style = GetNativeCell(1); int style = GetNativeCell(1);
char sKey[256]; char sKey[64];
GetNativeString(2, sKey, 256); GetNativeString(2, sKey, sizeof(sKey));
float fValue = GetNativeCell(3); float fValue = GetNativeCell(3);
char sValue[16];
FloatToString(fValue, sValue, 16);
bool replace = GetNativeCell(4); bool replace = GetNativeCell(4);
return gSM_StyleKeys[style].SetString(sKey, sValue, replace); return SetStyleSettingFloat(style, sKey, fValue, replace);
} }
public any Native_SetStyleSettingBool(Handle handler, int numParams) public any Native_SetStyleSettingBool(Handle handler, int numParams)
{ {
int style = GetNativeCell(1); int style = GetNativeCell(1);
char sKey[256]; char sKey[64];
GetNativeString(2, sKey, 256); GetNativeString(2, sKey, sizeof(sKey));
bool value = GetNativeCell(3); bool value = GetNativeCell(3);
bool replace = GetNativeCell(4); bool replace = GetNativeCell(4);
return gSM_StyleKeys[style].SetString(sKey, value ? "1" : "0", replace); return SetStyleSettingInt(style, sKey, value ? 1 : 0, replace);
} }
public any Native_SetStyleSettingInt(Handle handler, int numParams) public any Native_SetStyleSettingInt(Handle handler, int numParams)
{ {
int style = GetNativeCell(1); int style = GetNativeCell(1);
char sKey[256]; char sKey[64];
GetNativeString(2, sKey, 256); GetNativeString(2, sKey, sizeof(sKey));
int value = GetNativeCell(3); int value = GetNativeCell(3);
char sValue[16];
IntToString(value, sValue, 16);
bool replace = GetNativeCell(4); bool replace = GetNativeCell(4);
return gSM_StyleKeys[style].SetString(sKey, sValue, replace); return SetStyleSettingInt(style, sKey, value, replace);
} }
public Action Shavit_OnStartPre(int client, int track) public Action Shavit_OnStartPre(int client, int track)
@ -2750,57 +2795,55 @@ public SMCResult OnStyleEnterSection(SMCParser smc, const char[] name, bool opt_
gSM_StyleKeys[gI_CurrentParserIndex] = new StringMap(); gSM_StyleKeys[gI_CurrentParserIndex] = new StringMap();
gSM_StyleKeys[gI_CurrentParserIndex].SetString("name", "<MISSING STYLE NAME>"); SetStyleSetting(gI_CurrentParserIndex, "name", "<MISSING STYLE NAME>");
gSM_StyleKeys[gI_CurrentParserIndex].SetString("shortname", "<MISSING SHORT STYLE NAME>"); SetStyleSetting(gI_CurrentParserIndex, "shortname", "<MISSING SHORT STYLE NAME>");
gSM_StyleKeys[gI_CurrentParserIndex].SetString("htmlcolor", "<MISSING STYLE HTML COLOR>"); SetStyleSetting(gI_CurrentParserIndex, "htmlcolor", "<MISSING STYLE HTML COLOR>");
gSM_StyleKeys[gI_CurrentParserIndex].SetString("command", ""); SetStyleSetting(gI_CurrentParserIndex, "command", "");
gSM_StyleKeys[gI_CurrentParserIndex].SetString("clantag", "<MISSING STYLE CLAN TAG>"); SetStyleSetting(gI_CurrentParserIndex, "clantag", "<MISSING STYLE CLAN TAG>");
gSM_StyleKeys[gI_CurrentParserIndex].SetString("specialstring", ""); SetStyleSetting(gI_CurrentParserIndex, "specialstring", "");
gSM_StyleKeys[gI_CurrentParserIndex].SetString("permission", ""); SetStyleSetting(gI_CurrentParserIndex, "permission", "");
gSM_StyleKeys[gI_CurrentParserIndex].SetString("autobhop", "1"); SetStyleSettingInt (gI_CurrentParserIndex, "autobhop", 1);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("easybhop", "1"); SetStyleSettingInt (gI_CurrentParserIndex, "easybhop", 1);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("prespeed", "0"); SetStyleSettingInt (gI_CurrentParserIndex, "prespeed", 0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("velocity_limit", "0.0"); SetStyleSettingFloat(gI_CurrentParserIndex, "velocity_limit", 0.0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("airaccelerate", "1000.0"); SetStyleSettingFloat(gI_CurrentParserIndex, "airaccelerate", 1000.0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("bunnyhopping", "1"); SetStyleSettingInt (gI_CurrentParserIndex, "bunnyhopping", 1);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("runspeed", "260.00"); SetStyleSettingFloat(gI_CurrentParserIndex, "runspeed", 260.00);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("gravity", "1.0"); SetStyleSettingFloat(gI_CurrentParserIndex, "gravity", 1.0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("speed", "1.0"); SetStyleSettingFloat(gI_CurrentParserIndex, "speed", 1.0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("halftime", "0"); SetStyleSettingInt (gI_CurrentParserIndex, "halftime", 0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("timescale", "1.0"); SetStyleSettingFloat(gI_CurrentParserIndex, "timescale", 1.0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("velocity", "1.0"); SetStyleSettingFloat(gI_CurrentParserIndex, "velocity", 1.0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("bonus_velocity", "0.0"); SetStyleSettingFloat(gI_CurrentParserIndex, "bonus_velocity", 0.0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("min_velocity", "0.0"); SetStyleSettingFloat(gI_CurrentParserIndex, "min_velocity", 0.0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("jump_multiplier", "0.0"); SetStyleSettingFloat(gI_CurrentParserIndex, "jump_multiplier", 0.0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("jump_bonus", "0.0"); SetStyleSettingFloat(gI_CurrentParserIndex, "jump_bonus", 0.0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("block_w", "0"); SetStyleSettingInt (gI_CurrentParserIndex, "block_w", 0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("block_a", "0"); SetStyleSettingInt (gI_CurrentParserIndex, "block_a", 0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("block_s", "0"); SetStyleSettingInt (gI_CurrentParserIndex, "block_s", 0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("block_d", "0"); SetStyleSettingInt (gI_CurrentParserIndex, "block_d", 0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("block_use", "0"); SetStyleSettingInt (gI_CurrentParserIndex, "block_use", 0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("force_hsw", "0"); SetStyleSettingInt (gI_CurrentParserIndex, "force_hsw", 0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("block_pleft", "0"); SetStyleSettingInt (gI_CurrentParserIndex, "block_pleft", 0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("block_pright", "0"); SetStyleSettingInt (gI_CurrentParserIndex, "block_pright", 0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("block_pstrafe", "0"); SetStyleSettingInt (gI_CurrentParserIndex, "block_pstrafe", 0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("unranked", "0"); SetStyleSettingInt (gI_CurrentParserIndex, "unranked", 0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("noreplay", "0"); SetStyleSettingInt (gI_CurrentParserIndex, "noreplay", 0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("sync", "1"); SetStyleSettingInt (gI_CurrentParserIndex, "sync", 1);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("strafe_count_w", "0"); SetStyleSettingInt (gI_CurrentParserIndex, "strafe_count_w", 0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("strafe_count_a", "1"); SetStyleSettingInt (gI_CurrentParserIndex, "strafe_count_a", 1);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("strafe_count_s", "0"); SetStyleSettingInt (gI_CurrentParserIndex, "strafe_count_s", 0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("strafe_count_d", "1"); SetStyleSettingInt (gI_CurrentParserIndex, "strafe_count_d", 1);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("rankingmultiplier", "1.00"); SetStyleSettingFloat(gI_CurrentParserIndex, "rankingmultiplier", 1.0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("special", "0"); SetStyleSettingInt (gI_CurrentParserIndex, "special", 0);
char sOrder[4]; SetStyleSettingInt(gI_CurrentParserIndex, "ordering", gI_CurrentParserIndex);
IntToString(gI_CurrentParserIndex, sOrder, 4);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("ordering", sOrder);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("inaccessible", "0"); SetStyleSettingInt(gI_CurrentParserIndex, "inaccessible", 0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("enabled", "1"); SetStyleSettingInt(gI_CurrentParserIndex, "enabled", 1);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("kzcheckpoints", "0"); SetStyleSettingInt(gI_CurrentParserIndex, "kzcheckpoints", 0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("force_groundkeys", "0"); SetStyleSettingInt(gI_CurrentParserIndex, "force_groundkeys", 0);
gI_OrderedStyles[gI_CurrentParserIndex] = gI_CurrentParserIndex; gI_OrderedStyles[gI_CurrentParserIndex] = gI_CurrentParserIndex;
@ -2820,19 +2863,19 @@ public SMCResult OnStyleLeaveSection(SMCParser smc)
// if this style is disabled, we will force certain settings // if this style is disabled, we will force certain settings
if(GetStyleSettingInt(gI_CurrentParserIndex, "enabled") <= 0) if(GetStyleSettingInt(gI_CurrentParserIndex, "enabled") <= 0)
{ {
gSM_StyleKeys[gI_CurrentParserIndex].SetString("noreplay", "1"); SetStyleSettingInt (gI_CurrentParserIndex, "noreplay", 1);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("rankingmultiplier", "0"); SetStyleSettingFloat(gI_CurrentParserIndex, "rankingmultiplier", 0.0);
gSM_StyleKeys[gI_CurrentParserIndex].SetString("inaccessible", "1"); SetStyleSettingInt (gI_CurrentParserIndex, "inaccessible", 1);
} }
if(GetStyleSettingBool(gI_CurrentParserIndex, "halftime")) if(GetStyleSettingBool(gI_CurrentParserIndex, "halftime"))
{ {
gSM_StyleKeys[gI_CurrentParserIndex].SetString("timescale", "0.5"); SetStyleSettingFloat(gI_CurrentParserIndex, "timescale", 0.5);
} }
if (GetStyleSettingFloat(gI_CurrentParserIndex, "timescale") <= 0.0) if (GetStyleSettingFloat(gI_CurrentParserIndex, "timescale") <= 0.0)
{ {
gSM_StyleKeys[gI_CurrentParserIndex].SetString("timescale", "1.0"); SetStyleSettingFloat(gI_CurrentParserIndex, "timescale", 1.0);
} }
// Setting it here so that we can reference the timescale setting. // Setting it here so that we can reference the timescale setting.
@ -2840,19 +2883,18 @@ public SMCResult OnStyleLeaveSection(SMCParser smc)
{ {
if(GetStyleSettingFloat(gI_CurrentParserIndex, "timescale") == 1.0) if(GetStyleSettingFloat(gI_CurrentParserIndex, "timescale") == 1.0)
{ {
gSM_StyleKeys[gI_CurrentParserIndex].SetString("force_timescale", "0"); SetStyleSettingInt(gI_CurrentParserIndex, "force_timescale", 0);
} }
else else
{ {
gSM_StyleKeys[gI_CurrentParserIndex].SetString("force_timescale", "1"); SetStyleSettingInt(gI_CurrentParserIndex, "force_timescale", 1);
} }
} }
char sStyleCommand[128]; char sStyleCommand[128];
gSM_StyleKeys[gI_CurrentParserIndex].GetString("command", sStyleCommand, 128); GetStyleSetting(gI_CurrentParserIndex, "command", sStyleCommand, sizeof(sStyleCommand));
char sName[64]; char sName[64];
gSM_StyleKeys[gI_CurrentParserIndex].GetString("name", sName, 64); GetStyleSetting(gI_CurrentParserIndex, "name", sName, sizeof(sName));
if(!gB_Registered && strlen(sStyleCommand) > 0 && !GetStyleSettingBool(gI_CurrentParserIndex, "inaccessible")) if(!gB_Registered && strlen(sStyleCommand) > 0 && !GetStyleSettingBool(gI_CurrentParserIndex, "inaccessible"))
{ {
@ -2877,7 +2919,7 @@ public SMCResult OnStyleLeaveSection(SMCParser smc)
} }
char sPermission[64]; char sPermission[64];
gSM_StyleKeys[gI_CurrentParserIndex].GetString("permission", sPermission, 64); GetStyleSetting(gI_CurrentParserIndex, "name", sPermission, sizeof(sPermission));
if(StrContains(sPermission, ";") != -1) if(StrContains(sPermission, ";") != -1)
{ {
@ -2909,7 +2951,7 @@ public SMCResult OnStyleLeaveSection(SMCParser smc)
public SMCResult OnStyleKeyValue(SMCParser smc, const char[] key, const char[] value, bool key_quotes, bool value_quotes) public SMCResult OnStyleKeyValue(SMCParser smc, const char[] key, const char[] value, bool key_quotes, bool value_quotes)
{ {
gSM_StyleKeys[gI_CurrentParserIndex].SetString(key, value); SetStyleSetting(gI_CurrentParserIndex, key, value);
} }
public int SortAscending_StyleOrder(int index1, int index2, const int[] array, any hndl) public int SortAscending_StyleOrder(int index1, int index2, const int[] array, any hndl)