Hey guys i have two functions in my Camera2D both of these functions controls shake effects by using "lerpf" the reason i use 2 functions is because i want different value for different effect when emitted. is this the best way of doing it? or i can pass value from emit() if so how? ```extends Camera2D
@export var randomStrength: float = 100.0
@export var shakeFade: float = 5.0
@export var airShake: float = 100.0
@export var airFade: float = 5.0
@onready var ShakeActive: bool = false
@onready var ShakeairActive: bool = false
var rng = RandomNumberGenerator.new()
var shake_strength: float = 0.0
var air_strength: float = 0.0
func apply_air_shake():
ShakeairActive = true
print("airshake")
if ShakeairActive:
air_strength = airShake
func apply_shake():
ShakeActive = true
print("normalshake")
if ShakeActive:
shake_strength = randomStrength
func _process (delta):
if ShakeActive:
if shake_strength > 0:
shake_strength = lerpf(shake_strength,0,shakeFade * delta)
#ShakeairActive = false
offset = randomOffset()
if ShakeairActive:
if airShake > 0:
airShake = lerpf(airShake,0,airFade * delta)
ShakeActive = false
offset = randomOffset()
func randomOffset() -> Vector2:
return Vector2(rng.randf_range(-shake_strength,shake_strength),rng.randf_range(-shake_strength, shake_strength))