init
This commit is contained in:
commit
18efc36800
161 changed files with 5008 additions and 0 deletions
51
scripts/effects/engines.gd
Normal file
51
scripts/effects/engines.gd
Normal file
|
@ -0,0 +1,51 @@
|
|||
extends Node
|
||||
|
||||
@onready var leftEngine: Sprite2D = $MotorIzquierdo
|
||||
@onready var rightEngine: Sprite2D = $MotorDerecho
|
||||
|
||||
var leftPowerLevel: float
|
||||
var currentLeftPowerLevel: float
|
||||
var rightPowerLevel: float
|
||||
var currentRightPowerLevel: float
|
||||
|
||||
@export var leftPowerSprites: Array[Texture2D]
|
||||
@export var rightPowerSprites: Array[Texture2D]
|
||||
|
||||
@export_range(0, 2) var transitionDelta: float
|
||||
|
||||
|
||||
func _transition(curr: float, goal: float, delta: float) -> float:
|
||||
return curr + (goal - curr) * transitionDelta * delta
|
||||
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta):
|
||||
currentLeftPowerLevel = _transition(currentLeftPowerLevel, leftPowerLevel, delta)
|
||||
currentRightPowerLevel = _transition(currentRightPowerLevel, rightPowerLevel, delta)
|
||||
|
||||
if not leftPowerSprites.is_empty():
|
||||
var index = roundf(currentLeftPowerLevel * leftPowerSprites.size())
|
||||
index = clamp(index, 0, leftPowerSprites.size() - 1)
|
||||
leftEngine.texture = leftPowerSprites[index]
|
||||
if not rightPowerSprites.is_empty():
|
||||
var index = roundf(currentRightPowerLevel * rightPowerSprites.size())
|
||||
index = clamp(index, 0, rightPowerSprites.size() - 1)
|
||||
rightEngine.texture = rightPowerSprites[index]
|
||||
|
||||
|
||||
func _change_left_power_level(level: float):
|
||||
leftPowerLevel = level
|
||||
|
||||
|
||||
func _change_right_power_level(level: float):
|
||||
rightPowerLevel = level
|
||||
|
||||
|
||||
func _on_left_engine_off():
|
||||
_change_left_power_level(0)
|
||||
func _on_left_engine_on():
|
||||
_change_left_power_level(1)
|
||||
func _on_right_engine_off():
|
||||
_change_right_power_level(0)
|
||||
func _on_right_engine_on():
|
||||
_change_right_power_level(1)
|
Loading…
Add table
Add a link
Reference in a new issue