Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using Unity.VisualScripting;
- using UnityEngine;
- using UnityEngine.InputSystem;
- using UnityEngine.UI;
- public class Stamina : MonoBehaviour
- {
- [SerializeField] Slider staminaSlider;
- public int maxStamina = 100;
- public int currentStamina;
- public int tempStamina;
- public bool staminaIsBeingUsed = false;
- public bool staminaIsRefilling = false;
- public float startRefillTimer = 0f;
- public float endRefillTimer = 2f;
- // Start is called before the first frame update
- void Start()
- {
- currentStamina = maxStamina;
- tempStamina = maxStamina;
- }
- // Update is called once per frame
- void Update()
- {
- staminaSlider.value = tempStamina;
- if(tempStamina != currentStamina)
- {
- if(tempStamina < currentStamina)
- {
- tempStamina += 1;
- }
- if(tempStamina > currentStamina)
- {
- tempStamina -= 1;
- }
- }
- if(staminaIsRefilling)
- {
- currentStamina = maxStamina;
- }
- if(tempStamina == maxStamina && currentStamina == maxStamina)
- {
- staminaIsRefilling = false;
- }
- if(!staminaIsBeingUsed && currentStamina < maxStamina && tempStamina < maxStamina && currentStamina == tempStamina)
- {
- startRefillTimer += Time.deltaTime;
- if(startRefillTimer >= endRefillTimer)
- {
- staminaIsRefilling = true;
- startRefillTimer = 0f;
- }
- }
- if(staminaIsBeingUsed && currentStamina < maxStamina && tempStamina < maxStamina && currentStamina == tempStamina)
- {
- startRefillTimer = 0f;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment