void CreateAttachGameObject() { m_CreateGameObject = (GameObject)CreateGameObject(GetTargetGameObject(), (GetTargetGameObject() == gameObject ? null : transform), m_AttachPrefab); if (m_CreateGameObject == null) { return; } // sync Layer // Ng_ChangeLayerWithChild(m_CreateGameObject, gameObject.layer); // Random pos, AddStartPos Vector3 newPos = m_CreateGameObject.transform.position; m_CreateGameObject.transform.position = m_AddStartPos + new Vector3(Random.Range(-m_RandomRange.x, m_RandomRange.x) + newPos.x, Random.Range(-m_RandomRange.y, m_RandomRange.y) + newPos.y, Random.Range(-m_RandomRange.z, m_RandomRange.z) + newPos.z); // m_AccumStartRot m_CreateGameObject.transform.localRotation *= Quaternion.Euler(m_AccumStartRot.x * m_nCreateCount, m_AccumStartRot.y * m_nCreateCount, m_AccumStartRot.z * m_nCreateCount); m_CreateGameObject.name += " " + m_nCreateCount; SetActiveRecursively(m_CreateGameObject, true); // PrefabAdjustSpeed AdjustSpeedRuntime(m_CreateGameObject, m_fPrefabSpeed); // m_fPrefabLifeTime if (0 < m_fPrefabLifeTime) { NcAutoDestruct ncAd = m_CreateGameObject.GetComponent <NcAutoDestruct>(); if (ncAd == null) { ncAd = m_CreateGameObject.AddComponent <NcAutoDestruct>(); } ncAd.m_fLifeTime = m_fPrefabLifeTime; } // m_bDetachParent if (m_bDetachParent) { NcDetachParent detachCom = m_CreateGameObject.GetComponent <NcDetachParent>(); if (detachCom == null) { detachCom = m_CreateGameObject.AddComponent <NcDetachParent>(); } } // m_nSpriteFactoryIndex if (0 <= m_nSpriteFactoryIndex) { NcSpriteFactory ncFactory = m_CreateGameObject.GetComponent <NcSpriteFactory>(); if (ncFactory) { ncFactory.SetSprite(m_nSpriteFactoryIndex, false); } } }
// Control Function ----------------------------------------------------------------- void CreateAttachPrefab() { m_nCreateCount++; m_CreateGameObject = (GameObject)CreateGameObject(GetTargetGameObject(), (GetTargetGameObject() == gameObject ? null : transform), m_AttachPrefab); if (m_CreateGameObject == null) { return; } // sync Layer // Ng_ChangeLayerWithChild(m_CreateGameObject, gameObject.layer); // Random pos Vector3 newPos = m_CreateGameObject.transform.position; m_CreateGameObject.transform.position = new Vector3(Random.Range(-m_RandomRange.x, m_RandomRange.x) + newPos.x, Random.Range(-m_RandomRange.y, m_RandomRange.y) + newPos.y, Random.Range(-m_RandomRange.z, m_RandomRange.z) + newPos.z); // AddStartPos m_CreateGameObject.transform.position += m_AddStartPos; // m_AccumStartRot m_CreateGameObject.transform.localRotation *= Quaternion.Euler(m_AccumStartRot.x * m_nCreateCount, m_AccumStartRot.y * m_nCreateCount, m_AccumStartRot.z * m_nCreateCount); m_CreateGameObject.name += " " + m_nCreateCount; NgObject.SetActiveRecursively(m_CreateGameObject, true); // PrefabAdjustSpeed AdjustSpeedRuntime(m_CreateGameObject, m_fPrefabSpeed); // m_fPrefabLifeTime if (0 < m_fPrefabLifeTime) { NcAutoDestruct ncAd = m_CreateGameObject.GetComponent <NcAutoDestruct>(); if (ncAd == null) { ncAd = m_CreateGameObject.AddComponent <NcAutoDestruct>(); } ncAd.m_fLifeTime = m_fPrefabLifeTime; } // m_bDetachParent if (m_bDetachParent) { NcDetachParent detachCom = m_CreateGameObject.GetComponent <NcDetachParent>(); if (detachCom == null) { detachCom = m_CreateGameObject.AddComponent <NcDetachParent>(); } } if ((0 == m_fRepeatTime || m_AttachType == AttachType.Destroy) && 0 < m_nRepeatCount && m_nCreateCount < m_nRepeatCount) { CreateAttachPrefab(); } }
private void CreateAttachPrefab() { this.m_nCreateCount++; this.m_CreateGameObject = base.CreateGameObject(this.GetTargetGameObject(), (!(this.GetTargetGameObject() == base.get_gameObject())) ? base.get_transform() : null, this.m_AttachPrefab); if (this.m_CreateGameObject == null) { return; } Vector3 position = this.m_CreateGameObject.get_transform().get_position(); this.m_CreateGameObject.get_transform().set_position(new Vector3(Random.Range(-this.m_RandomRange.x, this.m_RandomRange.x) + position.x, Random.Range(-this.m_RandomRange.y, this.m_RandomRange.y) + position.y, Random.Range(-this.m_RandomRange.z, this.m_RandomRange.z) + position.z)); Transform expr_F7 = this.m_CreateGameObject.get_transform(); expr_F7.set_position(expr_F7.get_position() + this.m_AddStartPos); Transform expr_118 = this.m_CreateGameObject.get_transform(); expr_118.set_localRotation(expr_118.get_localRotation() * Quaternion.Euler(this.m_AccumStartRot.x * (float)this.m_nCreateCount, this.m_AccumStartRot.y * (float)this.m_nCreateCount, this.m_AccumStartRot.z * (float)this.m_nCreateCount)); GameObject expr_16C = this.m_CreateGameObject; expr_16C.set_name(expr_16C.get_name() + " " + this.m_nCreateCount); NcEffectBehaviour.SetActiveRecursively(this.m_CreateGameObject, true); NcEffectBehaviour.AdjustSpeedRuntime(this.m_CreateGameObject, this.m_fPrefabSpeed); if (0f < this.m_fPrefabLifeTime) { NcAutoDestruct ncAutoDestruct = this.m_CreateGameObject.GetComponent <NcAutoDestruct>(); if (ncAutoDestruct == null) { ncAutoDestruct = this.m_CreateGameObject.AddComponent <NcAutoDestruct>(); } ncAutoDestruct.m_fLifeTime = this.m_fPrefabLifeTime; } if (this.m_bDetachParent) { NcDetachParent ncDetachParent = this.m_CreateGameObject.GetComponent <NcDetachParent>(); if (ncDetachParent == null) { ncDetachParent = this.m_CreateGameObject.AddComponent <NcDetachParent>(); } } if ((this.m_fRepeatTime == 0f || this.m_AttachType == NcAttachPrefab.AttachType.Destroy) && 0 < this.m_nRepeatCount && this.m_nCreateCount < this.m_nRepeatCount) { this.CreateAttachPrefab(); } }
private void CreateAttachPrefab() { this.m_nCreateCount++; this.m_CreateGameObject = base.CreateGameObject(this.GetTargetGameObject(), (!(this.GetTargetGameObject() == base.gameObject)) ? base.transform : null, this.m_AttachPrefab); if (this.m_CreateGameObject == null) { return; } Vector3 position = this.m_CreateGameObject.transform.position; this.m_CreateGameObject.transform.position = new Vector3(UnityEngine.Random.Range(-this.m_RandomRange.x, this.m_RandomRange.x) + position.x, UnityEngine.Random.Range(-this.m_RandomRange.y, this.m_RandomRange.y) + position.y, UnityEngine.Random.Range(-this.m_RandomRange.z, this.m_RandomRange.z) + position.z); this.m_CreateGameObject.transform.position += this.m_AddStartPos; this.m_CreateGameObject.transform.localRotation *= Quaternion.Euler(this.m_AccumStartRot.x * (float)this.m_nCreateCount, this.m_AccumStartRot.y * (float)this.m_nCreateCount, this.m_AccumStartRot.z * (float)this.m_nCreateCount); GameObject expr_16C = this.m_CreateGameObject; expr_16C.name = expr_16C.name + " " + this.m_nCreateCount; NcEffectBehaviour.SetActiveRecursively(this.m_CreateGameObject, true); NcEffectBehaviour.AdjustSpeedRuntime(this.m_CreateGameObject, this.m_fPrefabSpeed); if (0f < this.m_fPrefabLifeTime) { NcAutoDestruct ncAutoDestruct = this.m_CreateGameObject.GetComponent <NcAutoDestruct>(); if (ncAutoDestruct == null) { ncAutoDestruct = this.m_CreateGameObject.AddComponent <NcAutoDestruct>(); } ncAutoDestruct.m_fLifeTime = this.m_fPrefabLifeTime; } if (this.m_bDetachParent) { NcDetachParent x = this.m_CreateGameObject.GetComponent <NcDetachParent>(); if (x == null) { x = this.m_CreateGameObject.AddComponent <NcDetachParent>(); } } if ((this.m_fRepeatTime == 0f || this.m_AttachType == NcAttachPrefab.AttachType.Destroy) && 0 < this.m_nRepeatCount && this.m_nCreateCount < this.m_nRepeatCount) { this.CreateAttachPrefab(); } }
// Property ------------------------------------------------------------------------- // Event Function ------------------------------------------------------------------- void OnEnable() { m_Sel = target as NcDetachParent; m_UndoManager = new FXMakerUndoManager(m_Sel, "NcDetachParent"); }
void CreateAttachGameObject() { GameObject createObj = (GameObject)CreateGameObject(GetTargetGameObject(), (GetTargetGameObject() == gameObject ? null : transform), m_AttachPrefab); if (m_bReplayState) { NsEffectManager.SetReplayEffect(createObj); } if (createObj == null) { return; } if (m_AttachType == AttachType.Active) { if (m_CreateGameObjects == null) { m_CreateGameObjects = new GameObject[Mathf.Max(1, m_nRepeatCount)]; } for (int n = 0; n < m_CreateGameObjects.Length; n++) { if (m_CreateGameObjects[n] == null) { m_CreateGameObjects[n] = createObj; break; } } } m_nCreateCount++; // sync Layer // Ng_ChangeLayerWithChild(createObj, gameObject.layer); // Random pos, AddStartPos Vector3 newPos = createObj.transform.position; createObj.transform.position = m_AddStartPos + new Vector3(Random.Range(-m_RandomRange.x, m_RandomRange.x) + newPos.x, Random.Range(-m_RandomRange.y, m_RandomRange.y) + newPos.y, Random.Range(-m_RandomRange.z, m_RandomRange.z) + newPos.z); // m_AccumStartRot createObj.transform.localRotation *= Quaternion.Euler(m_AccumStartRot.x * m_nCreateCount, m_AccumStartRot.y * m_nCreateCount, m_AccumStartRot.z * m_nCreateCount); createObj.name += " " + m_nCreateCount; SetActiveRecursively(createObj, true); // PrefabAdjustSpeed NsEffectManager.AdjustSpeedRuntime(createObj, m_fPrefabSpeed); // m_fPrefabLifeTime if (0 < m_fPrefabLifeTime) { NcAutoDestruct ncAd = createObj.GetComponent <NcAutoDestruct>(); if (ncAd == null) { ncAd = AddNcComponentToObject <NcAutoDestruct>(createObj); } ncAd.m_fLifeTime = m_fPrefabLifeTime; } // m_bDetachParent if (m_bDetachParent) { NcDetachParent detachCom = createObj.GetComponent <NcDetachParent>(); if (detachCom == null) { detachCom = AddNcComponentToObject <NcDetachParent>(createObj); } } // m_nSpriteFactoryIndex if (0 <= m_nSpriteFactoryIndex) { NcSpriteFactory ncFactory = createObj.GetComponent <NcSpriteFactory>(); if (ncFactory) { ncFactory.SetSprite(m_nSpriteFactoryIndex, false); } } OnCreateAttachGameObject(); }
private void CreateAttachGameObject() { GameObject gameObject = base.CreateGameObject(this.GetTargetGameObject(), (!(this.GetTargetGameObject() == base.gameObject)) ? base.transform : null, this.m_AttachPrefab); if (this.m_bReplayState) { NsEffectManager.SetReplayEffect(gameObject); } if (gameObject == null) { return; } if (this.m_AttachType == NcAttachPrefab.AttachType.Active) { if (this.m_CreateGameObjects == null) { this.m_CreateGameObjects = new GameObject[Mathf.Max(1, this.m_nRepeatCount)]; } for (int i = 0; i < this.m_CreateGameObjects.Length; i++) { if (this.m_CreateGameObjects[i] == null) { this.m_CreateGameObjects[i] = gameObject; break; } } } this.m_nCreateCount++; Vector3 position = gameObject.transform.position; gameObject.transform.position = this.m_AddStartPos + new Vector3(UnityEngine.Random.Range(-this.m_RandomRange.x, this.m_RandomRange.x) + position.x, UnityEngine.Random.Range(-this.m_RandomRange.y, this.m_RandomRange.y) + position.y, UnityEngine.Random.Range(-this.m_RandomRange.z, this.m_RandomRange.z) + position.z); gameObject.transform.localRotation *= Quaternion.Euler(this.m_AccumStartRot.x * (float)this.m_nCreateCount, this.m_AccumStartRot.y * (float)this.m_nCreateCount, this.m_AccumStartRot.z * (float)this.m_nCreateCount); GameObject expr_1B0 = gameObject; expr_1B0.name = expr_1B0.name + " " + this.m_nCreateCount; NcEffectBehaviour.SetActiveRecursively(gameObject, true); NsEffectManager.AdjustSpeedRuntime(gameObject, this.m_fPrefabSpeed); if (0f < this.m_fPrefabLifeTime) { NcAutoDestruct ncAutoDestruct = gameObject.GetComponent <NcAutoDestruct>(); if (ncAutoDestruct == null) { ncAutoDestruct = base.AddNcComponentToObject <NcAutoDestruct>(gameObject); } ncAutoDestruct.m_fLifeTime = this.m_fPrefabLifeTime; } if (this.m_bDetachParent) { NcDetachParent x = gameObject.GetComponent <NcDetachParent>(); if (x == null) { x = base.AddNcComponentToObject <NcDetachParent>(gameObject); } } if (0 <= this.m_nSpriteFactoryIndex) { NcSpriteFactory component = gameObject.GetComponent <NcSpriteFactory>(); if (component) { component.SetSprite(this.m_nSpriteFactoryIndex, false); } } this.OnCreateAttachGameObject(); }