Beispiel #1
0
    public override void Init()
    {
        renderer  = GetComponentInChildren <Renderer>();
        collider  = GetComponent <Collider>();
        soundCtrl = GetComponentInChildren <GeneralSoundController>();

        maxbrightness        = renderer.material.GetColor("_EmissiveColor").r;
        previousContactState = false;
        currentContactState  = true;
        startingPosition     = transform.position;
        fallingTrigger       = GetComponentInChildren <FallingTrigger>();

        if (triggerOption == TriggerOption.BeforeTouch)
        {
            fallingTrigger.FallTriggerEvent += HandleFallTriggerEvent;
        }
        else if (triggerOption == TriggerOption.AfterTouch)
        {
            fallingTrigger.gameObject.SetActive(false);

            CalculateRaySpacing();
            StartCoroutine(CCollisionCheck());
        }

        LevelManager.OnPlayerDeath += HandleOnPlayerDeath;

        isActive = true;
    }
 public FallingTileBehaviour(Tile tile, KeyValuePairs kvp) : base(tile, kvp)
 {
     m_trigger = kvp.GetEnum("trigger", FallingTrigger.Automatic);
     m_sound   = kvp.GetString("sound", null);
 }