started fixing stamina

This commit is contained in:
derek
2024-11-07 16:52:36 -06:00
parent af72a0678a
commit a31e420330
3 changed files with 44 additions and 45 deletions

View File

@@ -1,6 +1,6 @@
extends CharacterBody3D
const WALK_TRANSITION_SPEED = 8
const WALK_TRANSITION_SPEED = 7
const MAX_AIR_DASH = 1
const FLASHLIGHT_BRIGHTNESS = 30
const KICK_AMOUNT = 20
@@ -8,8 +8,9 @@ const LAND_CAMERA_TILT : Vector3 = Vector3(-1,0,0)
const WALK_SPEED = 12.0
const SPRINT_SPEED = 15.0
const DASH_SPEED = 40
const SLOWSPEED = .15
const STAMINA_DRAIN = 100
const SLOWSPEED = .1
const MAX_STAMINA : float = 100
const STAMINA_DRAIN = 200
var speed
var double_jump = true
@@ -27,7 +28,6 @@ var mouse_input : Vector2
@export_group("Player Movement")
@export var DASH_STAM_REQ = 10
@export var MAX_STAMINA = 1800
@export var JUMP_VELOCITY = 6
@export var SENSITIVITY = .01
@export var sensitivity_shift = true
@@ -77,7 +77,7 @@ var held_item_mass_cache
var held_item_rotation = Vector3(0,0,0)
# Slow Down Variables
var remaining_stamina = MAX_STAMINA
var remaining_stamina : float = MAX_STAMINA
# Pickups
var picked_up = false
var picked_up_text
@@ -241,26 +241,25 @@ func _physics_process(delta):
# Game Speed
if !level_control.paused:
if Input.is_action_pressed("slow_down") and remaining_stamina >0:
Engine.time_scale = lerp(0, 1, SLOWSPEED)
if Input.is_action_pressed("slow_down") and remaining_stamina > 0 :
Engine.time_scale = lerp(Engine.time_scale, SLOWSPEED, delta * 20)
gun.random_spread_amt = 0
AudioServer.set_bus_effect_enabled(0,0,true)
camera.fov = lerp(camera.fov, camera.fov * gun.fov_zoom_amt, delta * 100)
if sensitivity_shift == true:
SENSITIVITY = lerp(SENSITIVITY, SENSITIVITY * .998, delta * 100)
if remaining_stamina >0:
remaining_stamina -= 1000 * delta
if remaining_stamina > 0:
remaining_stamina = clamp(remaining_stamina - (delta * STAMINA_DRAIN),0,MAX_STAMINA)
else:
Engine.time_scale = 1
Engine.time_scale = lerp(Engine.time_scale, 1.0, delta * 50)
gun.random_spread_amt = gun.random_spread_start
AudioServer.set_bus_effect_enabled(0,0,false)
if sensitivity_shift == true:
camera.fov = lerp(camera.fov, BASE_FOV, delta * .5)
SENSITIVITY = start_sensitivity
if remaining_stamina < MAX_STAMINA:
remaining_stamina += STAMINA_DRAIN * delta
elif remaining_stamina > MAX_STAMINA * 1.01:
remaining_stamina -= (STAMINA_DRAIN)/2 * delta
if remaining_stamina < MAX_STAMINA and !Input.is_action_pressed("slow_down"):
remaining_stamina = clamp(remaining_stamina + (delta * STAMINA_DRAIN/10), 0, MAX_STAMINA)
# Reloading
if Input.is_action_just_pressed("reload"):