diff --git a/.gitattributes b/.gitattributes index 449b5b0..dcfc206 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,2 +1,3 @@ *.png filter=lfs diff=lfs merge=lfs -text *.kra filter=lfs diff=lfs merge=lfs -text +*.wav filter=lfs diff=lfs merge=lfs -text diff --git a/characters/player/Player.gd b/characters/player/Player.gd index 0ef98f5..6e71e2f 100644 --- a/characters/player/Player.gd +++ b/characters/player/Player.gd @@ -61,7 +61,7 @@ func on_press_area_entered(press: Node2D): self._crush_jump() -func on_press_area_exited(press: Node2D): +func on_press_area_exited(_press: Node2D): press_area_press = null diff --git a/characters/player/Player.tscn b/characters/player/Player.tscn index a13d6ae..d7ffe3d 100644 --- a/characters/player/Player.tscn +++ b/characters/player/Player.tscn @@ -16,7 +16,6 @@ animations = [ { radius = 23.0217 [node name="Player" type="KinematicBody2D"] -position = Vector2( 0, -14 ) collision_layer = 9 script = ExtResource( 2 ) __meta__ = { @@ -24,7 +23,7 @@ __meta__ = { } [node name="AnimatedSprite" type="AnimatedSprite" parent="."] -position = Vector2( 5.68434e-14, -3 ) +position = Vector2( 0, -17 ) scale = Vector2( 0.05, 0.05 ) frames = SubResource( 1 ) animation = "right" @@ -33,9 +32,11 @@ __meta__ = { } [node name="CollisionShape2D" type="CollisionShape2D" parent="."] +position = Vector2( 0, -14 ) shape = SubResource( 2 ) [node name="InteractionArea" type="Area2D" parent="."] +position = Vector2( 0, -14 ) collision_layer = 0 collision_mask = 2 @@ -43,6 +44,7 @@ collision_mask = 2 polygon = PoolVector2Array( 0, -21, 20, -8, 20, 12, 0, 24, 0, 35, 52, 21, 52, -20, 0, -32 ) [node name="PlayerAttachmentManager" parent="." instance=ExtResource( 3 )] +position = Vector2( 0, -14 ) [node name="Tween" type="Tween" parent="."] diff --git a/characters/player/PlayerAttachmentManager.gd b/characters/player/PlayerAttachmentManager.gd index 24cd106..1a43c7c 100644 --- a/characters/player/PlayerAttachmentManager.gd +++ b/characters/player/PlayerAttachmentManager.gd @@ -27,7 +27,8 @@ func _physics_process(_delta): if distance > MAX_DISTANCE_BEFORE_DETACH: attached = null anchor_offset = Vector2.ZERO - # TODO play sfx + $DetachSfx.pitch_scale = rand_range(0.9, 1.1) + $DetachSfx.play() print("detached!") return diff --git a/characters/player/PlayerAttachmentManager.tscn b/characters/player/PlayerAttachmentManager.tscn index 6d261e5..a0e07bb 100644 --- a/characters/player/PlayerAttachmentManager.tscn +++ b/characters/player/PlayerAttachmentManager.tscn @@ -1,6 +1,10 @@ -[gd_scene load_steps=2 format=2] +[gd_scene load_steps=3 format=2] [ext_resource path="res://characters/player/PlayerAttachmentManager.gd" type="Script" id=1] +[ext_resource path="res://sfx/detach.wav" type="AudioStream" id=2] [node name="PlayerAttachmentManager" type="Node2D"] script = ExtResource( 1 ) + +[node name="DetachSfx" type="AudioStreamPlayer2D" parent="."] +stream = ExtResource( 2 ) diff --git a/levels/Level0A.tscn b/levels/Level0A.tscn index 5b02f57..64a48c5 100644 --- a/levels/Level0A.tscn +++ b/levels/Level0A.tscn @@ -1,39 +1,72 @@ -[gd_scene load_steps=6 format=2] +[gd_scene load_steps=9 format=2] [ext_resource path="res://scenery/tiles/ohld_tileset.tres" type="TileSet" id=1] [ext_resource path="res://characters/player/Player.tscn" type="PackedScene" id=2] [ext_resource path="res://scenery/facilities/OliveTree.tscn" type="PackedScene" id=3] [ext_resource path="res://scenery/facilities/Wheelbarrow.tscn" type="PackedScene" id=4] [ext_resource path="res://scenery/facilities/Press.tscn" type="PackedScene" id=5] +[ext_resource path="res://scenery/tiles/road.png" type="Texture" id=6] +[ext_resource path="res://vehicles/Postie.tscn" type="PackedScene" id=7] -[node name="Node2D" type="Node2D"] +[sub_resource type="TileSet" id=1] +0/name = "road.png 0" +0/texture = ExtResource( 6 ) +0/tex_offset = Vector2( 0, 0 ) +0/modulate = Color( 1, 1, 1, 1 ) +0/region = Rect2( 0, 0, 256, 128 ) +0/tile_mode = 0 +0/occluder_offset = Vector2( 0, 0 ) +0/navigation_offset = Vector2( 0, 0 ) +0/shape_offset = Vector2( 0, 0 ) +0/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +0/shape_one_way = false +0/shape_one_way_margin = 0.0 +0/shapes = [ ] +0/z_index = 0 -[node name="TileMapGround" type="TileMap" parent="."] +[node name="Level0A" type="Node2D"] + +[node name="World" type="Node2D" parent="."] + +[node name="TileMapGround" type="TileMap" parent="World"] z_index = -10 tile_set = ExtResource( 1 ) format = 1 -tile_data = PoolIntArray( 0, 0, 0, 1, 0, 0, 2, 0, 0, 3, 0, 0, 4, 0, 0, 5, 0, 0, 6, 0, 0, 7, 0, 0, 8, 0, 0, 9, 0, 0, 10, 0, 0, 11, 0, 0, 12, 0, 0, 13, 0, 0, 14, 0, 0, 15, 0, 0, 65536, 0, 0, 65537, 0, 0, 65538, 0, 0, 65539, 0, 0, 65540, 0, 0, 65541, 0, 0, 65542, 0, 0, 65543, 0, 0, 65544, 0, 0, 65545, 0, 0, 65546, 0, 0, 65547, 0, 0, 65548, 0, 0, 65549, 0, 0, 65550, 0, 0, 65551, 0, 0, 131072, 0, 0, 131073, 0, 0, 131074, 0, 0, 131075, 0, 0, 131076, 0, 0, 131077, 0, 0, 131078, 0, 0, 131079, 0, 0, 131080, 0, 0, 131081, 0, 0, 131082, 0, 0, 131083, 0, 0, 131084, 0, 0, 131085, 0, 0, 131086, 0, 0, 131087, 0, 0, 196608, 0, 0, 196609, 0, 0, 196610, 0, 0, 196611, 0, 0, 196612, 0, 0, 196613, 0, 0, 196614, 0, 0, 196615, 0, 0, 196616, 0, 0, 196617, 0, 0, 196618, 0, 0, 196619, 0, 0, 196620, 0, 0, 196621, 0, 0, 196622, 0, 0, 196623, 0, 0, 262144, 0, 0, 262145, 0, 0, 262146, 8, 0, 262147, 8, 0, 262148, 8, 0, 262149, 8, 0, 262150, 11, 0, 262151, 11, 0, 262152, 8, 0, 262153, 8, 0, 262154, 8, 0, 262155, 8, 0, 262156, 8, 0, 262157, 8, 0, 262158, 0, 0, 262159, 0, 0, 327680, 0, 0, 327681, 0, 0, 327682, 8, 0, 327683, 8, 0, 327684, 8, 0, 327685, 8, 0, 327686, 8, 0, 327687, 8, 0, 327688, 8, 0, 327689, 8, 0, 327690, 8, 0, 327691, 8, 0, 327692, 8, 0, 327693, 8, 0, 327694, 0, 0, 327695, 0, 0, 393216, 0, 0, 393217, 0, 0, 393218, 8, 0, 393219, 8, 0, 393220, 8, 0, 393221, 8, 0, 393222, 8, 0, 393223, 8, 0, 393224, 8, 0, 393225, 8, 0, 393226, 8, 0, 393227, 8, 0, 393228, 8, 0, 393229, 8, 0, 393230, 0, 0, 393231, 0, 0, 458752, 0, 0, 458753, 0, 0, 458754, 8, 0, 458755, 8, 0, 458756, 8, 0, 458757, 8, 0, 458758, 8, 0, 458759, 8, 0, 458760, 8, 0, 458761, 8, 0, 458762, 8, 0, 458763, 8, 0, 458764, 8, 0, 458765, 8, 0, 458766, 0, 0, 458767, 0, 0, 524288, 0, 0, 524289, 0, 0, 524290, 0, 0, 524291, 10, 0, 524292, 10, 0, 524293, 0, 0, 524294, 0, 0, 524295, 0, 0, 524296, 0, 0, 524297, 0, 0, 524298, 0, 0, 524299, 0, 0, 524300, 0, 0, 524301, 0, 0, 524302, 0, 0, 524303, 0, 0, 589824, 0, 0, 589825, 0, 0, 589826, 0, 0, 589827, 0, 0, 589828, 0, 0, 589829, 0, 0, 589830, 0, 0, 589831, 0, 0, 589832, 0, 0, 589833, 0, 0, 589834, 0, 0, 589835, 0, 0, 589836, 0, 0, 589837, 0, 0, 589838, 0, 0, 589839, 0, 0 ) +tile_data = PoolIntArray( 0, 0, 0, 1, 0, 0, 2, 0, 0, 3, 0, 0, 4, 0, 0, 5, 0, 0, 6, 0, 0, 7, 0, 0, 8, 0, 0, 9, 0, 0, 10, 0, 0, 11, 0, 0, 12, 0, 0, 13, 0, 0, 14, 0, 0, 15, 0, 0, 16, 0, 0, 17, 0, 0, 18, 0, 0, 19, 0, 0, 20, 0, 0, 21, 0, 0, 22, 0, 0, 23, 0, 0, 24, 0, 0, 65536, 0, 0, 65537, 0, 0, 65538, 0, 0, 65539, 0, 0, 65540, 0, 0, 65541, 0, 0, 65542, 0, 0, 65543, 0, 0, 65544, 0, 0, 65545, 0, 0, 65546, 0, 0, 65547, 0, 0, 65548, 0, 0, 65549, 0, 0, 65550, 0, 0, 65551, 0, 0, 65552, 0, 0, 65553, 0, 0, 65554, 0, 0, 65555, 0, 0, 65556, 0, 0, 65557, 0, 0, 65558, 0, 0, 65559, 0, 0, 65560, 0, 0, 131072, 0, 0, 131073, 0, 0, 131074, 0, 0, 131075, 0, 0, 131076, 0, 0, 131077, 0, 0, 131078, 0, 0, 131079, 0, 0, 131080, 0, 0, 131081, 0, 0, 131082, 0, 0, 131083, 0, 0, 131084, 0, 0, 131085, 0, 0, 131086, 0, 0, 131087, 0, 0, 131088, 0, 0, 131089, 0, 0, 131090, 0, 0, 131091, 0, 0, 131092, 0, 0, 131093, 0, 0, 131094, 0, 0, 131095, 0, 0, 131096, 0, 0, 196608, 0, 0, 196609, 0, 0, 196610, 0, 0, 196611, 0, 0, 196612, 0, 0, 196613, 0, 0, 196614, 0, 0, 196615, 0, 0, 196616, 0, 0, 196617, 0, 0, 196618, 0, 0, 196619, 0, 0, 196620, 0, 0, 196621, 0, 0, 196622, 0, 0, 196623, 0, 0, 196624, 0, 0, 196625, 0, 0, 196626, 0, 0, 196627, 0, 0, 196628, 0, 0, 196629, 0, 0, 196630, 0, 0, 196631, 0, 0, 196632, 0, 0, 262144, 0, 0, 262145, 0, 0, 262146, 8, 0, 262147, 8, 0, 262148, 8, 0, 262149, 8, 0, 262150, 11, 0, 262151, 11, 0, 262152, 8, 0, 262153, 8, 0, 262154, 8, 0, 262155, 8, 0, 262156, 8, 0, 262157, 8, 0, 262158, 0, 0, 262159, 0, 0, 262160, 0, 0, 262161, 0, 0, 262162, 0, 0, 262163, 0, 0, 262164, 0, 0, 262165, 0, 0, 262166, 0, 0, 262167, 0, 0, 262168, 0, 0, 327680, 0, 0, 327681, 0, 0, 327682, 8, 0, 327683, 8, 0, 327684, 8, 0, 327685, 8, 0, 327686, 8, 0, 327687, 8, 0, 327688, 8, 0, 327689, 8, 0, 327690, 8, 0, 327691, 8, 0, 327692, 8, 0, 327693, 8, 0, 327694, 0, 0, 327695, 0, 0, 327696, 0, 0, 327697, 0, 0, 327698, 0, 0, 327699, 0, 0, 327700, 0, 0, 327701, 0, 0, 327702, 0, 0, 327703, 0, 0, 327704, 0, 0, 393216, 0, 0, 393217, 0, 0, 393218, 8, 0, 393219, 8, 0, 393220, 8, 0, 393221, 8, 0, 393222, 8, 0, 393223, 8, 0, 393224, 8, 0, 393225, 8, 0, 393226, 8, 0, 393227, 8, 0, 393228, 8, 0, 393229, 8, 0, 393230, 0, 0, 393231, 0, 0, 393232, 0, 0, 393233, 0, 0, 393234, 0, 0, 393235, 0, 0, 393236, 0, 0, 393237, 0, 0, 393238, 0, 0, 393239, 0, 0, 393240, 0, 0, 458752, 0, 0, 458753, 0, 0, 458754, 8, 0, 458755, 8, 0, 458756, 8, 0, 458757, 8, 0, 458758, 8, 0, 458759, 8, 0, 458760, 8, 0, 458761, 8, 0, 458762, 8, 0, 458763, 8, 0, 458764, 8, 0, 458765, 8, 0, 458766, 0, 0, 458767, 0, 0, 458768, 0, 0, 458769, 0, 0, 458770, 0, 0, 458771, 0, 0, 458772, 0, 0, 458773, 0, 0, 458774, 0, 0, 458775, 0, 0, 458776, 0, 0, 524288, 0, 0, 524289, 0, 0, 524290, 0, 0, 524291, 10, 0, 524292, 10, 0, 524293, 0, 0, 524294, 0, 0, 524295, 0, 0, 524296, 0, 0, 524297, 0, 0, 524298, 0, 0, 524299, 0, 0, 524300, 0, 0, 524301, 0, 0, 524302, 0, 0, 524303, 0, 0, 524304, 0, 0, 524305, 0, 0, 524306, 0, 0, 524307, 0, 0, 524308, 0, 0, 524309, 0, 0, 524310, 0, 0, 524311, 0, 0, 524312, 0, 0, 589824, 0, 0, 589825, 0, 0, 589826, 0, 0, 589827, 0, 0, 589828, 0, 0, 589829, 0, 0, 589830, 0, 0, 589831, 0, 0, 589832, 0, 0, 589833, 0, 0, 589834, 0, 0, 589835, 0, 0, 589836, 0, 0, 589837, 0, 0, 589838, 0, 0, 589839, 0, 0, 589840, 0, 0, 589841, 0, 0, 589842, 0, 0, 589843, 0, 0, 589844, 0, 0, 589845, 0, 0, 589846, 0, 0, 589847, 0, 0, 589848, 0, 0, 655360, 0, 0, 655361, 0, 0, 655362, 0, 0, 655363, 0, 0, 655364, 0, 0, 655365, 0, 0, 655366, 0, 0, 655367, 0, 0, 655368, 0, 0, 655369, 0, 0, 655370, 0, 0, 655371, 0, 0, 655372, 0, 0, 655373, 0, 0, 655374, 0, 0, 655375, 0, 0, 655376, 0, 0, 655377, 0, 0, 655378, 0, 0, 655379, 0, 0, 655380, 0, 0, 655381, 0, 0, 655382, 0, 0, 655383, 0, 0, 655384, 0, 0, 720896, 0, 0, 720897, 0, 0, 720898, 0, 0, 720899, 0, 0, 720900, 0, 0, 720901, 0, 0, 720902, 0, 0, 720903, 0, 0, 720904, 0, 0, 720905, 0, 0, 720906, 0, 0, 720907, 0, 0, 720908, 0, 0, 720909, 0, 0, 720910, 0, 0, 720911, 0, 0, 720912, 0, 0, 720913, 0, 0, 720914, 0, 0, 720915, 0, 0, 720916, 0, 0, 720917, 0, 0, 720918, 0, 0, 720919, 0, 0, 720920, 0, 0, 786432, 0, 0, 786433, 0, 0, 786434, 0, 0, 786435, 0, 0, 786436, 0, 0, 786437, 0, 0, 786438, 0, 0, 786439, 0, 0, 786440, 0, 0, 786441, 0, 0, 786442, 0, 0, 786443, 0, 0, 786444, 0, 0, 786445, 0, 0, 786446, 0, 0, 786447, 0, 0, 786448, 0, 0, 786449, 0, 0, 786450, 0, 0, 786451, 0, 0, 786452, 0, 0, 786453, 0, 0, 786454, 0, 0, 786455, 0, 0, 786456, 0, 0, 851968, 0, 0, 851969, 0, 0, 851970, 0, 0, 851971, 0, 0, 851972, 0, 0, 851973, 0, 0, 851974, 0, 0, 851975, 0, 0, 851976, 0, 0, 851977, 0, 0, 851978, 0, 0, 851979, 0, 0, 851980, 0, 0, 851981, 0, 0, 851982, 0, 0, 851983, 0, 0, 851984, 0, 0, 851985, 0, 0, 851986, 0, 0, 851987, 0, 0, 851988, 0, 0, 851989, 0, 0, 851990, 0, 0, 851991, 0, 0, 851992, 0, 0, 917504, 0, 0, 917505, 0, 0, 917506, 0, 0, 917507, 0, 0, 917508, 0, 0, 917509, 0, 0, 917510, 0, 0, 917511, 0, 0, 917512, 0, 0, 917513, 0, 0, 917514, 0, 0, 917515, 0, 0, 917516, 0, 0, 917517, 0, 0, 917518, 0, 0, 917519, 0, 0, 917520, 0, 0, 917521, 0, 0, 917522, 0, 0, 917523, 0, 0, 917524, 0, 0, 917525, 0, 0, 917526, 0, 0, 917527, 0, 0, 917528, 0, 0 ) -[node name="TileMapWalls" type="TileMap" parent="."] +[node name="TileMapRoad" type="TileMap" parent="World"] +tile_set = SubResource( 1 ) +cell_size = Vector2( 256, 64 ) +format = 1 +tile_data = PoolIntArray( 851967, 0, 0, 786432, 0, 0, 786433, 0, 0, 786434, 0, 0, 786435, 0, 0, 786436, 0, 0, 786437, 0, 0, 786438, 0, 0 ) + +[node name="TileMapWalls" type="TileMap" parent="World"] +position = Vector2( 0, 1 ) z_index = -1 tile_set = ExtResource( 1 ) format = 1 -tile_data = PoolIntArray( 262145, 5, 0, 262146, 1, 0, 262147, 1, 0, 262148, 1, 0, 262149, 1, 0, 262150, 2, 0, 262151, 3, 0, 262152, 1, 0, 262153, 1, 0, 262154, 1, 0, 262155, 1, 0, 262156, 1, 0, 262157, 1, 0, 262158, 6, 0, 327681, 4, 0, 327694, 7, 0, 393217, 4, 0, 393226, 4, 0, 393227, 1, 0, 393228, 9, 0, 393229, 1, 0, 393230, 7, 0, 458753, 4, 0, 458762, 4, 0, 458766, 7, 0, 524289, 3, 0, 524290, 1, 0, 524291, 2, 0, 524292, 3, 0, 524293, 1, 0, 524294, 1, 0, 524295, 1, 0, 524296, 1, 0, 524297, 1, 0, 524298, 1, 0, 524299, 1, 0, 524300, 1, 0, 524301, 1, 0, 524302, 2, 0 ) +tile_data = PoolIntArray( 262145, 5, 0, 262146, 1, 0, 262147, 1, 0, 262148, 1, 0, 262149, 1, 0, 262150, 2, 0, 262151, 3, 0, 262152, 1, 0, 262153, 1, 0, 262154, 1, 0, 262155, 1, 0, 262156, 1, 0, 262157, 1, 0, 262158, 6, 0, 327681, 4, 0, 327694, 7, 0, 393217, 4, 0, 393226, 4, 0, 393227, 1, 0, 393228, 9, 0, 393229, 1, 0, 393230, 7, 0, 458753, 4, 0, 458762, 4, 0, 458766, 7, 0, 524289, 3, 0, 524290, 1, 0, 524291, 2, 0, 524292, 3, 0, 524293, 1, 0, 524294, 1, 0, 524295, 1, 0, 524296, 1, 0, 524297, 1, 0, 524298, 1, 0, 524299, 1, 0, 524300, 1, 0, 524301, 1, 0, 524302, 2, 0, 655374, 0, 0 ) -[node name="YSort" type="YSort" parent="."] +[node name="YSort" type="YSort" parent="World"] z_index = 5 -[node name="Press" parent="YSort" instance=ExtResource( 5 )] +[node name="Press" parent="World/YSort" instance=ExtResource( 5 )] position = Vector2( 247, 391 ) -[node name="Player" parent="YSort" instance=ExtResource( 2 )] +[node name="Player" parent="World/YSort" instance=ExtResource( 2 )] position = Vector2( 486, 154 ) -[node name="Node2D" parent="YSort" instance=ExtResource( 3 )] +[node name="Node2D" parent="World/YSort" instance=ExtResource( 3 )] position = Vector2( 701, 189 ) -[node name="Node2D2" parent="YSort" instance=ExtResource( 3 )] +[node name="Node2D2" parent="World/YSort" instance=ExtResource( 3 )] position = Vector2( 135, 190 ) -[node name="Node2D3" parent="YSort" instance=ExtResource( 4 )] +[node name="Node2D3" parent="World/YSort" instance=ExtResource( 4 )] position = Vector2( 542, 475 ) + +[node name="Postie" parent="World/YSort" instance=ExtResource( 7 )] +position = Vector2( 418, 768 ) + +[node name="MarkerRoadPoint" type="Node2D" parent="World"] +position = Vector2( 328, 770 ) diff --git a/project.godot b/project.godot index 8eb54e3..884a950 100644 --- a/project.godot +++ b/project.godot @@ -16,7 +16,10 @@ config/icon="res://icon.png" [display] -window/size/height=640 +window/size/width=1600 +window/size/height=900 +window/size/test_width=1280 +window/size/test_height=720 window/stretch/mode="2d" window/stretch/aspect="keep" @@ -67,6 +70,7 @@ interact={ 2d_physics/layer_2="Interaction" 2d_physics/layer_3="AutoCollection" 2d_physics/layer_4="PressArea" +2d_physics/layer_5="SaleArea" [physics] diff --git a/projectiles/OliveProjectile.tscn b/projectiles/OliveProjectile.tscn index 241c635..6d50c50 100644 --- a/projectiles/OliveProjectile.tscn +++ b/projectiles/OliveProjectile.tscn @@ -8,6 +8,7 @@ radius = 8.95455 height = 8.67516 [node name="OliveProjectile" type="Area2D"] +z_index = 1 collision_layer = 4 collision_mask = 0 script = ExtResource( 2 ) @@ -17,7 +18,7 @@ position = Vector2( 11, 9 ) rotation = -0.87441 shape = SubResource( 1 ) -[node name="Sprite" type="Sprite" parent="."] +[node name="OliveSprite" type="Sprite" parent="."] texture = ExtResource( 1 ) centered = false offset = Vector2( -5, -5 ) diff --git a/scenery/facilities/OliveTree.gd b/scenery/facilities/OliveTree.gd index 9c7aa39..99696da 100644 --- a/scenery/facilities/OliveTree.gd +++ b/scenery/facilities/OliveTree.gd @@ -20,4 +20,6 @@ func interact(_player): for child in self.get_children(): if child.has_method("drop_olive"): if child.drop_olive(): + $FallSfx.pitch_scale = rand_range(0.9, 1.5) + $FallSfx.play() break diff --git a/scenery/facilities/OliveTree.tscn b/scenery/facilities/OliveTree.tscn index c2845ff..5aa812b 100644 --- a/scenery/facilities/OliveTree.tscn +++ b/scenery/facilities/OliveTree.tscn @@ -1,8 +1,9 @@ -[gd_scene load_steps=5 format=2] +[gd_scene load_steps=6 format=2] [ext_resource path="res://scenery/facilities/olivetree.png" type="Texture" id=1] [ext_resource path="res://scenery/facilities/OliveTreeBud.tscn" type="PackedScene" id=2] [ext_resource path="res://scenery/facilities/OliveTree.gd" type="Script" id=3] +[ext_resource path="res://sfx/fall.wav" type="AudioStream" id=4] [sub_resource type="CapsuleShape2D" id=1] radius = 28.0 @@ -38,3 +39,6 @@ rotation = 0.546288 [node name="OliveTreeBud5" parent="." instance=ExtResource( 2 )] position = Vector2( 2, -131 ) rotation = 0.328122 + +[node name="FallSfx" type="AudioStreamPlayer2D" parent="."] +stream = ExtResource( 4 ) diff --git a/scenery/facilities/OliveTreeBud.gd b/scenery/facilities/OliveTreeBud.gd index 89ac703..f288903 100644 --- a/scenery/facilities/OliveTreeBud.gd +++ b/scenery/facilities/OliveTreeBud.gd @@ -5,7 +5,7 @@ var growing: bool = false export var grow_rate: float = 0.05 # TODO 50 is debug -const GROW_RATE = 50.05 +const GROW_RATE = 0.05 func _ready(): reset() diff --git a/scenery/facilities/Press.gd b/scenery/facilities/Press.gd index f69d3a8..5ae5711 100644 --- a/scenery/facilities/Press.gd +++ b/scenery/facilities/Press.gd @@ -128,6 +128,9 @@ func _spray_bottle(): $Tween.interpolate_method(self, "_set_oil_height", old_oil_h, new_oil_h, 1.0, Tween.TRANS_QUAD, Tween.EASE_IN_OUT) $Tween.start() + $SpraySfx.pitch_scale = rand_range(0.9, 1.2) + $SpraySfx.play() + return true @@ -154,6 +157,8 @@ func crush(): # make it a bit more yellowy olive_sprite.modulate = Color(0.5, 1.0, 1.0) crushed_olive_sprites.push_back(olive_sprite) + $SquishSfx.pitch_scale = rand_range(0.9, 1.2) + $SquishSfx.play() _next_step() func add_fresh_olives(num: int): diff --git a/scenery/facilities/Press.tscn b/scenery/facilities/Press.tscn index 159d39d..66b3147 100644 --- a/scenery/facilities/Press.tscn +++ b/scenery/facilities/Press.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=11 format=2] +[gd_scene load_steps=13 format=2] [ext_resource path="res://items/bottle_oliveoil.png" type="Texture" id=1] [ext_resource path="res://items/bottle_oliveoil_bottle.png" type="Texture" id=2] @@ -8,6 +8,8 @@ [ext_resource path="res://items/bottle_oliveoil_oil.png" type="Texture" id=6] [ext_resource path="res://items/bottle_oliveoil_lid.png" type="Texture" id=7] [ext_resource path="res://scenery/facilities/Press.gd" type="Script" id=8] +[ext_resource path="res://sfx/spray.wav" type="AudioStream" id=9] +[ext_resource path="res://sfx/squish1.wav" type="AudioStream" id=10] [sub_resource type="RectangleShape2D" id=1] extents = Vector2( 29.5128, 2.79108 ) @@ -98,6 +100,12 @@ collision_mask = 8 [node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="CollectionArea"] polygon = PoolVector2Array( 68, -78, 67, -24, 5, -3, -63, -22, -62, -84, 5, -103 ) +[node name="SquishSfx" type="AudioStreamPlayer2D" parent="."] +stream = ExtResource( 10 ) + +[node name="SpraySfx" type="AudioStreamPlayer2D" parent="."] +stream = ExtResource( 9 ) + [connection signal="tween_all_completed" from="Tween" to="." method="_on_Tween_tween_all_completed"] [connection signal="body_entered" from="CollectionArea" to="." method="_on_CollectionArea_body_entered"] [connection signal="body_exited" from="CollectionArea" to="." method="_on_CollectionArea_body_exited"] diff --git a/scenery/tiles/road.kra b/scenery/tiles/road.kra new file mode 100644 index 0000000..723f2cd --- /dev/null +++ b/scenery/tiles/road.kra @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2bd26d7f3a62af6edacfcfbe7e045a61aaef7ae4d076dfc1965710ff50a8162 +size 104213 diff --git a/scenery/tiles/road.png b/scenery/tiles/road.png new file mode 100644 index 0000000..b8ba064 --- /dev/null +++ b/scenery/tiles/road.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bef64dc241e00e9a07cddaabe115aefcbfdb9d998f50abb040f9ac978a3f0a63 +size 12192 diff --git a/scenery/tiles/road.png.import b/scenery/tiles/road.png.import new file mode 100644 index 0000000..f0a58c2 --- /dev/null +++ b/scenery/tiles/road.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/road.png-dda19101357f3a889deaa8df88b16e69.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://scenery/tiles/road.png" +dest_files=[ "res://.import/road.png-dda19101357f3a889deaa8df88b16e69.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/sfx/backgate_closed.wav b/sfx/backgate_closed.wav new file mode 100644 index 0000000..fb4084c --- /dev/null +++ b/sfx/backgate_closed.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2bd27c57c0d66918c12ee1355e60e14525149e69de614fdfe029f59086e709ee +size 14788 diff --git a/sfx/backgate_closed.wav.import b/sfx/backgate_closed.wav.import new file mode 100644 index 0000000..f8bbcbd --- /dev/null +++ b/sfx/backgate_closed.wav.import @@ -0,0 +1,23 @@ +[remap] + +importer="wav" +type="AudioStreamSample" +path="res://.import/backgate_closed.wav-f014c3e0e0d93183abb1cc69f9c2d309.sample" + +[deps] + +source_file="res://sfx/backgate_closed.wav" +dest_files=[ "res://.import/backgate_closed.wav-f014c3e0e0d93183abb1cc69f9c2d309.sample" ] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=0 diff --git a/sfx/backgate_open.wav b/sfx/backgate_open.wav new file mode 100644 index 0000000..be60e96 --- /dev/null +++ b/sfx/backgate_open.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba16e3e838739c4f30ee0deeb119c3d4e882622c2ce89fd689fba770d2570855 +size 8544 diff --git a/sfx/backgate_open.wav.import b/sfx/backgate_open.wav.import new file mode 100644 index 0000000..f3fbffe --- /dev/null +++ b/sfx/backgate_open.wav.import @@ -0,0 +1,23 @@ +[remap] + +importer="wav" +type="AudioStreamSample" +path="res://.import/backgate_open.wav-f7be67da16658d53b71196cc08305adb.sample" + +[deps] + +source_file="res://sfx/backgate_open.wav" +dest_files=[ "res://.import/backgate_open.wav-f7be67da16658d53b71196cc08305adb.sample" ] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=0 diff --git a/sfx/detach.wav b/sfx/detach.wav new file mode 100644 index 0000000..7a4f503 --- /dev/null +++ b/sfx/detach.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c6f08098d02ef3539f370043f678a121b8fa98b179edc1a41b2f63d34d1a739d +size 9762 diff --git a/sfx/detach.wav.import b/sfx/detach.wav.import new file mode 100644 index 0000000..d020367 --- /dev/null +++ b/sfx/detach.wav.import @@ -0,0 +1,23 @@ +[remap] + +importer="wav" +type="AudioStreamSample" +path="res://.import/detach.wav-5bcdb173f103ff6e475d3e2109680a0b.sample" + +[deps] + +source_file="res://sfx/detach.wav" +dest_files=[ "res://.import/detach.wav-5bcdb173f103ff6e475d3e2109680a0b.sample" ] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=0 diff --git a/sfx/drive_up.wav b/sfx/drive_up.wav new file mode 100644 index 0000000..44580f1 --- /dev/null +++ b/sfx/drive_up.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7dee25c67fc6127ef5f7329323d016b28c7431e0e9b765c6bf095f79de1fe2f +size 116291 diff --git a/sfx/drive_up.wav.import b/sfx/drive_up.wav.import new file mode 100644 index 0000000..447218c --- /dev/null +++ b/sfx/drive_up.wav.import @@ -0,0 +1,23 @@ +[remap] + +importer="wav" +type="AudioStreamSample" +path="res://.import/drive_up.wav-73d0c6898f09f5e44ee565f13e1ea31e.sample" + +[deps] + +source_file="res://sfx/drive_up.wav" +dest_files=[ "res://.import/drive_up.wav-73d0c6898f09f5e44ee565f13e1ea31e.sample" ] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=0 diff --git a/sfx/engine_start_and_drive.wav b/sfx/engine_start_and_drive.wav new file mode 100644 index 0000000..a5a03fb --- /dev/null +++ b/sfx/engine_start_and_drive.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:20291fdebc0a0b2589aa4c848b20164736459585be0ea7de8120cfb436574522 +size 733202 diff --git a/sfx/engine_start_and_drive.wav.import b/sfx/engine_start_and_drive.wav.import new file mode 100644 index 0000000..0df9105 --- /dev/null +++ b/sfx/engine_start_and_drive.wav.import @@ -0,0 +1,23 @@ +[remap] + +importer="wav" +type="AudioStreamSample" +path="res://.import/engine_start_and_drive.wav-8550d88a67b94b716b69a928e2287f36.sample" + +[deps] + +source_file="res://sfx/engine_start_and_drive.wav" +dest_files=[ "res://.import/engine_start_and_drive.wav-8550d88a67b94b716b69a928e2287f36.sample" ] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=0 diff --git a/sfx/fall.wav b/sfx/fall.wav new file mode 100644 index 0000000..37bfe72 --- /dev/null +++ b/sfx/fall.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48024b10000f64f848e840afec52a371a55733e82d1bdb0623730ed42d08f2ae +size 195226 diff --git a/sfx/fall.wav.import b/sfx/fall.wav.import new file mode 100644 index 0000000..42e8a6c --- /dev/null +++ b/sfx/fall.wav.import @@ -0,0 +1,23 @@ +[remap] + +importer="wav" +type="AudioStreamSample" +path="res://.import/fall.wav-d2f4abdcff4f43adfb935f24d6d7d0c4.sample" + +[deps] + +source_file="res://sfx/fall.wav" +dest_files=[ "res://.import/fall.wav-d2f4abdcff4f43adfb935f24d6d7d0c4.sample" ] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=0 diff --git a/sfx/spray.wav b/sfx/spray.wav new file mode 100644 index 0000000..6ac38c0 --- /dev/null +++ b/sfx/spray.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd2c1dd022b34daa93cb86dadb23447e01b7b3dcbf3e42ff345af88cbe4b9987 +size 49108 diff --git a/sfx/spray.wav.import b/sfx/spray.wav.import new file mode 100644 index 0000000..cd6bdc4 --- /dev/null +++ b/sfx/spray.wav.import @@ -0,0 +1,23 @@ +[remap] + +importer="wav" +type="AudioStreamSample" +path="res://.import/spray.wav-eb9e641350516f7246f3384d37a053fd.sample" + +[deps] + +source_file="res://sfx/spray.wav" +dest_files=[ "res://.import/spray.wav-eb9e641350516f7246f3384d37a053fd.sample" ] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=0 diff --git a/sfx/squish1.wav b/sfx/squish1.wav new file mode 100644 index 0000000..0b9d022 --- /dev/null +++ b/sfx/squish1.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4adc58f57ef36188fc9101e0f885cfe52527369835a60f803e03145bdc84fa3c +size 9470 diff --git a/sfx/squish1.wav.import b/sfx/squish1.wav.import new file mode 100644 index 0000000..e70cf20 --- /dev/null +++ b/sfx/squish1.wav.import @@ -0,0 +1,23 @@ +[remap] + +importer="wav" +type="AudioStreamSample" +path="res://.import/squish1.wav-80ecf9302ce4ca36606ac35dd15cfffb.sample" + +[deps] + +source_file="res://sfx/squish1.wav" +dest_files=[ "res://.import/squish1.wav-80ecf9302ce4ca36606ac35dd15cfffb.sample" ] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=0 diff --git a/vehicles/Postie.gd b/vehicles/Postie.gd new file mode 100644 index 0000000..f11d2d3 --- /dev/null +++ b/vehicles/Postie.gd @@ -0,0 +1,107 @@ +extends Node2D + + +# Declare member variables here. Examples: +# var a = 2 +# var b = "text" + +var marker: Node2D = null + +# Called when the node enters the scene tree for the first time. +func _ready(): + set_ramp_enabled(false) + set_backgate_enabled(true) + marker = get_parent().get_parent().find_node("MarkerRoadPoint") + if marker == null: + print("No marker!") + return + self.position = Vector2(-600, marker.position.y) + _drive_anim() + +var state = null + +func _drive_anim(): + $Tween.interpolate_property(self, "position", self.position, marker.position, 5.0, Tween.TRANS_CUBIC, Tween.EASE_OUT) + state = "driving_in" + $Tween.start() + $DriveInSfx.pitch_scale = rand_range(0.9, 1.2) + $DriveInSfx.play() + +func set_ramp_enabled(enabled: bool): + $N/BackRamp.visible = enabled + $N/BackRamp/StaticBody2D/BackRampShape.disabled = not enabled + +func set_backgate_enabled(enabled: bool): + $N/BackGate.visible = enabled + $N/BackGate/StaticBody2D/BackGateShape.disabled = not enabled + +func _on_driven_in(): + set_backgate_enabled(false) + set_ramp_enabled(true) + $BackgateOpenSfx.pitch_scale = rand_range(0.8, 1.2) + $BackgateOpenSfx.play() + + $Tween.interpolate_callback(self, 5.0, "_drive_off") + $Tween.start() + +func _drive_off(): + set_ramp_enabled(false) + set_backgate_enabled(true) + + # Attach bodies that are in the back, if they are sellable. + var saleable_bodies = $SaleArea.get_overlapping_bodies() + for body in saleable_bodies: + if body.is_in_group("saleable") and body.has_property("sale_value") and body.sale_value != null: + var glob_pos = body.global_position + body.get_parent().remove(body) + $N/Back/ToSell.add_child(body) + body.global_position = glob_pos + + # Disable collisions + $N.collision_layer = 0 + + $BackgateClosedSfx.pitch_scale = rand_range(0.8, 1.2) + $BackgateClosedSfx.play() + + state = "driving_off" + + $Tween.interpolate_property(self, "position:x", position.x, 2000, 5.0, Tween.TRANS_QUAD, Tween.EASE_IN, 3.5) + $DriveOffSfx.pitch_scale = rand_range(0.8, 1.2) + $Tween.interpolate_callback($DriveOffSfx, 1.0, "play") + $Tween.start() + +func _on_driven_off(): + # Find out what is in the back of the van + # Give the player monies for that. + # N.B. anything that was purchased by the player is resellable for quarter of its original price. + + var coin_made = 0 + + for body in $N/Back/ToSell.get_children(): + if body.is_in_group("saleable") and body.has_property("sale_value") and body.sale_value != null: + coin_made += body.sale_value + else: + print("trying to sell ", body, " but no value!") + + print("coin made: ", coin_made) + +func _on_Tween_tween_all_completed(): + if state == "driving_in": + self._on_driven_in() + if state == "driving_off": + self._on_driven_off() + self.queue_free() + state = null + + +var sale_value_so_far = 0 + + +func _on_SaleArea_body_entered(body): + if body.is_in_group("saleable") and body.has_property("sale_value") and body.sale_value != null: + sale_value_so_far += body.sale_value + + +func _on_SaleArea_body_exited(body): + if body.is_in_group("saleable") and body.has_property("sale_value") and body.sale_value != null: + sale_value_so_far -= body.sale_value diff --git a/vehicles/Postie.tscn b/vehicles/Postie.tscn new file mode 100644 index 0000000..ad17142 --- /dev/null +++ b/vehicles/Postie.tscn @@ -0,0 +1,90 @@ +[gd_scene load_steps=14 format=2] + +[ext_resource path="res://vehicles/postie_backramp.png" type="Texture" id=1] +[ext_resource path="res://vehicles/postie_back.png" type="Texture" id=2] +[ext_resource path="res://vehicles/postie_fore.png" type="Texture" id=3] +[ext_resource path="res://vehicles/postie_backclosed.png" type="Texture" id=4] +[ext_resource path="res://vehicles/Postie.gd" type="Script" id=5] +[ext_resource path="res://sfx/drive_up.wav" type="AudioStream" id=6] +[ext_resource path="res://sfx/backgate_open.wav" type="AudioStream" id=7] +[ext_resource path="res://sfx/backgate_closed.wav" type="AudioStream" id=8] +[ext_resource path="res://sfx/engine_start_and_drive.wav" type="AudioStream" id=9] + +[sub_resource type="RectangleShape2D" id=1] +extents = Vector2( 28.9012, 1.69078 ) + +[sub_resource type="RectangleShape2D" id=3] +extents = Vector2( 3, 47.5 ) + +[sub_resource type="RectangleShape2D" id=2] +extents = Vector2( 92.5, 1.5 ) + +[sub_resource type="RectangleShape2D" id=4] +extents = Vector2( 89, 47 ) + +[node name="Postie" type="Node2D"] +script = ExtResource( 5 ) + +[node name="N" type="StaticBody2D" parent="."] +position = Vector2( 160, 1 ) + +[node name="Back" type="Sprite" parent="N"] +texture = ExtResource( 2 ) + +[node name="ToSell" type="Node2D" parent="N/Back"] + +[node name="BackRamp" type="Sprite" parent="N"] +texture = ExtResource( 1 ) + +[node name="StaticBody2D" type="StaticBody2D" parent="N/BackRamp"] + +[node name="BackRampShape" type="CollisionShape2D" parent="N/BackRamp/StaticBody2D"] +position = Vector2( -137.814, 92.987 ) +rotation = -0.914553 +shape = SubResource( 1 ) + +[node name="BackGate" type="Sprite" parent="N"] +texture = ExtResource( 4 ) + +[node name="StaticBody2D" type="StaticBody2D" parent="N/BackGate"] + +[node name="BackGateShape" type="CollisionShape2D" parent="N/BackGate/StaticBody2D"] +position = Vector2( -116, 20.5 ) +shape = SubResource( 3 ) + +[node name="Front" type="Sprite" parent="N"] +z_index = 1 +texture = ExtResource( 3 ) + +[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="N"] +polygon = PoolVector2Array( -118, 63, 68, 65, 68, -83, 116, -83, 159, -8, 159, 93, 147, 93, 139, 113, 112, 113, 100, 96, -45, 95, -54, 111, -80, 111, -90, 96, -118, 96 ) + +[node name="CollisionShape2D" type="CollisionShape2D" parent="N"] +position = Vector2( -26.5, -29.5 ) +shape = SubResource( 2 ) + +[node name="Tween" type="Tween" parent="."] + +[node name="BackgateOpenSfx" type="AudioStreamPlayer2D" parent="."] +stream = ExtResource( 7 ) + +[node name="DriveInSfx" type="AudioStreamPlayer2D" parent="."] +stream = ExtResource( 6 ) + +[node name="BackgateClosedSfx" type="AudioStreamPlayer2D" parent="."] +stream = ExtResource( 8 ) + +[node name="DriveOffSfx" type="AudioStreamPlayer2D" parent="."] +stream = ExtResource( 9 ) + +[node name="SaleArea" type="Area2D" parent="."] +collision_layer = 0 +collision_mask = 16 + +[node name="CollisionShape2D" type="CollisionShape2D" parent="SaleArea"] +position = Vector2( 136, 21 ) +shape = SubResource( 4 ) + +[connection signal="tween_all_completed" from="Tween" to="." method="_on_Tween_tween_all_completed"] +[connection signal="body_entered" from="SaleArea" to="." method="_on_SaleArea_body_entered"] +[connection signal="body_exited" from="SaleArea" to="." method="_on_SaleArea_body_exited"] diff --git a/vehicles/postie.kra b/vehicles/postie.kra new file mode 100644 index 0000000..60bcae9 --- /dev/null +++ b/vehicles/postie.kra @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c2d8506ef35d7851f0626151ef8eedf02515cee34779591ffb4e211fed7f1aa +size 409953 diff --git a/vehicles/postie_back.png b/vehicles/postie_back.png new file mode 100644 index 0000000..9e58160 --- /dev/null +++ b/vehicles/postie_back.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7796aa08928c29c580a0d21b81f31f345b13edd244ba2afcc99f585c2b41b332 +size 6167 diff --git a/vehicles/postie_back.png.import b/vehicles/postie_back.png.import new file mode 100644 index 0000000..cae9724 --- /dev/null +++ b/vehicles/postie_back.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/postie_back.png-097eb7e4d79c10754cfe780a8f346db9.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://vehicles/postie_back.png" +dest_files=[ "res://.import/postie_back.png-097eb7e4d79c10754cfe780a8f346db9.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/vehicles/postie_backclosed.png b/vehicles/postie_backclosed.png new file mode 100644 index 0000000..c015e29 --- /dev/null +++ b/vehicles/postie_backclosed.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:884bded2aeb3ad2a34d32c76ea0b19e70b60c2a281314f8f9165f13e5367152e +size 972 diff --git a/vehicles/postie_backclosed.png.import b/vehicles/postie_backclosed.png.import new file mode 100644 index 0000000..c141c24 --- /dev/null +++ b/vehicles/postie_backclosed.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/postie_backclosed.png-188eed316f1a9a86c14964b419814d0e.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://vehicles/postie_backclosed.png" +dest_files=[ "res://.import/postie_backclosed.png-188eed316f1a9a86c14964b419814d0e.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/vehicles/postie_backramp.png b/vehicles/postie_backramp.png new file mode 100644 index 0000000..954284f --- /dev/null +++ b/vehicles/postie_backramp.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd241a07db9c0e72ee94c43c1b17338d12a8be21404d2382495a3ad455874219 +size 2838 diff --git a/vehicles/postie_backramp.png.import b/vehicles/postie_backramp.png.import new file mode 100644 index 0000000..a52a14c --- /dev/null +++ b/vehicles/postie_backramp.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/postie_backramp.png-e10a4dac361dd2732df9c2cc0dd7ad7c.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://vehicles/postie_backramp.png" +dest_files=[ "res://.import/postie_backramp.png-e10a4dac361dd2732df9c2cc0dd7ad7c.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/vehicles/postie_fore.png b/vehicles/postie_fore.png new file mode 100644 index 0000000..14618be --- /dev/null +++ b/vehicles/postie_fore.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f8341cbb39944afe86b97bcd94427778853236e20fb191db5dcbe713c1991d4 +size 18788 diff --git a/vehicles/postie_fore.png.import b/vehicles/postie_fore.png.import new file mode 100644 index 0000000..52e740a --- /dev/null +++ b/vehicles/postie_fore.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/postie_fore.png-669daa96665f1872e3c74fbf11332dd1.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://vehicles/postie_fore.png" +dest_files=[ "res://.import/postie_fore.png-669daa96665f1872e3c74fbf11332dd1.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0