internal SandboxObjectReference NewChildSandboxObject(SandboxObjectReferenceData childSandboxObjectData, Vector3 position) { SandboxObjectReference childSandboxObject = (SandboxObjectReference)editable.NewSandboxObjectReference(childSandboxObjectData); childSandboxObject.gameObject.transform.position = position; return(childSandboxObject); }
internal Module NewSandboxObjectReference(SandboxObjectReferenceData sandboxObjectReferenceData) { GameObject gameObject = Instantiate(ModuleHead.instance.GetModulePrefab(typeof(SandboxObjectReferenceData)).gameObject, this.transform); SandboxObjectReference sandboxObjectReference = gameObject.GetComponent <SandboxObjectReference>(); _idModuleMap.Add(sandboxObjectReferenceData.id, sandboxObjectReference); sandboxObjectReference.parent = this; sandboxObjectReference.PopulateData(sandboxObjectReferenceData); sandboxObjectReference.OnLoad(); return(sandboxObjectReference); }
internal void PopulateLinkDatas() { int[] keys = _idModuleMap.Keys.ToArray(); foreach (int key in keys) { Module module = _idModuleMap[key]; if (module is ModuleLogicLink) { ModuleLogicLink link = (ModuleLogicLink)module; } else if (module is SandboxObject) { SandboxObject sandboxObject = (SandboxObject)module; sandboxObject.PopulateLinkDatas(); } else if (module is SandboxObjectReference) { SandboxObjectReference childSandboxObject = (SandboxObjectReference)module; childSandboxObject.PopulateLinkDatas(); } } }