private void Setup() { ClassVariables.Clear(); RPCVariables.Clear(); RewindVariables.Clear(); if (TiedObject.ObjectClassType == ForgeBaseClassType.Enums || TiedObject.ObjectClassType == ForgeBaseClassType.ObjectFactory) { CanRender = false; } if (TiedObject.ExactFilename == "NetworkBehavior") //Ignore this abstract class { CanRender = false; } if (TiedObject.IsNetworkObject) { CanRenderRPCS = false; } if (TiedObject.IsNetworkBehavior) { CanRenderFields = false; } ButtonName = TiedObject.ExactFilename; _defaultName = TiedObject.ExactFilename; for (int i = 0; i < TiedObject.Fields.Count; ++i) { bool canInterpolate = TiedObject.Fields[i].Interpolate; float interpolateValue = TiedObject.Fields[i].InterpolateValue; ClassVariables.Add(new ForgeEditorField(TiedObject.Fields[i].FieldName, true, TiedObject.Fields[i].FieldType, canInterpolate, interpolateValue)); } if (TiedObject != null) { for (int i = 0; i < TiedObject.RPCS.Count; ++i) { ForgeEditorRPCField rpc = new ForgeEditorRPCField(); rpc.FieldName = TiedObject.RPCS[i].RPCName; rpc.AddRange(TiedObject.RPCS[i].Arguments.ToArray(), TiedObject.RPCS[i].HelperTypes.ToArray()); if (TiedObject.RPCS[i].RPCName.ToLower().Equals("initialize")) { rpc.CanRender = false; } RPCVariables.Add(rpc); } } SetupLists(); }
public ForgeEditorRPCField Clone() { ForgeEditorRPCField returnValue = new ForgeEditorRPCField(); returnValue.FieldName = this.FieldName; returnValue.FieldTypes.AddRange(this.FieldTypes); returnValue.Dropdown = this.Dropdown; returnValue.CanRender = this.CanRender; return(returnValue); }