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();
        }
    }
Exemplo n.º 3
0
    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();
        }
    }
Exemplo n.º 4
0
    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");
   }
Exemplo n.º 6
0
    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();
    }
Exemplo n.º 7
0
 // Property -------------------------------------------------------------------------
 // Event Function -------------------------------------------------------------------
 void OnEnable()
 {
     m_Sel         = target as NcDetachParent;
     m_UndoManager = new FXMakerUndoManager(m_Sel, "NcDetachParent");
 }
Exemplo n.º 8
0
    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();
    }