/// <summary> /// if文の開始 /// </summary> /// <param name="param">判定に使う数値パラメーター</param> /// <param name="exp">判定式</param> public void BeginIf(AdvParamSetting param, ExpressionParser exp) { IsLoadInit = false; AdvIfData new_if = new AdvIfData(); if (null != current) { new_if.Parent = current; } current = new_if; current.BeginIf(param, exp); }
/// <summary> /// else if文の開始 /// </summary> /// <param name="param">判定に使う数値パラメーター</param> /// <param name="exp">判定式</param> public void ElseIf(AdvParamSetting param, ExpressionParser exp) { if (current == null) { if(!IsLoadInit) { Debug.LogError(LanguageAdvErrorMsg.LocalizeTextFormat(AdvErrorMsg.ElseIf, exp)); } current = new AdvIfData(); } current.ElseIf(param, exp); }
/// <summary> /// else if文の開始 /// </summary> /// <param name="param">判定に使う数値パラメーター</param> /// <param name="exp">判定式</param> public void ElseIf(AdvParamSetting param, ExpressionParser exp) { if (!isIf) { isIf = param.CalcExpressionBoolean(exp); isSkpping = !isIf; } else { isSkpping = true; } }
bool IsEnable( AdvParamSetting param ) { return (exp == null || param.CalcExpressionBoolean( exp ) ); }
bool isIf = false; //if文がtrueになったか /// <summary> /// if文の開始 /// </summary> /// <param name="param">判定に使う数値パラメーター</param> /// <param name="exp">判定式</param> public void BeginIf(AdvParamSetting param, ExpressionParser exp) { isIf = param.CalcExpressionBoolean(exp); isSkpping = !isIf; }