public void SetVariables(Dictionary <String, Boolean> variableValues) { foreach (String var in variableValues.Keys) { jep.AddVariable(var, variableValues[var]); } }
public static Boolean validConditions(Player perso, String req) { if ((req == null) || (req.Equals(""))) { return(true); } if (req.Contains("BI")) { return(false); } JepInstance jep = new JepInstance(); if (req.Contains("PO")) { req = havePO(req, perso); } req = req.Replace("&", "&&").Replace("=", "==").Replace("|", "||").Replace("!", "!="); try { jep.AddVariable("CI", perso.myStats.GetEffect(EffectEnum.AddIntelligence).Total); jep.AddVariable("CV", perso.myStats.GetEffect(EffectEnum.AddVitalite).Total); jep.AddVariable("CA", perso.myStats.GetEffect(EffectEnum.AddAgilite).Total); jep.AddVariable("CW", perso.myStats.GetEffect(EffectEnum.AddSagesse).Total); jep.AddVariable("CC", perso.myStats.GetEffect(EffectEnum.AddChance).Total); jep.AddVariable("CS", perso.myStats.GetEffect(EffectEnum.AddForce).Total); jep.AddVariable("Ci", perso.myStats.GetEffect(126).Base); jep.AddVariable("Cs", perso.myStats.GetEffect(118).Base); jep.AddVariable("Cv", perso.myStats.GetEffect(125).Base); jep.AddVariable("Ca", perso.myStats.GetEffect(119).Base); jep.AddVariable("Cw", perso.myStats.GetEffect(124).Base); jep.AddVariable("Cc", perso.myStats.GetEffect(123).Base); jep.AddVariable("Ps", perso.Alignement); jep.AddVariable("Pa", perso.AlignementLevel); jep.AddVariable("PP", perso.getGrade()); jep.AddVariable("PL", perso.Level); jep.AddVariable("PK", perso.Kamas); jep.AddVariable("PG", perso.Classe); jep.AddVariable("PS", perso.Sexe); jep.AddVariable("PZ", true); jep.AddVariable("MiS", perso.ID); jep.Parse(req); Object result = jep.Evaluate(); Boolean ok = false; if (result != null) { ok = Boolean.Parse(result.ToString()); } return(ok); } catch (JepException e) { Logger.Error("An error occurred: " + e.ToString()); } return(true); }