pushable in large
This commit is contained in:
parent
e1f2423761
commit
3c1309de47
4 changed files with 25 additions and 6 deletions
|
@ -1,4 +1,4 @@
|
||||||
[gd_scene load_steps=12 format=4 uid="uid://ctc0arg3efa5k"]
|
[gd_scene load_steps=13 format=4 uid="uid://ctc0arg3efa5k"]
|
||||||
|
|
||||||
[ext_resource type="PackedScene" uid="uid://ba6afuig8bqrg" path="res://levels/LevelBase.tscn" id="1_87xn7"]
|
[ext_resource type="PackedScene" uid="uid://ba6afuig8bqrg" path="res://levels/LevelBase.tscn" id="1_87xn7"]
|
||||||
[ext_resource type="Texture2D" uid="uid://c3m4os8kteaix" path="res://textures/level01-spritesheet.png" id="2_wqskp"]
|
[ext_resource type="Texture2D" uid="uid://c3m4os8kteaix" path="res://textures/level01-spritesheet.png" id="2_wqskp"]
|
||||||
|
@ -8,6 +8,7 @@
|
||||||
[ext_resource type="PackedScene" uid="uid://cpa66thuxma15" path="res://objects/MirrorOrb.tscn" id="7_dyi0e"]
|
[ext_resource type="PackedScene" uid="uid://cpa66thuxma15" path="res://objects/MirrorOrb.tscn" id="7_dyi0e"]
|
||||||
[ext_resource type="PackedScene" uid="uid://br6fngf5208j0" path="res://objects/ResizableBlock.tscn" id="8_ec71m"]
|
[ext_resource type="PackedScene" uid="uid://br6fngf5208j0" path="res://objects/ResizableBlock.tscn" id="8_ec71m"]
|
||||||
[ext_resource type="PackedScene" uid="uid://d17jpcgayfg6i" path="res://objects/BoxPushable_1.tscn" id="8_o0q03"]
|
[ext_resource type="PackedScene" uid="uid://d17jpcgayfg6i" path="res://objects/BoxPushable_1.tscn" id="8_o0q03"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://biaxahxft1xo0" path="res://objects/box_pushable_2.tscn" id="9_swmgt"]
|
||||||
|
|
||||||
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_e817v"]
|
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_e817v"]
|
||||||
texture = ExtResource("2_wqskp")
|
texture = ExtResource("2_wqskp")
|
||||||
|
@ -128,10 +129,10 @@ shader_parameter/scroll_speed = 0.02
|
||||||
|
|
||||||
[node name="Player" parent="." index="0"]
|
[node name="Player" parent="." index="0"]
|
||||||
position = Vector2(-542, 331)
|
position = Vector2(-542, 331)
|
||||||
|
jump_strength_max = 400
|
||||||
|
|
||||||
[node name="UI" parent="UILayer" index="0"]
|
[node name="UI" parent="UILayer" index="0"]
|
||||||
mouse_filter = 2
|
mouse_filter = 2
|
||||||
scale_duration = 0.5
|
|
||||||
|
|
||||||
[node name="HBoxContainer" parent="UILayer/UI" index="0"]
|
[node name="HBoxContainer" parent="UILayer/UI" index="0"]
|
||||||
mouse_filter = 0
|
mouse_filter = 0
|
||||||
|
@ -174,3 +175,6 @@ collision_layer = 1
|
||||||
|
|
||||||
[node name="BoxPushable1" parent="." index="10" instance=ExtResource("8_o0q03")]
|
[node name="BoxPushable1" parent="." index="10" instance=ExtResource("8_o0q03")]
|
||||||
position = Vector2(-228, 320)
|
position = Vector2(-228, 320)
|
||||||
|
|
||||||
|
[node name="BoxPushable2" parent="." index="11" instance=ExtResource("9_swmgt")]
|
||||||
|
position = Vector2(40, 309)
|
||||||
|
|
|
@ -8,7 +8,7 @@ size = Vector2(34, 32)
|
||||||
|
|
||||||
[node name="BoxPushable1" type="CharacterBody2D"]
|
[node name="BoxPushable1" type="CharacterBody2D"]
|
||||||
collision_layer = 16
|
collision_layer = 16
|
||||||
collision_mask = 5
|
collision_mask = 21
|
||||||
script = ExtResource("1_tf1fy")
|
script = ExtResource("1_tf1fy")
|
||||||
|
|
||||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||||
|
|
7
gmtk_2024/objects/box_pushable_2.tscn
Normal file
7
gmtk_2024/objects/box_pushable_2.tscn
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
[gd_scene load_steps=2 format=3 uid="uid://biaxahxft1xo0"]
|
||||||
|
|
||||||
|
[ext_resource type="PackedScene" uid="uid://d17jpcgayfg6i" path="res://objects/BoxPushable_1.tscn" id="1_pnjdf"]
|
||||||
|
|
||||||
|
[node name="BoxPushable1" instance=ExtResource("1_pnjdf")]
|
||||||
|
scale = Vector2(2, 2)
|
||||||
|
collision_mask = 21
|
|
@ -4,6 +4,7 @@ extends CharacterBody2D
|
||||||
@export var gravity = 50
|
@export var gravity = 50
|
||||||
var jump_count = 1
|
var jump_count = 1
|
||||||
@export var jump_strength = 100
|
@export var jump_strength = 100
|
||||||
|
@export var jump_strength_max = 300
|
||||||
var is_touching_floor : bool = true
|
var is_touching_floor : bool = true
|
||||||
var jump_buffer_timer : float
|
var jump_buffer_timer : float
|
||||||
var coyote_timer : float = 0.2 # 200 millisecond buffer
|
var coyote_timer : float = 0.2 # 200 millisecond buffer
|
||||||
|
@ -58,12 +59,19 @@ func _physics_process(delta):
|
||||||
if(get_slide_collision_count() > 0):
|
if(get_slide_collision_count() > 0):
|
||||||
for i in get_slide_collision_count():
|
for i in get_slide_collision_count():
|
||||||
var box = get_slide_collision(i).get_collider() as Box
|
var box = get_slide_collision(i).get_collider() as Box
|
||||||
if box and velocity.y >= 0:
|
if scale.x == 2:
|
||||||
box.velocity.x = velocity.x*0.8
|
if box and velocity.y >= 0:
|
||||||
|
box.velocity.x = velocity.x*0.8
|
||||||
|
else:
|
||||||
|
if box and velocity.y >= 0 and box.scale.x < 2:
|
||||||
|
box.velocity.x = velocity.x*0.8
|
||||||
# print(jump_count) # Uncomment for debugging
|
# print(jump_count) # Uncomment for debugging
|
||||||
|
|
||||||
func Jump():
|
func Jump():
|
||||||
velocity.y = -1 * jump_strength
|
if scale.x == 1:
|
||||||
|
velocity.y = -1 * jump_strength
|
||||||
|
elif scale.x == 2:
|
||||||
|
velocity.y = -1 * jump_strength_max
|
||||||
jump_count = 0
|
jump_count = 0
|
||||||
is_touching_floor = false
|
is_touching_floor = false
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue