public bool Save(ref XMLRules.VariableType variable) { bool result = true; variable.AddName(new SchemaString(m_Name)); variable.AddType2(new SchemaLong((long)m_Type)); variable.AddValue(GetConstantFromValue(m_Type, m_Value)); if (m_UpdateScript != null) { ScriptReference scriptReference; if (BaseScript.Save(m_UpdateScript, out scriptReference)) { variable.AddUpdateScript(scriptReference); } else { Debug.LogError("Error saving update script for variable " + m_Name); result = false; } } return(result); }
public Variable(GameObject gameObject, XMLRules.VariableType variable) { m_GameObject = gameObject; m_IsDirty = true; Load(variable); }
public Variable(string name, VariableType type) { m_Name = name; m_IsDirty = false; m_Type = type; SetVariableType(type); m_UpdateScript = null; m_UpdateScriptType = null; }
public Value MakeVariable(string name, AiRuleEngine.VariableType type) { Value newValue = new Value(); XMLRules.VariableType newVariable = new XMLRules.VariableType(); newVariable.AddName(new Altova.Types.SchemaString(name)); newVariable.AddType2(new Altova.Types.SchemaLong((long)type)); newValue.AddVariable(newVariable); return newValue; }
public Value MakeVariable(string name, AiRuleEngine.VariableType type) { Value newValue = new Value(); XMLRules.VariableType newVariable = new XMLRules.VariableType(); newVariable.AddName(new Altova.Types.SchemaString(name)); newVariable.AddType2(new Altova.Types.SchemaLong((long)type)); newValue.AddVariable(newVariable); return(newValue); }
public bool Save(ref RuleBaseType ruleBase) { foreach (KeyValuePair <string, Variable> pair in m_Variables) { Variable variable = pair.Value; XMLRules.VariableType xmlVariable = new XMLRules.VariableType(); variable.Save(ref xmlVariable); ruleBase.AddVariables(xmlVariable); } return(true); }
public bool Save(ref RuleBaseType ruleBase) { foreach (KeyValuePair<string, Variable> pair in m_Variables) { Variable variable = pair.Value; XMLRules.VariableType xmlVariable = new XMLRules.VariableType(); variable.Save(ref xmlVariable); ruleBase.AddVariables(xmlVariable); } return true; }
public bool Load(XMLRules.VariableType variable) { m_Name = (string)variable.GetName().Value; m_Type = (VariableType)variable.GetType2().Value; m_Value = GetValueFromConstant((VariableType)variable.GetType2().Value, variable.GetValue()); if (variable.HasUpdateScript()) { BaseScript updateScript; RemoveScript(); if (BaseScript.Load(variable.GetUpdateScript(), m_GameObject, out updateScript)) { m_UpdateScriptType = updateScript.GetType(); m_UpdateScript = (BaseSensor)updateScript; } } m_IsDirty = true; return(true); }
public UpdateScriptEnumerator(VariableType par) { parent = par; nIndex = -1; }
public void ReplaceVariablesAt(VariableType newValue, int index) { ReplaceDomElementAt("", "Variables", index, newValue); }
public void AddVariables(VariableType newValue) { AppendDomElement("", "Variables", newValue); }
public void InsertVariablesAt(VariableType newValue, int index) { InsertDomElementAt("", "Variables", index, newValue); }
public ValueEnumerator(VariableType par) { parent = par; nIndex = -1; }
public void InsertVariableAt(VariableType newValue, int index) { InsertDomElementAt("", "Variable", index, newValue); }
static public ConstantType GetConstantFromValue(VariableType type, object value) { if (value == null) { Debug.LogError("Error null value in GetConstantFromValue"); return null; } ConstantType constantType = new ConstantType(); switch (type) { case VariableType.BOOLEAN: constantType.AddBoolean(new SchemaBoolean((bool)value)); break; case VariableType.FLOAT: constantType.AddFloat2(new SchemaDecimal((decimal)(float)value)); break; case VariableType.INT: constantType.AddInteger(new SchemaLong((long)(int)value)); break; case VariableType.STRING: constantType.AddString2(new SchemaString((string)value)); break; } return constantType; }
public void SetVariableType(VariableType type) { m_Type = type; switch (m_Type) { case VariableType.BOOLEAN: m_Value = new bool(); break; case VariableType.INT: m_Value = new int(); break; case VariableType.FLOAT: m_Value = new float(); break; case VariableType.STRING: m_Value = string.Empty; break; } }
static public object GetValueFromConstant(VariableType type, ConstantType constant) { object result = null; if (constant.HasBoolean()) { bool boolValue = (bool)constant.GetBoolean().Value; switch(type) { case VariableType.BOOLEAN: result = boolValue; break; case VariableType.INT: result = (int)(boolValue ? 1 : 0); break; case VariableType.FLOAT: result = (float)(boolValue ? 1 : 0); break; case VariableType.STRING: result = (boolValue ? "true" : "false"); break; } } else if (constant.HasInteger()) { int intValue = (int)constant.GetInteger().Value; switch(type) { case VariableType.BOOLEAN: result = (intValue == 1) ? true : false; break; case VariableType.INT: result = intValue; break; case VariableType.FLOAT: result = intValue; break; case VariableType.STRING: result = intValue.ToString(); break; } } else if (constant.HasFloat2()) { float floatValue = (float)constant.GetFloat2().Value; switch(type) { case VariableType.BOOLEAN: result = (floatValue == 1) ? true : false; break; case VariableType.INT: result = (int)floatValue; break; case VariableType.FLOAT: result = floatValue; break; case VariableType.STRING: result = floatValue.ToString(); break; } } else if (constant.HasString2()) { string stringValue = constant.GetString2().Value; switch(type) { case VariableType.BOOLEAN: result = (stringValue == "true") ? true : false; break; case VariableType.STRING: result = stringValue; break; case VariableType.INT: result = stringValue; break; case VariableType.FLOAT: result = Convert.ToSingle(stringValue); break; } } return result; }
public void AddVariable(VariableType newValue) { AppendDomElement("", "Variable", newValue); }
public void ReplaceVariableAt(VariableType newValue, int index) { ReplaceDomElementAt("", "Variable", index, newValue); }