Compare commits
1
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
52cd38cc2d |
No files matched your search
@@ -20,59 +20,6 @@ config/icon="res://icon.svg"
|
|||||||
window/stretch/mode="canvas_items"
|
window/stretch/mode="canvas_items"
|
||||||
window/stretch/aspect="expand"
|
window/stretch/aspect="expand"
|
||||||
|
|
||||||
[input]
|
|
||||||
|
|
||||||
left={
|
|
||||||
"deadzone": 0.2,
|
|
||||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":16,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":65,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
|
|
||||||
]
|
|
||||||
}
|
|
||||||
right={
|
|
||||||
"deadzone": 0.2,
|
|
||||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":16,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":68,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
|
|
||||||
]
|
|
||||||
}
|
|
||||||
jump={
|
|
||||||
"deadzone": 0.2,
|
|
||||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":16,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":32,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
|
|
||||||
]
|
|
||||||
}
|
|
||||||
dash={
|
|
||||||
"deadzone": 0.2,
|
|
||||||
"events": [null, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":16,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194325,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
|
|
||||||
]
|
|
||||||
}
|
|
||||||
up={
|
|
||||||
"deadzone": 0.2,
|
|
||||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":16,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":87,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
|
|
||||||
]
|
|
||||||
}
|
|
||||||
down={
|
|
||||||
"deadzone": 0.2,
|
|
||||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":16,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":83,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
|
|
||||||
]
|
|
||||||
}
|
|
||||||
roll={
|
|
||||||
"deadzone": 0.2,
|
|
||||||
"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":2,"canceled":false,"pressed":false,"double_click":false,"script":null)
|
|
||||||
]
|
|
||||||
}
|
|
||||||
latch={
|
|
||||||
"deadzone": 0.2,
|
|
||||||
"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":1,"canceled":false,"pressed":false,"double_click":false,"script":null)
|
|
||||||
]
|
|
||||||
}
|
|
||||||
twirl={
|
|
||||||
"deadzone": 0.2,
|
|
||||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":16,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194329,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
|
|
||||||
]
|
|
||||||
}
|
|
||||||
run={
|
|
||||||
"deadzone": 0.2,
|
|
||||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":16,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":69,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
|
|
||||||
]
|
|
||||||
}
|
|
||||||
|
|
||||||
[physics]
|
[physics]
|
||||||
|
|
||||||
3d/physics_engine="Jolt Physics"
|
3d/physics_engine="Jolt Physics"
|
||||||
|
|||||||
@@ -1,32 +0,0 @@
|
|||||||
[gd_scene format=3 uid="uid://bjk1cmuogswyd"]
|
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://2jmspsmp5wpm" path="res://scripts/enemy.gd" id="1_7p1mj"]
|
|
||||||
|
|
||||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_aqe1g"]
|
|
||||||
size = Vector2(168, 167)
|
|
||||||
|
|
||||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_yg5ta"]
|
|
||||||
size = Vector2(178, 168)
|
|
||||||
|
|
||||||
[node name="enemy" type="CharacterBody2D" unique_id=1471932521]
|
|
||||||
collision_layer = 4
|
|
||||||
collision_mask = 3
|
|
||||||
script = ExtResource("1_7p1mj")
|
|
||||||
|
|
||||||
[node name="ColorRect" type="ColorRect" parent="." unique_id=519837051]
|
|
||||||
offset_right = 169.0
|
|
||||||
offset_bottom = 166.0
|
|
||||||
|
|
||||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="." unique_id=1567529793]
|
|
||||||
position = Vector2(85, 82)
|
|
||||||
shape = SubResource("RectangleShape2D_aqe1g")
|
|
||||||
|
|
||||||
[node name="Timer" type="Timer" parent="." unique_id=356300230]
|
|
||||||
|
|
||||||
[node name="Area2D" type="Area2D" parent="." unique_id=461696644]
|
|
||||||
|
|
||||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D" unique_id=72940614]
|
|
||||||
position = Vector2(84, 79)
|
|
||||||
shape = SubResource("RectangleShape2D_yg5ta")
|
|
||||||
|
|
||||||
[connection signal="timeout" from="Timer" to="." method="_on_timer_timeout"]
|
|
||||||
@@ -1,62 +0,0 @@
|
|||||||
[gd_scene format=3 uid="uid://cmtdq6tedv1mm"]
|
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://2ig5okof0vaa" path="res://scripts/UltimatePlatformerController.gd" id="1_3vyb7"]
|
|
||||||
|
|
||||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_d2by0"]
|
|
||||||
size = Vector2(111, 105)
|
|
||||||
|
|
||||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_aqe1g"]
|
|
||||||
size = Vector2(114.5, 109)
|
|
||||||
|
|
||||||
[node name="player" type="CharacterBody2D" unique_id=1596338883]
|
|
||||||
collision_mask = 6
|
|
||||||
script = ExtResource("1_3vyb7")
|
|
||||||
|
|
||||||
[node name="ColorRect" type="ColorRect" parent="." unique_id=42689460]
|
|
||||||
offset_right = 111.0
|
|
||||||
offset_bottom = 105.0
|
|
||||||
|
|
||||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="." unique_id=440932344]
|
|
||||||
|
|
||||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="." unique_id=1496788104]
|
|
||||||
position = Vector2(55.5, 52.5)
|
|
||||||
shape = SubResource("RectangleShape2D_d2by0")
|
|
||||||
|
|
||||||
[node name="Area2D" type="Area2D" parent="." unique_id=680224441]
|
|
||||||
collision_mask = 4
|
|
||||||
|
|
||||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D" unique_id=736937610]
|
|
||||||
position = Vector2(55.25, 52.5)
|
|
||||||
shape = SubResource("RectangleShape2D_aqe1g")
|
|
||||||
|
|
||||||
[node name="health" type="Control" parent="." unique_id=1976293596]
|
|
||||||
layout_mode = 3
|
|
||||||
anchors_preset = 0
|
|
||||||
offset_right = 40.0
|
|
||||||
offset_bottom = 40.0
|
|
||||||
|
|
||||||
[node name="ColorRect" type="ColorRect" parent="health" unique_id=110340136]
|
|
||||||
self_modulate = Color(1, 0, 0, 1)
|
|
||||||
layout_mode = 0
|
|
||||||
offset_left = 3.0
|
|
||||||
offset_top = -42.0
|
|
||||||
offset_right = 26.0
|
|
||||||
offset_bottom = -20.0
|
|
||||||
|
|
||||||
[node name="ColorRect2" type="ColorRect" parent="health" unique_id=1043497392]
|
|
||||||
self_modulate = Color(1, 0, 0, 1)
|
|
||||||
layout_mode = 0
|
|
||||||
offset_left = 37.0
|
|
||||||
offset_top = -42.0
|
|
||||||
offset_right = 60.0
|
|
||||||
offset_bottom = -20.0
|
|
||||||
|
|
||||||
[node name="ColorRect3" type="ColorRect" parent="health" unique_id=175994440]
|
|
||||||
self_modulate = Color(1, 0, 0, 1)
|
|
||||||
layout_mode = 0
|
|
||||||
offset_left = 70.0
|
|
||||||
offset_top = -42.0
|
|
||||||
offset_right = 93.0
|
|
||||||
offset_bottom = -20.0
|
|
||||||
|
|
||||||
[connection signal="body_entered" from="Area2D" to="." method="_on_area_2d_body_entered"]
|
|
||||||
@@ -1,28 +0,0 @@
|
|||||||
[gd_scene format=3 uid="uid://d1xirc54wud0s"]
|
|
||||||
|
|
||||||
[ext_resource type="PackedScene" uid="uid://cmtdq6tedv1mm" path="res://scenes/player.tscn" id="1_g7g4h"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://bjk1cmuogswyd" path="res://scenes/enemy.tscn" id="2_j8ivh"]
|
|
||||||
|
|
||||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_aqe1g"]
|
|
||||||
size = Vector2(1116.25, 73)
|
|
||||||
|
|
||||||
[node name="test_scene" type="Node2D" unique_id=1970054744]
|
|
||||||
|
|
||||||
[node name="ColorRect" type="ColorRect" parent="." unique_id=1255479846]
|
|
||||||
offset_left = 2.0
|
|
||||||
offset_top = 530.0
|
|
||||||
offset_right = 1121.0
|
|
||||||
offset_bottom = 606.0
|
|
||||||
|
|
||||||
[node name="player" parent="." unique_id=1596338883 instance=ExtResource("1_g7g4h")]
|
|
||||||
position = Vector2(64, 386)
|
|
||||||
|
|
||||||
[node name="floor" type="StaticBody2D" parent="." unique_id=866269158]
|
|
||||||
collision_layer = 2
|
|
||||||
|
|
||||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="floor" unique_id=1146724072]
|
|
||||||
position = Vector2(561.125, 569)
|
|
||||||
shape = SubResource("RectangleShape2D_aqe1g")
|
|
||||||
|
|
||||||
[node name="enemy" parent="floor" unique_id=1471932521 instance=ExtResource("2_j8ivh")]
|
|
||||||
position = Vector2(527, 311)
|
|
||||||
@@ -10,15 +10,15 @@ class_name PlatformerController2D
|
|||||||
#2. Animations are very primitive. To make full use of your custom art, you may want to slightly change the code for the animations
|
#2. Animations are very primitive. To make full use of your custom art, you may want to slightly change the code for the animations
|
||||||
|
|
||||||
@export_category("Necesary Child Nodes")
|
@export_category("Necesary Child Nodes")
|
||||||
@onready var PlayerSprite = $AnimatedSprite2D
|
@export var PlayerSprite: AnimatedSprite2D
|
||||||
@onready var PlayerCollider = $CollisionShape2D
|
@export var PlayerCollider: CollisionShape2D
|
||||||
|
|
||||||
#INFO HORIZONTAL MOVEMENT
|
#INFO HORIZONTAL MOVEMENT
|
||||||
@export_category("L/R Movement")
|
@export_category("L/R Movement")
|
||||||
##The max speed your player will move
|
##The max speed your player will move
|
||||||
@export_range(50, 500) var maxSpeed: float = 500
|
@export_range(50, 500) var maxSpeed: float = 200.0
|
||||||
##How fast your player will reach max speed from rest (in seconds)
|
##How fast your player will reach max speed from rest (in seconds)
|
||||||
@export_range(0, 4) var timeToReachMaxSpeed: float = 0
|
@export_range(0, 4) var timeToReachMaxSpeed: float = 0.2
|
||||||
##How fast your player will reach zero speed from max speed (in seconds)
|
##How fast your player will reach zero speed from max speed (in seconds)
|
||||||
@export_range(0, 4) var timeToReachZeroSpeed: float = 0.2
|
@export_range(0, 4) var timeToReachZeroSpeed: float = 0.2
|
||||||
##If true, player will instantly move and switch directions. Overrides the "timeToReach" variables, setting them to 0.
|
##If true, player will instantly move and switch directions. Overrides the "timeToReach" variables, setting them to 0.
|
||||||
@@ -29,15 +29,15 @@ class_name PlatformerController2D
|
|||||||
#INFO JUMPING
|
#INFO JUMPING
|
||||||
@export_category("Jumping and Gravity")
|
@export_category("Jumping and Gravity")
|
||||||
##The peak height of your player's jump
|
##The peak height of your player's jump
|
||||||
@export_range(0, 20) var jumpHeight: float = 4
|
@export_range(0, 20) var jumpHeight: float = 2.0
|
||||||
##How many jumps your character can do before needing to touch the ground again. Giving more than 1 jump disables jump buffering and coyote time.
|
##How many jumps your character can do before needing to touch the ground again. Giving more than 1 jump disables jump buffering and coyote time.
|
||||||
@export_range(0, 4) var jumps: int = 2
|
@export_range(0, 4) var jumps: int = 1
|
||||||
##The strength at which your character will be pulled to the ground.
|
##The strength at which your character will be pulled to the ground.
|
||||||
@export_range(0, 100) var gravityScale: float = 30
|
@export_range(0, 100) var gravityScale: float = 20.0
|
||||||
##The fastest your player can fall
|
##The fastest your player can fall
|
||||||
@export_range(0, 1000) var terminalVelocity: float = 700
|
@export_range(0, 1000) var terminalVelocity: float = 500.0
|
||||||
##Your player will move this amount faster when falling providing a less floaty jump curve.
|
##Your player will move this amount faster when falling providing a less floaty jump curve.
|
||||||
@export_range(0.5, 3) var descendingGravityFactor: float = 2
|
@export_range(0.5, 3) var descendingGravityFactor: float = 1.3
|
||||||
##Enabling this toggle makes it so that when the player releases the jump key while still ascending, their vertical velocity will cut by the height cut, providing variable jump height.
|
##Enabling this toggle makes it so that when the player releases the jump key while still ascending, their vertical velocity will cut by the height cut, providing variable jump height.
|
||||||
@export var shortHopAkaVariableJumpHeight: bool = true
|
@export var shortHopAkaVariableJumpHeight: bool = true
|
||||||
##How much the jump height is cut by.
|
##How much the jump height is cut by.
|
||||||
@@ -138,7 +138,7 @@ var gravityActive: bool = true
|
|||||||
var dashing: bool = false
|
var dashing: bool = false
|
||||||
var dashCount: int
|
var dashCount: int
|
||||||
var rolling: bool = false
|
var rolling: bool = false
|
||||||
var death_counter = 3
|
|
||||||
var twoWayDashHorizontal
|
var twoWayDashHorizontal
|
||||||
var twoWayDashVertical
|
var twoWayDashVertical
|
||||||
var eightWayDash
|
var eightWayDash
|
||||||
@@ -159,7 +159,7 @@ var wasLatched
|
|||||||
var crouching
|
var crouching
|
||||||
var groundPounding
|
var groundPounding
|
||||||
|
|
||||||
var anim = PlayerSprite
|
var anim
|
||||||
var col
|
var col
|
||||||
var animScaleLock : Vector2
|
var animScaleLock : Vector2
|
||||||
|
|
||||||
@@ -254,8 +254,6 @@ func _updateData():
|
|||||||
func _process(_delta):
|
func _process(_delta):
|
||||||
#INFO animations
|
#INFO animations
|
||||||
#directions
|
#directions
|
||||||
if death_counter == 0:
|
|
||||||
get_tree().quit()
|
|
||||||
if is_on_wall() and !is_on_floor() and latch and wallLatching and ((wallLatchingModifer and latchHold) or !wallLatchingModifer):
|
if is_on_wall() and !is_on_floor() and latch and wallLatching and ((wallLatchingModifer and latchHold) or !wallLatchingModifer):
|
||||||
latched = true
|
latched = true
|
||||||
else:
|
else:
|
||||||
@@ -327,10 +325,6 @@ func _process(_delta):
|
|||||||
|
|
||||||
|
|
||||||
func _physics_process(delta):
|
func _physics_process(delta):
|
||||||
if death_counter == 2:
|
|
||||||
$health/ColorRect3.hide()
|
|
||||||
elif death_counter == 1:
|
|
||||||
$health/ColorRect2.hide()
|
|
||||||
if !dset:
|
if !dset:
|
||||||
gdelta = delta
|
gdelta = delta
|
||||||
dset = true
|
dset = true
|
||||||
@@ -680,7 +674,3 @@ func _endGroundPound():
|
|||||||
|
|
||||||
func _placeHolder():
|
func _placeHolder():
|
||||||
print("")
|
print("")
|
||||||
|
|
||||||
|
|
||||||
func _on_area_2d_body_entered(body: Node2D) -> void:
|
|
||||||
death_counter -= 1
|
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
extends CharacterBody2D
|
|
||||||
|
|
||||||
|
|
||||||
var SPEED = Vector2(5, 0)
|
|
||||||
const JUMP_VELOCITY = -400.0
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
func _ready() -> void:
|
|
||||||
$Timer.start()
|
|
||||||
|
|
||||||
|
|
||||||
func _physics_process(delta: float) -> void:
|
|
||||||
velocity += get_gravity() * delta
|
|
||||||
move_and_slide()
|
|
||||||
patrol()
|
|
||||||
|
|
||||||
|
|
||||||
func patrol():
|
|
||||||
position += SPEED
|
|
||||||
|
|
||||||
|
|
||||||
func _on_timer_timeout() -> void:
|
|
||||||
SPEED = -SPEED
|
|
||||||
$Timer.start()
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
uid://2jmspsmp5wpm
|
|
||||||
Reference in new issue
Block a user