示例#1
0
    public void Spawn()
    {
        Vector2?position = GetRandomPosition();

        if (position != null)
        {
            PlanetObjectController rotateAround = Instantiate(Prefab, (Vector2)position, Quaternion.identity);
        }
    }
示例#2
0
    private void Death()
    {
        SpriteRenderer decal = Instantiate(m_paintDecal, transform.position, Quaternion.identity);

        decal.color = m_color;
        PlanetObjectController rot = (PlanetObjectController)decal.gameObject.AddComponent(typeof(PlanetObjectController));

        // Spawn FX and change color
        ParticleSystem particles = Instantiate(m_paintFX, transform.position, m_paintFX.transform.rotation);

        ParticleSystem.MainModule main = particles.main;
        main.startColor = m_color;
        particles.Play();

        SFXManager.Instance.PlaySound(m_dropSound);

        Destroy(gameObject);
    }
    void Start()
    {
        Rigidbody2D rb2d = GetComponent <Rigidbody2D>();

        if (rb2d == null)
        {
            rb2d = gameObject.AddComponent(typeof(Rigidbody2D)) as Rigidbody2D;
        }

        PlanetObjectController poc = GetComponent <PlanetObjectController>();

        if (poc != null)
        {
            Destroy(poc);
        }

        rb2d.AddForce(new Vector2(Random.Range(-25f, 25f), 55f), ForceMode2D.Impulse);
        rb2d.gravityScale = 5f;

        Destroy(gameObject, 3.5f);
    }