// Update is called once per frame protected override void Update() { //Debug.Log("hp : " + hp + " enabled : " + actionEnabled); base.Update(); if (!actionEnabled) { return; } laserTimer.TimeUpdate(Time.deltaTime); if (!laserTimer.IsTimeout()) { return; } if (ActionInput.GetButton(ButtonCode.Jump)) { if (!chargeEffect.activeSelf) { chargeEffect.SetActive(true); } charge = Mathf.Min(charge + chargeSpeed * Time.deltaTime, chargeMax); if (charge >= chargeLaserBorder && !chargeMaxEffect.activeSelf) { chargeMaxEffect.SetActive(true); } } else if (ActionInput.GetButtonUp(ButtonCode.Jump)) { if (charge >= chargeLaserBorder) { CreateChargeLaser(); chargeMaxEffect.SetActive(false); } else { CreateNormalLaser(); } charge = 0f; chargeEffect.SetActive(false); laserTimer.TimeReset(); } if (isDead) { GameOver(); } }