diff --git a/Scenes/crate.tscn b/Scenes/crate.tscn index f371018..383ffd1 100644 --- a/Scenes/crate.tscn +++ b/Scenes/crate.tscn @@ -1,10 +1,11 @@ [gd_scene format=3 uid="uid://bsroh4vsjwblh"] [ext_resource type="Script" uid="uid://vwu0qtoxeqcn" path="res://Scripts/crate.gd" id="1_wp72f"] +[ext_resource type="Texture2D" uid="uid://cxc83adpu4bj" path="res://assets/graphics/Objects/Crate.png" id="2_i4r3v"] [sub_resource type="RectangleShape2D" id="RectangleShape2D_ebmjs"] -[node name="RigidBody2D" type="RigidBody2D" unique_id=2099388145 groups=["destructible"]] +[node name="Crate" type="RigidBody2D" unique_id=2099388145 groups=["destructible"]] rotation = -1.7350631 script = ExtResource("1_wp72f") metadata/_edit_group_ = true @@ -12,3 +13,7 @@ metadata/_edit_group_ = true [node name="CollisionShape2D" type="CollisionShape2D" parent="." unique_id=414521394] shape = SubResource("RectangleShape2D_ebmjs") debug_color = Color(0.8238579, 0.39945692, 0.031017382, 0.41960785) + +[node name="Sprite2D" type="Sprite2D" parent="." unique_id=1901832112] +texture_filter = 1 +texture = ExtResource("2_i4r3v") diff --git a/Scenes/game.tscn b/Scenes/game.tscn index 772a779..7044ddf 100644 --- a/Scenes/game.tscn +++ b/Scenes/game.tscn @@ -1,11 +1,348 @@ -[gd_scene format=3 uid="uid://bcisk0tho1stb"] +[gd_scene format=4 uid="uid://bcisk0tho1stb"] [ext_resource type="Script" uid="uid://ctdwfmqkny8rc" path="res://Scripts/game controller.gd" id="1_qxrlw"] [ext_resource type="PackedScene" uid="uid://bsroh4vsjwblh" path="res://Scenes/crate.tscn" id="2_wowpa"] +[ext_resource type="Texture2D" uid="uid://q4k62sp2sa6y" path="res://assets/graphics/Enviroments/Terrain (32x32).png" id="3_1l0tm"] [ext_resource type="PackedScene" uid="uid://dmk1mp1hqm62b" path="res://Scenes/player.tscn" id="3_i6g32"] [ext_resource type="Script" uid="uid://kb3v21msvi17" path="res://Scripts/trigger.gd" id="3_wrm1d"] [ext_resource type="Script" uid="uid://qhll446powxt" path="res://Scripts/scene_manager.gd" id="6_1l0tm"] +[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_v158k"] +texture = ExtResource("3_1l0tm") +texture_region_size = Vector2i(32, 32) +0:0/0 = 0 +0:0/0/terrain_set = 0 +0:0/0/terrain = 0 +0:0/0/terrains_peering_bit/right_side = 0 +0:0/0/terrains_peering_bit/bottom_right_corner = 0 +0:0/0/terrains_peering_bit/bottom_side = 0 +1:0/0 = 0 +1:0/0/terrain_set = 0 +1:0/0/terrain = 0 +1:0/0/terrains_peering_bit/right_side = 0 +1:0/0/terrains_peering_bit/bottom_right_corner = 0 +1:0/0/terrains_peering_bit/bottom_side = 0 +1:0/0/terrains_peering_bit/bottom_left_corner = 0 +1:0/0/terrains_peering_bit/left_side = 0 +2:0/0 = 0 +2:0/0/terrain_set = 0 +2:0/0/terrain = 0 +2:0/0/terrains_peering_bit/bottom_side = 0 +2:0/0/terrains_peering_bit/bottom_left_corner = 0 +2:0/0/terrains_peering_bit/left_side = 0 +4:0/0 = 0 +4:0/0/terrain_set = 0 +4:0/0/terrain = 0 +4:0/0/terrains_peering_bit/bottom_side = 0 +6:0/0 = 0 +6:0/0/terrain_set = 0 +6:0/0/terrain = 0 +6:0/0/terrains_peering_bit/right_side = 0 +6:0/0/terrains_peering_bit/bottom_side = 0 +6:0/0/terrains_peering_bit/bottom_left_corner = 0 +6:0/0/terrains_peering_bit/left_side = 0 +6:0/0/terrains_peering_bit/top_left_corner = 0 +6:0/0/terrains_peering_bit/top_side = 0 +6:0/0/terrains_peering_bit/top_right_corner = 0 +7:0/0 = 0 +7:0/0/terrain_set = 0 +7:0/0/terrain = 0 +7:0/0/terrains_peering_bit/right_side = 0 +7:0/0/terrains_peering_bit/bottom_right_corner = 0 +7:0/0/terrains_peering_bit/bottom_side = 0 +7:0/0/terrains_peering_bit/left_side = 0 +7:0/0/terrains_peering_bit/top_left_corner = 0 +7:0/0/terrains_peering_bit/top_side = 0 +7:0/0/terrains_peering_bit/top_right_corner = 0 +9:0/0 = 0 +9:0/0/terrain_set = 0 +9:0/0/terrain = 0 +9:0/0/terrains_peering_bit/right_side = 0 +9:0/0/terrains_peering_bit/bottom_right_corner = 0 +9:0/0/terrains_peering_bit/bottom_side = 0 +9:0/0/terrains_peering_bit/bottom_left_corner = 0 +9:0/0/terrains_peering_bit/left_side = 0 +9:0/0/terrains_peering_bit/top_side = 0 +10:0/0 = 0 +10:0/0/terrain_set = 0 +10:0/0/terrain = 0 +10:0/0/terrains_peering_bit/bottom_side = 0 +10:0/0/terrains_peering_bit/bottom_left_corner = 0 +10:0/0/terrains_peering_bit/left_side = 0 +10:0/0/terrains_peering_bit/top_left_corner = 0 +10:0/0/terrains_peering_bit/top_side = 0 +12:0/0 = 0 +12:0/0/terrain_set = 0 +12:0/0/terrain = 0 +12:0/0/terrains_peering_bit/right_side = 0 +12:0/0/terrains_peering_bit/bottom_right_corner = 0 +12:0/0/terrains_peering_bit/bottom_side = 0 +12:0/0/terrains_peering_bit/left_side = 0 +12:0/0/terrains_peering_bit/top_side = 0 +13:0/0 = 0 +13:0/0/terrain_set = 0 +13:0/0/terrain = 0 +13:0/0/terrains_peering_bit/right_side = 0 +13:0/0/terrains_peering_bit/bottom_side = 0 +13:0/0/terrains_peering_bit/bottom_left_corner = 0 +13:0/0/terrains_peering_bit/left_side = 0 +13:0/0/terrains_peering_bit/top_side = 0 +15:0/0 = 0 +15:0/0/terrain_set = 0 +15:0/0/terrain = 0 +15:0/0/terrains_peering_bit/right_side = 0 +15:0/0/terrains_peering_bit/bottom_side = 0 +15:0/0/terrains_peering_bit/left_side = 0 +15:0/0/terrains_peering_bit/top_side = 0 +0:1/0 = 0 +0:1/0/terrain_set = 0 +0:1/0/terrain = 0 +0:1/0/terrains_peering_bit/right_side = 0 +0:1/0/terrains_peering_bit/bottom_right_corner = 0 +0:1/0/terrains_peering_bit/bottom_side = 0 +0:1/0/terrains_peering_bit/top_side = 0 +0:1/0/terrains_peering_bit/top_right_corner = 0 +1:1/0 = 0 +2:1/0 = 0 +2:1/0/terrain_set = 0 +2:1/0/terrain = 0 +2:1/0/terrains_peering_bit/bottom_side = 0 +2:1/0/terrains_peering_bit/bottom_left_corner = 0 +2:1/0/terrains_peering_bit/left_side = 0 +2:1/0/terrains_peering_bit/top_left_corner = 0 +2:1/0/terrains_peering_bit/top_side = 0 +4:1/0 = 0 +4:1/0/terrain_set = 0 +4:1/0/terrain = 0 +4:1/0/terrains_peering_bit/bottom_side = 0 +4:1/0/terrains_peering_bit/top_side = 0 +6:1/0 = 0 +6:1/0/terrain_set = 0 +6:1/0/terrain = 0 +6:1/0/terrains_peering_bit/right_side = 0 +6:1/0/terrains_peering_bit/bottom_right_corner = 0 +6:1/0/terrains_peering_bit/bottom_side = 0 +6:1/0/terrains_peering_bit/bottom_left_corner = 0 +6:1/0/terrains_peering_bit/left_side = 0 +6:1/0/terrains_peering_bit/top_left_corner = 0 +6:1/0/terrains_peering_bit/top_side = 0 +7:1/0 = 0 +7:1/0/terrain_set = 0 +7:1/0/terrain = 0 +7:1/0/terrains_peering_bit/right_side = 0 +7:1/0/terrains_peering_bit/bottom_right_corner = 0 +7:1/0/terrains_peering_bit/bottom_side = 0 +7:1/0/terrains_peering_bit/bottom_left_corner = 0 +7:1/0/terrains_peering_bit/left_side = 0 +7:1/0/terrains_peering_bit/top_side = 0 +7:1/0/terrains_peering_bit/top_right_corner = 0 +9:1/0 = 0 +9:1/0/terrain_set = 0 +9:1/0/terrain = 0 +9:1/0/terrains_peering_bit/right_side = 0 +9:1/0/terrains_peering_bit/bottom_right_corner = 0 +9:1/0/terrains_peering_bit/bottom_side = 0 +9:1/0/terrains_peering_bit/top_side = 0 +9:1/0/terrains_peering_bit/top_right_corner = 0 +10:1/0 = 0 +10:1/0/terrain_set = 0 +10:1/0/terrain = 0 +10:1/0/terrains_peering_bit/right_side = 0 +10:1/0/terrains_peering_bit/left_side = 0 +10:1/0/terrains_peering_bit/top_left_corner = 0 +10:1/0/terrains_peering_bit/top_side = 0 +10:1/0/terrains_peering_bit/top_right_corner = 0 +12:1/0 = 0 +12:1/0/terrain_set = 0 +12:1/0/terrain = 0 +12:1/0/terrains_peering_bit/right_side = 0 +12:1/0/terrains_peering_bit/bottom_side = 0 +12:1/0/terrains_peering_bit/top_side = 0 +12:1/0/terrains_peering_bit/top_right_corner = 0 +13:1/0 = 0 +13:1/0/terrain_set = 0 +13:1/0/terrain = 0 +13:1/0/terrains_peering_bit/bottom_side = 0 +13:1/0/terrains_peering_bit/left_side = 0 +13:1/0/terrains_peering_bit/top_left_corner = 0 +13:1/0/terrains_peering_bit/top_side = 0 +15:1/0 = 0 +15:1/0/terrain_set = 0 +15:1/0/terrain = 0 +15:1/0/terrains_peering_bit/right_side = 0 +15:1/0/terrains_peering_bit/bottom_side = 0 +15:1/0/terrains_peering_bit/bottom_left_corner = 0 +15:1/0/terrains_peering_bit/left_side = 0 +15:1/0/terrains_peering_bit/top_side = 0 +15:1/0/terrains_peering_bit/top_right_corner = 0 +16:1/0 = 0 +16:1/0/terrain_set = 0 +16:1/0/terrain = 0 +16:1/0/terrains_peering_bit/right_side = 0 +16:1/0/terrains_peering_bit/bottom_right_corner = 0 +16:1/0/terrains_peering_bit/bottom_side = 0 +16:1/0/terrains_peering_bit/left_side = 0 +16:1/0/terrains_peering_bit/top_left_corner = 0 +16:1/0/terrains_peering_bit/top_side = 0 +0:2/0 = 0 +0:2/0/terrain_set = 0 +0:2/0/terrain = 0 +0:2/0/terrains_peering_bit/right_side = 0 +0:2/0/terrains_peering_bit/top_side = 0 +0:2/0/terrains_peering_bit/top_right_corner = 0 +1:2/0 = 0 +1:2/0/terrain_set = 0 +1:2/0/terrain = 0 +1:2/0/terrains_peering_bit/right_side = 0 +1:2/0/terrains_peering_bit/left_side = 0 +1:2/0/terrains_peering_bit/top_left_corner = 0 +1:2/0/terrains_peering_bit/top_side = 0 +1:2/0/terrains_peering_bit/top_right_corner = 0 +2:2/0 = 0 +2:2/0/terrain_set = 0 +2:2/0/terrain = 0 +2:2/0/terrains_peering_bit/left_side = 0 +2:2/0/terrains_peering_bit/top_left_corner = 0 +2:2/0/terrains_peering_bit/top_side = 0 +4:2/0 = 0 +4:2/0/terrain_set = 0 +4:2/0/terrain = 0 +4:2/0/terrains_peering_bit/top_side = 0 +6:3/0 = 0 +6:3/0/terrain_set = 0 +6:3/0/terrain = 0 +6:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, -3.5049381, -13.06386, -3.5049381, 16, -16, 16) +6:3/0/terrains_peering_bit/right_side = 0 +6:3/0/terrains_peering_bit/bottom_side = 0 +6:3/0/terrains_peering_bit/top_side = 0 +6:3/0/terrains_peering_bit/top_right_corner = 0 +7:3/0 = 0 +7:3/0/terrain_set = 0 +7:3/0/terrain = 0 +7:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(8.921661, -16, 16, -16, 16, 16, 8.603031, 16) +7:3/0/terrains_peering_bit/bottom_side = 0 +7:3/0/terrains_peering_bit/left_side = 0 +7:3/0/terrains_peering_bit/top_left_corner = 0 +7:3/0/terrains_peering_bit/top_side = 0 +9:3/0 = 0 +9:3/0/terrain_set = 0 +9:3/0/terrain = 0 +9:3/0/terrains_peering_bit/right_side = 0 +9:3/0/terrains_peering_bit/bottom_side = 0 +9:3/0/terrains_peering_bit/bottom_left_corner = 0 +9:3/0/terrains_peering_bit/left_side = 0 +10:3/0 = 0 +10:3/0/terrain_set = 0 +10:3/0/terrain = 0 +10:3/0/terrains_peering_bit/right_side = 0 +10:3/0/terrains_peering_bit/bottom_right_corner = 0 +10:3/0/terrains_peering_bit/bottom_side = 0 +10:3/0/terrains_peering_bit/left_side = 0 +12:3/0 = 0 +12:3/0/terrain_set = 0 +12:3/0/terrain = 0 +12:3/0/terrains_peering_bit/right_side = 0 +12:3/0/terrains_peering_bit/bottom_side = 0 +12:3/0/terrains_peering_bit/top_side = 0 +13:3/0 = 0 +13:3/0/terrain_set = 0 +13:3/0/terrain = 0 +13:3/0/terrains_peering_bit/right_side = 0 +13:3/0/terrains_peering_bit/bottom_side = 0 +13:3/0/terrains_peering_bit/left_side = 0 +15:3/0 = 0 +15:3/0/terrain_set = 0 +15:3/0/terrain = 0 +15:3/0/terrains_peering_bit/right_side = 0 +15:3/0/terrains_peering_bit/bottom_side = 0 +15:3/0/terrains_peering_bit/left_side = 0 +16:3/0 = 0 +16:3/0/terrain_set = 0 +16:3/0/terrain = 0 +16:3/0/terrains_peering_bit/bottom_side = 0 +16:3/0/terrains_peering_bit/left_side = 0 +0:4/0 = 0 +0:4/0/terrain_set = 0 +0:4/0/terrain = 0 +0:4/0/terrains_peering_bit/right_side = 0 +1:4/0 = 0 +1:4/0/terrain_set = 0 +1:4/0/terrain = 0 +1:4/0/terrains_peering_bit/right_side = 0 +1:4/0/terrains_peering_bit/left_side = 0 +2:4/0 = 0 +2:4/0/terrain_set = 0 +2:4/0/terrain = 0 +2:4/0/terrains_peering_bit/left_side = 0 +4:4/0 = 0 +4:4/0/terrain_set = 0 +4:4/0/terrain = 0 +4:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +6:4/0 = 0 +6:4/0/terrain_set = 0 +6:4/0/terrain = 0 +6:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, -3.5049381, -13.06386, -3.5049381, 16, -16, 16) +6:4/0/terrains_peering_bit/right_side = 0 +6:4/0/terrains_peering_bit/bottom_right_corner = 0 +6:4/0/terrains_peering_bit/bottom_side = 0 +6:4/0/terrains_peering_bit/top_side = 0 +7:4/0 = 0 +7:4/0/terrain_set = 0 +7:4/0/terrain = 0 +7:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(8.921661, -16, 16, -16, 16, 16, 8.603031, 16) +7:4/0/terrains_peering_bit/bottom_side = 0 +7:4/0/terrains_peering_bit/bottom_left_corner = 0 +7:4/0/terrains_peering_bit/left_side = 0 +7:4/0/terrains_peering_bit/top_side = 0 +9:4/0 = 0 +9:4/0/terrain_set = 0 +9:4/0/terrain = 0 +9:4/0/terrains_peering_bit/right_side = 0 +9:4/0/terrains_peering_bit/left_side = 0 +9:4/0/terrains_peering_bit/top_left_corner = 0 +9:4/0/terrains_peering_bit/top_side = 0 +10:4/0 = 0 +10:4/0/terrain_set = 0 +10:4/0/terrain = 0 +10:4/0/terrains_peering_bit/right_side = 0 +10:4/0/terrains_peering_bit/left_side = 0 +10:4/0/terrains_peering_bit/top_side = 0 +10:4/0/terrains_peering_bit/top_right_corner = 0 +12:4/0 = 0 +12:4/0/terrain_set = 0 +12:4/0/terrain = 0 +12:4/0/terrains_peering_bit/right_side = 0 +12:4/0/terrains_peering_bit/left_side = 0 +12:4/0/terrains_peering_bit/top_side = 0 +13:4/0 = 0 +13:4/0/terrain_set = 0 +13:4/0/terrain = 0 +13:4/0/terrains_peering_bit/bottom_side = 0 +13:4/0/terrains_peering_bit/bottom_left_corner = 0 +13:4/0/terrains_peering_bit/left_side = 0 +13:4/0/terrains_peering_bit/top_side = 0 +15:4/0 = 0 +15:4/0/terrain_set = 0 +15:4/0/terrain = 0 +15:4/0/terrains_peering_bit/right_side = 0 +15:4/0/terrains_peering_bit/top_side = 0 +16:4/0 = 0 +16:4/0/terrain_set = 0 +16:4/0/terrain = 0 +16:4/0/terrains_peering_bit/left_side = 0 +16:4/0/terrains_peering_bit/top_side = 0 +8:1/0 = 0 +8:2/0 = 0 +5:4/0 = 0 + +[sub_resource type="TileSet" id="TileSet_h4fw4"] +tile_size = Vector2i(32, 32) +physics_layer_0/collision_layer = 1 +terrain_set_0/mode = 0 +terrain_set_0/terrain_0/name = "Leafy Dirt" +terrain_set_0/terrain_0/color = Color(0.5, 0.34375, 0.25, 1) +sources/0 = SubResource("TileSetAtlasSource_v158k") + [sub_resource type="RectangleShape2D" id="RectangleShape2D_2poj3"] size = Vector2(82, 20) @@ -22,6 +359,10 @@ unique_name_in_owner = true position = Vector2(-39, 148) script = ExtResource("6_1l0tm") +[node name="TileMapLayer" type="TileMapLayer" parent="." unique_id=2001245533] +tile_map_data = PackedByteArray("AAALAAMAAAAEAAQAAAALAAUAAAAAAAQAAAAKAAUAAAAEAAQAAAAKAAQAAAAEAAQAAAALAAQAAAAEAAQAAAAMAAQAAAAEAAQAAAANAAQAAAAEAAQAAAANAAMAAAAEAAQAAAANAAIAAAAEAAQAAAAMAAIAAAAEAAQAAAAMAAMAAAAEAAQAAAAKAAMAAAAEAAIAAAAJAAMAAAAEAAIAAAAJAAQAAAAEAAQAAAAIAAQAAAAEAAQAAAAIAAMAAAACAAQAAAAMAAUAAAABAAQAAAANAAUAAAABAAQAAAAOAAUAAAABAAQAAAAPAAUAAAABAAQAAAAQAAUAAAABAAQAAAARAAAAAAAEAAEAAAARAAEAAAAEAAEAAAARAAIAAAAEAAEAAAARAAMAAAAEAAEAAAARAAQAAAAEAAEAAAARAAUAAAAEAAIAAAAIAAAAAAABAAAAAAAIAAEAAAAAAAEAAAAIAAIAAAAAAAIAAAAJAAIAAAABAAIAAAAJAAEAAAAAAAEAAAAKAAEAAAAAAAEAAAAKAAAAAAAEAAAAAAAJAAAAAAACAAQAAAAKAAIAAAACAAAAAAALAAEAAAACAAIAAAALAAAAAAAEAAAAAAAHAAEAAAACAAEAAAAHAAIAAAACAAEAAAAHAAMAAAACAAIAAAAGAAMAAAAAAAIAAAAGAAIAAAAAAAEAAAAHAAAAAAABAAAAAAAGAAAAAAAAAAAAAAAGAAEAAAAAAAEAAAAOAP3/AAAAAAAAAAAOAP7/AAAAAAEAAAAPAP7/AAACAAEAAAAPAP//AAABAAIAAAAQAP7/AAACAAEAAAAQAP3/AAACAAAAAAAPAP3/AAABAAAAAAAOAP//AAAAAAIAAAAQAP//AAACAAIAAAARAP//AAAEAAAAAAAQAAoAAAAGAAAAAAAQAAsAAAABAAIAAAARAAsAAAABAAIAAAASAAsAAAACAAIAAAASAAoAAAAHAAMAAAASAAkAAAACAAEAAAARAAoAAAAGAAAAAAARAAkAAAAHAAAAAAAQAAkAAAAGAAAAAAAPAAkAAAAAAAEAAAARAAgAAAABAAAAAAAQAAgAAAABAAAAAAAPAAgAAAAAAAAAAAAPAAsAAAAAAAIAAAAPAAoAAAAAAAEAAAASAAgAAAACAAAAAAAGAAUAAAAAAAAAAAAHAAUAAAACAAAAAAAHAAYAAAACAAIAAAAGAAYAAAAAAAIAAAAPAAMAAAAEAAQAAAA=") +tile_set = SubResource("TileSet_h4fw4") + [node name="platfrom" type="StaticBody2D" parent="." unique_id=446401574] position = Vector2(399, 122) constant_linear_velocity = Vector2(10, 0) @@ -38,7 +379,7 @@ metadata/_edit_group_ = true shape = SubResource("WorldBoundaryShape2D_2poj3") [node name="Player" parent="." unique_id=872670144 instance=ExtResource("3_i6g32")] -position = Vector2(399, 75) +position = Vector2(498, 86) [node name="Area2D" type="Area2D" parent="." unique_id=1630381885] position = Vector2(447, 155) diff --git a/Scenes/grenade.tscn b/Scenes/grenade.tscn index d77a790..6ba7956 100644 --- a/Scenes/grenade.tscn +++ b/Scenes/grenade.tscn @@ -1,6 +1,7 @@ [gd_scene format=3 uid="uid://ceyxo0mrrrd6d"] [ext_resource type="Script" uid="uid://86lxae5ujqvq" path="res://Scripts/grenade.gd" id="1_v44n1"] +[ext_resource type="Texture2D" uid="uid://m76scbu855tb" path="res://assets/graphics/Objects/grenade 1.png" id="2_5rnft"] [sub_resource type="CircleShape2D" id="CircleShape2D_wrm1d"] radius = 12.88 @@ -14,4 +15,10 @@ script = ExtResource("1_v44n1") shape = SubResource("CircleShape2D_wrm1d") debug_color = Color(0.8306428, 0.39345673, 0, 0.41960785) +[node name="Sprite2D" type="Sprite2D" parent="." unique_id=390006828] +texture_filter = 1 +position = Vector2(2.4374995, -3.4375014) +scale = Vector2(2.04375, 2.04375) +texture = ExtResource("2_5rnft") + [connection signal="body_entered" from="." to="." method="_on_body_entered"] diff --git a/Scenes/player.tscn b/Scenes/player.tscn index 2b6b6c5..f55cffc 100644 --- a/Scenes/player.tscn +++ b/Scenes/player.tscn @@ -2,10 +2,15 @@ [ext_resource type="Script" uid="uid://b4efh8nwneqkf" path="res://Scripts/player.gd" id="1_v0iea"] [ext_resource type="Texture2D" uid="uid://p72rbg7thsvi" path="res://assets/graphics/player/idle/Player Idle 48x48.png" id="2_cvnsp"] +[ext_resource type="Texture2D" uid="uid://b524p0lnj8ftn" path="res://assets/graphics/player/jump_fall/player jump 48x48.png" id="2_vgqql"] [ext_resource type="Texture2D" uid="uid://b74hvan7k63nk" path="res://assets/graphics/player/Run/player run 48x48.png" id="3_6t5aa"] [sub_resource type="CircleShape2D" id="CircleShape2D_2poj3"] +[sub_resource type="AtlasTexture" id="AtlasTexture_olqyp"] +atlas = ExtResource("2_vgqql") +region = Rect2(96, 0, 48, 48) + [sub_resource type="AtlasTexture" id="AtlasTexture_6t5aa"] atlas = ExtResource("2_cvnsp") region = Rect2(0, 0, 48, 48) @@ -46,6 +51,14 @@ region = Rect2(384, 0, 48, 48) atlas = ExtResource("2_cvnsp") region = Rect2(432, 0, 48, 48) +[sub_resource type="AtlasTexture" id="AtlasTexture_wpjfl"] +atlas = ExtResource("2_vgqql") +region = Rect2(0, 0, 48, 48) + +[sub_resource type="AtlasTexture" id="AtlasTexture_bi64h"] +atlas = ExtResource("2_vgqql") +region = Rect2(48, 0, 48, 48) + [sub_resource type="AtlasTexture" id="AtlasTexture_ukyrk"] atlas = ExtResource("3_6t5aa") region = Rect2(0, 0, 48, 48) @@ -82,6 +95,14 @@ region = Rect2(336, 0, 48, 48) animations = [{ "frames": [{ "duration": 1.0, +"texture": SubResource("AtlasTexture_olqyp") +}], +"loop": false, +"name": &"fall", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, "texture": SubResource("AtlasTexture_6t5aa") }, { "duration": 1.0, @@ -117,6 +138,17 @@ animations = [{ }, { "frames": [{ "duration": 1.0, +"texture": SubResource("AtlasTexture_wpjfl") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_bi64h") +}], +"loop": false, +"name": &"jump", +"speed": 12.0 +}, { +"frames": [{ +"duration": 1.0, "texture": SubResource("AtlasTexture_ukyrk") }, { "duration": 1.0, @@ -163,7 +195,10 @@ position = Vector2(-17, -8) texture_filter = 1 position = Vector2(0, -6) sprite_frames = SubResource("SpriteFrames_ukyrk") -animation = &"run" +animation = &"idle" autoplay = "idle" -frame = 1 -frame_progress = 0.18516552 + +[node name="Camera2D" type="Camera2D" parent="." unique_id=124446220] +offset = Vector2(0, -50) + +[connection signal="animation_finished" from="PlayerGraphic" to="." method="_on_animation_finished"] diff --git a/Scripts/player.gd b/Scripts/player.gd index 84330cd..4227e63 100644 --- a/Scripts/player.gd +++ b/Scripts/player.gd @@ -10,9 +10,9 @@ const JUMP_VELOCITY = -400.0 var direction enum FaceDirection{LEFT,RIGHT} var facing:FaceDirection = FaceDirection.RIGHT -enum PlayerState{IDLE,RUNNING} +enum PlayerState{IDLE,RUNNING,JUMPING,FALLING} var current_player_state:PlayerState = PlayerState.IDLE - +var upjump:bool = false func _physics_process(delta: float) -> void: @@ -48,6 +48,8 @@ func handle_input()->void: if Input.is_action_just_pressed("jump") and is_on_floor(): velocity.y = JUMP_VELOCITY + upjump = true + current_player_state = PlayerState.JUMPING # Get the input direction and handle the movement/deceleration. # As good practice, you should replace UI actions with custom gameplay actions. @@ -66,10 +68,30 @@ func handle_state()->void: current_player_state = PlayerState.RUNNING PlayerState.RUNNING when velocity.x ==0: current_player_state = PlayerState.IDLE - + PlayerState.JUMPING when velocity.y > 0: + current_player_state = PlayerState.FALLING + PlayerState.FALLING when is_on_floor(): + if velocity.x ==0: + current_player_state = PlayerState.IDLE + else: + current_player_state=PlayerState.RUNNING + + func handle_animation()->void: match current_player_state: PlayerState.IDLE: player_graphic.play("idle") PlayerState.RUNNING: player_graphic.play("run") + PlayerState.JUMPING: + if upjump: + player_graphic.play("jump") + PlayerState.FALLING: + player_graphic.play("fall") + + + +func _on_animation_finished() -> void: + match current_player_state: + PlayerState.JUMPING: + upjump = false diff --git a/assets/graphics/Enviroments/Terrain (32x32).png b/assets/graphics/Enviroments/Terrain (32x32).png new file mode 100644 index 0000000..ddf1eaf Binary files /dev/null and b/assets/graphics/Enviroments/Terrain (32x32).png differ diff --git a/assets/graphics/Enviroments/Terrain (32x32).png.import b/assets/graphics/Enviroments/Terrain (32x32).png.import new file mode 100644 index 0000000..7504d55 --- /dev/null +++ b/assets/graphics/Enviroments/Terrain (32x32).png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://q4k62sp2sa6y" +path="res://.godot/imported/Terrain (32x32).png-f1d682ff907380af6bacdd3ada782a54.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/graphics/Enviroments/Terrain (32x32).png" +dest_files=["res://.godot/imported/Terrain (32x32).png-f1d682ff907380af6bacdd3ada782a54.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/assets/graphics/Objects/Crate.png b/assets/graphics/Objects/Crate.png new file mode 100644 index 0000000..f1c68c9 Binary files /dev/null and b/assets/graphics/Objects/Crate.png differ diff --git a/assets/graphics/Objects/Crate.png.import b/assets/graphics/Objects/Crate.png.import new file mode 100644 index 0000000..7d062c5 --- /dev/null +++ b/assets/graphics/Objects/Crate.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cxc83adpu4bj" +path="res://.godot/imported/Crate.png-d2bc8acf5f178e8e8a7b66006f8b54c5.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/graphics/Objects/Crate.png" +dest_files=["res://.godot/imported/Crate.png-d2bc8acf5f178e8e8a7b66006f8b54c5.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/assets/graphics/Objects/grenade 1.png b/assets/graphics/Objects/grenade 1.png new file mode 100644 index 0000000..a7bca00 Binary files /dev/null and b/assets/graphics/Objects/grenade 1.png differ diff --git a/assets/graphics/Objects/grenade 1.png.import b/assets/graphics/Objects/grenade 1.png.import new file mode 100644 index 0000000..1e368f5 --- /dev/null +++ b/assets/graphics/Objects/grenade 1.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://m76scbu855tb" +path="res://.godot/imported/grenade 1.png-6c8c0e6316c9c38465e89a50596a1148.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/graphics/Objects/grenade 1.png" +dest_files=["res://.godot/imported/grenade 1.png-6c8c0e6316c9c38465e89a50596a1148.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/assets/graphics/Objects/grenade.png b/assets/graphics/Objects/grenade.png new file mode 100644 index 0000000..006801b Binary files /dev/null and b/assets/graphics/Objects/grenade.png differ diff --git a/assets/graphics/Objects/grenade.png.import b/assets/graphics/Objects/grenade.png.import new file mode 100644 index 0000000..0f4ae6e --- /dev/null +++ b/assets/graphics/Objects/grenade.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://b0bqfivro0gxr" +path="res://.godot/imported/grenade.png-110c844ba1458f6dcb4793daa103e59a.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/graphics/Objects/grenade.png" +dest_files=["res://.godot/imported/grenade.png-110c844ba1458f6dcb4793daa103e59a.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/assets/graphics/player/idle/Player Idle 48x48.png b/assets/graphics/player/idle/Player Idle 48x48.png index b618511..22e26d2 100644 Binary files a/assets/graphics/player/idle/Player Idle 48x48.png and b/assets/graphics/player/idle/Player Idle 48x48.png differ diff --git a/assets/graphics/player/jump_fall/player jump 48x48.png b/assets/graphics/player/jump_fall/player jump 48x48.png new file mode 100644 index 0000000..dff105c Binary files /dev/null and b/assets/graphics/player/jump_fall/player jump 48x48.png differ diff --git a/assets/graphics/player/jump_fall/player jump 48x48.png.import b/assets/graphics/player/jump_fall/player jump 48x48.png.import new file mode 100644 index 0000000..c3a77f7 --- /dev/null +++ b/assets/graphics/player/jump_fall/player jump 48x48.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://b524p0lnj8ftn" +path="res://.godot/imported/player jump 48x48.png-bb6ba8ccf76c9bd3765199af95f48c3c.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/graphics/player/jump_fall/player jump 48x48.png" +dest_files=["res://.godot/imported/player jump 48x48.png-bb6ba8ccf76c9bd3765199af95f48c3c.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/project.godot b/project.godot index b077bdf..5d160f4 100644 --- a/project.godot +++ b/project.godot @@ -15,6 +15,14 @@ run/main_scene="uid://bcisk0tho1stb" config/features=PackedStringArray("4.6", "Forward Plus") config/icon="res://icon.svg" +[display] + +window/size/viewport_width=480 +window/size/viewport_height=270 +window/size/window_width_override=960 +window/size/window_height_override=540 +window/stretch/mode="viewport" + [file_customization] folder_colors={