public FsmGameObject(AssetNameResolver namer, AssetTypeValueField field) : base(field) { value = StructUtil.ReadNamedAssetPPtr(namer, field.Get("value")); if (name == "") { name = value.name; } }
public FsmEventTarget(AssetNameResolver namer, AssetTypeValueField field) { target = (EventTarget)field.Get("target").GetValue().AsInt(); excludeSelf = new FsmBool(namer, field.Get("excludeSelf")); gameObject = new FsmOwnerDefault(namer, field.Get("gameObject")); fsmName = new FsmString(namer, field.Get("fsmName")); sendToChildren = new FsmBool(namer, field.Get("sendToChildren")); fsmComponent = StructUtil.ReadNamedAssetPPtr(namer, field.Get("fsmComponent")); }
public FsmTemplateControl(AssetNameResolver namer, AssetTypeValueField field) { fsmTemplate = StructUtil.ReadAssetPPtr(field.Get("fsmTemplate")); fsmVarOverrides = new FsmVarOverride[field.Get("fsmVarOverrides").GetChildrenCount()]; for (int i = 0; i < fsmVarOverrides.Length; i++) { fsmVarOverrides[i] = new FsmVarOverride(namer, field.Get("fsmVarOverrides")[i]); } }
public FsmVar(AssetNameResolver namer, AssetTypeValueField field) { variableName = field.Get("variableName").GetValue().AsString(); objectType = field.Get("objectType").GetValue().AsString(); useVariable = field.Get("useVariable").GetValue().AsBool(); type = (VariableType)field.Get("type").GetValue().AsInt(); floatValue = field.Get("floatValue").GetValue().AsFloat(); intValue = field.Get("intValue").GetValue().AsInt(); boolValue = field.Get("boolValue").GetValue().AsBool(); stringValue = field.Get("stringValue").GetValue().AsString(); vector4Value = new Vector4(field.Get("vector4Value")); objectReference = StructUtil.ReadNamedAssetPPtr(namer, field.Get("objectReference")); arrayValue = new FsmArray(namer, field.Get("arrayValue")); }
public ActionData(AssetNameResolver namer, AssetTypeValueField field) { actionNames = StructUtil.ReadAssetList <string>(namer, field.Get("actionNames")); customNames = StructUtil.ReadAssetList <string>(namer, field.Get("customNames")); actionEnabled = StructUtil.ReadAssetList <bool>(namer, field.Get("actionEnabled")); actionIsOpen = StructUtil.ReadAssetList <bool>(namer, field.Get("actionIsOpen")); actionStartIndex = StructUtil.ReadAssetList <int>(namer, field.Get("actionStartIndex")); actionHashCodes = StructUtil.ReadAssetList <int>(namer, field.Get("actionHashCodes")); unityObjectParams = StructUtil.ReadAssetList <NamedAssetPPtr>(namer, field.Get("unityObjectParams")); fsmGameObjectParams = StructUtil.ReadAssetList <FsmGameObject>(namer, field.Get("fsmGameObjectParams")); fsmOwnerDefaultParams = StructUtil.ReadAssetList <FsmOwnerDefault>(namer, field.Get("fsmOwnerDefaultParams")); animationCurveParams = StructUtil.ReadAssetList <FsmAnimationCurve>(namer, field.Get("animationCurveParams")); functionCallParams = StructUtil.ReadAssetList <FsmFunctionCall>(namer, field.Get("functionCallParams")); fsmTemplateControlParams = StructUtil.ReadAssetList <FsmTemplateControl>(namer, field.Get("fsmTemplateControlParams")); fsmEventTargetParams = StructUtil.ReadAssetList <FsmEventTarget>(namer, field.Get("fsmEventTargetParams")); fsmPropertyParams = StructUtil.ReadAssetList <FsmProperty>(namer, field.Get("fsmPropertyParams")); layoutOptionParams = StructUtil.ReadAssetList <FsmLayoutOption>(namer, field.Get("layoutOptionParams")); fsmStringParams = StructUtil.ReadAssetList <FsmString>(namer, field.Get("fsmStringParams")); fsmObjectParams = StructUtil.ReadAssetList <FsmObject>(namer, field.Get("fsmObjectParams")); fsmVarParams = StructUtil.ReadAssetList <FsmVar>(namer, field.Get("fsmVarParams")); fsmArrayParams = StructUtil.ReadAssetList <FsmArray>(namer, field.Get("fsmArrayParams")); fsmEnumParams = StructUtil.ReadAssetList <FsmEnum>(namer, field.Get("fsmEnumParams")); fsmFloatParams = StructUtil.ReadAssetList <FsmFloat>(namer, field.Get("fsmFloatParams")); fsmIntParams = StructUtil.ReadAssetList <FsmInt>(namer, field.Get("fsmIntParams")); fsmBoolParams = StructUtil.ReadAssetList <FsmBool>(namer, field.Get("fsmBoolParams")); fsmVector2Params = StructUtil.ReadAssetList <FsmVector2>(namer, field.Get("fsmVector2Params")); fsmVector3Params = StructUtil.ReadAssetList <FsmVector3>(namer, field.Get("fsmVector3Params")); fsmColorParams = StructUtil.ReadAssetList <FsmColor>(namer, field.Get("fsmColorParams")); fsmRectParams = StructUtil.ReadAssetList <FsmRect>(namer, field.Get("fsmRectParams")); fsmQuaternionParams = StructUtil.ReadAssetList <FsmQuaternion>(namer, field.Get("fsmQuaternionParams")); stringParams = StructUtil.ReadAssetList <string>(namer, field.Get("stringParams")); byteData = StructUtil.ReadAssetList <byte>(namer, field.Get("byteData")); arrayParamSizes = StructUtil.ReadAssetList <int>(namer, field.Get("arrayParamSizes")); arrayParamTypes = StructUtil.ReadAssetList <string>(namer, field.Get("arrayParamTypes")); customTypeSizes = StructUtil.ReadAssetList <int>(namer, field.Get("customTypeSizes")); customTypeNames = StructUtil.ReadAssetList <string>(namer, field.Get("customTypeNames")); paramDataType = StructUtil.ReadAssetList <ParamDataType>(namer, field.Get("paramDataType")); paramName = StructUtil.ReadAssetList <string>(namer, field.Get("paramName")); paramDataPos = StructUtil.ReadAssetList <int>(namer, field.Get("paramDataPos")); paramByteDataSize = StructUtil.ReadAssetList <int>(namer, field.Get("paramByteDataSize")); }
private void GetVariableValues(List <FsmVariableData> varData, AssetNameResolver namer, AssetTypeValueField variables) { AssetTypeValueField floatVariables = variables.Get("floatVariables"); AssetTypeValueField intVariables = variables.Get("intVariables"); AssetTypeValueField boolVariables = variables.Get("boolVariables"); AssetTypeValueField stringVariables = variables.Get("stringVariables"); AssetTypeValueField vector2Variables = variables.Get("vector2Variables"); AssetTypeValueField vector3Variables = variables.Get("vector3Variables"); AssetTypeValueField colorVariables = variables.Get("colorVariables"); AssetTypeValueField rectVariables = variables.Get("rectVariables"); AssetTypeValueField quaternionVariables = variables.Get("quaternionVariables"); AssetTypeValueField gameObjectVariables = variables.Get("gameObjectVariables"); AssetTypeValueField objectVariables = variables.Get("objectVariables"); AssetTypeValueField materialVariables = variables.Get("materialVariables"); AssetTypeValueField textureVariables = variables.Get("textureVariables"); AssetTypeValueField arrayVariables = variables.Get("arrayVariables"); AssetTypeValueField enumVariables = variables.Get("enumVariables"); FsmVariableData floats = new FsmVariableData() { Type = "Floats", Values = new List <Tuple <string, object> >() }; varData.Add(floats); for (int i = 0; i < floatVariables.GetValue().AsArray().size; i++) { string name = floatVariables.Get(i).Get("name").GetValue().AsString(); object value = floatVariables.Get(i).Get("value").GetValue().AsFloat(); floats.Values.Add(new Tuple <string, object>(name, value)); } FsmVariableData ints = new FsmVariableData() { Type = "Ints", Values = new List <Tuple <string, object> >() }; varData.Add(ints); for (int i = 0; i < intVariables.GetValue().AsArray().size; i++) { string name = intVariables.Get(i).Get("name").GetValue().AsString(); object value = intVariables.Get(i).Get("value").GetValue().AsInt(); ints.Values.Add(new Tuple <string, object>(name, value)); } FsmVariableData bools = new FsmVariableData() { Type = "Bools", Values = new List <Tuple <string, object> >() }; varData.Add(bools); for (int i = 0; i < boolVariables.GetValue().AsArray().size; i++) { string name = boolVariables.Get(i).Get("name").GetValue().AsString(); object value = boolVariables.Get(i).Get("value").GetValue().AsBool().ToString(); bools.Values.Add(new Tuple <string, object>(name, value)); } FsmVariableData strings = new FsmVariableData() { Type = "Strings", Values = new List <Tuple <string, object> >() }; varData.Add(strings); for (int i = 0; i < stringVariables.GetValue().AsArray().size; i++) { string name = stringVariables.Get(i).Get("name").GetValue().AsString(); object value = stringVariables.Get(i).Get("value").GetValue().AsString(); strings.Values.Add(new Tuple <string, object>(name, value)); } FsmVariableData vector2s = new FsmVariableData() { Type = "Vector2s", Values = new List <Tuple <string, object> >() }; varData.Add(vector2s); for (int i = 0; i < vector2Variables.GetValue().AsArray().size; i++) { string name = vector2Variables.Get(i).Get("name").GetValue().AsString(); AssetTypeValueField vector2 = vector2Variables.Get(i).Get("value"); object value = new Vector2(vector2); vector2s.Values.Add(new Tuple <string, object>(name, value)); } FsmVariableData vector3s = new FsmVariableData() { Type = "Vector3s", Values = new List <Tuple <string, object> >() }; varData.Add(vector3s); for (int i = 0; i < vector3Variables.GetValue().AsArray().size; i++) { string name = vector3Variables.Get(i).Get("name").GetValue().AsString(); AssetTypeValueField vector3 = vector3Variables.Get(i).Get("value"); object value = new Vector2(vector3); vector3s.Values.Add(new Tuple <string, object>(name, value)); } FsmVariableData colors = new FsmVariableData() { Type = "Colors", Values = new List <Tuple <string, object> >() }; varData.Add(colors); for (int i = 0; i < colorVariables.GetValue().AsArray().size; i++) { string name = colorVariables.Get(i).Get("name").GetValue().AsString(); AssetTypeValueField color = colorVariables.Get(i).Get("value"); object value = new UnityColor(color); colors.Values.Add(new Tuple <string, object>(name, value)); } FsmVariableData rects = new FsmVariableData() { Type = "Rects", Values = new List <Tuple <string, object> >() }; varData.Add(rects); for (int i = 0; i < rectVariables.GetValue().AsArray().size; i++) { string name = rectVariables.Get(i).Get("name").GetValue().AsString(); AssetTypeValueField rect = rectVariables.Get(i).Get("value"); object value = new UnityRect(rect); rects.Values.Add(new Tuple <string, object>(name, value)); } FsmVariableData quaternions = new FsmVariableData() { Type = "Quaternions", Values = new List <Tuple <string, object> >() }; varData.Add(quaternions); for (int i = 0; i < quaternionVariables.GetValue().AsArray().size; i++) { string name = quaternionVariables.Get(i).Get("name").GetValue().AsString(); AssetTypeValueField quaternion = quaternionVariables.Get(i).Get("value"); object value = new Quaternion(quaternion); quaternions.Values.Add(new Tuple <string, object>(name, value)); } string[] pptrTypeHeaders = new[] { "GameObjects", "Objects", "Materials", "Textures" }; AssetTypeValueField[] pptrTypeFields = new[] { gameObjectVariables, objectVariables, materialVariables, textureVariables }; for (int j = 0; j < pptrTypeHeaders.Length; j++) { string header = pptrTypeHeaders[j]; AssetTypeValueField field = pptrTypeFields[j]; if (field.IsDummy()) { continue; } FsmVariableData genericData = new FsmVariableData() { Type = header, Values = new List <Tuple <string, object> >() }; varData.Add(genericData); for (int i = 0; i < field.GetValue().AsArray().size; i++) { string name = field.Get(i).Get("name").GetValue().AsString(); AssetTypeValueField valueField = field.Get(i).Get("value"); NamedAssetPPtr pptr = StructUtil.ReadNamedAssetPPtr(namer, valueField); object value; if (pptr.pathID == 0) { value = "[null]"; } else { value = pptr; } genericData.Values.Add(new Tuple <string, object>(name, value)); } } }
public FsmObject(AssetNameResolver namer, AssetTypeValueField field) : base(field) { value = StructUtil.ReadNamedAssetPPtr(namer, field.Get("value")); }