Camera look-aside
This commit is contained in:
parent
3edd225cb4
commit
6021b79707
|
@ -9,6 +9,7 @@ func current_state():
|
|||
@onready var stm = $StateMachine
|
||||
@onready var animation_player = $AnimationPlayer
|
||||
@onready var player_character_sprite = $PlayerCharacterSprite
|
||||
@onready var camera = $Camera
|
||||
@onready var air = $StateMachine/Air
|
||||
@onready var run = $StateMachine/Run
|
||||
@onready var dash = $StateMachine/Dash
|
||||
|
@ -36,6 +37,8 @@ var hit_time_tmp: float
|
|||
var hit_active := false
|
||||
|
||||
@export var pogo_jump: float
|
||||
@export var camera_look_aside := 0.0
|
||||
@export var camera_look_aside_transition_speed := 0.0
|
||||
|
||||
var lives := 5
|
||||
|
||||
|
@ -48,6 +51,7 @@ var previous_input_dir := get_dir()
|
|||
var previous_velocity := Vector2.ZERO
|
||||
|
||||
func _ready():
|
||||
camera
|
||||
stm.state_debug_stat = { "key": "player state" }
|
||||
stm.state_debug_log = { "description": "player state" }
|
||||
air.jump_debug_stat = { "key": "player jump curve" }
|
||||
|
@ -80,6 +84,13 @@ func play_anim(anim_name):
|
|||
func _physics_process(delta):
|
||||
# Looking right (both animation and logic)
|
||||
update_looking_right()
|
||||
# Update camera position
|
||||
var camera_pos_target = camera_look_aside if looking_right else - camera_look_aside
|
||||
camera.position.x = lerp(
|
||||
camera.position.x,
|
||||
camera_pos_target,
|
||||
delta * camera_look_aside_transition_speed
|
||||
)
|
||||
# Flip player nodes that want to be flipped
|
||||
for child in self.find_children("*"):
|
||||
if child.is_in_group("flip_me"):
|
||||
|
|
|
@ -185,6 +185,21 @@ height = 158.0
|
|||
radius = 60.0
|
||||
height = 156.0
|
||||
|
||||
[sub_resource type="Animation" id="Animation_q7xwy"]
|
||||
length = 0.001
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("StateMachine/Dash/DashParticles:emitting")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [false]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_4posc"]
|
||||
resource_name = "dash"
|
||||
length = 0.3
|
||||
|
@ -201,21 +216,6 @@ tracks/0/keys = {
|
|||
"values": [true, false]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_q7xwy"]
|
||||
length = 0.001
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("StateMachine/Dash/DashParticles:emitting")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [false]
|
||||
}
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_6txnh"]
|
||||
_data = {
|
||||
"RESET": SubResource("Animation_q7xwy"),
|
||||
|
@ -231,6 +231,8 @@ double_jump_delay = 0.1
|
|||
dash_time = 0.22
|
||||
hit_time = 0.2
|
||||
pogo_jump = 300.0
|
||||
camera_look_aside = 40.0
|
||||
camera_look_aside_transition_speed = 3.0
|
||||
|
||||
[node name="StateMachine" type="Node2D" parent="."]
|
||||
script = ExtResource("2_ae3rk")
|
||||
|
@ -278,7 +280,7 @@ position = Vector2(0, 4)
|
|||
shape = SubResource("RectangleShape2D_wvy82")
|
||||
debug_color = Color(0.7, 0.408333, 0, 0.419608)
|
||||
|
||||
[node name="Camera2D" type="Camera2D" parent="."]
|
||||
[node name="Camera" type="Camera2D" parent="." groups=["flip_me"]]
|
||||
process_callback = 0
|
||||
position_smoothing_enabled = true
|
||||
editor_draw_limits = true
|
||||
|
|
Loading…
Reference in a new issue