diff --git a/gmtk_2024/levels/level_1.tscn b/gmtk_2024/levels/level_1.tscn
index bb83033..bfd8e8a 100644
--- a/gmtk_2024/levels/level_1.tscn
+++ b/gmtk_2024/levels/level_1.tscn
@@ -1,4 +1,4 @@
-[gd_scene load_steps=11 format=4 uid="uid://ctc0arg3efa5k"]
+[gd_scene load_steps=12 format=4 uid="uid://ctc0arg3efa5k"]
 
 [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"]
@@ -7,6 +7,7 @@
 [ext_resource type="Texture2D" uid="uid://bki6ucvk6bjwk" path="res://textures/Level 01.png" id="5_4p03u"]
 [ext_resource type="PackedScene" uid="uid://d0gpnqknarkg7" path="res://objects/Goal.tscn" id="6_xhax5"]
 [ext_resource type="PackedScene" uid="uid://cpa66thuxma15" path="res://objects/MirrorOrb.tscn" id="7_dyi0e"]
+[ext_resource type="PackedScene" uid="uid://d17jpcgayfg6i" path="res://objects/BoxPushable_1.tscn" id="8_o0q03"]
 
 [sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_e817v"]
 texture = ExtResource("2_wqskp")
@@ -167,3 +168,6 @@ position = Vector2(582, -317)
 
 [node name="MirrorOrb" parent="." index="12" instance=ExtResource("7_dyi0e")]
 position = Vector2(-431, -212)
+
+[node name="BoxPushable1" parent="." index="13" instance=ExtResource("8_o0q03")]
+position = Vector2(-228, 320)
diff --git a/gmtk_2024/objects/BoxPushable_1.tscn b/gmtk_2024/objects/BoxPushable_1.tscn
new file mode 100644
index 0000000..25fe8f9
--- /dev/null
+++ b/gmtk_2024/objects/BoxPushable_1.tscn
@@ -0,0 +1,18 @@
+[gd_scene load_steps=4 format=3 uid="uid://d17jpcgayfg6i"]
+
+[ext_resource type="Texture2D" uid="uid://buqgl7x10et1f" path="res://temp_assets/img.png" id="1_ocrks"]
+[ext_resource type="Script" path="res://scripts/pushable.gd" id="1_tf1fy"]
+
+[sub_resource type="RectangleShape2D" id="RectangleShape2D_legx4"]
+size = Vector2(34, 32)
+
+[node name="BoxPushable1" type="CharacterBody2D"]
+collision_layer = 16
+collision_mask = 5
+script = ExtResource("1_tf1fy")
+
+[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
+shape = SubResource("RectangleShape2D_legx4")
+
+[node name="Sprite2D" type="Sprite2D" parent="."]
+texture = ExtResource("1_ocrks")
diff --git a/gmtk_2024/objects/EnemyMover.tscn b/gmtk_2024/objects/EnemyMover.tscn
index 5e955de..26b8c8f 100644
--- a/gmtk_2024/objects/EnemyMover.tscn
+++ b/gmtk_2024/objects/EnemyMover.tscn
@@ -9,7 +9,7 @@ height = 32.0
 
 [node name="EnemyMover" type="CharacterBody2D"]
 collision_layer = 2
-collision_mask = 7
+collision_mask = 23
 script = ExtResource("1_7kapi")
 speed = 75
 
diff --git a/gmtk_2024/objects/Player.tscn b/gmtk_2024/objects/Player.tscn
index add58c3..176fec2 100644
--- a/gmtk_2024/objects/Player.tscn
+++ b/gmtk_2024/objects/Player.tscn
@@ -12,7 +12,7 @@ radius = 12.0
 
 [node name="Player" type="CharacterBody2D"]
 collision_layer = 4
-collision_mask = 3
+collision_mask = 19
 script = ExtResource("1_a6lhy")
 jump_strength = 600
 
diff --git a/gmtk_2024/project.godot b/gmtk_2024/project.godot
index a8b9aa9..76a45a4 100644
--- a/gmtk_2024/project.godot
+++ b/gmtk_2024/project.godot
@@ -51,6 +51,7 @@ click={
 2d_physics/layer_2="Enemies"
 2d_physics/layer_3="Player"
 2d_physics/layer_4="Goal"
+2d_physics/layer_5="Pushable"
 
 [rendering]
 
diff --git a/gmtk_2024/scripts/player_movement.gd b/gmtk_2024/scripts/player_movement.gd
index 191894b..3ac0d41 100644
--- a/gmtk_2024/scripts/player_movement.gd
+++ b/gmtk_2024/scripts/player_movement.gd
@@ -54,6 +54,12 @@ func _physics_process(delta):
 	get_input(delta)
 	velocity.y += gravity
 	move_and_slide()
+	
+	if(get_slide_collision_count() > 0):
+		for i in get_slide_collision_count():
+			var box = get_slide_collision(i).get_collider() as Box
+			if box and velocity.y >= 0:
+				box.velocity.x = velocity.x*0.8
 	# print(jump_count) # Uncomment for debugging
 
 func Jump():
diff --git a/gmtk_2024/scripts/pushable.gd b/gmtk_2024/scripts/pushable.gd
new file mode 100644
index 0000000..6725137
--- /dev/null
+++ b/gmtk_2024/scripts/pushable.gd
@@ -0,0 +1,7 @@
+extends CharacterBody2D
+class_name Box;
+	
+func _physics_process(delta: float) -> void:
+	velocity.y += 50
+	velocity.x = velocity.x * 0.8
+	move_and_slide()
diff --git a/gmtk_2024/scripts/ui_actions.gd b/gmtk_2024/scripts/ui_actions.gd
index 8e247b1..c12bfb8 100644
--- a/gmtk_2024/scripts/ui_actions.gd
+++ b/gmtk_2024/scripts/ui_actions.gd
@@ -4,7 +4,6 @@ extends Node
 
 var current_selected = "none";
 
-
 func _process(delta: float) -> void:
 	if Input.is_action_just_pressed("click"):
 		if current_selected == "scale_up":