コード例 #1
0
    void OnContact()
    {
        GameObject collided_obj = GetComponent <CompCollider>().GetCollidedObject();
        // DAMAGE ---

        CompCollider obj_col = collided_obj.GetComponent <CompCollider>();

        if (obj_col != null)
        {
            obj_col.CallOnContact();
        }

        rb.LockTransform();
        Destroy(gameObject);
    }
コード例 #2
0
    void OnContact()
    {
        if (fadeing == false && active_fade)
        {
            CompCollider col     = GetComponent <CompCollider>();
            GameObject   obj_col = col.GetCollidedObject();

            if (obj_col != null && obj_col.CompareTag("player"))
            {
                Debug.Log("[yellow] Collision");
                //obj_col.GetComponent<>
                fadeing = true;
            }
        }
    }
コード例 #3
0
    void OnTriggerLost()
    {
        Debug.Log("REVERB OUT", Department.STAGE, Color.RED);
        col = GetComponent <CompCollider>();
        GameObject col_obj   = col.GetCollidedObject();
        CompAudio  col_audio = null;

        if (col_obj != null)
        {
            col_audio = col_obj.GetComponent <CompAudio>();
        }
        if (col_audio != null)
        {
            Debug.Log("REVERB OUT", Department.STAGE);
            col_audio.SetAuxiliarySends(bus_name, out_value);
        }
    }
コード例 #4
0
    // OnTrigger Lever ------------------------
    void OnTriggerEnter()
    {
        if (active_lever || on_lever_animation)
        {
            return;
        }

        CompCollider col     = GetComponent <CompCollider>();
        GameObject   obj_col = col.GetCollidedObject();

        Debug.Log(obj_col.GetTag().ToString());

        if (obj_col != null && obj_col.CompareTag("player"))
        {
            lever_interact.SetActive(true);
            on_lever_range = true;
        }
    }
コード例 #5
0
    void OnTriggerLost()
    {
        if (active_lever)
        {
            on_lever_range = false;
            return;
        }

        CompCollider col     = GetComponent <CompCollider>();
        GameObject   obj_col = col.GetCollidedObject();

        Debug.Log(obj_col.GetTag().ToString());

        if (obj_col != null && obj_col.CompareTag("player"))
        {
            lever_interact.SetActive(false);
            on_lever_range = false;
        }
    }
コード例 #6
0
    void OnTriggerEnter()
    {
        Debug.Log("Collision");
        if (fadeing == false && active_fade)
        {
            Debug.Log("Collision2");
            CompCollider col     = GetComponent <CompCollider>();
            GameObject   obj_col = col.GetCollidedObject();

            if (obj_col != null && obj_col.CompareTag("player"))
            {
                Debug.Log("Collision3");
                //obj_col.GetComponent<>
                state          = StateFade.GO_BLACK;
                fadeing        = true;
                Time.timeScale = 0.0f;
            }
        }
    }
コード例 #7
0
    void OnTriggerEnter()
    {
        SceneManager.LoadScene("ScoreMenu");


        Debug.Log("[red] FINISHING LEVEL");
        CompCollider col = GetComponent <CompCollider>();
        GameObject   obj = null;

        if (col != null)
        {
            obj = col.GetCollidedObject();
        }

        if (obj != null && obj.CompareTag("player"))
        {
            Debug.Log("Restarting");
            SceneManager.LoadScene("ScoreMenu");
        }
    }
コード例 #8
0
    void Start()
    {
        col             = GetComponent <CompCollider>();
        wall_collision  = false;
        enemy_collision = false;

        //sword_wall_particle = GetLinkedObject("sword_wall_particle");
        //wall_particle = sword_wall_particle.GetComponent<CompParticleSystem>();

        sword_enemy_particle  = GetLinkedObject("sword_enemy_particle");
        sword_enemy_particle2 = GetLinkedObject("sword_enemy_particle2");
        sword_enemy_particle3 = GetLinkedObject("sword_enemy_particle3");
        sword_enemy_particle4 = GetLinkedObject("sword_enemy_particle4");

        enemy_particle = sword_enemy_particle.GetComponent <CompParticleSystem>();

        //TO MANAGE SWORD BLOOD TEXTURE
        mat = GetMaterialByName("Jaime Sword");
        mat.SetFloat("blood", blood);
    }
コード例 #9
0
    void OnTriggerEnter()
    {
        if (active_puzzle == false && phase_active == 0)
        {
            CompCollider col     = GetComponent <CompCollider>();
            GameObject   obj_col = col.GetCollidedObject();
            Debug.Log(obj_col.GetTag().ToString());

            if (obj_col != null && obj_col.CompareTag("player"))
            {
                // Close door
                Debug.Log("[yellow] Collision");
                if (door_puzzle_level2 != null)
                {
                    door_puzzle_level2.GetComponent <DoorLevel2>().CloseDoor();
                }
                active_puzzle = true;
            }
        }
    }
コード例 #10
0
    void OnContact()
    {
        col = GetComponent <CompCollider>();
        GameObject obj = col.GetCollidedObject();

        if (obj != null)
        {
            if (obj.CompareTag("enemy"))
            {
                col = GetComponent <CompCollider>();
                Vector3 point = col.GetContactPoint();

                col = GetComponent <CompCollider>();
                Vector3 normal = col.GetContactNormal();

                enemy_particle_obj.GetComponent <Transform>().SetUpVector(normal);
                enemy_particle_obj.GetComponent <Transform>().SetPosition(point);

                enemy_particle = enemy_particle_obj.GetComponent <CompParticleSystem>();
                enemy_particle.ActivateEmission(true);
            }
            else if (obj.CompareTag("obstacle"))
            {
                col = GetComponent <CompCollider>();
                Vector3 point = col.GetContactPoint();

                col = GetComponent <CompCollider>();
                Vector3 normal = col.GetContactNormal();

                wall_particle_obj.GetComponent <Transform>().SetUpVector(normal);
                wall_particle_obj.GetComponent <Transform>().SetPosition(point);

                wall_particle = wall_particle_obj.GetComponent <CompParticleSystem>();
                wall_particle.ActivateEmission(true);
            }
        }
    }
コード例 #11
0
 void Start()
 {
     col = GetComponent <CompCollider>();
 }
コード例 #12
0
    void OnContact()
    {
        CompCollider col = GetComponent <CompCollider>();

        if (fireball_particles != null)
        {
            Vector3 point  = col.GetContactPoint();
            Vector3 normal = col.GetContactNormal();

            fireball_particles.GetComponent <Transform>().SetUpVector(normal);
            point = point + normal * 4;
            fireball_particles.GetComponent <Transform>().SetPosition(point);

            CompParticleSystem fireball_particles_script = fireball_particles.GetComponent <CompParticleSystem>();
            fireball_particles_script.ActivateEmission(true);

            if (fireball_particles2 != null)
            {
                fireball_particles_script = fireball_particles2.GetComponent <CompParticleSystem>();
                fireball_particles_script.ActivateEmission(true);
            }
            if (fireball_particles3 != null)
            {
                fireball_particles_script = fireball_particles3.GetComponent <CompParticleSystem>();
                fireball_particles_script.ActivateEmission(true);
            }
            if (fireball_particles4 != null)
            {
                fireball_particles_script = fireball_particles4.GetComponent <CompParticleSystem>();
                fireball_particles_script.ActivateEmission(true);
            }
        }

        GameObject collided_obj = GetComponent <CompCollider>().GetCollidedObject();

        GetComponent <CompAudio>().PlayEvent("DaenerysFireballImpact");
        // DAMAGE ---
        if (collided_obj != null)
        {
            // Check the specific enemy in front of you and apply dmg or call object OnContact
            EnemiesManager enemy_manager = GetLinkedObject("player_enemies_manager").GetComponent <EnemiesManager>();
            if (!destroyed)
            {
                if (enemy_manager.IsEnemy(collided_obj))
                {
                    enemy_manager.ApplyDamage(collided_obj, damage, Enemy_BT.ENEMY_GET_DAMAGE_TYPE.FIREBALL);
                }
                else
                {
                    destroyed = true;
                    Debug.Log("Destroy 1", Department.GENERAL);
                    Destroy(gameObject);
                    return;
                }
            }
        }


        if (fireball && destroyed == false)
        {
            col.CollisionActive(false);
            Debug.Log("Destroy 2", Department.GENERAL);
            Destroy(gameObject);
            destroyed = true;
            return;
        }
    }