Skip to content
Snippets Groups Projects
BlockObjectClass.cs 2.17 KiB
Newer Older
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using TMPro;

public class BlockObjectClass : MonoBehaviour
{
    public float InhalePeriod { get; private set; }
    public float ExhalePeriod { get; private set; }
    public float MaxRuntime { get; private set; }

Raymond Chia's avatar
Raymond Chia committed
    TMP_InputField inhalePeriodTextInput;
    TMP_InputField exhalePeriodTextInput;
    TMP_InputField runtimeTextInput;

    void Awake()
    {
        string name;
        GameObject go;
        Transform[] transforms = this.GetComponentsInChildren<Transform>();

        foreach (var transform in transforms)
        {
            go = transform.gameObject;
            name = go.name;
            if (name == "Inhale")
            {
Raymond Chia's avatar
Raymond Chia committed
                inhalePeriodTextInput = go.GetComponent<TMP_InputField>();
                SetInhalePeriod();
            }
            else if (name == "Exhale")
            {
Raymond Chia's avatar
Raymond Chia committed
                exhalePeriodTextInput = go.GetComponent<TMP_InputField>();
                SetExhalePeriod();
            }
            else if (name == "Runtime")
            {
Raymond Chia's avatar
Raymond Chia committed
                runtimeTextInput = go.GetComponent<TMP_InputField>();
                SetRuntime();
            }
        }
    }

    // Start is called before the first frame update
    void Start()
    {

    }

    // Update is called once per frame
    void Update()
    {
        
    }

Raymond Chia's avatar
Raymond Chia committed
    public void SetInhalePeriod(float inhalePeriod=-1f)
Raymond Chia's avatar
Raymond Chia committed
        if (inhalePeriod == -1)
        {
            InhalePeriod = (float)Convert.ToDouble(inhalePeriodTextInput.text);
        }
        else
        {
            InhalePeriod = inhalePeriod;
        }
        
Raymond Chia's avatar
Raymond Chia committed
    public void SetExhalePeriod(float exhalePeriod=-1f)
Raymond Chia's avatar
Raymond Chia committed
        if (exhalePeriod == -1)
        {
            ExhalePeriod = (float)Convert.ToDouble(exhalePeriodTextInput.text);
        }
        else
        {
            ExhalePeriod = exhalePeriod;
        }
Raymond Chia's avatar
Raymond Chia committed
    public void SetRuntime(float runtimeInput=-1f)
Raymond Chia's avatar
Raymond Chia committed
        if (runtimeInput == -1)
        {
            MaxRuntime = (float)Convert.ToDouble(runtimeTextInput.text) * 60;
        }
        else
        {
            MaxRuntime = runtimeInput;
        }