diff --git a/Enemies/Chasing Glowing Ghost.gd b/Enemies/Chasing Glowing Ghost.gd new file mode 100644 index 0000000..8597781 --- /dev/null +++ b/Enemies/Chasing Glowing Ghost.gd @@ -0,0 +1,40 @@ +extends KinematicBody2D + +const SPEED: int = 50 + +var player: KinematicBody2D = null +var velocity: Vector2 = Vector2.ZERO +var health: int = 2 + + +func _physics_process(_delta: float) -> void: + velocity = Vector2.ZERO + + if player and position.distance_to(player.position) > 1: + velocity = position.direction_to(player.position).normalized() * SPEED + + velocity = move_and_slide(velocity) + return + + +func _on_player_detector_body_entered(body: Node) -> void: + if body.is_in_group('player'): + player = body + return + + +func _on_player_detector_body_exited(body: Node) -> void: + if body.is_in_group('player'): + player = null + return + + +func _on_hitbox_area_entered(area: Area2D) -> void: + if area.is_in_group('player_weapon_1'): + health -= 1 + elif area.is_in_group('player_weapon_2'): + health -= 2 + + if health <= 0: + call_deferred('queue_free') + return diff --git a/Enemies/Chasing Glowing Ghost.tscn b/Enemies/Chasing Glowing Ghost.tscn new file mode 100644 index 0000000..6d70041 --- /dev/null +++ b/Enemies/Chasing Glowing Ghost.tscn @@ -0,0 +1,84 @@ +[gd_scene load_steps=8 format=2] + +[ext_resource path="res://Resources/Level_5_Enemy_Glowing_Ghost_Occluder.tres" type="OccluderPolygon2D" id=1] +[ext_resource path="res://Sprites/Assets/Light.png" type="Texture" id=2] +[ext_resource path="res://Sprites/Enemies/Chasing_Glowing_Ghost.png" type="Texture" id=3] +[ext_resource path="res://Enemies/Chasing Glowing Ghost.gd" type="Script" id=4] + +[sub_resource type="CapsuleShape2D" id=1] +radius = 1.5 +height = 3.0 + +[sub_resource type="CapsuleShape2D" id=2] +radius = 3.0 +height = 2.0 + +[sub_resource type="CircleShape2D" id=3] +radius = 50.0 + +[node name="Chasing Glowing Ghost" type="KinematicBody2D" groups=[ +"enemy", +]] +light_mask = 0 +collision_layer = 4 +collision_mask = 5 +script = ExtResource( 4 ) + +[node name="Sprite" type="Sprite" parent="."] +light_mask = 4 +position = Vector2( 0, -3 ) +texture = ExtResource( 3 ) +offset = Vector2( 0, 0.5 ) + +[node name="Collision" type="CollisionShape2D" parent="."] +visible = false +light_mask = 0 +rotation = 1.5708 +shape = SubResource( 1 ) + +[node name="Hitbox" type="Area2D" parent="." groups=[ +"enemy_hitbox_1", +]] +light_mask = 0 +collision_layer = 4 +collision_mask = 2 + +[node name="CollisionShape2D" type="CollisionShape2D" parent="Hitbox"] +visible = false +light_mask = 0 +position = Vector2( 0, -2.5 ) +shape = SubResource( 2 ) + +[node name="Player Detector" type="Area2D" parent="."] +light_mask = 0 +input_pickable = false +monitorable = false +collision_layer = 0 +collision_mask = 2 + +[node name="CollisionShape2D" type="CollisionShape2D" parent="Player Detector"] +visible = false +light_mask = 0 +shape = SubResource( 3 ) + +[node name="Light" type="Light2D" parent="."] +texture = ExtResource( 2 ) +texture_scale = 0.5 +color = Color( 0.984314, 0.94902, 0.211765, 0.392157 ) +energy = 2.0 +range_item_cull_mask = 11 + +[node name="Eyes" type="Light2D" parent="."] +scale = Vector2( 0.1, 0.1 ) +texture = ExtResource( 2 ) +offset = Vector2( 5, -35 ) +range_item_cull_mask = 4 +shadow_item_cull_mask = 0 + +[node name="Occluder" type="LightOccluder2D" parent="."] +show_behind_parent = true +occluder = ExtResource( 1 ) + +[connection signal="area_entered" from="Hitbox" to="." method="_on_hitbox_area_entered"] +[connection signal="body_entered" from="Player Detector" to="." method="_on_player_detector_body_entered"] +[connection signal="body_exited" from="Player Detector" to="." method="_on_player_detector_body_exited"] diff --git a/Enemies/Creepy Glowing Ghost.gd b/Enemies/Creepy Glowing Ghost.gd new file mode 100644 index 0000000..81ad2cf --- /dev/null +++ b/Enemies/Creepy Glowing Ghost.gd @@ -0,0 +1,53 @@ +extends KinematicBody2D + +const SPEED: int = 35 + +export var creepy_hand: PackedScene + +var player: KinematicBody2D = null +var velocity: Vector2 = Vector2.ZERO +var health: int = 1 + + +func _physics_process(_delta: float) -> void: + velocity = Vector2.ZERO + + if player: + if position.distance_to(player.position) < 40: + velocity = position.direction_to(player.position).normalized() * -SPEED + elif position.distance_to(player.position) > 41: + velocity = position.direction_to(player.position).normalized() * SPEED + + velocity = move_and_slide(velocity) + return + + +func _on_player_detector_body_entered(body: Node) -> void: + if body.is_in_group('player'): + player = body + return + + +func _on_player_detector_body_exited(body: Node) -> void: + if body.is_in_group('player'): + player = null + return + + +func _on_projectile_timer_timeout() -> void: + if player: + var projectile: Node = creepy_hand.instance() + projectile.init($Sprite.global_position, player.position) + get_tree().get_current_scene().get_node('Projectiles').add_child(projectile) + return + + +func _on_hitbox_area_entered(area: Area2D) -> void: + if area.is_in_group('player_weapon_1'): + health -= 1 + elif area.is_in_group('player_weapon_2'): + health -= 2 + + if health <= 0: + call_deferred('queue_free') + return diff --git a/Enemies/Creepy Glowing Ghost.tscn b/Enemies/Creepy Glowing Ghost.tscn new file mode 100644 index 0000000..340f0b5 --- /dev/null +++ b/Enemies/Creepy Glowing Ghost.tscn @@ -0,0 +1,87 @@ +[gd_scene load_steps=9 format=2] + +[ext_resource path="res://Resources/Level_5_Enemy_Glowing_Ghost_Occluder.tres" type="OccluderPolygon2D" id=1] +[ext_resource path="res://Sprites/Assets/Light.png" type="Texture" id=2] +[ext_resource path="res://Sprites/Enemies/Creepy_Glowing_Ghost.png" type="Texture" id=3] +[ext_resource path="res://Enemies/Creepy Glowing Ghost.gd" type="Script" id=4] +[ext_resource path="res://Enemies/Projectiles/Creepy Hand.tscn" type="PackedScene" id=5] + +[sub_resource type="CapsuleShape2D" id=3] +radius = 1.5 +height = 3.0 + +[sub_resource type="CapsuleShape2D" id=1] +radius = 3.0 +height = 2.0 + +[sub_resource type="CircleShape2D" id=2] +radius = 60.0 + +[node name="Creepy Glowing Ghost" type="KinematicBody2D" groups=["enemy"]] +light_mask = 0 +collision_layer = 4 +collision_mask = 5 +script = ExtResource( 4 ) +creepy_hand = ExtResource( 5 ) + +[node name="Sprite" type="Sprite" parent="."] +light_mask = 4 +position = Vector2( 0, -3 ) +texture = ExtResource( 3 ) +offset = Vector2( 0, 0.5 ) + +[node name="Collision" type="CollisionShape2D" parent="."] +visible = false +light_mask = 0 +rotation = 1.5708 +shape = SubResource( 3 ) + +[node name="Hitbox" type="Area2D" parent="." groups=["enemy_hitbox_1"]] +light_mask = 0 +collision_layer = 4 +collision_mask = 2 + +[node name="CollisionShape2D" type="CollisionShape2D" parent="Hitbox"] +visible = false +light_mask = 0 +position = Vector2( 0, -2.5 ) +shape = SubResource( 1 ) + +[node name="Player Detector" type="Area2D" parent="."] +light_mask = 0 +collision_layer = 0 +collision_mask = 2 +input_pickable = false +monitorable = false + +[node name="CollisionShape2D" type="CollisionShape2D" parent="Player Detector"] +visible = false +light_mask = 0 +shape = SubResource( 2 ) + +[node name="Light" type="Light2D" parent="."] +texture = ExtResource( 2 ) +texture_scale = 0.5 +color = Color( 0.698039, 0.211765, 0.984314, 0.392157 ) +energy = 2.0 +range_item_cull_mask = 11 + +[node name="Eyes" type="Light2D" parent="."] +scale = Vector2( 0.1, 0.1 ) +texture = ExtResource( 2 ) +offset = Vector2( 5, -35 ) +range_item_cull_mask = 4 +shadow_item_cull_mask = 0 + +[node name="Occluder" type="LightOccluder2D" parent="."] +show_behind_parent = true +occluder = ExtResource( 1 ) + +[node name="Projectile Timer" type="Timer" parent="."] +wait_time = 2.0 +autostart = true + +[connection signal="area_entered" from="Hitbox" to="." method="_on_hitbox_area_entered"] +[connection signal="body_entered" from="Player Detector" to="." method="_on_player_detector_body_entered"] +[connection signal="body_exited" from="Player Detector" to="." method="_on_player_detector_body_exited"] +[connection signal="timeout" from="Projectile Timer" to="." method="_on_projectile_timer_timeout"] diff --git a/Enemies/Dark Matter.gd b/Enemies/Dark Matter.gd new file mode 100644 index 0000000..1566f74 --- /dev/null +++ b/Enemies/Dark Matter.gd @@ -0,0 +1,78 @@ +extends KinematicBody2D + +# Declare member variables here. Examples: +# var a = 2 +# var b = "text" +#onready var label = get_node("Label") +onready var timer = get_node("Timer") +var speed : = 0.5 +var position_tracker = 0.0 +var player = null +var obstacle = null +var DisplayValue = 10 +var health: int = 2 +# Called when the node enters the scene tree for the first time. +func _ready() -> void: + pass # Replace with function body. + +func _physics_process(_delta): + if player == null: + translate(Vector2(speed, 0)) + position_tracker += speed + if position_tracker >= 50 or position_tracker <=0:#enemy move back and forth + speed *= -1 + if player: + translate(Vector2(position.direction_to(player.position) * abs(speed))) #enemy follow player + + if obstacle == null: + $Sprite.texture = load("res://Sprites/Enemies/DarkMatter_barrier.png") + + if obstacle: + $Sprite.texture = load("res://Sprites/Enemies/DarkMatter.png") +# Called every frame. 'delta' is the elapsed time since the previous frame. +#func _process(delta): +# pass + +func _on_Player_detect_body_entered(body): + #print("player entered") # Replace with function body. + #print(body.name)#"Player" + if body.name == 'Player': #sometimes map_boundary is detected + #if body.get_parent().name == 'Player': + player = body + +func _on_Player_detect_body_exited(_body): + #print("player exit") + if _body.name == 'Player': + player = null + +func _on_Star_detect_body_entered(body_star): + #print("obstacle entered") + #print(body_star.name)#Obstacle + if 'Star' in body_star.name: + obstacle = body_star + timer.set_wait_time(DisplayValue) + timer.start() + #print("timer start") + +func _on_Star_detect_body_exited(_body): + #if _body.name == 'Star': + #print("obstacle exited") + #if _body.name == 'Obstacle': + #obstacle = null + null + +func _on_Timer_timeout(): + #print("time out") + obstacle = null # Replace with function body. + + +func _on_Hitbox_area_entered(area: Area2D): + if obstacle: #when the enemy is vulnerable + if area.is_in_group('player_weapon_1'): + health -= 1 + elif area.is_in_group('player_weapon_2'): + health -= 2 + + if health <= 0: + call_deferred('queue_free') + return diff --git a/Enemies/Dark Matter.tscn b/Enemies/Dark Matter.tscn new file mode 100644 index 0000000..b97f4ef --- /dev/null +++ b/Enemies/Dark Matter.tscn @@ -0,0 +1,57 @@ +[gd_scene load_steps=7 format=2] + +[ext_resource path="res://Sprites/Enemies/DarkMatter_barrier.png" type="Texture" id=1] +[ext_resource path="res://Enemies/Dark Matter.gd" type="Script" id=2] + +[sub_resource type="RectangleShape2D" id=1] +extents = Vector2( 5.55527, 4.93821 ) + +[sub_resource type="CircleShape2D" id=2] +radius = 55.4916 + +[sub_resource type="RectangleShape2D" id=3] +extents = Vector2( 5.48996, 5.06427 ) + +[sub_resource type="RectangleShape2D" id=4] +extents = Vector2( 5.50204, 4.89798 ) + +[node name="Dark Matter" type="KinematicBody2D"] +collision_layer = 2 +collision_mask = 6 +script = ExtResource( 2 ) + +[node name="Enemy_body" type="CollisionShape2D" parent="."] +shape = SubResource( 1 ) + +[node name="Sprite" type="Sprite" parent="."] +texture = ExtResource( 1 ) + +[node name="Player_detect" type="Area2D" parent="."] +collision_layer = 2 +collision_mask = 2 + +[node name="CollisionShape2D" type="CollisionShape2D" parent="Player_detect"] +shape = SubResource( 2 ) + +[node name="Star_detect" type="Area2D" parent="."] +collision_layer = 4 +collision_mask = 4 + +[node name="CollisionShape2D" type="CollisionShape2D" parent="Star_detect"] +shape = SubResource( 3 ) + +[node name="Timer" type="Timer" parent="."] + +[node name="Hitbox" type="Area2D" parent="."] +collision_layer = 4 +collision_mask = 2 + +[node name="CollisionShape2D" type="CollisionShape2D" parent="Hitbox"] +shape = SubResource( 4 ) + +[connection signal="body_entered" from="Player_detect" to="." method="_on_Player_detect_body_entered"] +[connection signal="body_exited" from="Player_detect" to="." method="_on_Player_detect_body_exited"] +[connection signal="body_entered" from="Star_detect" to="." method="_on_Star_detect_body_entered"] +[connection signal="body_exited" from="Star_detect" to="." method="_on_Star_detect_body_exited"] +[connection signal="timeout" from="Timer" to="." method="_on_Timer_timeout"] +[connection signal="area_entered" from="Hitbox" to="." method="_on_Hitbox_area_entered"] diff --git a/Enemies/DemonBoss.gd b/Enemies/DemonBoss.gd index 47a5834..fea14f9 100644 --- a/Enemies/DemonBoss.gd +++ b/Enemies/DemonBoss.gd @@ -8,43 +8,43 @@ var velocity: Vector2 = Vector2.ZERO var status = "walk" func _physics_process(_delta: float) -> void: - velocity = Vector2.ZERO + velocity = Vector2.ZERO - if player: - velocity = position.direction_to(player.position).normalized() * SPEED - var angle = position.angle_to_point(player.position) - if abs(angle) > PI/2: - $AnimatedSprite1.scale.x = -0.563 - else: - $AnimatedSprite1.scale.x = 0.563 + if player: + velocity = position.direction_to(player.position).normalized() * SPEED + var angle = position.angle_to_point(player.position) + if abs(angle) > PI/2: + $AnimatedSprite1.scale.x = -0.563 + else: + $AnimatedSprite1.scale.x = 0.563 - velocity = move_and_slide(velocity) - return + velocity = move_and_slide(velocity) + return func _on_player_detector_area_entered(area: Area2D) -> void: - if area.get_parent().name == 'Player': - player = area.get_parent() - $AnimatedSprite1.animation = "Walk" - return + if area.get_parent().name == 'Player': + player = area.get_parent() + $AnimatedSprite1.animation = "Walk" + return func _on_player_detector_area_exited(_area: Area2D): - player = null - $AnimatedSprite1.animation = "Idle" - return + player = null + $AnimatedSprite1.animation = "Idle" + return func _on_Player_Attack_area_entered(area: Area2D) -> void: - if area.get_parent().name == 'Player': - player = area.get_parent() - $AnimatedSprite1.animation = "Attack" - status = "attack" - return + if area.get_parent().name == 'Player': + player = area.get_parent() + $AnimatedSprite1.animation = "Attack" + status = "attack" + return func _on_Player_Attack_area_exited(area: Area2D) -> void: - player = null - if not status == "attack": - $AnimatedSprite1.animation = "Walk" - return \ No newline at end of file + player = null + if not status == "attack": + $AnimatedSprite1.animation = "Walk" + return diff --git a/Enemies/DemonBoss.tscn b/Enemies/DemonBoss.tscn index f47d619..d37cf7c 100644 --- a/Enemies/DemonBoss.tscn +++ b/Enemies/DemonBoss.tscn @@ -2,7 +2,7 @@ [ext_resource path="res://Resources/Level_5_Enemy_Glowing_Ghost_Occluder.tres" type="OccluderPolygon2D" id=1] [ext_resource path="res://Sprites/Assets/Light.png" type="Texture" id=2] -[ext_resource path="res://Sprites/Enemies/demon_slime_FREE_v1.0_288x160_spritesheet.png" type="Texture" id=3] +[ext_resource path="res://Sprites/Enemies/Demon_Slime_Spritesheet.png" type="Texture" id=3] [ext_resource path="res://Enemies/DemonBoss.gd" type="Script" id=4] [sub_resource type="AtlasTexture" id=3] @@ -401,4 +401,4 @@ occluder = ExtResource( 1 ) [connection signal="area_entered" from="Player Detector" to="." method="_on_player_detector_area_entered"] [connection signal="area_exited" from="Player Detector" to="." method="_on_player_detector_area_exited"] [connection signal="area_entered" from="Player Attack" to="." method="_on_Player_Attack_area_entered"] -[connection signal="area_exited" from="Player Attack" to="." method="_on_Player_Attack_area_exited"] \ No newline at end of file +[connection signal="area_exited" from="Player Attack" to="." method="_on_Player_Attack_area_exited"] diff --git a/Enemies/Flaming Skull.gd b/Enemies/Flaming Skull.gd index fbdb956..7f7561b 100644 --- a/Enemies/Flaming Skull.gd +++ b/Enemies/Flaming Skull.gd @@ -7,6 +7,7 @@ var velocity: Vector2 = Vector2.ZERO func _physics_process(_delta: float) -> void: +<<<<<<< HEAD velocity = Vector2.ZERO if player: @@ -26,3 +27,24 @@ func _on_player_detector_area_entered(area: Area2D) -> void: func _on_player_detector_area_exited(_area: Area2D): player = null return +======= + velocity = Vector2.ZERO + + if player: + velocity = position.direction_to(player.position).normalized() * SPEED + + velocity = move_and_slide(velocity) + return + + +func _on_player_detector_area_entered(area: Area2D) -> void: + if area.get_parent().name == 'Player': + player = area.get_parent() + + return + + +func _on_player_detector_area_exited(_area: Area2D): + player = null + return +>>>>>>> main diff --git a/Enemies/Flaming Skull.tscn b/Enemies/Flaming Skull.tscn index 5b7b150..62a445c 100644 --- a/Enemies/Flaming Skull.tscn +++ b/Enemies/Flaming Skull.tscn @@ -3,6 +3,7 @@ [ext_resource path="res://Resources/Level_5_Enemy_Glowing_Ghost_Occluder.tres" type="OccluderPolygon2D" id=1] [ext_resource path="res://Sprites/Assets/Light.png" type="Texture" id=2] [ext_resource path="res://Enemies/Flaming Skull.gd" type="Script" id=4] +<<<<<<< HEAD [ext_resource path="res://Sprites/Enemies/flaming skull design.png" type="Texture" id=5] [sub_resource type="AtlasTexture" id=1] @@ -20,11 +21,34 @@ region = Rect2( 1344, 0, 672, 672 ) [sub_resource type="SpriteFrames" id=4] animations = [ { "frames": [ SubResource( 1 ), SubResource( 2 ), SubResource( 3 ) ], +======= +[ext_resource path="res://Sprites/Enemies/Flaming_Skull_Design.png" type="Texture" id=5] + +[sub_resource type="AtlasTexture" id=3] +flags = 4 +atlas = ExtResource( 5 ) +region = Rect2( 0, 0, 672, 672 ) + +[sub_resource type="AtlasTexture" id=4] +flags = 4 +atlas = ExtResource( 5 ) +region = Rect2( 672, 0, 672, 672 ) + +[sub_resource type="AtlasTexture" id=5] +flags = 4 +atlas = ExtResource( 5 ) +region = Rect2( 1344, 0, 672, 672 ) + +[sub_resource type="SpriteFrames" id=6] +animations = [ { +"frames": [ SubResource( 3 ), SubResource( 4 ), SubResource( 5 ) ], +>>>>>>> main "loop": true, "name": "default", "speed": 5.0 } ] +<<<<<<< HEAD [sub_resource type="CapsuleShape2D" id=5] radius = 3.0 height = 2.0 @@ -35,18 +59,33 @@ radius = 50.0 [node name="Flaming Skull" type="KinematicBody2D" groups=[ "enemies", ]] +======= +[sub_resource type="CapsuleShape2D" id=1] +radius = 3.0 +height = 2.0 + +[sub_resource type="CircleShape2D" id=2] +radius = 50.0 + +[node name="Flaming Skull" type="KinematicBody2D" groups=["enemies"]] +>>>>>>> main collision_layer = 2 script = ExtResource( 4 ) [node name="AnimatedSprite" type="AnimatedSprite" parent="."] scale = Vector2( 0.0446429, 0.0446429 ) +<<<<<<< HEAD frames = SubResource( 4 ) frame = 1 +======= +frames = SubResource( 6 ) +>>>>>>> main playing = true [node name="Hitbox" type="CollisionShape2D" parent="."] visible = false position = Vector2( 0, -3 ) +<<<<<<< HEAD shape = SubResource( 5 ) [node name="Player Detector" type="Area2D" parent="."] @@ -58,6 +97,19 @@ collision_mask = 2 [node name="CollisionShape2D" type="CollisionShape2D" parent="Player Detector"] visible = false shape = SubResource( 6 ) +======= +shape = SubResource( 1 ) + +[node name="Player Detector" type="Area2D" parent="."] +collision_layer = 0 +collision_mask = 2 +input_pickable = false +monitorable = false + +[node name="CollisionShape2D" type="CollisionShape2D" parent="Player Detector"] +visible = false +shape = SubResource( 2 ) +>>>>>>> main [node name="Light2D" type="Light2D" parent="."] visible = false diff --git a/Enemies/Glowing Ghost.gd b/Enemies/Glowing Ghost.gd deleted file mode 100644 index 2825b5c..0000000 --- a/Enemies/Glowing Ghost.gd +++ /dev/null @@ -1,27 +0,0 @@ -extends KinematicBody2D - -const SPEED: int = 50 - -var player: KinematicBody2D = null -var velocity: Vector2 = Vector2.ZERO - - -func _physics_process(_delta: float) -> void: - velocity = Vector2.ZERO - - if player: - velocity = position.direction_to(player.position).normalized() * SPEED - - velocity = move_and_slide(velocity) - return - - -func _on_player_detector_area_entered(area: Area2D) -> void: - if area.get_parent().name == 'Player': - player = area.get_parent() - return - - -func _on_player_detector_area_exited(_area: Area2D): - player = null - return diff --git a/Enemies/Glowing Ghost.tscn b/Enemies/Glowing Ghost.tscn deleted file mode 100644 index 78e26a0..0000000 --- a/Enemies/Glowing Ghost.tscn +++ /dev/null @@ -1,57 +0,0 @@ -[gd_scene load_steps=7 format=2] - -[ext_resource path="res://Resources/Level_5_Enemy_Glowing_Ghost_Occluder.tres" type="OccluderPolygon2D" id=1] -[ext_resource path="res://Sprites/Assets/Light.png" type="Texture" id=2] -[ext_resource path="res://Sprites/Enemies/Glowing_Ghost.png" type="Texture" id=3] -[ext_resource path="res://Enemies/Glowing Ghost.gd" type="Script" id=4] - -[sub_resource type="CapsuleShape2D" id=1] -radius = 3.0 -height = 2.0 - -[sub_resource type="CircleShape2D" id=2] -radius = 50.0 - -[node name="Glowing Ghost" type="KinematicBody2D" groups=["enemies"]] -collision_layer = 2 -script = ExtResource( 4 ) - -[node name="Sprite" type="Sprite" parent="."] -light_mask = 4 -position = Vector2( 0, -3 ) -texture = ExtResource( 3 ) - -[node name="Hitbox" type="CollisionShape2D" parent="."] -visible = false -position = Vector2( 0, -3 ) -shape = SubResource( 1 ) - -[node name="Player Detector" type="Area2D" parent="."] -collision_layer = 0 -collision_mask = 2 -input_pickable = false -monitorable = false - -[node name="CollisionShape2D" type="CollisionShape2D" parent="Player Detector"] -visible = false -shape = SubResource( 2 ) - -[node name="Light2D" type="Light2D" parent="."] -scale = Vector2( 0.5, 0.5 ) -texture = ExtResource( 2 ) -color = Color( 0.984314, 0.94902, 0.211765, 0.392157 ) -energy = 2.0 -range_item_cull_mask = 11 - -[node name="Light2DEyes" type="Light2D" parent="."] -scale = Vector2( 0.1, 0.1 ) -texture = ExtResource( 2 ) -offset = Vector2( 5, -40 ) -range_item_cull_mask = 4 - -[node name="LightOccluder2D" type="LightOccluder2D" parent="."] -show_behind_parent = true -occluder = ExtResource( 1 ) - -[connection signal="area_entered" from="Player Detector" to="." method="_on_player_detector_area_entered"] -[connection signal="area_exited" from="Player Detector" to="." method="_on_player_detector_area_exited"] diff --git a/Enemies/Hellhound.gd b/Enemies/Hellhound.gd index 8b49b5b..9243484 100644 --- a/Enemies/Hellhound.gd +++ b/Enemies/Hellhound.gd @@ -7,41 +7,41 @@ var velocity: Vector2 = Vector2.ZERO func _physics_process(_delta: float) -> void: - velocity = Vector2.ZERO + velocity = Vector2.ZERO - if player: - velocity = position.direction_to(player.position).normalized() * SPEED - var angle = position.angle_to_point(player.position) - if abs(angle) > PI/2: - $AnimatedSprite1.scale.x = -0.563 - else: - $AnimatedSprite1.scale.x = 0.563 + if player: + velocity = position.direction_to(player.position).normalized() * SPEED + var angle = position.angle_to_point(player.position) + if abs(angle) > PI/2: + $AnimatedSprite1.scale.x = -0.563 + else: + $AnimatedSprite1.scale.x = 0.563 - velocity = move_and_slide(velocity) - return + velocity = move_and_slide(velocity) + return func _on_player_detector_area_entered(area: Area2D) -> void: - if area.get_parent().name == 'Player': - player = area.get_parent() - $AnimatedSprite1.animation = "Running" - return + if area.get_parent().name == 'Player': + player = area.get_parent() + $AnimatedSprite1.animation = 'Running' + return func _on_player_detector_area_exited(_area: Area2D): - player = null - $AnimatedSprite1.animation = "Idle" - return + player = null + $AnimatedSprite1.animation = 'Idle' + return func _on_Player_Attack_area_entered(area: Area2D) -> void: - if area.get_parent().name == 'Player': - player = area.get_parent() - $AnimatedSprite1.animation = "Jump" - return + if area.get_parent().name == 'Player': + player = area.get_parent() + $AnimatedSprite1.animation = 'Jump' + return func _on_Player_Attack_area_exited(area: Area2D) -> void: - player = null - $AnimatedSprite1.animation = "Running" - return + player = null + $AnimatedSprite1.animation = 'Running' + return diff --git a/Enemies/Hellhound.tscn b/Enemies/Hellhound.tscn index 4de2d7a..4e6d540 100644 --- a/Enemies/Hellhound.tscn +++ b/Enemies/Hellhound.tscn @@ -2,114 +2,133 @@ [ext_resource path="res://Resources/Level_5_Enemy_Glowing_Ghost_Occluder.tres" type="OccluderPolygon2D" id=1] [ext_resource path="res://Sprites/Assets/Light.png" type="Texture" id=2] -[ext_resource path="res://Sprites/Enemies/hell-hound-idle.png" type="Texture" id=3] +[ext_resource path="res://Sprites/Enemies/Hell_Hound_Idle.png" type="Texture" id=3] [ext_resource path="res://Enemies/Hellhound.gd" type="Script" id=4] -[ext_resource path="res://Sprites/Enemies/hell-hound-jump.png" type="Texture" id=5] -[ext_resource path="res://Sprites/Enemies/hell-hound-run.png" type="Texture" id=6] +[ext_resource path="res://Sprites/Enemies/Hell_Hound_Jump.png" type="Texture" id=5] +[ext_resource path="res://Sprites/Enemies/Hell_Hound_Run.png" type="Texture" id=6] -[sub_resource type="AtlasTexture" id=1] +[sub_resource type="AtlasTexture" id=9] +flags = 4 atlas = ExtResource( 3 ) region = Rect2( 0, 0, 64, 32 ) -[sub_resource type="AtlasTexture" id=2] +[sub_resource type="AtlasTexture" id=10] +flags = 4 atlas = ExtResource( 3 ) region = Rect2( 64, 0, 64, 32 ) -[sub_resource type="AtlasTexture" id=3] +[sub_resource type="AtlasTexture" id=11] +flags = 4 atlas = ExtResource( 3 ) region = Rect2( 128, 0, 64, 32 ) -[sub_resource type="AtlasTexture" id=4] +[sub_resource type="AtlasTexture" id=12] +flags = 4 atlas = ExtResource( 3 ) region = Rect2( 192, 0, 64, 32 ) -[sub_resource type="AtlasTexture" id=5] +[sub_resource type="AtlasTexture" id=13] +flags = 4 atlas = ExtResource( 3 ) region = Rect2( 256, 0, 64, 32 ) -[sub_resource type="AtlasTexture" id=6] +[sub_resource type="AtlasTexture" id=14] +flags = 4 atlas = ExtResource( 3 ) region = Rect2( 320, 0, 64, 32 ) -[sub_resource type="AtlasTexture" id=7] +[sub_resource type="AtlasTexture" id=3] +flags = 4 atlas = ExtResource( 5 ) region = Rect2( 0, 0, 65, 48 ) -[sub_resource type="AtlasTexture" id=8] +[sub_resource type="AtlasTexture" id=4] +flags = 4 atlas = ExtResource( 5 ) region = Rect2( 65, 0, 65, 48 ) -[sub_resource type="AtlasTexture" id=9] +[sub_resource type="AtlasTexture" id=5] +flags = 4 atlas = ExtResource( 5 ) region = Rect2( 130, 0, 65, 48 ) -[sub_resource type="AtlasTexture" id=10] +[sub_resource type="AtlasTexture" id=6] +flags = 4 atlas = ExtResource( 5 ) region = Rect2( 195, 0, 65, 48 ) -[sub_resource type="AtlasTexture" id=11] +[sub_resource type="AtlasTexture" id=7] +flags = 4 atlas = ExtResource( 5 ) region = Rect2( 260, 0, 65, 48 ) -[sub_resource type="AtlasTexture" id=12] +[sub_resource type="AtlasTexture" id=8] +flags = 4 atlas = ExtResource( 5 ) region = Rect2( 325, 0, 65, 48 ) -[sub_resource type="AtlasTexture" id=13] +[sub_resource type="AtlasTexture" id=15] +flags = 4 atlas = ExtResource( 6 ) region = Rect2( 0, 0, 67, 32 ) -[sub_resource type="AtlasTexture" id=14] +[sub_resource type="AtlasTexture" id=16] +flags = 4 atlas = ExtResource( 6 ) region = Rect2( 67, 0, 67, 32 ) -[sub_resource type="AtlasTexture" id=15] +[sub_resource type="AtlasTexture" id=17] +flags = 4 atlas = ExtResource( 6 ) region = Rect2( 134, 0, 67, 32 ) -[sub_resource type="AtlasTexture" id=16] +[sub_resource type="AtlasTexture" id=18] +flags = 4 atlas = ExtResource( 6 ) region = Rect2( 201, 0, 67, 32 ) -[sub_resource type="AtlasTexture" id=17] +[sub_resource type="AtlasTexture" id=19] +flags = 4 atlas = ExtResource( 6 ) region = Rect2( 268, 0, 67, 32 ) -[sub_resource type="SpriteFrames" id=18] +[sub_resource type="SpriteFrames" id=20] animations = [ { -"frames": [ SubResource( 1 ), SubResource( 2 ), SubResource( 3 ), SubResource( 4 ), SubResource( 5 ), SubResource( 6 ) ], +"frames": [ SubResource( 9 ), SubResource( 10 ), SubResource( 11 ), SubResource( 12 ), SubResource( 13 ), SubResource( 14 ) ], "loop": true, "name": "Idle", "speed": 3.0 }, { +<<<<<<< HEAD "frames": [ SubResource( 7 ), SubResource( 8 ), SubResource( 9 ), SubResource( 10 ), SubResource( 11 ), SubResource( 12 ) ], +======= +"frames": [ SubResource( 3 ), SubResource( 4 ), SubResource( 5 ), SubResource( 6 ), SubResource( 7 ), SubResource( 8 ) ], +>>>>>>> main "loop": true, "name": "Jump", "speed": 8.0 }, { -"frames": [ SubResource( 13 ), SubResource( 14 ), SubResource( 15 ), SubResource( 16 ), SubResource( 17 ) ], +"frames": [ SubResource( 15 ), SubResource( 16 ), SubResource( 17 ), SubResource( 18 ), SubResource( 19 ) ], "loop": true, "name": "Running", "speed": 5.0 } ] -[sub_resource type="CapsuleShape2D" id=19] +[sub_resource type="CapsuleShape2D" id=1] radius = 3.0 height = 2.0 -[sub_resource type="CircleShape2D" id=20] +[sub_resource type="CircleShape2D" id=2] radius = 50.0 -[node name="Hellhound" type="KinematicBody2D" groups=[ -"enemies", -]] +[node name="Hellhound" type="KinematicBody2D" groups=["enemies"]] collision_layer = 2 script = ExtResource( 4 ) [node name="AnimatedSprite1" type="AnimatedSprite" parent="."] position = Vector2( 1, -3 ) scale = Vector2( 0.5625, 0.5625 ) -frames = SubResource( 18 ) +frames = SubResource( 20 ) animation = "Idle" frame = 5 playing = true @@ -117,30 +136,30 @@ playing = true [node name="Hitbox" type="CollisionShape2D" parent="."] visible = false position = Vector2( 0, -3 ) -shape = SubResource( 19 ) +shape = SubResource( 1 ) [node name="Player Detector" type="Area2D" parent="."] -input_pickable = false -monitorable = false collision_layer = 0 collision_mask = 2 +input_pickable = false +monitorable = false [node name="CollisionShape2D" type="CollisionShape2D" parent="Player Detector"] visible = false scale = Vector2( 1.5, 1.5 ) -shape = SubResource( 20 ) +shape = SubResource( 2 ) [node name="Player Attack" type="Area2D" parent="."] visible = false -input_pickable = false -monitorable = false collision_layer = 0 collision_mask = 2 +input_pickable = false +monitorable = false [node name="Attack" type="CollisionShape2D" parent="Player Attack"] visible = false scale = Vector2( 0.5, 0.5 ) -shape = SubResource( 20 ) +shape = SubResource( 2 ) [node name="Light2D" type="Light2D" parent="."] visible = false diff --git a/Enemies/Projectiles/Creepy Hand.gd b/Enemies/Projectiles/Creepy Hand.gd new file mode 100644 index 0000000..6e9b749 --- /dev/null +++ b/Enemies/Projectiles/Creepy Hand.gd @@ -0,0 +1,28 @@ +extends Area2D + +const SPEED: int = 35 + +var player_position: Vector2 +var velocity: Vector2 = Vector2.ZERO + + +func init(spawn_position: Vector2, shoot_position: Vector2) -> void: + position = spawn_position + player_position = shoot_position + $Sprite.rotation = player_position.angle_to_point(position) + deg2rad(90) + return + + +func _physics_process(delta: float) -> void: + velocity = Vector2.ZERO + + if position.distance_to(player_position) > 1: + velocity = position.direction_to(player_position).normalized() * SPEED * delta + + position += velocity + return + + +func _on_tifetime_timeout() -> void: + call_deferred('queue_free') + return diff --git a/Enemies/Projectiles/Creepy Hand.tscn b/Enemies/Projectiles/Creepy Hand.tscn new file mode 100644 index 0000000..9005976 --- /dev/null +++ b/Enemies/Projectiles/Creepy Hand.tscn @@ -0,0 +1,41 @@ +[gd_scene load_steps=5 format=2] + +[ext_resource path="res://Sprites/Assets/Light.png" type="Texture" id=1] +[ext_resource path="res://Sprites/Enemies/Projectiles/Creepy_Hand.png" type="Texture" id=2] +[ext_resource path="res://Enemies/Projectiles/Creepy Hand.gd" type="Script" id=3] + +[sub_resource type="CircleShape2D" id=1] +radius = 12.0 + +[node name="Creepy Hand" type="Area2D" groups=["enemy_projectile_1"]] +light_mask = 0 +scale = Vector2( 0.5, 0.5 ) +collision_layer = 0 +collision_mask = 2 +input_pickable = false +monitoring = false +script = ExtResource( 3 ) + +[node name="Sprite" type="Sprite" parent="."] +light_mask = 0 +texture = ExtResource( 2 ) + +[node name="CollisionShape2D" type="CollisionShape2D" parent="."] +visible = false +light_mask = 0 +shape = SubResource( 1 ) + +[node name="Light" type="Light2D" parent="."] +texture = ExtResource( 1 ) +texture_scale = 0.3 +color = Color( 0.698039, 0.211765, 0.984314, 1 ) +energy = 1.5 +range_item_cull_mask = 15 +shadow_item_cull_mask = 0 + +[node name="Lifetime" type="Timer" parent="."] +wait_time = 2.0 +one_shot = true +autostart = true + +[connection signal="timeout" from="Lifetime" to="." method="_on_tifetime_timeout"] diff --git a/Fonts/AtariClassic.ttf b/Fonts/AtariClassicSmooth.ttf similarity index 100% rename from Fonts/AtariClassic.ttf rename to Fonts/AtariClassicSmooth.ttf diff --git a/GUI/HUD.gd b/GUI/HUD.gd index d216863..34f8d12 100644 --- a/GUI/HUD.gd +++ b/GUI/HUD.gd @@ -1,6 +1,7 @@ extends CanvasLayer signal add_currency(amount) +var weapon = "sword" func _on_Add_Currency_pressed() -> void: @@ -33,6 +34,7 @@ func _on_select_bow_pressed() -> void: $'Weapon Selection/Sword'.set_visible(true) $'Weapon Selection'.set_visible(false) + weapon = "bow" return @@ -46,6 +48,7 @@ func _on_select_javelin_pressed() -> void: $'Weapon Selection/Sword'.set_visible(true) $'Weapon Selection'.set_visible(false) + weapon = "javelin" return @@ -59,6 +62,7 @@ func _on_select_staff_pressed() -> void: $'Weapon Selection/Sword'.set_visible(true) $'Weapon Selection'.set_visible(false) + weapon = "staff" return @@ -72,4 +76,5 @@ func _on_select_sword_pressed() -> void: $'Weapon Selection/Staff'.set_visible(true) $'Weapon Selection'.set_visible(false) + weapon = "sword" return diff --git a/GUI/Level Select Menu.tscn b/GUI/Level Select Menu.tscn index 7a8c8c6..be9933a 100644 --- a/GUI/Level Select Menu.tscn +++ b/GUI/Level Select Menu.tscn @@ -11,7 +11,7 @@ [node name="Level Select Menu" type="Node"] script = ExtResource( 7 ) -[node name="MarginContainer" type="MarginContainer" parent="."] +[node name="Menu" type="CenterContainer" parent="."] margin_left = 10.0 margin_top = 10.0 margin_right = 310.0 @@ -21,54 +21,50 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="CenterContainer" type="CenterContainer" parent="MarginContainer"] -margin_right = 300.0 -margin_bottom = 160.0 - -[node name="HBoxContainer" type="HBoxContainer" parent="MarginContainer/CenterContainer"] +[node name="Menu Options" type="HBoxContainer" parent="Menu"] margin_left = 20.0 margin_top = 60.0 margin_right = 280.0 margin_bottom = 100.0 -[node name="Hub World" type="TextureButton" parent="MarginContainer/CenterContainer/HBoxContainer"] +[node name="Hub World" type="TextureButton" parent="Menu/Menu Options"] margin_right = 40.0 margin_bottom = 40.0 texture_normal = ExtResource( 6 ) -[node name="Level 1" type="TextureButton" parent="MarginContainer/CenterContainer/HBoxContainer"] +[node name="Level 1" type="TextureButton" parent="Menu/Menu Options"] margin_left = 44.0 margin_right = 84.0 margin_bottom = 40.0 texture_normal = ExtResource( 2 ) -[node name="Level 2" type="TextureButton" parent="MarginContainer/CenterContainer/HBoxContainer"] +[node name="Level 2" type="TextureButton" parent="Menu/Menu Options"] margin_left = 88.0 margin_right = 128.0 margin_bottom = 40.0 texture_normal = ExtResource( 4 ) -[node name="Level 3" type="TextureButton" parent="MarginContainer/CenterContainer/HBoxContainer"] +[node name="Level 3" type="TextureButton" parent="Menu/Menu Options"] margin_left = 132.0 margin_right = 172.0 margin_bottom = 40.0 texture_normal = ExtResource( 1 ) -[node name="Level 4" type="TextureButton" parent="MarginContainer/CenterContainer/HBoxContainer"] +[node name="Level 4" type="TextureButton" parent="Menu/Menu Options"] margin_left = 176.0 margin_right = 216.0 margin_bottom = 40.0 texture_normal = ExtResource( 3 ) -[node name="Level 5" type="TextureButton" parent="MarginContainer/CenterContainer/HBoxContainer"] +[node name="Level 5" type="TextureButton" parent="Menu/Menu Options"] margin_left = 220.0 margin_right = 260.0 margin_bottom = 40.0 texture_normal = ExtResource( 5 ) -[connection signal="pressed" from="MarginContainer/CenterContainer/HBoxContainer/Hub World" to="." method="_on_hub_world_button_pressed"] -[connection signal="pressed" from="MarginContainer/CenterContainer/HBoxContainer/Level 1" to="." method="_on_level_1_button_pressed"] -[connection signal="pressed" from="MarginContainer/CenterContainer/HBoxContainer/Level 2" to="." method="_on_level_2_button_pressed"] -[connection signal="pressed" from="MarginContainer/CenterContainer/HBoxContainer/Level 3" to="." method="_on_level_3_button_pressed"] -[connection signal="pressed" from="MarginContainer/CenterContainer/HBoxContainer/Level 4" to="." method="_on_level_4_button_pressed"] -[connection signal="pressed" from="MarginContainer/CenterContainer/HBoxContainer/Level 5" to="." method="_on_level_5_button_pressed"] +[connection signal="pressed" from="Menu/Menu Options/Hub World" to="." method="_on_hub_world_button_pressed"] +[connection signal="pressed" from="Menu/Menu Options/Level 1" to="." method="_on_level_1_button_pressed"] +[connection signal="pressed" from="Menu/Menu Options/Level 2" to="." method="_on_level_2_button_pressed"] +[connection signal="pressed" from="Menu/Menu Options/Level 3" to="." method="_on_level_3_button_pressed"] +[connection signal="pressed" from="Menu/Menu Options/Level 4" to="." method="_on_level_4_button_pressed"] +[connection signal="pressed" from="Menu/Menu Options/Level 5" to="." method="_on_level_5_button_pressed"] diff --git a/GUI/Main Menu.tscn b/GUI/Main Menu.tscn index b529e84..9b7cfab 100644 --- a/GUI/Main Menu.tscn +++ b/GUI/Main Menu.tscn @@ -44,7 +44,7 @@ __meta__ = { [node name="Menu Elements" type="VBoxContainer" parent="Menu"] margin_left = 42.0 -margin_top = 11.0 +margin_top = 10.0 margin_right = 257.0 margin_bottom = 149.0 alignment = 2 @@ -61,7 +61,7 @@ valign = 1 [node name="Menu Options" type="VBoxContainer" parent="Menu/Menu Elements"] margin_top = 44.0 margin_right = 215.0 -margin_bottom = 138.0 +margin_bottom = 139.0 [node name="Continue" type="CenterContainer" parent="Menu/Menu Elements/Menu Options"] margin_right = 215.0 @@ -79,19 +79,19 @@ texture_disabled = ExtResource( 6 ) [node name="New Game" type="CenterContainer" parent="Menu/Menu Elements/Menu Options"] margin_top = 19.0 margin_right = 215.0 -margin_bottom = 33.0 +margin_bottom = 34.0 [node name="New Game Button" type="TextureButton" parent="Menu/Menu Elements/Menu Options/New Game"] margin_left = 66.0 margin_right = 149.0 -margin_bottom = 14.0 +margin_bottom = 15.0 texture_normal = ExtResource( 5 ) texture_hover = ExtResource( 7 ) [node name="Settings" type="CenterContainer" parent="Menu/Menu Elements/Menu Options"] -margin_top = 37.0 +margin_top = 38.0 margin_right = 215.0 -margin_bottom = 56.0 +margin_bottom = 57.0 [node name="Settings Button" type="TextureButton" parent="Menu/Menu Elements/Menu Options/Settings"] margin_left = 77.0 @@ -101,9 +101,9 @@ texture_normal = ExtResource( 1 ) texture_hover = ExtResource( 10 ) [node name="Credits" type="CenterContainer" parent="Menu/Menu Elements/Menu Options"] -margin_top = 60.0 +margin_top = 61.0 margin_right = 215.0 -margin_bottom = 75.0 +margin_bottom = 76.0 [node name="Credits Button" type="TextureButton" parent="Menu/Menu Elements/Menu Options/Credits"] margin_left = 82.0 @@ -113,9 +113,9 @@ texture_normal = ExtResource( 3 ) texture_hover = ExtResource( 9 ) [node name="Quit" type="CenterContainer" parent="Menu/Menu Elements/Menu Options"] -margin_top = 79.0 +margin_top = 80.0 margin_right = 215.0 -margin_bottom = 94.0 +margin_bottom = 95.0 [node name="Quit Button" type="TextureButton" parent="Menu/Menu Elements/Menu Options/Quit"] margin_left = 90.0 @@ -127,7 +127,7 @@ texture_hover = ExtResource( 11 ) [node name="BGM" type="AudioStreamPlayer" parent="."] pause_mode = 2 stream = ExtResource( 15 ) -volume_db = -15.0 +volume_db = -12.0 autoplay = true [node name="Menu Button Hover" type="AudioStreamPlayer" parent="."] diff --git a/GUI/Splash Screen.tscn b/GUI/Splash Screen.tscn index ba2c4d2..eff9c67 100644 --- a/GUI/Splash Screen.tscn +++ b/GUI/Splash Screen.tscn @@ -14,5 +14,5 @@ script = ExtResource( 2 ) [node name="BGM" type="AudioStreamPlayer" parent="."] stream = ExtResource( 3 ) -volume_db = -15.0 +volume_db = -10.0 autoplay = true diff --git a/Levels/Interactables/Gem.gd b/Levels/Interactables/Gem.gd new file mode 100644 index 0000000..1848acc --- /dev/null +++ b/Levels/Interactables/Gem.gd @@ -0,0 +1,24 @@ +extends Node2D + + +# Declare member variables here. Examples: +# var a: int = 2 +# var b: String = "text" + + +# Called when the node enters the scene tree for the first time. +func _ready() -> void: + pass # Replace with function body. + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +#func _process(delta: float) -> void: +# pass + + +func _on_AnimationPlayer_animation_finished(anim_name: String) -> void: + $GemSprite.visible = false + + +func _on_AnimationPlayer_animation_started(anim_name: String) -> void: + $GemSprite.visible = true diff --git a/Levels/Interactables/Gem.tscn b/Levels/Interactables/Gem.tscn new file mode 100644 index 0000000..939020e --- /dev/null +++ b/Levels/Interactables/Gem.tscn @@ -0,0 +1,34 @@ +[gd_scene load_steps=4 format=2] + +[ext_resource path="res://Sprites/Assets/Resources_Basic.png" type="Texture" id=1] +[ext_resource path="res://Levels/Interactables/Gem.gd" type="Script" id=2] + +[sub_resource type="Animation" id=3] +resource_name = "rise" +length = 1.2 +tracks/0/type = "value" +tracks/0/path = NodePath("GemSprite:position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 0.3, 0.8, 1.2 ), +"transitions": PoolRealArray( 1, 1, 1, 1 ), +"update": 0, +"values": [ Vector2( 0, 0 ), Vector2( 0, -10 ), Vector2( 0, -18 ), Vector2( 0, -20 ) ] +} + +[node name="Gem" type="Node2D"] +script = ExtResource( 2 ) + +[node name="GemSprite" type="Sprite" parent="."] +position = Vector2( 0, -20 ) +texture = ExtResource( 1 ) +region_enabled = true +region_rect = Rect2( 2, 50, 20, 20 ) + +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +anims/rise = SubResource( 3 ) + +[connection signal="animation_finished" from="AnimationPlayer" to="." method="_on_AnimationPlayer_animation_finished"] diff --git a/Levels/Interactables/Silver Barrier.gd b/Levels/Interactables/Silver Barrier.gd new file mode 100644 index 0000000..7041dbf --- /dev/null +++ b/Levels/Interactables/Silver Barrier.gd @@ -0,0 +1,23 @@ +extends StaticBody2D + +export var alignment: String = 'V' + + +func _ready() -> void: + if not alignment in ['V', 'H']: + print('Silver Barrier rotation needs to be "V" or "H"') + elif alignment == 'H': + rotation_degrees = 90 + return + + +func _on_unlock_body_entered(body: Node) -> void: + if not 'player' in body.get_groups(): + return + + if body.has_item('Silver Key'): + body.remove_item('Silver Key') + $Sprite.animation = 'open' + $Collision.set_deferred('disabled', true) + $Unlock.set_deferred('monitoring', false) + return diff --git a/Levels/Interactables/Silver Barrier.tscn b/Levels/Interactables/Silver Barrier.tscn new file mode 100644 index 0000000..43cb211 --- /dev/null +++ b/Levels/Interactables/Silver Barrier.tscn @@ -0,0 +1,51 @@ +[gd_scene load_steps=7 format=2] + +[ext_resource path="res://Sprites/Levels/Interactables/Silver_Barrier_Open.png" type="Texture" id=1] +[ext_resource path="res://Sprites/Levels/Interactables/Silver_Barrier_Closed.png" type="Texture" id=2] +[ext_resource path="res://Levels/Interactables/Silver Barrier.gd" type="Script" id=3] + +[sub_resource type="SpriteFrames" id=1] +animations = [ { +"frames": [ ExtResource( 1 ) ], +"loop": true, +"name": "open", +"speed": 5.0 +}, { +"frames": [ ExtResource( 2 ) ], +"loop": true, +"name": "closed", +"speed": 5.0 +} ] + +[sub_resource type="RectangleShape2D" id=2] +extents = Vector2( 6, 8 ) + +[sub_resource type="RectangleShape2D" id=3] +extents = Vector2( 12, 10 ) + +[node name="Silver Barrier" type="StaticBody2D"] +collision_mask = 0 +script = ExtResource( 3 ) + +[node name="Sprite" type="AnimatedSprite" parent="."] +light_mask = 8 +frames = SubResource( 1 ) +animation = "closed" + +[node name="Collision" type="CollisionShape2D" parent="."] +light_mask = 0 +shape = SubResource( 2 ) + +[node name="Unlock" type="Area2D" parent="."] +light_mask = 0 +collision_layer = 0 +collision_mask = 2 +input_pickable = false +monitorable = false + +[node name="CollisionShape2D" type="CollisionShape2D" parent="Unlock"] +visible = false +light_mask = 0 +shape = SubResource( 3 ) + +[connection signal="body_entered" from="Unlock" to="." method="_on_unlock_body_entered"] diff --git a/Levels/Interactables/Silver Key Pickup.gd b/Levels/Interactables/Silver Key Pickup.gd new file mode 100644 index 0000000..219a404 --- /dev/null +++ b/Levels/Interactables/Silver Key Pickup.gd @@ -0,0 +1,9 @@ +extends Area2D + + +func _on_silver_key_pickup_body_entered(body: Node): + if 'player' in body.get_groups(): + body.add_item('Silver Key') + + call_deferred('queue_free') + return diff --git a/Levels/Interactables/Silver Key Pickup.tscn b/Levels/Interactables/Silver Key Pickup.tscn new file mode 100644 index 0000000..7f78ef6 --- /dev/null +++ b/Levels/Interactables/Silver Key Pickup.tscn @@ -0,0 +1,23 @@ +[gd_scene load_steps=4 format=2] + +[ext_resource path="res://Sprites/Levels/Interactables/Silver_Key.png" type="Texture" id=1] +[ext_resource path="res://Levels/Interactables/Silver Key Pickup.gd" type="Script" id=2] + +[sub_resource type="CircleShape2D" id=1] + +[node name="Silver Key Pickup" type="Area2D"] +collision_layer = 0 +collision_mask = 2 +monitorable = false +script = ExtResource( 2 ) + +[node name="Sprite" type="Sprite" parent="."] +texture = ExtResource( 1 ) +centered = false + +[node name="CollisionShape2D" type="CollisionShape2D" parent="."] +visible = false +position = Vector2( 8, 8 ) +shape = SubResource( 1 ) + +[connection signal="body_entered" from="." to="." method="_on_silver_key_pickup_body_entered"] diff --git a/Levels/Interactables/Star.tscn b/Levels/Interactables/Star.tscn new file mode 100644 index 0000000..d69d569 --- /dev/null +++ b/Levels/Interactables/Star.tscn @@ -0,0 +1,17 @@ +[gd_scene load_steps=3 format=2] + +[ext_resource path="res://Sprites/Assets/blue_star.png" type="Texture" id=1] + +[sub_resource type="RectangleShape2D" id=1] +extents = Vector2( 7.95021, 8.07351 ) + +[node name="Star" type="RigidBody2D"] +collision_layer = 4 +collision_mask = 0 +mode = 1 + +[node name="CollisionShape2D" type="CollisionShape2D" parent="."] +shape = SubResource( 1 ) + +[node name="Sprite" type="Sprite" parent="."] +texture = ExtResource( 1 ) diff --git a/Levels/Interactables/Treasure Chest.gd b/Levels/Interactables/Treasure Chest.gd new file mode 100644 index 0000000..e2904ea --- /dev/null +++ b/Levels/Interactables/Treasure Chest.gd @@ -0,0 +1,33 @@ +extends Sprite + +var is_player_inside: bool = false +var is_opened: bool = false +var has_gem: bool = true + +signal gem_collected + +# Declare member variables here. Examples: +# var a: int = 2 +# var b: String = "text" + + +# Called when the node enters the scene tree for the first time. +func _ready() -> void: + pass # Replace with function body. + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +#func _process(delta: float) -> void: +# pass + + +func _on_Player_Detector_area_entered(area: Area2D) -> void: + if area.get_parent().name == 'Player': + if is_opened == false: + $chestClosed.visible = false + $chestOpened.visible = true + $Gem.visible = true + $Gem/AnimationPlayer.play('rise') + is_opened = true + has_gem = false + emit_signal('gem_collected') diff --git a/Levels/Interactables/Treasure Chest.tscn b/Levels/Interactables/Treasure Chest.tscn new file mode 100644 index 0000000..5c57086 --- /dev/null +++ b/Levels/Interactables/Treasure Chest.tscn @@ -0,0 +1,36 @@ +[gd_scene load_steps=6 format=2] + +[ext_resource path="res://Sprites/Levels/Interactables/Treasure_Chest_Open.png" type="Texture" id=1] +[ext_resource path="res://Sprites/Levels/Interactables/Treasure_Chest_Closed.png" type="Texture" id=2] +[ext_resource path="res://Levels/Interactables/Gem.tscn" type="PackedScene" id=3] +[ext_resource path="res://Levels/Interactables/Treasure Chest.gd" type="Script" id=4] + +[sub_resource type="RectangleShape2D" id=1] +extents = Vector2( 21.3333, 17.3333 ) + +[node name="TreasureChest" type="Sprite" groups=["enemies"]] +script = ExtResource( 4 ) + +[node name="chestOpened" type="Sprite" parent="."] +visible = false +texture = ExtResource( 1 ) + +[node name="chestClosed" type="Sprite" parent="."] +texture = ExtResource( 2 ) + +[node name="Gem" parent="." instance=ExtResource( 3 )] +visible = false + +[node name="Player Detector" type="Area2D" parent="."] +collision_layer = 0 +collision_mask = 2 +input_pickable = false +monitorable = false + +[node name="CollisionShape2D" type="CollisionShape2D" parent="Player Detector"] +visible = false +position = Vector2( 1, -1 ) +scale = Vector2( 1.5, 1.5 ) +shape = SubResource( 1 ) + +[connection signal="area_entered" from="Player Detector" to="." method="_on_Player_Detector_area_entered"] diff --git a/Levels/Level 1.gd b/Levels/Level 1.gd new file mode 100644 index 0000000..9263111 --- /dev/null +++ b/Levels/Level 1.gd @@ -0,0 +1,17 @@ +extends Node2D + + +# Declare member variables here. Examples: +# var a = 2 +# var b = "text" + + +# Called when the node enters the scene tree for the first time. +func _ready() -> void: + $YSort/Player.load_hud($HUD) + return + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +#func _process(delta): +# pass diff --git a/Levels/Level 1.tscn b/Levels/Level 1.tscn new file mode 100644 index 0000000..bcb87be --- /dev/null +++ b/Levels/Level 1.tscn @@ -0,0 +1,66 @@ +[gd_scene load_steps=8 format=2] + +[ext_resource path="res://Sprites/Assets/galaxy_background.png" type="Texture" id=1] +[ext_resource path="res://GUI/HUD.tscn" type="PackedScene" id=2] +[ext_resource path="res://GUI/Pause Screen.tscn" type="PackedScene" id=3] +[ext_resource path="res://Player/Player.tscn" type="PackedScene" id=4] +[ext_resource path="res://Levels/Level 1.gd" type="Script" id=5] +[ext_resource path="res://Enemies/Dark Matter.tscn" type="PackedScene" id=6] +[ext_resource path="res://Levels/Interactables/Star.tscn" type="PackedScene" id=7] + +[node name="Space Level" type="Node2D"] +script = ExtResource( 5 ) + +[node name="TextureRect" type="TextureRect" parent="."] +margin_right = 160.0 +margin_bottom = 90.0 +rect_scale = Vector2( 2.5, 2.5 ) +texture = ExtResource( 1 ) +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="YSort" type="YSort" parent="."] + +[node name="Player" parent="YSort" instance=ExtResource( 4 )] +position = Vector2( 178.673, 89.1493 ) + +[node name="Camera2D" type="Camera2D" parent="YSort/Player"] +current = true +limit_left = 0 +limit_top = 0 +limit_right = 400 +limit_bottom = 225 + +[node name="Enemies" type="YSort" parent="YSort"] + +[node name="Dark Matter" parent="YSort/Enemies" instance=ExtResource( 6 )] +position = Vector2( 97.0154, 82.0323 ) +collision_mask = 0 + +[node name="Dark Matter2" parent="YSort/Enemies" instance=ExtResource( 6 )] +position = Vector2( 205.006, 50.8542 ) + +[node name="Dark Matter3" parent="YSort/Enemies" instance=ExtResource( 6 )] +position = Vector2( 321.547, 98.5301 ) + +[node name="Dark Matter4" parent="YSort/Enemies" instance=ExtResource( 6 )] +position = Vector2( 72.0435, 202.887 ) + +[node name="Dark Matter5" parent="YSort/Enemies" instance=ExtResource( 6 )] +position = Vector2( 289.233, 198.649 ) + +[node name="Stars" type="YSort" parent="YSort"] + +[node name="Star" parent="YSort/Stars" instance=ExtResource( 7 )] +position = Vector2( 140.092, 133.724 ) + +[node name="Star2" parent="YSort/Stars" instance=ExtResource( 7 )] +position = Vector2( 278.639, 33.3731 ) + +[node name="Star3" parent="YSort/Stars" instance=ExtResource( 7 )] +position = Vector2( 323.666, 161.038 ) + +[node name="HUD" parent="." instance=ExtResource( 2 )] + +[node name="Pause Screen" parent="." instance=ExtResource( 3 )] diff --git a/Levels/Level 4.gd b/Levels/Level 4.gd index 155c6bd..2bb0e4d 100644 --- a/Levels/Level 4.gd +++ b/Levels/Level 4.gd @@ -3,22 +3,22 @@ extends Node2D var gems: int = 4 func _ready() -> void: - #$YSort/Player.position = get_viewport_rect().size / 2 - $YSort/Player.load_hud($HUD) - return + #$YSort/Player.position = get_viewport_rect().size / 2 + $YSort/Player.load_hud($HUD) + return func _on_TreasureChest_gem_collected() -> void: - gems -= 1 - - if gems == 0: - $YSort/Items/Door/doorClosed.visible = false - $YSort/Items/Door/doorOpened.visible = true - $DoorCollision.layers = 5 + gems -= 1 + + if gems == 0: + $YSort/Items/Door/doorClosed.visible = false + $YSort/Items/Door/doorOpened.visible = true + $DoorCollision.layers = 5 func _on_NextArea_area_entered(area: Area2D) -> void: - if area.get_parent().name == 'Player': - $YSort/Player.position.x = 195 - $YSort/Player.position.y = -335 + if area.get_parent().name == 'Player': + $YSort/Player.position.x = 195 + $YSort/Player.position.y = -335 diff --git a/Levels/Level 4.tscn b/Levels/Level 4.tscn index 2dc0776..507aa64 100644 --- a/Levels/Level 4.tscn +++ b/Levels/Level 4.tscn @@ -1,10 +1,25 @@ -[gd_scene load_steps=16 format=2] +[gd_scene load_steps=31 format=2] +[ext_resource path="res://Sprites/Levels/Environment/Fire_Column_Medium_12.png" type="Texture" id=1] [ext_resource path="res://Enemies/Hellhound.tscn" type="PackedScene" id=2] +[ext_resource path="res://Sprites/Levels/Environment/Fire_Column_Medium_03.png" type="Texture" id=3] +[ext_resource path="res://Sprites/Levels/Environment/Fire_Column_Medium_09.png" type="Texture" id=4] [ext_resource path="res://Levels/Objects/Door.tscn" type="PackedScene" id=5] +[ext_resource path="res://Sprites/Levels/Environment/Fire_Column_Medium_10.png" type="Texture" id=6] +[ext_resource path="res://Sprites/Levels/Environment/Fire_Column_Medium_04.png" type="Texture" id=7] +[ext_resource path="res://Sprites/Levels/Environment/Fire_Column_Medium_06.png" type="Texture" id=8] [ext_resource path="res://Levels/Level 4.gd" type="Script" id=9] -[ext_resource path="res://Sprites/Assets/tileset_mk_16_16_nature_tileset_godot.tres" type="TileSet" id=15] -[ext_resource path="res://Levels/Objects/TreasureChest.tscn" type="PackedScene" id=16] +[ext_resource path="res://Sprites/Levels/Environment/Fire_Column_Medium_01.png" type="Texture" id=10] +[ext_resource path="res://Sprites/Levels/Environment/Fire_Column_Medium_13.png" type="Texture" id=11] +[ext_resource path="res://Sprites/Levels/Environment/Fire_Column_Medium_14.png" type="Texture" id=12] +[ext_resource path="res://Sprites/Levels/Environment/Fire_Column_Medium_11.png" type="Texture" id=13] +[ext_resource path="res://Sprites/Levels/Environment/Fire_Column_Medium_08.png" type="Texture" id=14] +[ext_resource path="res://Resources/Level_4_Tileset.tres" type="TileSet" id=15] +[ext_resource path="res://Levels/Interactables/Treasure Chest.tscn" type="PackedScene" id=16] +[ext_resource path="res://Sprites/Levels/Environment/Fire_Column_Medium_02.png" type="Texture" id=17] +[ext_resource path="res://Sprites/Levels/Environment/Fire_Column_Medium_07.png" type="Texture" id=18] +[ext_resource path="res://Sprites/Assets/Transparent_16x16.png" type="Texture" id=19] +[ext_resource path="res://Sprites/Levels/Environment/Fire_Column_Medium_05.png" type="Texture" id=20] [ext_resource path="res://Player/Player.tscn" type="PackedScene" id=21] [ext_resource path="res://GUI/Pause Screen.tscn" type="PackedScene" id=22] [ext_resource path="res://GUI/HUD.tscn" type="PackedScene" id=23] @@ -13,7 +28,7 @@ [sub_resource type="SpriteFrames" id=1] animations = [ { -"frames": [ null, null, null, null, null, null, null, null, null, null, null, null, null, null ], +"frames": [ ExtResource( 10 ), ExtResource( 17 ), ExtResource( 3 ), ExtResource( 7 ), ExtResource( 20 ), ExtResource( 8 ), ExtResource( 18 ), ExtResource( 14 ), ExtResource( 4 ), ExtResource( 6 ), ExtResource( 13 ), ExtResource( 1 ), ExtResource( 11 ), ExtResource( 12 ) ], "loop": true, "name": "default", "speed": 10.0 @@ -24,6 +39,7 @@ points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) [sub_resource type="TileSet" id=3] 0/name = "transparent16x16.png 0" +0/texture = ExtResource( 19 ) 0/tex_offset = Vector2( 0, 0 ) 0/modulate = Color( 1, 1, 1, 1 ) 0/region = Rect2( 0, 0, 16, 16 ) @@ -70,21 +86,20 @@ tile_data = PoolIntArray( -2359292, 0, 5, -2359291, 0, 196610, -2359290, 0, 1966 [node name="Fire3" type="AnimatedSprite" parent="."] position = Vector2( -607.628, -210.601 ) frames = SubResource( 1 ) -frame = 8 +frame = 4 playing = true offset = Vector2( 679.819, 333.222 ) [node name="Fire2" type="AnimatedSprite" parent="."] position = Vector2( -543.25, -212.563 ) frames = SubResource( 1 ) -frame = 11 +frame = 7 playing = true offset = Vector2( 679.819, 333.222 ) [node name="Fire1" type="AnimatedSprite" parent="."] position = Vector2( -479.806, -214.167 ) frames = SubResource( 1 ) -frame = 4 playing = true offset = Vector2( 679.819, 333.222 ) diff --git a/Levels/Level 5.tscn b/Levels/Level 5.tscn index c37618d..6df2c83 100644 --- a/Levels/Level 5.tscn +++ b/Levels/Level 5.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=11 format=2] +[gd_scene load_steps=14 format=2] [ext_resource path="res://Player/Player.tscn" type="PackedScene" id=1] [ext_resource path="res://Levels/Level 5.gd" type="Script" id=2] @@ -8,20 +8,25 @@ [ext_resource path="res://Music/Level_5.mp3" type="AudioStream" id=6] [ext_resource path="res://GUI/Pause Screen.tscn" type="PackedScene" id=7] [ext_resource path="res://Resources/Level_5_Walls_Tileset.tres" type="TileSet" id=8] -[ext_resource path="res://Enemies/Glowing Ghost.tscn" type="PackedScene" id=9] +[ext_resource path="res://Enemies/Chasing Glowing Ghost.tscn" type="PackedScene" id=9] [ext_resource path="res://Levels/Traps/Spawn Trap.tscn" type="PackedScene" id=10] +[ext_resource path="res://Levels/Interactables/Silver Key Pickup.tscn" type="PackedScene" id=11] +[ext_resource path="res://Levels/Interactables/Silver Barrier.tscn" type="PackedScene" id=12] +[ext_resource path="res://Enemies/Creepy Glowing Ghost.tscn" type="PackedScene" id=13] [node name="Void Level" type="Node2D"] script = ExtResource( 2 ) -[node name="CanvasModulate" type="CanvasModulate" parent="."] -visible = false +[node name="Darkness" type="CanvasModulate" parent="."] color = Color( 0, 0, 0, 1 ) [node name="Floor" type="TileMap" parent="."] self_modulate = Color( 0.627451, 0.627451, 0.627451, 1 ) tile_set = ExtResource( 4 ) cell_size = Vector2( 16, 16 ) +collision_layer = 0 +collision_mask = 0 +occluder_light_mask = 0 format = 1 tile_data = PoolIntArray( -393225, 0, 0, -393224, 0, 1, -393223, 0, 1, -393222, 0, 1, -393221, 0, 1, -393220, 0, 1, -393219, 0, 1, -393218, 0, 1, -393217, 0, 1, -458752, 0, 1, -458751, 0, 1, -458750, 0, 1, -458749, 0, 1, -458748, 0, 1, -458747, 0, 1, -458746, 0, 1, -458745, 0, 1, -458744, 0, 1, -458743, 0, 1, -458742, 0, 1, -458741, 0, 1, -458740, 0, 1, -458739, 0, 1, -458738, 0, 1, -458737, 0, 1, -458736, 0, 1, -458735, 0, 1, -458734, 0, 1, -458733, 0, 1, -458732, 0, 1, -458731, 0, 1, -458730, 0, 1, -458729, 0, 1, -458728, 0, 1, -458727, 0, 1, -458726, 0, 1, -458725, 0, 1, -458724, 0, 1, -458723, 0, 1, -458722, 0, 1, -458721, 0, 1, -458720, 0, 1, -458719, 0, 1, -458718, 0, 1, -458717, 0, 1, -458716, 0, 2, -327689, 0, 65536, -327688, 0, 65537, -327687, 0, 65537, -327686, 0, 65537, -327685, 0, 65537, -327684, 0, 65537, -327683, 0, 65537, -327682, 0, 65537, -327681, 0, 65537, -393216, 0, 65537, -393215, 0, 65537, -393214, 0, 65537, -393213, 0, 65537, -393212, 0, 65537, -393211, 0, 65537, -393210, 0, 65537, -393209, 0, 65537, -393208, 0, 65537, -393207, 0, 65537, -393206, 0, 65537, -393205, 0, 65537, -393204, 0, 65537, -393203, 0, 65537, -393202, 0, 65537, -393201, 0, 65537, -393200, 0, 65537, -393199, 0, 65537, -393198, 0, 65537, -393197, 0, 65537, -393196, 0, 65537, -393195, 0, 65537, -393194, 0, 65537, -393193, 0, 65537, -393192, 0, 65537, -393191, 0, 65537, -393190, 0, 65537, -393189, 0, 65537, -393188, 0, 65537, -393187, 0, 65537, -393186, 0, 65537, -393185, 0, 65537, -393184, 0, 65537, -393183, 0, 65537, -393182, 0, 65537, -393181, 0, 65537, -393180, 0, 65538, -262153, 0, 65536, -262152, 0, 65537, -262151, 0, 65537, -262150, 0, 65537, -262149, 0, 65537, -262148, 0, 65537, -262147, 0, 65537, -262146, 0, 65537, -262145, 0, 65537, -327680, 0, 65537, -327679, 0, 65537, -327678, 0, 65537, -327677, 0, 65537, -327676, 0, 65537, -327675, 0, 65537, -327674, 0, 65537, -327673, 0, 65537, -327672, 0, 65537, -327671, 0, 65537, -327670, 0, 65537, -327669, 0, 65537, -327668, 0, 65537, -327667, 0, 65537, -327666, 0, 65537, -327665, 0, 65537, -327664, 0, 65537, -327663, 0, 65537, -327662, 0, 65537, -327661, 0, 65537, -327660, 0, 65537, -327659, 0, 65537, -327658, 0, 65537, -327657, 0, 65537, -327656, 0, 65537, -327655, 0, 65537, -327654, 0, 65537, -327653, 0, 65537, -327652, 0, 65537, -327651, 0, 65537, -327650, 0, 65537, -327649, 0, 65537, -327648, 0, 65537, -327647, 0, 65537, -327646, 0, 65537, -327645, 0, 65537, -327644, 0, 65538, -196617, 0, 65536, -196616, 0, 65537, -196615, 0, 65537, -196614, 0, 65537, -196613, 0, 65537, -196612, 0, 65537, -196611, 0, 65537, -196610, 0, 65537, -196609, 0, 65537, -262144, 0, 65537, -262143, 0, 65537, -262142, 0, 65537, -262141, 0, 65537, -262140, 0, 65537, -262139, 0, 65537, -262138, 0, 65537, -262137, 0, 65537, -262136, 0, 65537, -262135, 0, 65537, -262134, 0, 65537, -262133, 0, 65537, -262132, 0, 65537, -262131, 0, 65537, -262130, 0, 65537, -262129, 0, 65537, -262128, 0, 65537, -262127, 0, 65537, -262126, 0, 65537, -262125, 0, 65537, -262124, 0, 65537, -262123, 0, 65537, -262122, 0, 65537, -262121, 0, 65537, -262120, 0, 65537, -262119, 0, 65537, -262118, 0, 65537, -262117, 0, 65537, -262116, 0, 65537, -262115, 0, 65537, -262114, 0, 65537, -262113, 0, 65537, -262112, 0, 65537, -262111, 0, 65537, -262110, 0, 65537, -262109, 0, 65537, -262108, 0, 65538, -131081, 0, 65536, -131080, 0, 65537, -131079, 0, 65537, -131078, 0, 65537, -131077, 0, 65537, -131076, 0, 65537, -131075, 0, 65537, -131074, 0, 65537, -131073, 0, 65537, -196608, 0, 65537, -196607, 0, 65537, -196606, 0, 65537, -196605, 0, 65537, -196604, 0, 65537, -196603, 0, 65537, -196602, 0, 65537, -196601, 0, 65537, -196600, 0, 65537, -196599, 0, 65537, -196598, 0, 65537, -196597, 0, 65537, -196596, 0, 65537, -196595, 0, 65537, -196594, 0, 65537, -196593, 0, 65537, -196592, 0, 65537, -196591, 0, 65537, -196590, 0, 65537, -196589, 0, 65537, -196588, 0, 65537, -196587, 0, 65537, -196586, 0, 65537, -196585, 0, 65537, -196584, 0, 65537, -196583, 0, 65537, -196582, 0, 65537, -196581, 0, 65537, -196580, 0, 65537, -196579, 0, 65537, -196578, 0, 65537, -196577, 0, 65537, -196576, 0, 65537, -196575, 0, 65537, -196574, 0, 65537, -196573, 0, 65537, -196572, 0, 65538, -65545, 0, 65536, -65544, 0, 65537, -65543, 0, 65537, -65542, 0, 65537, -65541, 0, 65537, -65540, 0, 65537, -65539, 0, 65537, -65538, 0, 65537, -65537, 0, 65537, -131072, 0, 65537, -131071, 0, 65537, -131070, 0, 65537, -131069, 0, 65537, -131068, 0, 65537, -131067, 0, 65537, -131066, 0, 65537, -131065, 0, 65537, -131064, 0, 65537, -131063, 0, 65537, -131062, 0, 65537, -131061, 0, 65537, -131060, 0, 65537, -131059, 0, 65537, -131058, 0, 65537, -131057, 0, 65537, -131056, 0, 65537, -131055, 0, 65537, -131054, 0, 65537, -131053, 0, 65537, -131052, 0, 65537, -131051, 0, 65537, -131050, 0, 65537, -131049, 0, 65537, -131048, 0, 65537, -131047, 0, 65537, -131046, 0, 65537, -131045, 0, 65537, -131044, 0, 65537, -131043, 0, 65537, -131042, 0, 65537, -131041, 0, 65537, -131040, 0, 65537, -131039, 0, 65537, -131038, 0, 65537, -131037, 0, 65537, -131036, 0, 65538, -9, 0, 65536, -8, 0, 65537, -7, 0, 65537, -6, 0, 65537, -5, 0, 65537, -4, 0, 65537, -3, 0, 65537, -2, 0, 65537, -1, 0, 65537, -65536, 0, 65537, -65535, 0, 65537, -65534, 0, 65537, -65533, 0, 65537, -65532, 0, 65537, -65531, 0, 65537, -65530, 0, 65537, -65529, 0, 65537, -65528, 0, 65537, -65527, 0, 65537, -65526, 0, 65537, -65525, 0, 65537, -65524, 0, 65537, -65523, 0, 65537, -65522, 0, 65537, -65521, 0, 65537, -65520, 0, 65537, -65519, 0, 65537, -65518, 0, 65537, -65517, 0, 65537, -65516, 0, 65537, -65515, 0, 65537, -65514, 0, 65537, -65513, 0, 65537, -65512, 0, 65537, -65511, 0, 65537, -65510, 0, 65537, -65509, 0, 65537, -65508, 0, 65537, -65507, 0, 65537, -65506, 0, 65537, -65505, 0, 65537, -65504, 0, 65537, -65503, 0, 65537, -65502, 0, 65537, -65501, 0, 65537, -65500, 0, 65538, 65527, 0, 65536, 65528, 0, 65537, 65529, 0, 65537, 65530, 0, 65537, 65531, 0, 65537, 65532, 0, 65537, 65533, 0, 65537, 65534, 0, 65537, 65535, 0, 65537, 0, 0, 65537, 1, 0, 65537, 2, 0, 65537, 3, 0, 65537, 4, 0, 65537, 5, 0, 65537, 6, 0, 65537, 7, 0, 65537, 8, 0, 65537, 9, 0, 65537, 10, 0, 65537, 11, 0, 65537, 12, 0, 65537, 13, 0, 65537, 14, 0, 65537, 15, 0, 65537, 16, 0, 65537, 17, 0, 65537, 18, 0, 65537, 19, 0, 65537, 20, 0, 65537, 21, 0, 65537, 22, 0, 65537, 23, 0, 65537, 24, 0, 65537, 25, 0, 65537, 26, 0, 65537, 27, 0, 65537, 28, 0, 65537, 29, 0, 65537, 30, 0, 65537, 31, 0, 65537, 32, 0, 65537, 33, 0, 65537, 34, 0, 65537, 35, 0, 65537, 36, 0, 65538, 131063, 0, 65536, 131064, 0, 65537, 131065, 0, 65537, 131066, 0, 65537, 131067, 0, 65537, 131068, 0, 65537, 131069, 0, 65537, 131070, 0, 65537, 131071, 0, 65537, 65536, 0, 65537, 65537, 0, 65537, 65538, 0, 65537, 65539, 0, 65537, 65540, 0, 65537, 65541, 0, 65537, 65542, 0, 65537, 65543, 0, 65537, 65544, 0, 65537, 65545, 0, 65537, 65546, 0, 65537, 65547, 0, 65537, 65548, 0, 65537, 65549, 0, 65537, 65550, 0, 65537, 65551, 0, 65537, 65552, 0, 65537, 65553, 0, 65537, 65554, 0, 65537, 65555, 0, 65537, 65556, 0, 65537, 65557, 0, 65537, 65558, 0, 65537, 65559, 0, 65537, 65560, 0, 65537, 65561, 0, 65537, 65562, 0, 65537, 65563, 0, 65537, 65564, 0, 65537, 65565, 0, 65537, 65566, 0, 65537, 65567, 0, 65537, 65568, 0, 65537, 65569, 0, 65537, 65570, 0, 65537, 65571, 0, 65537, 65572, 0, 65538, 196599, 0, 65536, 196600, 0, 65537, 196601, 0, 65537, 196602, 0, 65537, 196603, 0, 65537, 196604, 0, 65537, 196605, 0, 65537, 196606, 0, 65537, 196607, 0, 65537, 131072, 0, 65537, 131073, 0, 65537, 131074, 0, 65537, 131075, 0, 65537, 131076, 0, 65537, 131077, 0, 65537, 131078, 0, 65537, 131079, 0, 65537, 131080, 0, 65537, 131081, 0, 65537, 131082, 0, 65537, 131083, 0, 65537, 131084, 0, 65537, 131085, 0, 65537, 131086, 0, 65537, 131087, 0, 65537, 131088, 0, 65537, 131089, 0, 65537, 131090, 0, 65537, 131091, 0, 65537, 131092, 0, 65537, 131093, 0, 65537, 131094, 0, 65537, 131095, 0, 65537, 131096, 0, 65537, 131097, 0, 65537, 131098, 0, 65537, 131099, 0, 65537, 131100, 0, 65537, 131101, 0, 65537, 131102, 0, 65537, 131103, 0, 65537, 131104, 0, 65537, 131105, 0, 65537, 131106, 0, 65537, 131107, 0, 65537, 131108, 0, 65538, 262135, 0, 65536, 262136, 0, 65537, 262137, 0, 65537, 262138, 0, 65537, 262139, 0, 65537, 262140, 0, 65537, 262141, 0, 65537, 262142, 0, 65537, 262143, 0, 65537, 196608, 0, 65537, 196609, 0, 65537, 196610, 0, 65537, 196611, 0, 65537, 196612, 0, 65537, 196613, 0, 65537, 196614, 0, 65537, 196615, 0, 65537, 196616, 0, 65537, 196617, 0, 65537, 196618, 0, 65537, 196619, 0, 65537, 196620, 0, 65537, 196621, 0, 65537, 196622, 0, 65537, 196623, 0, 65537, 196624, 0, 65537, 196625, 0, 65537, 196626, 0, 65537, 196627, 0, 65537, 196628, 0, 65537, 196629, 0, 65537, 196630, 0, 65537, 196631, 0, 65537, 196632, 0, 65537, 196633, 0, 65537, 196634, 0, 65537, 196635, 0, 65537, 196636, 0, 65537, 196637, 0, 65537, 196638, 0, 65537, 196639, 0, 65537, 196640, 0, 65537, 196641, 0, 65537, 196642, 0, 65537, 196643, 0, 65537, 196644, 0, 65538, 327671, 0, 65536, 327672, 0, 65537, 327673, 0, 65537, 327674, 0, 65537, 327675, 0, 65537, 327676, 0, 65537, 327677, 0, 65537, 327678, 0, 65537, 327679, 0, 65537, 262144, 0, 65537, 262145, 0, 65537, 262146, 0, 65537, 262147, 0, 65537, 262148, 0, 65537, 262149, 0, 65537, 262150, 0, 65537, 262151, 0, 65537, 262152, 0, 65537, 262153, 0, 65537, 262154, 0, 65537, 262155, 0, 65537, 262156, 0, 65537, 262157, 0, 65537, 262158, 0, 65537, 262159, 0, 65537, 262160, 0, 65537, 262161, 0, 65537, 262162, 0, 65537, 262163, 0, 65537, 262164, 0, 65537, 262165, 0, 65537, 262166, 0, 65537, 262167, 0, 65537, 262168, 0, 65537, 262169, 0, 65537, 262170, 0, 65537, 262171, 0, 65537, 262172, 0, 65537, 262173, 0, 65537, 262174, 0, 65537, 262175, 0, 65537, 262176, 0, 65537, 262177, 0, 65537, 262178, 0, 65537, 262179, 0, 65537, 262180, 0, 65538, 393207, 0, 65536, 393208, 0, 65537, 393209, 0, 65537, 393210, 0, 65537, 393211, 0, 65537, 393212, 0, 65537, 393213, 0, 65537, 393214, 0, 65537, 393215, 0, 65537, 327680, 0, 65537, 327681, 0, 65537, 327682, 0, 65537, 327683, 0, 65537, 327684, 0, 65537, 327685, 0, 65537, 327686, 0, 65537, 327687, 0, 65537, 327688, 0, 65537, 327689, 0, 65537, 327690, 0, 65537, 327691, 0, 65537, 327692, 0, 65537, 327693, 0, 65537, 327694, 0, 65537, 327695, 0, 65537, 327696, 0, 65537, 327697, 0, 65537, 327698, 0, 65537, 327699, 0, 65537, 327700, 0, 65537, 327701, 0, 65537, 327702, 0, 65537, 327703, 0, 65537, 327704, 0, 65537, 327705, 0, 65537, 327706, 0, 65537, 327707, 0, 65537, 327708, 0, 65537, 327709, 0, 65537, 327710, 0, 65537, 327711, 0, 65537, 327712, 0, 65537, 327713, 0, 65537, 327714, 0, 65537, 327715, 0, 65537, 327716, 0, 65538, 458743, 0, 65536, 458744, 0, 65537, 458745, 0, 65537, 458746, 0, 65537, 458747, 0, 65537, 458748, 0, 65537, 458749, 0, 65537, 458750, 0, 65537, 458751, 0, 65537, 393216, 0, 65537, 393217, 0, 65537, 393218, 0, 65537, 393219, 0, 65537, 393220, 0, 65537, 393221, 0, 65537, 393222, 0, 65537, 393223, 0, 65537, 393224, 0, 65537, 393225, 0, 65537, 393226, 0, 65537, 393227, 0, 65537, 393228, 0, 65537, 393229, 0, 65537, 393230, 0, 65537, 393231, 0, 65537, 393232, 0, 65537, 393233, 0, 65537, 393234, 0, 65537, 393235, 0, 65537, 393236, 0, 65537, 393237, 0, 65537, 393238, 0, 65537, 393239, 0, 65537, 393240, 0, 65537, 393241, 0, 65537, 393242, 0, 65537, 393243, 0, 65537, 393244, 0, 65537, 393245, 0, 65537, 393246, 0, 65537, 393247, 0, 65537, 393248, 0, 65537, 393249, 0, 65537, 393250, 0, 65537, 393251, 0, 65537, 393252, 0, 65538, 524279, 0, 65536, 524280, 0, 65537, 524281, 0, 65537, 524282, 0, 65537, 524283, 0, 65537, 524284, 0, 65537, 524285, 0, 65537, 524286, 0, 65537, 524287, 0, 65537, 458752, 0, 65537, 458753, 0, 65537, 458754, 0, 65537, 458755, 0, 65537, 458756, 0, 65537, 458757, 0, 65537, 458758, 0, 65537, 458759, 0, 65537, 458760, 0, 65537, 458761, 0, 65537, 458762, 0, 65537, 458763, 0, 65537, 458764, 0, 65537, 458765, 0, 65537, 458766, 0, 65537, 458767, 0, 65537, 458768, 0, 65537, 458769, 0, 65537, 458770, 0, 65537, 458771, 0, 65537, 458772, 0, 65537, 458773, 0, 65537, 458774, 0, 65537, 458775, 0, 65537, 458776, 0, 65537, 458777, 0, 65537, 458778, 0, 65537, 458779, 0, 65537, 458780, 0, 65537, 458781, 0, 65537, 458782, 0, 65537, 458783, 0, 65537, 458784, 0, 65537, 458785, 0, 65537, 458786, 0, 65537, 458787, 0, 65537, 458788, 0, 65538, 589815, 0, 65536, 589816, 0, 65537, 589817, 0, 65537, 589818, 0, 65537, 589819, 0, 65537, 589820, 0, 65537, 589821, 0, 65537, 589822, 0, 65537, 589823, 0, 65537, 524288, 0, 65537, 524289, 0, 65537, 524290, 0, 65537, 524291, 0, 65537, 524292, 0, 65537, 524293, 0, 65537, 524294, 0, 65537, 524295, 0, 65537, 524296, 0, 65537, 524297, 0, 65537, 524298, 0, 65537, 524299, 0, 65537, 524300, 0, 65537, 524301, 0, 65537, 524302, 0, 65537, 524303, 0, 65537, 524304, 0, 65537, 524305, 0, 65537, 524306, 0, 65537, 524307, 0, 65537, 524308, 0, 65537, 524309, 0, 65537, 524310, 0, 65537, 524311, 0, 65537, 524312, 0, 65537, 524313, 0, 65537, 524314, 0, 65537, 524315, 0, 65537, 524316, 0, 65537, 524317, 0, 65537, 524318, 0, 65537, 524319, 0, 65537, 524320, 0, 65537, 524321, 0, 65537, 524322, 0, 65537, 524323, 0, 65537, 524324, 0, 65538, 655351, 0, 65536, 655352, 0, 65537, 655353, 0, 65537, 655354, 0, 65537, 655355, 0, 65537, 655356, 0, 65537, 655357, 0, 65537, 655358, 0, 65537, 655359, 0, 65537, 589824, 0, 65537, 589825, 0, 65537, 589826, 0, 65537, 589827, 0, 65537, 589828, 0, 65537, 589829, 0, 65537, 589830, 0, 65537, 589831, 0, 65537, 589832, 0, 65537, 589833, 0, 65537, 589834, 0, 65537, 589835, 0, 65537, 589836, 0, 65537, 589837, 0, 65537, 589838, 0, 65537, 589839, 0, 65537, 589840, 0, 65537, 589841, 0, 65537, 589842, 0, 65537, 589843, 0, 65537, 589844, 0, 65537, 589845, 0, 65537, 589846, 0, 65537, 589847, 0, 65537, 589848, 0, 65537, 589849, 0, 65537, 589850, 0, 65537, 589851, 0, 65537, 589852, 0, 65537, 589853, 0, 65537, 589854, 0, 65537, 589855, 0, 65537, 589856, 0, 65537, 589857, 0, 65537, 589858, 0, 65537, 589859, 0, 65537, 589860, 0, 65538, 720887, 0, 65536, 720888, 0, 65537, 720889, 0, 65537, 720890, 0, 65537, 720891, 0, 65537, 720892, 0, 65537, 720893, 0, 65537, 720894, 0, 65537, 720895, 0, 65537, 655360, 0, 65537, 655361, 0, 65537, 655362, 0, 65537, 655363, 0, 65537, 655364, 0, 65537, 655365, 0, 65537, 655366, 0, 65537, 655367, 0, 65537, 655368, 0, 65537, 655369, 0, 65537, 655370, 0, 65537, 655371, 0, 65537, 655372, 0, 65537, 655373, 0, 65537, 655374, 0, 65537, 655375, 0, 65537, 655376, 0, 65537, 655377, 0, 65537, 655378, 0, 65537, 655379, 0, 65537, 655380, 0, 65537, 655381, 0, 65537, 655382, 0, 65537, 655383, 0, 65537, 655384, 0, 65537, 655385, 0, 65537, 655386, 0, 65537, 655387, 0, 65537, 655388, 0, 65537, 655389, 0, 65537, 655390, 0, 65537, 655391, 0, 65537, 655392, 0, 65537, 655393, 0, 65537, 655394, 0, 65537, 655395, 0, 65537, 655396, 0, 65538, 786423, 0, 65536, 786424, 0, 65537, 786425, 0, 65537, 786426, 0, 65537, 786427, 0, 65537, 786428, 0, 65537, 786429, 0, 65537, 786430, 0, 65537, 786431, 0, 65537, 720896, 0, 65537, 720897, 0, 65537, 720898, 0, 65537, 720899, 0, 65537, 720900, 0, 65537, 720901, 0, 65537, 720902, 0, 65537, 720903, 0, 65537, 720904, 0, 65537, 720905, 0, 65537, 720906, 0, 65537, 720907, 0, 65537, 720908, 0, 65537, 720909, 0, 65537, 720910, 0, 65537, 720911, 0, 65537, 720912, 0, 65537, 720913, 0, 65537, 720914, 0, 65537, 720915, 0, 65537, 720916, 0, 65537, 720917, 0, 65537, 720918, 0, 65537, 720919, 0, 65537, 720920, 0, 65537, 720921, 0, 65537, 720922, 0, 65537, 720923, 0, 65537, 720924, 0, 65537, 720925, 0, 65537, 720926, 0, 65537, 720927, 0, 65537, 720928, 0, 65537, 720929, 0, 65537, 720930, 0, 65537, 720931, 0, 65537, 720932, 0, 65538, 851959, 0, 65536, 851960, 0, 65537, 851961, 0, 65537, 851962, 0, 65537, 851963, 0, 65537, 851964, 0, 65537, 851965, 0, 65537, 851966, 0, 65537, 851967, 0, 65537, 786432, 0, 65537, 786433, 0, 65537, 786434, 0, 65537, 786435, 0, 65537, 786436, 0, 65537, 786437, 0, 65537, 786438, 0, 65537, 786439, 0, 65537, 786440, 0, 65537, 786441, 0, 65537, 786442, 0, 65537, 786443, 0, 65537, 786444, 0, 65537, 786445, 0, 65537, 786446, 0, 65537, 786447, 0, 65537, 786448, 0, 65537, 786449, 0, 65537, 786450, 0, 65537, 786451, 0, 65537, 786452, 0, 65537, 786453, 0, 65537, 786454, 0, 65537, 786455, 0, 65537, 786456, 0, 65537, 786457, 0, 65537, 786458, 0, 65537, 786459, 0, 65537, 786460, 0, 65537, 786461, 0, 65537, 786462, 0, 65537, 786463, 0, 65537, 786464, 0, 65537, 786465, 0, 65537, 786466, 0, 65537, 786467, 0, 65537, 786468, 0, 65538, 917495, 0, 65536, 917496, 0, 65537, 917497, 0, 65537, 917498, 0, 65537, 917499, 0, 65537, 917500, 0, 65537, 917501, 0, 65537, 917502, 0, 65537, 917503, 0, 65537, 851968, 0, 65537, 851969, 0, 65537, 851970, 0, 65537, 851971, 0, 65537, 851972, 0, 65537, 851973, 0, 65537, 851974, 0, 65537, 851975, 0, 65537, 851976, 0, 65537, 851977, 0, 65537, 851978, 0, 65537, 851979, 0, 65537, 851980, 0, 65537, 851981, 0, 65537, 851982, 0, 65537, 851983, 0, 65537, 851984, 0, 65537, 851985, 0, 65537, 851986, 0, 65537, 851987, 0, 65537, 851988, 0, 65537, 851989, 0, 65537, 851990, 0, 65537, 851991, 0, 65537, 851992, 0, 65537, 851993, 0, 65537, 851994, 0, 65537, 851995, 0, 65537, 851996, 0, 65537, 851997, 0, 65537, 851998, 0, 65537, 851999, 0, 65537, 852000, 0, 65537, 852001, 0, 65537, 852002, 0, 65537, 852003, 0, 65537, 852004, 0, 65538, 983031, 0, 65536, 983032, 0, 65537, 983033, 0, 65537, 983034, 0, 65537, 983035, 0, 65537, 983036, 0, 65537, 983037, 0, 65537, 983038, 0, 65537, 983039, 0, 65537, 917504, 0, 65537, 917505, 0, 65537, 917506, 0, 65537, 917507, 0, 65537, 917508, 0, 65537, 917509, 0, 65537, 917510, 0, 65537, 917511, 0, 65537, 917512, 0, 65537, 917513, 0, 65537, 917514, 0, 65537, 917515, 0, 65537, 917516, 0, 65537, 917517, 0, 65537, 917518, 0, 65537, 917519, 0, 65537, 917520, 0, 65537, 917521, 0, 65537, 917522, 0, 65537, 917523, 0, 65537, 917524, 0, 65537, 917525, 0, 65537, 917526, 0, 65537, 917527, 0, 65537, 917528, 0, 65537, 917529, 0, 65537, 917530, 0, 65537, 917531, 0, 65537, 917532, 0, 65537, 917533, 0, 65537, 917534, 0, 65537, 917535, 0, 65537, 917536, 0, 65537, 917537, 0, 65537, 917538, 0, 65537, 917539, 0, 65537, 917540, 0, 65538, 1048567, 0, 65536, 1048568, 0, 65537, 1048569, 0, 65537, 1048570, 0, 65537, 1048571, 0, 65537, 1048572, 0, 65537, 1048573, 0, 65537, 1048574, 0, 65537, 1048575, 0, 65537, 983040, 0, 65537, 983041, 0, 65537, 983042, 0, 65537, 983043, 0, 65537, 983044, 0, 65537, 983045, 0, 65537, 983046, 0, 65537, 983047, 0, 65537, 983048, 0, 65537, 983049, 0, 65537, 983050, 0, 65537, 983051, 0, 65537, 983052, 0, 65537, 983053, 0, 65537, 983054, 0, 65537, 983055, 0, 65537, 983056, 0, 65537, 983057, 0, 65537, 983058, 0, 65537, 983059, 0, 65537, 983060, 0, 65537, 983061, 0, 65537, 983062, 0, 65537, 983063, 0, 65537, 983064, 0, 65537, 983065, 0, 65537, 983066, 0, 65537, 983067, 0, 65537, 983068, 0, 65537, 983069, 0, 65537, 983070, 0, 65537, 983071, 0, 65537, 983072, 0, 65537, 983073, 0, 65537, 983074, 0, 65537, 983075, 0, 65537, 983076, 0, 65538, 1114103, 0, 65536, 1114104, 0, 65537, 1114105, 0, 65537, 1114106, 0, 65537, 1114107, 0, 65537, 1114108, 0, 65537, 1114109, 0, 65537, 1114110, 0, 65537, 1114111, 0, 65537, 1048576, 0, 65537, 1048577, 0, 65537, 1048578, 0, 65537, 1048579, 0, 65537, 1048580, 0, 65537, 1048581, 0, 65537, 1048582, 0, 65537, 1048583, 0, 65537, 1048584, 0, 65537, 1048585, 0, 65537, 1048586, 0, 65537, 1048587, 0, 65537, 1048588, 0, 65537, 1048589, 0, 65537, 1048590, 0, 65537, 1048591, 0, 65537, 1048592, 0, 65537, 1048593, 0, 65537, 1048594, 0, 65537, 1048595, 0, 65537, 1048596, 0, 65537, 1048597, 0, 65537, 1048598, 0, 65537, 1048599, 0, 65537, 1048600, 0, 65537, 1048601, 0, 65537, 1048602, 0, 65537, 1048603, 0, 65537, 1048604, 0, 65537, 1048605, 0, 65537, 1048606, 0, 65537, 1048607, 0, 65537, 1048608, 0, 65537, 1048609, 0, 65537, 1048610, 0, 65537, 1048611, 0, 65537, 1048612, 0, 65538, 1179639, 0, 131072, 1179640, 0, 131073, 1179641, 0, 131073, 1179642, 0, 131073, 1179643, 0, 131073, 1179644, 0, 131073, 1179645, 0, 131073, 1179646, 0, 131073, 1179647, 0, 131073, 1114112, 0, 131073, 1114113, 0, 131073, 1114114, 0, 131073, 1114115, 0, 131073, 1114116, 0, 131073, 1114117, 0, 131073, 1114118, 0, 131073, 1114119, 0, 131073, 1114120, 0, 131073, 1114121, 0, 131073, 1114122, 0, 131073, 1114123, 0, 131073, 1114124, 0, 131073, 1114125, 0, 131073, 1114126, 0, 131073, 1114127, 0, 131073, 1114128, 0, 131073, 1114129, 0, 131073, 1114130, 0, 131073, 1114131, 0, 131073, 1114132, 0, 131073, 1114133, 0, 131073, 1114134, 0, 131073, 1114135, 0, 131073, 1114136, 0, 131073, 1114137, 0, 131073, 1114138, 0, 131073, 1114139, 0, 131073, 1114140, 0, 131073, 1114141, 0, 131073, 1114142, 0, 131073, 1114143, 0, 131073, 1114144, 0, 131073, 1114145, 0, 131073, 1114146, 0, 131073, 1114147, 0, 131073, 1114148, 0, 131074 ) @@ -29,38 +34,59 @@ tile_data = PoolIntArray( -393225, 0, 0, -393224, 0, 1, -393223, 0, 1, -393222, light_mask = 8 tile_set = ExtResource( 8 ) cell_size = Vector2( 16, 16 ) +collision_mask = 0 format = 1 -tile_data = PoolIntArray( -196589, 0, 0, -196588, 0, 1, -196587, 0, 1, -196586, 0, 1, -196585, 0, 1, -196584, 0, 1, -196583, 0, 2, -131055, 0, 0, -131054, 0, 1, -131053, 0, 131078, -131052, 0, 65541, -131051, 0, 131073, -131050, 0, 131073, -131049, 0, 131073, -131048, 0, 65542, -131047, 0, 65538, -65524, 0, 0, -65523, 0, 1, -65522, 0, 1, -65521, 0, 1, -65520, 0, 1, -65519, 0, 65545, -65518, 0, 131073, -65517, 0, 131073, -65516, 0, 131074, -65512, 0, 65536, -65511, 0, 65538, 12, 0, 65536, 13, 0, 65541, 14, 0, 131073, 15, 0, 131073, 16, 0, 131073, 17, 0, 131074, 24, 0, 65536, 25, 0, 65538, 65548, 0, 65536, 65549, 0, 65538, 65560, 0, 65536, 65561, 0, 65538, 131078, 0, 0, 131079, 0, 1, 131080, 0, 1, 131081, 0, 1, 131082, 0, 1, 131083, 0, 1, 131084, 0, 131078, 131085, 0, 65538, 131089, 0, 3, 131096, 0, 65536, 131097, 0, 65538, 196614, 0, 65536, 196615, 0, 65541, 196616, 0, 131073, 196617, 0, 131073, 196618, 0, 131073, 196619, 0, 131073, 196620, 0, 65542, 196621, 0, 65538, 196625, 0, 65539, 196632, 0, 65536, 196633, 0, 65538, 262150, 0, 65536, 262151, 0, 65538, 262156, 0, 65536, 262157, 0, 65538, 262161, 0, 65539, 262163, 0, 0, 262164, 0, 2, 262167, 0, 0, 262168, 0, 131078, 262169, 0, 65538, 327686, 0, 65536, 327687, 0, 65538, 327692, 0, 65536, 327693, 0, 65538, 327696, 0, 4, 327697, 0, 196615, 327699, 0, 131072, 327700, 0, 65543, 327703, 0, 65536, 327704, 0, 65541, 327705, 0, 131074, 393222, 0, 65536, 393223, 0, 65538, 393228, 0, 65536, 393229, 0, 131077, 393230, 0, 5, 393231, 0, 196609, 393232, 0, 196615, 393236, 0, 131075, 393239, 0, 65536, 393240, 0, 65538, 458758, 0, 131072, 458759, 0, 131074, 458761, 0, 0, 458762, 0, 2, 458764, 0, 131072, 458765, 0, 131073, 458766, 0, 131074, 458774, 0, 0, 458775, 0, 131078, 458776, 0, 65538, 524297, 0, 65536, 524298, 0, 65538, 524309, 0, 0, 524310, 0, 131078, 524311, 0, 65541, 524312, 0, 131074, 589833, 0, 65536, 589834, 0, 131077, 589835, 0, 1, 589836, 0, 1, 589837, 0, 1, 589838, 0, 1, 589839, 0, 1, 589840, 0, 1, 589841, 0, 1, 589842, 0, 1, 589843, 0, 1, 589844, 0, 1, 589845, 0, 131078, 589846, 0, 65541, 589847, 0, 131074, 655369, 0, 131072, 655370, 0, 131073, 655371, 0, 131073, 655372, 0, 131073, 655373, 0, 131073, 655374, 0, 131073, 655375, 0, 131073, 655376, 0, 131073, 655377, 0, 131073, 655378, 0, 131073, 655379, 0, 131073, 655380, 0, 131073, 655381, 0, 131073, 655382, 0, 131074 ) +tile_data = PoolIntArray( -196589, 0, 0, -196588, 0, 1, -196587, 0, 1, -196586, 0, 1, -196585, 0, 1, -196584, 0, 1, -196583, 0, 2, -131055, 0, 0, -131054, 0, 1, -131053, 0, 131078, -131052, 0, 65541, -131051, 0, 131073, -131050, 0, 131073, -131049, 0, 131073, -131048, 0, 65542, -131047, 0, 65538, -65524, 0, 0, -65523, 0, 1, -65522, 0, 1, -65521, 0, 1, -65520, 0, 1, -65519, 0, 65545, -65518, 0, 131073, -65517, 0, 131073, -65516, 0, 131074, -65512, 0, 65536, -65511, 0, 65538, 12, 0, 65536, 13, 0, 65541, 14, 0, 131073, 15, 0, 131073, 16, 0, 131073, 17, 0, 131074, 24, 0, 65536, 25, 0, 65538, 65548, 0, 65536, 65549, 0, 65538, 65560, 0, 65536, 65561, 0, 65538, 131078, 0, 0, 131079, 0, 1, 131080, 0, 1, 131081, 0, 1, 131082, 0, 1, 131083, 0, 1, 131084, 0, 131078, 131085, 0, 65538, 131089, 0, 3, 131096, 0, 65536, 131097, 0, 65538, 196614, 0, 65536, 196615, 0, 65541, 196616, 0, 131073, 196617, 0, 131073, 196618, 0, 131073, 196619, 0, 131073, 196620, 0, 65542, 196621, 0, 65538, 196625, 0, 65539, 196632, 0, 65536, 196633, 0, 65538, 262150, 0, 65536, 262151, 0, 65538, 262156, 0, 65536, 262157, 0, 65538, 262161, 0, 65539, 262163, 0, 0, 262164, 0, 2, 262167, 0, 0, 262168, 0, 131078, 262169, 0, 65538, 327686, 0, 65536, 327687, 0, 65538, 327692, 0, 65536, 327693, 0, 65538, 327696, 0, 4, 327697, 0, 196615, 327699, 0, 131072, 327700, 0, 65543, 327703, 0, 65536, 327704, 0, 65541, 327705, 0, 131074, 393222, 0, 65536, 393223, 0, 65538, 393228, 0, 65536, 393229, 0, 131077, 393230, 0, 5, 393231, 0, 196609, 393232, 0, 196615, 393236, 0, 131075, 393239, 0, 65536, 393240, 0, 65538, 458755, 0, 0, 458756, 0, 2, 458758, 0, 65536, 458759, 0, 65538, 458761, 0, 0, 458762, 0, 2, 458764, 0, 131072, 458765, 0, 131073, 458766, 0, 131074, 458774, 0, 0, 458775, 0, 131078, 458776, 0, 65538, 524291, 0, 65536, 524292, 0, 65538, 524294, 0, 65536, 524295, 0, 65538, 524297, 0, 65536, 524298, 0, 65538, 524309, 0, 0, 524310, 0, 131078, 524311, 0, 65541, 524312, 0, 131074, 589827, 0, 65536, 589828, 0, 65538, 589830, 0, 131072, 589831, 0, 131074, 589833, 0, 65536, 589834, 0, 131077, 589835, 0, 1, 589836, 0, 1, 589837, 0, 1, 589838, 0, 1, 589839, 0, 1, 589840, 0, 1, 589841, 0, 1, 589842, 0, 1, 589843, 0, 1, 589844, 0, 1, 589845, 0, 131078, 589846, 0, 65541, 589847, 0, 131074, 655363, 0, 65536, 655364, 0, 65538, 655369, 0, 65536, 655370, 0, 65541, 655371, 0, 131073, 655372, 0, 131073, 655373, 0, 131073, 655374, 0, 131073, 655375, 0, 131073, 655376, 0, 131073, 655377, 0, 131073, 655378, 0, 131073, 655379, 0, 131073, 655380, 0, 131073, 655381, 0, 131073, 655382, 0, 131074, 720899, 0, 65536, 720900, 0, 65538, 720905, 0, 65536, 720906, 0, 65538, 786435, 0, 65536, 786436, 0, 65538, 786441, 0, 65536, 786442, 0, 65538, 851971, 0, 65536, 851972, 0, 65538, 851977, 0, 65536, 851978, 0, 65538, 917507, 0, 65536, 917508, 0, 65538, 917513, 0, 65536, 917514, 0, 65538, 983043, 0, 65536, 983044, 0, 131077, 983045, 0, 1, 983046, 0, 1, 983047, 0, 1, 983048, 0, 1, 983049, 0, 131078, 983050, 0, 65538, 1048579, 0, 131072, 1048580, 0, 131073, 1048581, 0, 131073, 1048582, 0, 131073, 1048583, 0, 131073, 1048584, 0, 131073, 1048585, 0, 131073, 1048586, 0, 131074 ) [node name="YSort" type="YSort" parent="."] [node name="Player" parent="YSort" instance=ExtResource( 1 )] position = Vector2( 160, 90 ) -[node name="Camera2D" type="Camera2D" parent="YSort/Player"] +[node name="Camera" type="Camera2D" parent="YSort/Player"] current = true -[node name="Light2D" type="Light2D" parent="YSort/Player"] +[node name="Light" type="Light2D" parent="YSort/Player"] texture = ExtResource( 5 ) range_item_cull_mask = 15 shadow_enabled = true [node name="Enemies" type="YSort" parent="YSort"] -[node name="Glowing Ghost 0" parent="YSort/Enemies" instance=ExtResource( 9 )] +[node name="Chasing Glowing Ghost 0" parent="YSort/Enemies" instance=ExtResource( 9 )] position = Vector2( 281, 109 ) -[node name="Glowing Ghost 1" parent="YSort/Enemies" instance=ExtResource( 9 )] +[node name="Chasing Glowing Ghost 1" parent="YSort/Enemies" instance=ExtResource( 9 )] position = Vector2( 328.5, 20 ) +[node name="Creepy Glowing Ghost 00" parent="YSort/Enemies" instance=ExtResource( 13 )] +position = Vector2( 310, 40 ) + +[node name="Creepy Glowing Ghost 01" parent="YSort/Enemies" instance=ExtResource( 13 )] +position = Vector2( 90, 175 ) + +[node name="Creepy Glowing Ghost 02" parent="YSort/Enemies" instance=ExtResource( 13 )] +position = Vector2( 100, 220 ) + +[node name="Interactables" type="Node2D" parent="."] + +[node name="Silver Key Pickup" parent="Interactables" instance=ExtResource( 11 )] +position = Vector2( 240, 80 ) + +[node name="Silver Barrier" parent="Interactables" instance=ExtResource( 12 )] +position = Vector2( 136, 120 ) +alignment = "H" + [node name="Traps" type="Node2D" parent="."] [node name="Spawn Trap" parent="Traps" instance=ExtResource( 10 )] position = Vector2( 256, 16 ) -enemy_path = "res://Enemies/Glowing Ghost.tscn" +enemy_path = "res://Enemies/Chasing Glowing Ghost.tscn" relative_x_tiles = -1 relative_y_tiles = 2 +[node name="Projectiles" type="Node2D" parent="."] + [node name="HUD" parent="." instance=ExtResource( 3 )] [node name="Pause Screen" parent="." instance=ExtResource( 7 )] diff --git a/Levels/Objects/Door.tscn b/Levels/Objects/Door.tscn index 9451da5..2850f12 100644 --- a/Levels/Objects/Door.tscn +++ b/Levels/Objects/Door.tscn @@ -1,7 +1,8 @@ [gd_scene load_steps=3 format=2] -[ext_resource path="res://Sprites/Assets/DoorOpen.png" type="Texture" id=1] -[ext_resource path="res://Sprites/Assets/DoorClosed.png" type="Texture" id=2] + +[ext_resource path="res://Sprites/Levels/Objects/Gate_Open.png" type="Texture" id=1] +[ext_resource path="res://Sprites/Levels/Objects/Gate_Closed.png" type="Texture" id=2] [node name="Door" type="Sprite"] @@ -10,4 +11,4 @@ texture = ExtResource( 2 ) [node name="doorOpened" type="Sprite" parent="."] visible = false -texture = ExtResource( 1 ) \ No newline at end of file +texture = ExtResource( 1 ) diff --git a/Levels/Traps/Spawn Trap.gd b/Levels/Traps/Spawn Trap.gd index 7e356e7..2fb1afe 100644 --- a/Levels/Traps/Spawn Trap.gd +++ b/Levels/Traps/Spawn Trap.gd @@ -5,14 +5,15 @@ export var relative_x_tiles: int export var relative_y_tiles: int -func _on_spawn_trap_area_entered(_area: Area2D) -> void: - set_deferred('monitoring', false) - $Tile.set_deferred('disabled', true) +func _on_spawn_trap_body_entered(body: Node) -> void: + if body.is_in_group('player'): + set_deferred('monitoring', false) - var enemy: KinematicBody2D = load(enemy_path).instance() - enemy.position.x = position.x + (relative_x_tiles * 16 + 8) - enemy.position.y = position.y + (relative_y_tiles * 16 + 8) + var enemy: KinematicBody2D = load(enemy_path).instance() + enemy.position.x = position.x + (relative_x_tiles * 16 + 8) + enemy.position.y = position.y + (relative_y_tiles * 16 + 8) - var enemies: YSort = get_tree().get_current_scene().get_node('YSort/Enemies') - enemies.call_deferred('add_child', enemy) + var enemies: YSort = get_tree().get_current_scene().get_node('YSort/Enemies') + enemies.call_deferred('add_child', enemy) + call_deferred('queue_free') return diff --git a/Levels/Traps/Spawn Trap.tscn b/Levels/Traps/Spawn Trap.tscn index 6c2cc07..1aaac32 100644 --- a/Levels/Traps/Spawn Trap.tscn +++ b/Levels/Traps/Spawn Trap.tscn @@ -14,7 +14,8 @@ monitorable = false script = ExtResource( 1 ) [node name="Tile" type="CollisionShape2D" parent="."] +light_mask = 0 position = Vector2( 8, 8 ) shape = SubResource( 1 ) -[connection signal="area_entered" from="." to="." method="_on_spawn_trap_area_entered"] +[connection signal="body_entered" from="." to="." method="_on_spawn_trap_body_entered"] diff --git a/Main.gd b/Main.gd index 4358798..ab9412d 100644 --- a/Main.gd +++ b/Main.gd @@ -65,10 +65,8 @@ func level_select_menu_option(option: String) -> void: new_game(level) return - func free_connected_node(node: Node, connected_function: String) -> void: node.disconnect('complete', self, connected_function) - remove_child(node) node.queue_free() return diff --git a/Player/Inventory.gd b/Player/Inventory.gd index 807e50d..dbc4434 100644 --- a/Player/Inventory.gd +++ b/Player/Inventory.gd @@ -3,43 +3,38 @@ extends Node signal update_currency(amount) var __currency: int - -var __weapons: Array -var __accessories: Array -var __categories: Dictionary +var __items: Array func _ready() -> void: - self.__currency = 100 - - self.__weapons = [] - self.__accessories = [] - self.__categories = { - 'Weapon': self.__weapons, - 'Accessory': self.__accessories} + __currency = 100 + __items = [] return func get_currency() -> int: - return self.__currency + return __currency func add_currency(amount: int) -> void: - self.__currency += amount - emit_signal('update_currency', self.__currency) + __currency += amount + emit_signal('update_currency', __currency) return -func add(item) -> void: - self.__categories[item.type].append(item) +func contains(item: String) -> bool: + if item in __items: + return true + return false + + +func add(item: String) -> void: + __items.append(item) return -func discard(item) -> void: - var index: int = 0 - for itr in self.__categories[item.type]: - if itr.equals(item): - self.__categories[item.type].remove(index) - break - index += 1 +func remove(item: String) -> void: + for k in range(len(__items)): + if __items[k] == item: + __items.remove(k) return diff --git a/Player/Player.gd b/Player/Player.gd index 174273f..c0aa974 100644 --- a/Player/Player.gd +++ b/Player/Player.gd @@ -7,10 +7,17 @@ export var FRICTION: int = 1000 const HEALTH_SLICES: Array = [0, 18, 35, 50, 65, 82, 100] var health_index: int = 6 +var l5_gems: int = 0 + var hud: CanvasLayer = null var velocity: Vector2 = Vector2.ZERO +func _ready() -> void: + set_weapon_position(Vector2(1, 0)) + return + + func _physics_process(delta: float) -> void: var input_vector: Vector2 = Vector2.ZERO @@ -23,6 +30,7 @@ func _physics_process(delta: float) -> void: if input_vector != Vector2.ZERO: $AnimationTree.set('parameters/Idle/blend_position', input_vector) velocity = velocity.move_toward(input_vector * MAX_SPEED, ACCELERATION * delta) + set_weapon_position(input_vector) else: velocity = velocity.move_toward(Vector2.ZERO, FRICTION * delta) @@ -40,31 +48,84 @@ func load_hud(node: CanvasLayer) -> void: return +func set_weapon_position(pos: Vector2) -> void: + # facing left + if pos[0] < 0: + $Sword.rotation_degrees = -90 + $Javelin.rotation_degrees = -90 + + # facing right + elif pos[0] > 0: + $Sword.rotation_degrees = 90 + $Javelin.rotation_degrees = 90 + + # facing up + elif pos[1] < 0: + $Sword.rotation_degrees = 0 + $Javelin.rotation_degrees = 0 + + # facing down + elif pos[1] > 0: + $Sword.rotation_degrees = 180 + $Javelin.rotation_degrees = 180 + return + + func add_currency(amount: int) -> void: $Inventory.add_currency(amount) return +func has_item(item: String) -> bool: + return $Inventory.contains(item) + + +func add_item(item: String) -> void: + $Inventory.add(item) + return + + +func remove_item(item: String) -> void: + $Inventory.remove(item) + return + + func _on_Inventory_update_currency(amount: int) -> void: hud.update_currency(amount) return -func _on_Hitbox_body_entered(body: Node) -> void: - if not 'enemies' in body.get_groups(): +func _on_hitbox_area_entered(area: Area2D) -> void: + var hit: int = 0 + + if area.is_in_group('enemy_hitbox_1') or area.is_in_group('enemy_projectile_1'): + hit = 1 + elif area.is_in_group('enemy_hitbox_2') or area.is_in_group('enemy_projectile_2'): + hit = 2 + elif area.is_in_group('enemy_hitbox_3') or area.is_in_group('enemy_projectile_3'): + hit = 3 + else: return if health_index != 0: - health_index -= 1 + health_index -= hit + if health_index < 0: + health_index = 0 hud.update_health(HEALTH_SLICES[health_index]) return func _input(event: InputEvent) -> void: + if event.is_action_pressed('player_attack'): + if hud.weapon == 'sword': + $'Sword/Sword Animation'.play('swing') + elif hud.weapon == 'javelin': + $'Javelin/Javelin Animation'.play('swing') + if event.is_action_pressed('screenshot'): var img: Image = get_viewport().get_texture().get_data() - yield(get_tree(), "idle_frame") - yield(get_tree(), "idle_frame") + yield(get_tree(), 'idle_frame') + yield(get_tree(), 'idle_frame') img.flip_y() diff --git a/Player/Player.tscn b/Player/Player.tscn index 53142d7..2fb00bc 100644 --- a/Player/Player.tscn +++ b/Player/Player.tscn @@ -1,15 +1,22 @@ -[gd_scene load_steps=20 format=2] +[gd_scene load_steps=22 format=2] [ext_resource path="res://Player/Player.gd" type="Script" id=1] [ext_resource path="res://Sprites/Player/Player.png" type="Texture" id=2] [ext_resource path="res://Sprites/Player/Player_Down.png" type="Texture" id=3] [ext_resource path="res://Sprites/Player/Player_Up.png" type="Texture" id=4] [ext_resource path="res://Player/Inventory.tscn" type="PackedScene" id=5] +[ext_resource path="res://Player/Weapons/Javelin.tscn" type="PackedScene" id=6] +[ext_resource path="res://Player/Weapons/Sword.tscn" type="PackedScene" id=7] [sub_resource type="SpriteFrames" id=1] animations = [ { "frames": [ ExtResource( 2 ) ], "loop": false, +"name": "look_left", +"speed": 5.0 +}, { +"frames": [ ExtResource( 2 ) ], +"loop": false, "name": "look_right", "speed": 5.0 }, { @@ -175,24 +182,30 @@ graph_offset = Vector2( -3591.37, -302.6 ) [sub_resource type="AnimationNodeStateMachinePlayback" id=14] -[node name="Player" type="KinematicBody2D"] +[node name="Player" type="KinematicBody2D" groups=[ +"player", +]] collision_layer = 2 script = ExtResource( 1 ) [node name="Sprite" type="AnimatedSprite" parent="."] light_mask = 2 +z_index = 1 frames = SubResource( 1 ) animation = "look_right" -offset = Vector2( 0, -5 ) +offset = Vector2( 0, -4 ) [node name="Collision" type="CollisionShape2D" parent="."] visible = false rotation = 1.5708 shape = SubResource( 2 ) -[node name="Hitbox" type="Area2D" parent="."] +[node name="Hitbox" type="Area2D" parent="." groups=[ +"player_hitbox", +]] +input_pickable = false collision_layer = 2 -collision_mask = 2 +collision_mask = 4 [node name="CollisionShape2D" type="CollisionShape2D" parent="Hitbox"] visible = false @@ -215,5 +228,11 @@ parameters/Idle/blend_position = Vector2( 0.0760697, 0 ) [node name="Inventory" parent="." instance=ExtResource( 5 )] -[connection signal="body_entered" from="Hitbox" to="." method="_on_Hitbox_body_entered"] +[node name="Sword" parent="." instance=ExtResource( 7 )] +position = Vector2( 0, -4 ) + +[node name="Javelin" parent="." instance=ExtResource( 6 )] +position = Vector2( 0, -4 ) + +[connection signal="area_entered" from="Hitbox" to="." method="_on_hitbox_area_entered"] [connection signal="update_currency" from="Inventory" to="." method="_on_Inventory_update_currency"] diff --git a/Player/Weapons/Javelin.tscn b/Player/Weapons/Javelin.tscn new file mode 100644 index 0000000..913dced --- /dev/null +++ b/Player/Weapons/Javelin.tscn @@ -0,0 +1,85 @@ +[gd_scene load_steps=4 format=2] + +[ext_resource path="res://Sprites/Items/Javelin.png" type="Texture" id=1] + +[sub_resource type="RectangleShape2D" id=3] +extents = Vector2( 4, 9 ) + +[sub_resource type="Animation" id=2] +resource_name = "swing" +length = 0.4 +tracks/0/type = "value" +tracks/0/path = NodePath("Animation:position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 0.2 ), +"transitions": PoolRealArray( 1, 1 ), +"update": 1, +"values": [ Vector2( 0, 0 ), Vector2( 0, -7 ) ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("Animation:position") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0.01, 0.19 ), +"transitions": PoolRealArray( 1, 1 ), +"update": 0, +"values": [ Vector2( 0, 0 ), Vector2( 0, -7 ) ] +} +tracks/2/type = "value" +tracks/2/path = NodePath("Animation/Javelin:visible") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/keys = { +"times": PoolRealArray( 0, 0.01, 0.4 ), +"transitions": PoolRealArray( 1, 1, 1 ), +"update": 1, +"values": [ false, true, false ] +} +tracks/3/type = "value" +tracks/3/path = NodePath("Animation/CollisionShape2D:disabled") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/keys = { +"times": PoolRealArray( 0.01, 0.2 ), +"transitions": PoolRealArray( 1, 1 ), +"update": 1, +"values": [ false, true ] +} + +[node name="Javelin" type="Node2D"] +light_mask = 0 + +[node name="Animation" type="Area2D" parent="." groups=["player_weapon_2"]] +light_mask = 0 +collision_layer = 0 +collision_mask = 4 +input_pickable = false +monitoring = false + +[node name="Javelin" type="Sprite" parent="Animation"] +visible = false +light_mask = 8 +position = Vector2( 0, -10 ) +rotation = 0.785398 +texture = ExtResource( 1 ) + +[node name="CollisionShape2D" type="CollisionShape2D" parent="Animation"] +visible = false +light_mask = 0 +position = Vector2( 0, -13 ) +shape = SubResource( 3 ) +disabled = true + +[node name="Javelin Animation" type="AnimationPlayer" parent="."] +anims/swing = SubResource( 2 ) diff --git a/Player/Weapons/Sword.tscn b/Player/Weapons/Sword.tscn new file mode 100644 index 0000000..d44fca8 --- /dev/null +++ b/Player/Weapons/Sword.tscn @@ -0,0 +1,103 @@ +[gd_scene load_steps=5 format=2] + +[ext_resource path="res://Sprites/Items/Sword.png" type="Texture" id=1] + +[sub_resource type="RectangleShape2D" id=6] +extents = Vector2( 2.5, 10 ) + +[sub_resource type="Animation" id=7] +length = 0.001 +tracks/0/type = "value" +tracks/0/path = NodePath("Animation:rotation_degrees") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ -45.0 ] +} + +[sub_resource type="Animation" id=5] +resource_name = "swing" +length = 0.2 +tracks/0/type = "value" +tracks/0/path = NodePath("Animation/Sword:visible") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 0.01, 0.2 ), +"transitions": PoolRealArray( 1, 1, 1 ), +"update": 1, +"values": [ false, true, false ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("Animation:rotation_degrees") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0, 0.2 ), +"transitions": PoolRealArray( 1, 1 ), +"update": 1, +"values": [ -45.0, 45.0 ] +} +tracks/2/type = "value" +tracks/2/path = NodePath("Animation:rotation_degrees") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/keys = { +"times": PoolRealArray( 0.01, 0.19 ), +"transitions": PoolRealArray( 1, 1 ), +"update": 0, +"values": [ -45.0, 45.0 ] +} +tracks/3/type = "value" +tracks/3/path = NodePath("Animation/CollisionShape2D:disabled") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/keys = { +"times": PoolRealArray( 0.01, 0.2 ), +"transitions": PoolRealArray( 1, 1 ), +"update": 1, +"values": [ false, true ] +} + +[node name="Sword" type="Node2D"] +light_mask = 0 + +[node name="Animation" type="Area2D" parent="." groups=["player_weapon_1"]] +light_mask = 0 +rotation = -0.785398 +collision_layer = 0 +collision_mask = 4 +input_pickable = false +monitoring = false + +[node name="Sword" type="Sprite" parent="Animation"] +visible = false +light_mask = 8 +rotation = 0.785398 +scale = Vector2( 0.7, 0.7 ) +texture = ExtResource( 1 ) +offset = Vector2( -16, -16 ) + +[node name="CollisionShape2D" type="CollisionShape2D" parent="Animation"] +visible = false +light_mask = 0 +position = Vector2( 0, -14 ) +shape = SubResource( 6 ) +disabled = true + +[node name="Sword Animation" type="AnimationPlayer" parent="."] +anims/RESET = SubResource( 7 ) +anims/swing = SubResource( 5 ) diff --git a/Resources/Level_4_Tileset.tres b/Resources/Level_4_Tileset.tres new file mode 100644 index 0000000..11c8ccf --- /dev/null +++ b/Resources/Level_4_Tileset.tres @@ -0,0 +1,281 @@ +[gd_resource type="TileSet" load_steps=2 format=2] + +[ext_resource path="res://Sprites/Levels/Tilesets/Level_4_Tileset.png" type="Texture" id=1] + +[resource] +0/name = "tileset_mk_16_16_nature_tileset_godot.png 0" +0/texture = ExtResource( 1 ) +0/tex_offset = Vector2( 0, 0 ) +0/modulate = Color( 1, 1, 1, 1 ) +0/region = Rect2( 0, 0, 960, 400 ) +0/tile_mode = 1 +0/autotile/bitmask_mode = 1 +0/autotile/bitmask_flags = [ Vector2( 1, 0 ), 432, Vector2( 1, 1 ), 438, Vector2( 1, 2 ), 54, Vector2( 1, 3 ), 48, Vector2( 2, 0 ), 504, Vector2( 2, 1 ), 511, Vector2( 2, 2 ), 63, Vector2( 2, 3 ), 56, Vector2( 3, 0 ), 216, Vector2( 3, 1 ), 219, Vector2( 3, 2 ), 27, Vector2( 3, 3 ), 24, Vector2( 4, 0 ), 144, Vector2( 4, 1 ), 146, Vector2( 4, 2 ), 18, Vector2( 4, 3 ), 16, Vector2( 5, 0 ), 176, Vector2( 5, 1 ), 182, Vector2( 5, 2 ), 434, Vector2( 5, 3 ), 50, Vector2( 5, 4 ), 178, Vector2( 6, 0 ), 248, Vector2( 6, 1 ), 255, Vector2( 6, 2 ), 507, Vector2( 6, 3 ), 59, Vector2( 6, 4 ), 251, Vector2( 7, 0 ), 440, Vector2( 7, 1 ), 447, Vector2( 7, 2 ), 510, Vector2( 7, 3 ), 62, Vector2( 7, 4 ), 446, Vector2( 8, 0 ), 152, Vector2( 8, 1 ), 155, Vector2( 8, 2 ), 218, Vector2( 8, 3 ), 26, Vector2( 8, 4 ), 154, Vector2( 9, 0 ), 184, Vector2( 9, 1 ), 191, Vector2( 9, 2 ), 506, Vector2( 9, 3 ), 58, Vector2( 9, 4 ), 186, Vector2( 10, 0 ), 443, Vector2( 10, 1 ), 254, Vector2( 10, 2 ), 442, Vector2( 10, 3 ), 190, Vector2( 11, 2 ), 250, Vector2( 11, 3 ), 187 ] +0/autotile/icon_coordinate = Vector2( 2, 1 ) +0/autotile/tile_size = Vector2( 16, 16 ) +0/autotile/spacing = 0 +0/autotile/occluder_map = [ ] +0/autotile/navpoly_map = [ ] +0/autotile/priority_map = [ ] +0/autotile/z_index_map = [ ] +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 +1/name = "tileset_mk_16_16_nature_tileset_godot.png 1" +1/texture = ExtResource( 1 ) +1/tex_offset = Vector2( 0, 0 ) +1/modulate = Color( 1, 1, 1, 1 ) +1/region = Rect2( 0, 0, 960, 400 ) +1/tile_mode = 1 +1/autotile/bitmask_mode = 1 +1/autotile/bitmask_flags = [ Vector2( 1, 6 ), 432, Vector2( 1, 7 ), 438, Vector2( 1, 8 ), 54, Vector2( 1, 9 ), 48, Vector2( 2, 6 ), 504, Vector2( 2, 7 ), 511, Vector2( 2, 8 ), 63, Vector2( 2, 9 ), 56, Vector2( 3, 6 ), 216, Vector2( 3, 7 ), 219, Vector2( 3, 8 ), 27, Vector2( 3, 9 ), 24, Vector2( 4, 6 ), 144, Vector2( 4, 7 ), 146, Vector2( 4, 8 ), 18, Vector2( 4, 9 ), 16, Vector2( 5, 6 ), 176, Vector2( 5, 7 ), 182, Vector2( 5, 8 ), 434, Vector2( 5, 9 ), 50, Vector2( 5, 10 ), 178, Vector2( 6, 6 ), 248, Vector2( 6, 7 ), 255, Vector2( 6, 8 ), 507, Vector2( 6, 9 ), 59, Vector2( 6, 10 ), 251, Vector2( 7, 6 ), 440, Vector2( 7, 7 ), 447, Vector2( 7, 8 ), 510, Vector2( 7, 9 ), 62, Vector2( 7, 10 ), 446, Vector2( 8, 6 ), 152, Vector2( 8, 7 ), 155, Vector2( 8, 8 ), 218, Vector2( 8, 9 ), 26, Vector2( 8, 10 ), 154, Vector2( 9, 6 ), 184, Vector2( 9, 7 ), 191, Vector2( 9, 8 ), 506, Vector2( 9, 9 ), 58, Vector2( 9, 10 ), 186, Vector2( 10, 6 ), 443, Vector2( 10, 7 ), 254, Vector2( 10, 8 ), 442, Vector2( 10, 9 ), 190, Vector2( 11, 8 ), 250, Vector2( 11, 9 ), 187 ] +1/autotile/icon_coordinate = Vector2( 2, 7 ) +1/autotile/tile_size = Vector2( 16, 16 ) +1/autotile/spacing = 0 +1/autotile/occluder_map = [ ] +1/autotile/navpoly_map = [ ] +1/autotile/priority_map = [ ] +1/autotile/z_index_map = [ ] +1/occluder_offset = Vector2( 0, 0 ) +1/navigation_offset = Vector2( 0, 0 ) +1/shape_offset = Vector2( 0, 0 ) +1/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +1/shape_one_way = false +1/shape_one_way_margin = 0.0 +1/shapes = [ ] +1/z_index = 0 +2/name = "tileset_mk_16_16_nature_tileset_godot.png 2" +2/texture = ExtResource( 1 ) +2/tex_offset = Vector2( 0, 0 ) +2/modulate = Color( 1, 1, 1, 1 ) +2/region = Rect2( 0, 0, 960, 400 ) +2/tile_mode = 1 +2/autotile/bitmask_mode = 1 +2/autotile/bitmask_flags = [ Vector2( 13, 0 ), 432, Vector2( 13, 1 ), 438, Vector2( 13, 2 ), 54, Vector2( 13, 3 ), 48, Vector2( 14, 0 ), 504, Vector2( 14, 1 ), 511, Vector2( 14, 2 ), 63, Vector2( 14, 3 ), 56, Vector2( 15, 0 ), 216, Vector2( 15, 1 ), 219, Vector2( 15, 2 ), 27, Vector2( 15, 3 ), 24, Vector2( 16, 0 ), 144, Vector2( 16, 1 ), 146, Vector2( 16, 2 ), 18, Vector2( 16, 3 ), 16, Vector2( 17, 0 ), 176, Vector2( 17, 1 ), 182, Vector2( 17, 2 ), 434, Vector2( 17, 3 ), 50, Vector2( 17, 4 ), 178, Vector2( 18, 0 ), 248, Vector2( 18, 1 ), 255, Vector2( 18, 2 ), 507, Vector2( 18, 3 ), 59, Vector2( 18, 4 ), 251, Vector2( 19, 0 ), 440, Vector2( 19, 1 ), 447, Vector2( 19, 2 ), 510, Vector2( 19, 3 ), 62, Vector2( 19, 4 ), 446, Vector2( 20, 0 ), 152, Vector2( 20, 1 ), 155, Vector2( 20, 2 ), 218, Vector2( 20, 3 ), 26, Vector2( 20, 4 ), 154, Vector2( 21, 0 ), 184, Vector2( 21, 1 ), 191, Vector2( 21, 2 ), 506, Vector2( 21, 3 ), 58, Vector2( 21, 4 ), 186, Vector2( 22, 0 ), 443, Vector2( 22, 1 ), 254, Vector2( 22, 2 ), 442, Vector2( 22, 3 ), 190, Vector2( 23, 2 ), 250, Vector2( 23, 3 ), 187 ] +2/autotile/icon_coordinate = Vector2( 14, 1 ) +2/autotile/tile_size = Vector2( 16, 16 ) +2/autotile/spacing = 0 +2/autotile/occluder_map = [ ] +2/autotile/navpoly_map = [ ] +2/autotile/priority_map = [ ] +2/autotile/z_index_map = [ ] +2/occluder_offset = Vector2( 0, 0 ) +2/navigation_offset = Vector2( 0, 0 ) +2/shape_offset = Vector2( 0, 0 ) +2/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +2/shape_one_way = false +2/shape_one_way_margin = 0.0 +2/shapes = [ ] +2/z_index = 0 +3/name = "tileset_mk_16_16_nature_tileset_godot.png 3" +3/texture = ExtResource( 1 ) +3/tex_offset = Vector2( 0, 0 ) +3/modulate = Color( 1, 1, 1, 1 ) +3/region = Rect2( 0, 0, 960, 400 ) +3/tile_mode = 1 +3/autotile/bitmask_mode = 1 +3/autotile/bitmask_flags = [ Vector2( 13, 6 ), 432, Vector2( 13, 7 ), 438, Vector2( 13, 8 ), 54, Vector2( 13, 9 ), 48, Vector2( 14, 6 ), 504, Vector2( 14, 7 ), 511, Vector2( 14, 8 ), 63, Vector2( 14, 9 ), 56, Vector2( 15, 6 ), 216, Vector2( 15, 7 ), 219, Vector2( 15, 8 ), 27, Vector2( 15, 9 ), 24, Vector2( 16, 6 ), 144, Vector2( 16, 7 ), 146, Vector2( 16, 8 ), 18, Vector2( 16, 9 ), 16, Vector2( 17, 6 ), 176, Vector2( 17, 7 ), 182, Vector2( 17, 8 ), 434, Vector2( 17, 9 ), 50, Vector2( 17, 10 ), 178, Vector2( 18, 6 ), 248, Vector2( 18, 7 ), 255, Vector2( 18, 8 ), 507, Vector2( 18, 9 ), 59, Vector2( 18, 10 ), 251, Vector2( 19, 6 ), 440, Vector2( 19, 7 ), 447, Vector2( 19, 8 ), 510, Vector2( 19, 9 ), 62, Vector2( 19, 10 ), 446, Vector2( 20, 6 ), 152, Vector2( 20, 7 ), 155, Vector2( 20, 8 ), 218, Vector2( 20, 9 ), 26, Vector2( 20, 10 ), 154, Vector2( 21, 6 ), 184, Vector2( 21, 7 ), 191, Vector2( 21, 8 ), 506, Vector2( 21, 9 ), 58, Vector2( 21, 10 ), 186, Vector2( 22, 6 ), 443, Vector2( 22, 7 ), 254, Vector2( 22, 8 ), 442, Vector2( 22, 9 ), 190, Vector2( 23, 8 ), 250, Vector2( 23, 9 ), 187 ] +3/autotile/icon_coordinate = Vector2( 14, 7 ) +3/autotile/tile_size = Vector2( 16, 16 ) +3/autotile/spacing = 0 +3/autotile/occluder_map = [ ] +3/autotile/navpoly_map = [ ] +3/autotile/priority_map = [ ] +3/autotile/z_index_map = [ ] +3/occluder_offset = Vector2( 0, 0 ) +3/navigation_offset = Vector2( 0, 0 ) +3/shape_offset = Vector2( 0, 0 ) +3/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +3/shape_one_way = false +3/shape_one_way_margin = 0.0 +3/shapes = [ ] +3/z_index = 0 +4/name = "tileset_mk_16_16_nature_tileset_godot.png 4" +4/texture = ExtResource( 1 ) +4/tex_offset = Vector2( 0, 0 ) +4/modulate = Color( 1, 1, 1, 1 ) +4/region = Rect2( 0, 0, 960, 400 ) +4/tile_mode = 1 +4/autotile/bitmask_mode = 1 +4/autotile/bitmask_flags = [ Vector2( 0, 14 ), 432, Vector2( 0, 15 ), 438, Vector2( 0, 16 ), 54, Vector2( 0, 17 ), 48, Vector2( 1, 14 ), 504, Vector2( 1, 15 ), 511, Vector2( 1, 16 ), 63, Vector2( 1, 17 ), 56, Vector2( 2, 14 ), 216, Vector2( 2, 15 ), 219, Vector2( 2, 16 ), 27, Vector2( 2, 17 ), 24, Vector2( 3, 14 ), 144, Vector2( 3, 15 ), 146, Vector2( 3, 16 ), 18, Vector2( 3, 17 ), 16, Vector2( 4, 14 ), 176, Vector2( 4, 15 ), 182, Vector2( 4, 16 ), 434, Vector2( 4, 17 ), 50, Vector2( 4, 18 ), 178, Vector2( 5, 14 ), 248, Vector2( 5, 15 ), 255, Vector2( 5, 16 ), 507, Vector2( 5, 17 ), 59, Vector2( 5, 18 ), 251, Vector2( 6, 14 ), 440, Vector2( 6, 15 ), 447, Vector2( 6, 16 ), 510, Vector2( 6, 17 ), 62, Vector2( 6, 18 ), 446, Vector2( 7, 14 ), 152, Vector2( 7, 15 ), 155, Vector2( 7, 16 ), 218, Vector2( 7, 17 ), 26, Vector2( 7, 18 ), 154, Vector2( 8, 14 ), 184, Vector2( 8, 15 ), 191, Vector2( 8, 16 ), 506, Vector2( 8, 17 ), 58, Vector2( 8, 18 ), 186, Vector2( 9, 14 ), 443, Vector2( 9, 15 ), 254, Vector2( 9, 16 ), 442, Vector2( 9, 17 ), 190, Vector2( 10, 16 ), 250, Vector2( 10, 17 ), 187 ] +4/autotile/icon_coordinate = Vector2( 1, 15 ) +4/autotile/tile_size = Vector2( 16, 16 ) +4/autotile/spacing = 0 +4/autotile/occluder_map = [ ] +4/autotile/navpoly_map = [ ] +4/autotile/priority_map = [ ] +4/autotile/z_index_map = [ ] +4/occluder_offset = Vector2( 0, 0 ) +4/navigation_offset = Vector2( 0, 0 ) +4/shape_offset = Vector2( 0, 0 ) +4/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +4/shape_one_way = false +4/shape_one_way_margin = 0.0 +4/shapes = [ ] +4/z_index = 0 +5/name = "tileset_mk_16_16_nature_tileset_godot.png 5" +5/texture = ExtResource( 1 ) +5/tex_offset = Vector2( 0, 0 ) +5/modulate = Color( 1, 1, 1, 1 ) +5/region = Rect2( 0, 0, 960, 400 ) +5/tile_mode = 1 +5/autotile/bitmask_mode = 1 +5/autotile/bitmask_flags = [ Vector2( 0, 20 ), 432, Vector2( 0, 21 ), 438, Vector2( 0, 22 ), 54, Vector2( 0, 23 ), 48, Vector2( 1, 20 ), 504, Vector2( 1, 21 ), 511, Vector2( 1, 22 ), 63, Vector2( 1, 23 ), 56, Vector2( 2, 20 ), 216, Vector2( 2, 21 ), 219, Vector2( 2, 22 ), 27, Vector2( 2, 23 ), 24, Vector2( 3, 20 ), 144, Vector2( 3, 21 ), 146, Vector2( 3, 22 ), 18, Vector2( 3, 23 ), 16, Vector2( 4, 20 ), 176, Vector2( 4, 21 ), 182, Vector2( 4, 22 ), 434, Vector2( 4, 23 ), 50, Vector2( 4, 24 ), 178, Vector2( 5, 20 ), 248, Vector2( 5, 21 ), 255, Vector2( 5, 22 ), 507, Vector2( 5, 23 ), 59, Vector2( 5, 24 ), 251, Vector2( 6, 20 ), 440, Vector2( 6, 21 ), 447, Vector2( 6, 22 ), 510, Vector2( 6, 23 ), 62, Vector2( 6, 24 ), 446, Vector2( 7, 20 ), 152, Vector2( 7, 21 ), 155, Vector2( 7, 22 ), 218, Vector2( 7, 23 ), 26, Vector2( 7, 24 ), 154, Vector2( 8, 20 ), 184, Vector2( 8, 21 ), 191, Vector2( 8, 22 ), 506, Vector2( 8, 23 ), 58, Vector2( 8, 24 ), 186, Vector2( 9, 20 ), 443, Vector2( 9, 21 ), 254, Vector2( 9, 22 ), 442, Vector2( 9, 23 ), 190, Vector2( 10, 22 ), 250, Vector2( 10, 23 ), 187 ] +5/autotile/icon_coordinate = Vector2( 1, 21 ) +5/autotile/tile_size = Vector2( 16, 16 ) +5/autotile/spacing = 0 +5/autotile/occluder_map = [ ] +5/autotile/navpoly_map = [ ] +5/autotile/priority_map = [ ] +5/autotile/z_index_map = [ ] +5/occluder_offset = Vector2( 0, 0 ) +5/navigation_offset = Vector2( 0, 0 ) +5/shape_offset = Vector2( 0, 0 ) +5/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +5/shape_one_way = false +5/shape_one_way_margin = 0.0 +5/shapes = [ ] +5/z_index = 0 +6/name = "tileset_mk_16_16_nature_tileset_godot.png 6" +6/texture = ExtResource( 1 ) +6/tex_offset = Vector2( 0, 0 ) +6/modulate = Color( 1, 1, 1, 1 ) +6/region = Rect2( 0, 0, 960, 400 ) +6/tile_mode = 1 +6/autotile/bitmask_mode = 1 +6/autotile/bitmask_flags = [ Vector2( 25, 0 ), 432, Vector2( 25, 1 ), 438, Vector2( 25, 2 ), 54, Vector2( 25, 3 ), 48, Vector2( 26, 0 ), 504, Vector2( 26, 1 ), 511, Vector2( 26, 2 ), 63, Vector2( 26, 3 ), 56, Vector2( 27, 0 ), 216, Vector2( 27, 1 ), 219, Vector2( 27, 2 ), 27, Vector2( 27, 3 ), 24, Vector2( 28, 0 ), 144, Vector2( 28, 1 ), 146, Vector2( 28, 2 ), 18, Vector2( 28, 3 ), 16, Vector2( 29, 0 ), 176, Vector2( 29, 1 ), 182, Vector2( 29, 2 ), 434, Vector2( 29, 3 ), 50, Vector2( 29, 4 ), 178, Vector2( 30, 0 ), 248, Vector2( 30, 1 ), 255, Vector2( 30, 2 ), 507, Vector2( 30, 3 ), 59, Vector2( 30, 4 ), 251, Vector2( 31, 0 ), 440, Vector2( 31, 1 ), 447, Vector2( 31, 2 ), 510, Vector2( 31, 3 ), 62, Vector2( 31, 4 ), 446, Vector2( 32, 0 ), 152, Vector2( 32, 1 ), 155, Vector2( 32, 2 ), 218, Vector2( 32, 3 ), 26, Vector2( 32, 4 ), 154, Vector2( 33, 0 ), 184, Vector2( 33, 1 ), 191, Vector2( 33, 2 ), 506, Vector2( 33, 3 ), 58, Vector2( 33, 4 ), 186, Vector2( 34, 0 ), 443, Vector2( 34, 1 ), 254, Vector2( 34, 2 ), 442, Vector2( 34, 3 ), 190, Vector2( 35, 2 ), 250, Vector2( 35, 3 ), 187 ] +6/autotile/icon_coordinate = Vector2( 26, 1 ) +6/autotile/tile_size = Vector2( 16, 16 ) +6/autotile/spacing = 0 +6/autotile/occluder_map = [ ] +6/autotile/navpoly_map = [ ] +6/autotile/priority_map = [ ] +6/autotile/z_index_map = [ ] +6/occluder_offset = Vector2( 0, 0 ) +6/navigation_offset = Vector2( 0, 0 ) +6/shape_offset = Vector2( 0, 0 ) +6/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +6/shape_one_way = false +6/shape_one_way_margin = 0.0 +6/shapes = [ ] +6/z_index = 0 +7/name = "tileset_mk_16_16_nature_tileset_godot.png 7" +7/texture = ExtResource( 1 ) +7/tex_offset = Vector2( 0, 0 ) +7/modulate = Color( 1, 1, 1, 1 ) +7/region = Rect2( 0, 0, 960, 400 ) +7/tile_mode = 1 +7/autotile/bitmask_mode = 1 +7/autotile/bitmask_flags = [ Vector2( 25, 6 ), 432, Vector2( 25, 7 ), 438, Vector2( 25, 8 ), 54, Vector2( 25, 9 ), 48, Vector2( 26, 6 ), 504, Vector2( 26, 7 ), 511, Vector2( 26, 8 ), 63, Vector2( 26, 9 ), 56, Vector2( 27, 6 ), 216, Vector2( 27, 7 ), 219, Vector2( 27, 8 ), 27, Vector2( 27, 9 ), 24, Vector2( 28, 6 ), 144, Vector2( 28, 7 ), 146, Vector2( 28, 8 ), 18, Vector2( 28, 9 ), 16, Vector2( 29, 6 ), 176, Vector2( 29, 7 ), 182, Vector2( 29, 8 ), 434, Vector2( 29, 9 ), 50, Vector2( 29, 10 ), 178, Vector2( 30, 6 ), 248, Vector2( 30, 7 ), 255, Vector2( 30, 8 ), 507, Vector2( 30, 9 ), 59, Vector2( 30, 10 ), 251, Vector2( 31, 6 ), 440, Vector2( 31, 7 ), 447, Vector2( 31, 8 ), 510, Vector2( 31, 9 ), 62, Vector2( 31, 10 ), 446, Vector2( 32, 6 ), 152, Vector2( 32, 7 ), 155, Vector2( 32, 8 ), 218, Vector2( 32, 9 ), 26, Vector2( 32, 10 ), 154, Vector2( 33, 6 ), 184, Vector2( 33, 7 ), 191, Vector2( 33, 8 ), 506, Vector2( 33, 9 ), 58, Vector2( 33, 10 ), 186, Vector2( 34, 6 ), 443, Vector2( 34, 7 ), 254, Vector2( 34, 8 ), 442, Vector2( 34, 9 ), 190, Vector2( 35, 8 ), 250, Vector2( 35, 9 ), 187 ] +7/autotile/icon_coordinate = Vector2( 26, 7 ) +7/autotile/tile_size = Vector2( 16, 16 ) +7/autotile/spacing = 0 +7/autotile/occluder_map = [ ] +7/autotile/navpoly_map = [ ] +7/autotile/priority_map = [ ] +7/autotile/z_index_map = [ ] +7/occluder_offset = Vector2( 0, 0 ) +7/navigation_offset = Vector2( 0, 0 ) +7/shape_offset = Vector2( 0, 0 ) +7/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +7/shape_one_way = false +7/shape_one_way_margin = 0.0 +7/shapes = [ ] +7/z_index = 0 +8/name = "tileset_mk_16_16_nature_tileset_godot.png 8" +8/texture = ExtResource( 1 ) +8/tex_offset = Vector2( 0, 0 ) +8/modulate = Color( 1, 1, 1, 1 ) +8/region = Rect2( 0, 0, 960, 400 ) +8/tile_mode = 1 +8/autotile/bitmask_mode = 1 +8/autotile/bitmask_flags = [ Vector2( 37, 0 ), 432, Vector2( 37, 1 ), 438, Vector2( 37, 2 ), 54, Vector2( 37, 3 ), 48, Vector2( 38, 0 ), 504, Vector2( 38, 1 ), 511, Vector2( 38, 2 ), 63, Vector2( 38, 3 ), 56, Vector2( 39, 0 ), 216, Vector2( 39, 1 ), 219, Vector2( 39, 2 ), 27, Vector2( 39, 3 ), 24, Vector2( 40, 0 ), 144, Vector2( 40, 1 ), 146, Vector2( 40, 2 ), 18, Vector2( 40, 3 ), 16, Vector2( 41, 0 ), 176, Vector2( 41, 1 ), 182, Vector2( 41, 2 ), 434, Vector2( 41, 3 ), 50, Vector2( 41, 4 ), 178, Vector2( 42, 0 ), 248, Vector2( 42, 1 ), 255, Vector2( 42, 2 ), 507, Vector2( 42, 3 ), 59, Vector2( 42, 4 ), 251, Vector2( 43, 0 ), 440, Vector2( 43, 1 ), 447, Vector2( 43, 2 ), 510, Vector2( 43, 3 ), 62, Vector2( 43, 4 ), 446, Vector2( 44, 0 ), 152, Vector2( 44, 1 ), 155, Vector2( 44, 2 ), 218, Vector2( 44, 3 ), 26, Vector2( 44, 4 ), 154, Vector2( 45, 0 ), 184, Vector2( 45, 1 ), 191, Vector2( 45, 2 ), 506, Vector2( 45, 3 ), 58, Vector2( 45, 4 ), 186, Vector2( 46, 0 ), 443, Vector2( 46, 1 ), 254, Vector2( 46, 2 ), 442, Vector2( 46, 3 ), 190, Vector2( 47, 2 ), 250, Vector2( 47, 3 ), 187 ] +8/autotile/icon_coordinate = Vector2( 38, 1 ) +8/autotile/tile_size = Vector2( 16, 16 ) +8/autotile/spacing = 0 +8/autotile/occluder_map = [ ] +8/autotile/navpoly_map = [ ] +8/autotile/priority_map = [ ] +8/autotile/z_index_map = [ ] +8/occluder_offset = Vector2( 0, 0 ) +8/navigation_offset = Vector2( 0, 0 ) +8/shape_offset = Vector2( 0, 0 ) +8/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +8/shape_one_way = false +8/shape_one_way_margin = 0.0 +8/shapes = [ ] +8/z_index = 0 +9/name = "tileset_mk_16_16_nature_tileset_godot.png 9" +9/texture = ExtResource( 1 ) +9/tex_offset = Vector2( 0, 0 ) +9/modulate = Color( 1, 1, 1, 1 ) +9/region = Rect2( 0, 0, 960, 400 ) +9/tile_mode = 1 +9/autotile/bitmask_mode = 1 +9/autotile/bitmask_flags = [ Vector2( 37, 6 ), 432, Vector2( 37, 7 ), 438, Vector2( 37, 8 ), 54, Vector2( 37, 9 ), 48, Vector2( 38, 6 ), 504, Vector2( 38, 7 ), 511, Vector2( 38, 8 ), 63, Vector2( 38, 9 ), 56, Vector2( 39, 6 ), 216, Vector2( 39, 7 ), 219, Vector2( 39, 8 ), 27, Vector2( 39, 9 ), 24, Vector2( 40, 6 ), 144, Vector2( 40, 7 ), 146, Vector2( 40, 8 ), 18, Vector2( 40, 9 ), 16, Vector2( 41, 6 ), 176, Vector2( 41, 7 ), 182, Vector2( 41, 8 ), 434, Vector2( 41, 9 ), 50, Vector2( 41, 10 ), 178, Vector2( 42, 6 ), 248, Vector2( 42, 7 ), 255, Vector2( 42, 8 ), 507, Vector2( 42, 9 ), 59, Vector2( 42, 10 ), 251, Vector2( 43, 6 ), 440, Vector2( 43, 7 ), 447, Vector2( 43, 8 ), 510, Vector2( 43, 9 ), 62, Vector2( 43, 10 ), 446, Vector2( 44, 6 ), 152, Vector2( 44, 7 ), 155, Vector2( 44, 8 ), 218, Vector2( 44, 9 ), 26, Vector2( 44, 10 ), 154, Vector2( 45, 6 ), 184, Vector2( 45, 7 ), 191, Vector2( 45, 8 ), 506, Vector2( 45, 9 ), 58, Vector2( 45, 10 ), 186, Vector2( 46, 6 ), 443, Vector2( 46, 7 ), 254, Vector2( 46, 8 ), 442, Vector2( 46, 9 ), 190, Vector2( 47, 8 ), 250, Vector2( 47, 9 ), 187 ] +9/autotile/icon_coordinate = Vector2( 38, 7 ) +9/autotile/tile_size = Vector2( 16, 16 ) +9/autotile/spacing = 0 +9/autotile/occluder_map = [ ] +9/autotile/navpoly_map = [ ] +9/autotile/priority_map = [ ] +9/autotile/z_index_map = [ ] +9/occluder_offset = Vector2( 0, 0 ) +9/navigation_offset = Vector2( 0, 0 ) +9/shape_offset = Vector2( 0, 0 ) +9/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +9/shape_one_way = false +9/shape_one_way_margin = 0.0 +9/shapes = [ ] +9/z_index = 0 +10/name = "tileset_mk_16_16_nature_tileset_godot.png 10" +10/texture = ExtResource( 1 ) +10/tex_offset = Vector2( 0, 0 ) +10/modulate = Color( 1, 1, 1, 1 ) +10/region = Rect2( 0, 0, 960, 400 ) +10/tile_mode = 1 +10/autotile/bitmask_mode = 1 +10/autotile/bitmask_flags = [ Vector2( 49, 0 ), 432, Vector2( 49, 1 ), 438, Vector2( 49, 2 ), 54, Vector2( 49, 3 ), 48, Vector2( 50, 0 ), 504, Vector2( 50, 1 ), 511, Vector2( 50, 2 ), 63, Vector2( 50, 3 ), 56, Vector2( 51, 0 ), 216, Vector2( 51, 1 ), 219, Vector2( 51, 2 ), 27, Vector2( 51, 3 ), 24, Vector2( 52, 0 ), 144, Vector2( 52, 1 ), 146, Vector2( 52, 2 ), 18, Vector2( 52, 3 ), 16, Vector2( 53, 0 ), 176, Vector2( 53, 1 ), 182, Vector2( 53, 2 ), 434, Vector2( 53, 3 ), 50, Vector2( 53, 4 ), 178, Vector2( 54, 0 ), 248, Vector2( 54, 1 ), 255, Vector2( 54, 2 ), 507, Vector2( 54, 3 ), 59, Vector2( 54, 4 ), 251, Vector2( 55, 0 ), 440, Vector2( 55, 1 ), 447, Vector2( 55, 2 ), 510, Vector2( 55, 3 ), 62, Vector2( 55, 4 ), 446, Vector2( 56, 0 ), 152, Vector2( 56, 1 ), 155, Vector2( 56, 2 ), 218, Vector2( 56, 3 ), 26, Vector2( 56, 4 ), 154, Vector2( 57, 0 ), 184, Vector2( 57, 1 ), 191, Vector2( 57, 2 ), 506, Vector2( 57, 3 ), 58, Vector2( 57, 4 ), 186, Vector2( 58, 0 ), 443, Vector2( 58, 1 ), 254, Vector2( 58, 2 ), 442, Vector2( 58, 3 ), 190, Vector2( 59, 2 ), 250, Vector2( 59, 3 ), 187 ] +10/autotile/icon_coordinate = Vector2( 50, 1 ) +10/autotile/tile_size = Vector2( 16, 16 ) +10/autotile/spacing = 0 +10/autotile/occluder_map = [ ] +10/autotile/navpoly_map = [ ] +10/autotile/priority_map = [ ] +10/autotile/z_index_map = [ ] +10/occluder_offset = Vector2( 0, 0 ) +10/navigation_offset = Vector2( 0, 0 ) +10/shape_offset = Vector2( 0, 0 ) +10/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +10/shape_one_way = false +10/shape_one_way_margin = 0.0 +10/shapes = [ ] +10/z_index = 0 +11/name = "tileset_mk_16_16_nature_tileset_godot.png 11" +11/texture = ExtResource( 1 ) +11/tex_offset = Vector2( 0, 0 ) +11/modulate = Color( 1, 1, 1, 1 ) +11/region = Rect2( 0, 0, 960, 400 ) +11/tile_mode = 1 +11/autotile/bitmask_mode = 1 +11/autotile/bitmask_flags = [ Vector2( 49, 6 ), 432, Vector2( 49, 7 ), 438, Vector2( 49, 8 ), 54, Vector2( 49, 9 ), 48, Vector2( 50, 6 ), 504, Vector2( 50, 7 ), 511, Vector2( 50, 8 ), 63, Vector2( 50, 9 ), 56, Vector2( 51, 6 ), 216, Vector2( 51, 7 ), 219, Vector2( 51, 8 ), 27, Vector2( 51, 9 ), 24, Vector2( 52, 6 ), 144, Vector2( 52, 7 ), 146, Vector2( 52, 8 ), 18, Vector2( 52, 9 ), 16, Vector2( 53, 6 ), 176, Vector2( 53, 7 ), 182, Vector2( 53, 8 ), 434, Vector2( 53, 9 ), 50, Vector2( 53, 10 ), 178, Vector2( 54, 6 ), 248, Vector2( 54, 7 ), 255, Vector2( 54, 8 ), 507, Vector2( 54, 9 ), 59, Vector2( 54, 10 ), 251, Vector2( 55, 6 ), 440, Vector2( 55, 7 ), 447, Vector2( 55, 8 ), 510, Vector2( 55, 9 ), 62, Vector2( 55, 10 ), 446, Vector2( 56, 6 ), 152, Vector2( 56, 7 ), 155, Vector2( 56, 8 ), 218, Vector2( 56, 9 ), 26, Vector2( 56, 10 ), 154, Vector2( 57, 6 ), 184, Vector2( 57, 7 ), 191, Vector2( 57, 8 ), 506, Vector2( 57, 9 ), 58, Vector2( 57, 10 ), 186, Vector2( 58, 6 ), 443, Vector2( 58, 7 ), 254, Vector2( 58, 8 ), 442, Vector2( 58, 9 ), 190, Vector2( 59, 8 ), 250, Vector2( 59, 9 ), 187 ] +11/autotile/icon_coordinate = Vector2( 50, 7 ) +11/autotile/tile_size = Vector2( 16, 16 ) +11/autotile/spacing = 0 +11/autotile/occluder_map = [ ] +11/autotile/navpoly_map = [ ] +11/autotile/priority_map = [ ] +11/autotile/z_index_map = [ ] +11/occluder_offset = Vector2( 0, 0 ) +11/navigation_offset = Vector2( 0, 0 ) +11/shape_offset = Vector2( 0, 0 ) +11/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +11/shape_one_way = false +11/shape_one_way_margin = 0.0 +11/shapes = [ ] +11/z_index = 0 diff --git a/Resources/Level_5_Enemy_Glowing_Ghost_Occluder.tres b/Resources/Level_5_Enemy_Glowing_Ghost_Occluder.tres index 625c140..2bef589 100644 --- a/Resources/Level_5_Enemy_Glowing_Ghost_Occluder.tres +++ b/Resources/Level_5_Enemy_Glowing_Ghost_Occluder.tres @@ -1,4 +1,4 @@ [gd_resource type="OccluderPolygon2D" format=2] [resource] -polygon = PoolVector2Array( -3, -1, 3, -1, 1.5, 1, -1.5, 1 ) +polygon = PoolVector2Array( -3, -0.5, 3, -0.5, 1.5, 1.5, -1.5, 1.5 ) diff --git a/Resources/Level_5_Floor_Tileset.tres b/Resources/Level_5_Floor_Tileset.tres index 6a44339..7fca9c3 100644 --- a/Resources/Level_5_Floor_Tileset.tres +++ b/Resources/Level_5_Floor_Tileset.tres @@ -1,6 +1,6 @@ [gd_resource type="TileSet" load_steps=2 format=2] -[ext_resource path="res://Sprites/Assets/Level_5_Floor_Tileset.png" type="Texture" id=1] +[ext_resource path="res://Sprites/Levels/Tilesets/Level_5_Floor_Tileset.png" type="Texture" id=1] [resource] 0/name = "void_level_base_tileset.png 0" diff --git a/Resources/Level_5_Walls_Tileset.tres b/Resources/Level_5_Walls_Tileset.tres index f645a98..36936e7 100644 --- a/Resources/Level_5_Walls_Tileset.tres +++ b/Resources/Level_5_Walls_Tileset.tres @@ -1,6 +1,6 @@ [gd_resource type="TileSet" load_steps=96 format=2] -[ext_resource path="res://Sprites/Assets/Level_5_Walls_Tileset.png" type="Texture" id=1] +[ext_resource path="res://Sprites/Levels/Tilesets/Level_5_Walls_Tileset.png" type="Texture" id=1] [sub_resource type="OccluderPolygon2D" id=1] polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) diff --git a/Resources/level4tileset.png b/Resources/level4tileset.png new file mode 100644 index 0000000..a1d4cee Binary files /dev/null and b/Resources/level4tileset.png differ diff --git a/Resources/level4tileset.png.import b/Resources/level4tileset.png.import new file mode 100644 index 0000000..10aa06b --- /dev/null +++ b/Resources/level4tileset.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/level4tileset.png-74825b1dfde7ff29ff29da6688c56486.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Resources/level4tileset.png" +dest_files=[ "res://.import/level4tileset.png-74825b1dfde7ff29ff29da6688c56486.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=false +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 +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Resources/level4tileset.tres b/Resources/level4tileset.tres new file mode 100644 index 0000000..d297804 --- /dev/null +++ b/Resources/level4tileset.tres @@ -0,0 +1,281 @@ +[gd_resource type="TileSet" load_steps=2 format=2] + +[ext_resource path="res://Resources/level4tileset.png" type="Texture" id=1] + +[resource] +0/name = "tileset_mk_16_16_nature_tileset_godot.png 0" +0/texture = ExtResource( 1 ) +0/tex_offset = Vector2( 0, 0 ) +0/modulate = Color( 1, 1, 1, 1 ) +0/region = Rect2( 0, 0, 960, 400 ) +0/tile_mode = 1 +0/autotile/bitmask_mode = 1 +0/autotile/bitmask_flags = [ Vector2( 1, 0 ), 432, Vector2( 1, 1 ), 438, Vector2( 1, 2 ), 54, Vector2( 1, 3 ), 48, Vector2( 2, 0 ), 504, Vector2( 2, 1 ), 511, Vector2( 2, 2 ), 63, Vector2( 2, 3 ), 56, Vector2( 3, 0 ), 216, Vector2( 3, 1 ), 219, Vector2( 3, 2 ), 27, Vector2( 3, 3 ), 24, Vector2( 4, 0 ), 144, Vector2( 4, 1 ), 146, Vector2( 4, 2 ), 18, Vector2( 4, 3 ), 16, Vector2( 5, 0 ), 176, Vector2( 5, 1 ), 182, Vector2( 5, 2 ), 434, Vector2( 5, 3 ), 50, Vector2( 5, 4 ), 178, Vector2( 6, 0 ), 248, Vector2( 6, 1 ), 255, Vector2( 6, 2 ), 507, Vector2( 6, 3 ), 59, Vector2( 6, 4 ), 251, Vector2( 7, 0 ), 440, Vector2( 7, 1 ), 447, Vector2( 7, 2 ), 510, Vector2( 7, 3 ), 62, Vector2( 7, 4 ), 446, Vector2( 8, 0 ), 152, Vector2( 8, 1 ), 155, Vector2( 8, 2 ), 218, Vector2( 8, 3 ), 26, Vector2( 8, 4 ), 154, Vector2( 9, 0 ), 184, Vector2( 9, 1 ), 191, Vector2( 9, 2 ), 506, Vector2( 9, 3 ), 58, Vector2( 9, 4 ), 186, Vector2( 10, 0 ), 443, Vector2( 10, 1 ), 254, Vector2( 10, 2 ), 442, Vector2( 10, 3 ), 190, Vector2( 11, 2 ), 250, Vector2( 11, 3 ), 187 ] +0/autotile/icon_coordinate = Vector2( 2, 1 ) +0/autotile/tile_size = Vector2( 16, 16 ) +0/autotile/spacing = 0 +0/autotile/occluder_map = [ ] +0/autotile/navpoly_map = [ ] +0/autotile/priority_map = [ ] +0/autotile/z_index_map = [ ] +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 +1/name = "tileset_mk_16_16_nature_tileset_godot.png 1" +1/texture = ExtResource( 1 ) +1/tex_offset = Vector2( 0, 0 ) +1/modulate = Color( 1, 1, 1, 1 ) +1/region = Rect2( 0, 0, 960, 400 ) +1/tile_mode = 1 +1/autotile/bitmask_mode = 1 +1/autotile/bitmask_flags = [ Vector2( 1, 6 ), 432, Vector2( 1, 7 ), 438, Vector2( 1, 8 ), 54, Vector2( 1, 9 ), 48, Vector2( 2, 6 ), 504, Vector2( 2, 7 ), 511, Vector2( 2, 8 ), 63, Vector2( 2, 9 ), 56, Vector2( 3, 6 ), 216, Vector2( 3, 7 ), 219, Vector2( 3, 8 ), 27, Vector2( 3, 9 ), 24, Vector2( 4, 6 ), 144, Vector2( 4, 7 ), 146, Vector2( 4, 8 ), 18, Vector2( 4, 9 ), 16, Vector2( 5, 6 ), 176, Vector2( 5, 7 ), 182, Vector2( 5, 8 ), 434, Vector2( 5, 9 ), 50, Vector2( 5, 10 ), 178, Vector2( 6, 6 ), 248, Vector2( 6, 7 ), 255, Vector2( 6, 8 ), 507, Vector2( 6, 9 ), 59, Vector2( 6, 10 ), 251, Vector2( 7, 6 ), 440, Vector2( 7, 7 ), 447, Vector2( 7, 8 ), 510, Vector2( 7, 9 ), 62, Vector2( 7, 10 ), 446, Vector2( 8, 6 ), 152, Vector2( 8, 7 ), 155, Vector2( 8, 8 ), 218, Vector2( 8, 9 ), 26, Vector2( 8, 10 ), 154, Vector2( 9, 6 ), 184, Vector2( 9, 7 ), 191, Vector2( 9, 8 ), 506, Vector2( 9, 9 ), 58, Vector2( 9, 10 ), 186, Vector2( 10, 6 ), 443, Vector2( 10, 7 ), 254, Vector2( 10, 8 ), 442, Vector2( 10, 9 ), 190, Vector2( 11, 8 ), 250, Vector2( 11, 9 ), 187 ] +1/autotile/icon_coordinate = Vector2( 2, 7 ) +1/autotile/tile_size = Vector2( 16, 16 ) +1/autotile/spacing = 0 +1/autotile/occluder_map = [ ] +1/autotile/navpoly_map = [ ] +1/autotile/priority_map = [ ] +1/autotile/z_index_map = [ ] +1/occluder_offset = Vector2( 0, 0 ) +1/navigation_offset = Vector2( 0, 0 ) +1/shape_offset = Vector2( 0, 0 ) +1/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +1/shape_one_way = false +1/shape_one_way_margin = 0.0 +1/shapes = [ ] +1/z_index = 0 +2/name = "tileset_mk_16_16_nature_tileset_godot.png 2" +2/texture = ExtResource( 1 ) +2/tex_offset = Vector2( 0, 0 ) +2/modulate = Color( 1, 1, 1, 1 ) +2/region = Rect2( 0, 0, 960, 400 ) +2/tile_mode = 1 +2/autotile/bitmask_mode = 1 +2/autotile/bitmask_flags = [ Vector2( 13, 0 ), 432, Vector2( 13, 1 ), 438, Vector2( 13, 2 ), 54, Vector2( 13, 3 ), 48, Vector2( 14, 0 ), 504, Vector2( 14, 1 ), 511, Vector2( 14, 2 ), 63, Vector2( 14, 3 ), 56, Vector2( 15, 0 ), 216, Vector2( 15, 1 ), 219, Vector2( 15, 2 ), 27, Vector2( 15, 3 ), 24, Vector2( 16, 0 ), 144, Vector2( 16, 1 ), 146, Vector2( 16, 2 ), 18, Vector2( 16, 3 ), 16, Vector2( 17, 0 ), 176, Vector2( 17, 1 ), 182, Vector2( 17, 2 ), 434, Vector2( 17, 3 ), 50, Vector2( 17, 4 ), 178, Vector2( 18, 0 ), 248, Vector2( 18, 1 ), 255, Vector2( 18, 2 ), 507, Vector2( 18, 3 ), 59, Vector2( 18, 4 ), 251, Vector2( 19, 0 ), 440, Vector2( 19, 1 ), 447, Vector2( 19, 2 ), 510, Vector2( 19, 3 ), 62, Vector2( 19, 4 ), 446, Vector2( 20, 0 ), 152, Vector2( 20, 1 ), 155, Vector2( 20, 2 ), 218, Vector2( 20, 3 ), 26, Vector2( 20, 4 ), 154, Vector2( 21, 0 ), 184, Vector2( 21, 1 ), 191, Vector2( 21, 2 ), 506, Vector2( 21, 3 ), 58, Vector2( 21, 4 ), 186, Vector2( 22, 0 ), 443, Vector2( 22, 1 ), 254, Vector2( 22, 2 ), 442, Vector2( 22, 3 ), 190, Vector2( 23, 2 ), 250, Vector2( 23, 3 ), 187 ] +2/autotile/icon_coordinate = Vector2( 14, 1 ) +2/autotile/tile_size = Vector2( 16, 16 ) +2/autotile/spacing = 0 +2/autotile/occluder_map = [ ] +2/autotile/navpoly_map = [ ] +2/autotile/priority_map = [ ] +2/autotile/z_index_map = [ ] +2/occluder_offset = Vector2( 0, 0 ) +2/navigation_offset = Vector2( 0, 0 ) +2/shape_offset = Vector2( 0, 0 ) +2/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +2/shape_one_way = false +2/shape_one_way_margin = 0.0 +2/shapes = [ ] +2/z_index = 0 +3/name = "tileset_mk_16_16_nature_tileset_godot.png 3" +3/texture = ExtResource( 1 ) +3/tex_offset = Vector2( 0, 0 ) +3/modulate = Color( 1, 1, 1, 1 ) +3/region = Rect2( 0, 0, 960, 400 ) +3/tile_mode = 1 +3/autotile/bitmask_mode = 1 +3/autotile/bitmask_flags = [ Vector2( 13, 6 ), 432, Vector2( 13, 7 ), 438, Vector2( 13, 8 ), 54, Vector2( 13, 9 ), 48, Vector2( 14, 6 ), 504, Vector2( 14, 7 ), 511, Vector2( 14, 8 ), 63, Vector2( 14, 9 ), 56, Vector2( 15, 6 ), 216, Vector2( 15, 7 ), 219, Vector2( 15, 8 ), 27, Vector2( 15, 9 ), 24, Vector2( 16, 6 ), 144, Vector2( 16, 7 ), 146, Vector2( 16, 8 ), 18, Vector2( 16, 9 ), 16, Vector2( 17, 6 ), 176, Vector2( 17, 7 ), 182, Vector2( 17, 8 ), 434, Vector2( 17, 9 ), 50, Vector2( 17, 10 ), 178, Vector2( 18, 6 ), 248, Vector2( 18, 7 ), 255, Vector2( 18, 8 ), 507, Vector2( 18, 9 ), 59, Vector2( 18, 10 ), 251, Vector2( 19, 6 ), 440, Vector2( 19, 7 ), 447, Vector2( 19, 8 ), 510, Vector2( 19, 9 ), 62, Vector2( 19, 10 ), 446, Vector2( 20, 6 ), 152, Vector2( 20, 7 ), 155, Vector2( 20, 8 ), 218, Vector2( 20, 9 ), 26, Vector2( 20, 10 ), 154, Vector2( 21, 6 ), 184, Vector2( 21, 7 ), 191, Vector2( 21, 8 ), 506, Vector2( 21, 9 ), 58, Vector2( 21, 10 ), 186, Vector2( 22, 6 ), 443, Vector2( 22, 7 ), 254, Vector2( 22, 8 ), 442, Vector2( 22, 9 ), 190, Vector2( 23, 8 ), 250, Vector2( 23, 9 ), 187 ] +3/autotile/icon_coordinate = Vector2( 14, 7 ) +3/autotile/tile_size = Vector2( 16, 16 ) +3/autotile/spacing = 0 +3/autotile/occluder_map = [ ] +3/autotile/navpoly_map = [ ] +3/autotile/priority_map = [ ] +3/autotile/z_index_map = [ ] +3/occluder_offset = Vector2( 0, 0 ) +3/navigation_offset = Vector2( 0, 0 ) +3/shape_offset = Vector2( 0, 0 ) +3/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +3/shape_one_way = false +3/shape_one_way_margin = 0.0 +3/shapes = [ ] +3/z_index = 0 +4/name = "tileset_mk_16_16_nature_tileset_godot.png 4" +4/texture = ExtResource( 1 ) +4/tex_offset = Vector2( 0, 0 ) +4/modulate = Color( 1, 1, 1, 1 ) +4/region = Rect2( 0, 0, 960, 400 ) +4/tile_mode = 1 +4/autotile/bitmask_mode = 1 +4/autotile/bitmask_flags = [ Vector2( 0, 14 ), 432, Vector2( 0, 15 ), 438, Vector2( 0, 16 ), 54, Vector2( 0, 17 ), 48, Vector2( 1, 14 ), 504, Vector2( 1, 15 ), 511, Vector2( 1, 16 ), 63, Vector2( 1, 17 ), 56, Vector2( 2, 14 ), 216, Vector2( 2, 15 ), 219, Vector2( 2, 16 ), 27, Vector2( 2, 17 ), 24, Vector2( 3, 14 ), 144, Vector2( 3, 15 ), 146, Vector2( 3, 16 ), 18, Vector2( 3, 17 ), 16, Vector2( 4, 14 ), 176, Vector2( 4, 15 ), 182, Vector2( 4, 16 ), 434, Vector2( 4, 17 ), 50, Vector2( 4, 18 ), 178, Vector2( 5, 14 ), 248, Vector2( 5, 15 ), 255, Vector2( 5, 16 ), 507, Vector2( 5, 17 ), 59, Vector2( 5, 18 ), 251, Vector2( 6, 14 ), 440, Vector2( 6, 15 ), 447, Vector2( 6, 16 ), 510, Vector2( 6, 17 ), 62, Vector2( 6, 18 ), 446, Vector2( 7, 14 ), 152, Vector2( 7, 15 ), 155, Vector2( 7, 16 ), 218, Vector2( 7, 17 ), 26, Vector2( 7, 18 ), 154, Vector2( 8, 14 ), 184, Vector2( 8, 15 ), 191, Vector2( 8, 16 ), 506, Vector2( 8, 17 ), 58, Vector2( 8, 18 ), 186, Vector2( 9, 14 ), 443, Vector2( 9, 15 ), 254, Vector2( 9, 16 ), 442, Vector2( 9, 17 ), 190, Vector2( 10, 16 ), 250, Vector2( 10, 17 ), 187 ] +4/autotile/icon_coordinate = Vector2( 1, 15 ) +4/autotile/tile_size = Vector2( 16, 16 ) +4/autotile/spacing = 0 +4/autotile/occluder_map = [ ] +4/autotile/navpoly_map = [ ] +4/autotile/priority_map = [ ] +4/autotile/z_index_map = [ ] +4/occluder_offset = Vector2( 0, 0 ) +4/navigation_offset = Vector2( 0, 0 ) +4/shape_offset = Vector2( 0, 0 ) +4/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +4/shape_one_way = false +4/shape_one_way_margin = 0.0 +4/shapes = [ ] +4/z_index = 0 +5/name = "tileset_mk_16_16_nature_tileset_godot.png 5" +5/texture = ExtResource( 1 ) +5/tex_offset = Vector2( 0, 0 ) +5/modulate = Color( 1, 1, 1, 1 ) +5/region = Rect2( 0, 0, 960, 400 ) +5/tile_mode = 1 +5/autotile/bitmask_mode = 1 +5/autotile/bitmask_flags = [ Vector2( 0, 20 ), 432, Vector2( 0, 21 ), 438, Vector2( 0, 22 ), 54, Vector2( 0, 23 ), 48, Vector2( 1, 20 ), 504, Vector2( 1, 21 ), 511, Vector2( 1, 22 ), 63, Vector2( 1, 23 ), 56, Vector2( 2, 20 ), 216, Vector2( 2, 21 ), 219, Vector2( 2, 22 ), 27, Vector2( 2, 23 ), 24, Vector2( 3, 20 ), 144, Vector2( 3, 21 ), 146, Vector2( 3, 22 ), 18, Vector2( 3, 23 ), 16, Vector2( 4, 20 ), 176, Vector2( 4, 21 ), 182, Vector2( 4, 22 ), 434, Vector2( 4, 23 ), 50, Vector2( 4, 24 ), 178, Vector2( 5, 20 ), 248, Vector2( 5, 21 ), 255, Vector2( 5, 22 ), 507, Vector2( 5, 23 ), 59, Vector2( 5, 24 ), 251, Vector2( 6, 20 ), 440, Vector2( 6, 21 ), 447, Vector2( 6, 22 ), 510, Vector2( 6, 23 ), 62, Vector2( 6, 24 ), 446, Vector2( 7, 20 ), 152, Vector2( 7, 21 ), 155, Vector2( 7, 22 ), 218, Vector2( 7, 23 ), 26, Vector2( 7, 24 ), 154, Vector2( 8, 20 ), 184, Vector2( 8, 21 ), 191, Vector2( 8, 22 ), 506, Vector2( 8, 23 ), 58, Vector2( 8, 24 ), 186, Vector2( 9, 20 ), 443, Vector2( 9, 21 ), 254, Vector2( 9, 22 ), 442, Vector2( 9, 23 ), 190, Vector2( 10, 22 ), 250, Vector2( 10, 23 ), 187 ] +5/autotile/icon_coordinate = Vector2( 1, 21 ) +5/autotile/tile_size = Vector2( 16, 16 ) +5/autotile/spacing = 0 +5/autotile/occluder_map = [ ] +5/autotile/navpoly_map = [ ] +5/autotile/priority_map = [ ] +5/autotile/z_index_map = [ ] +5/occluder_offset = Vector2( 0, 0 ) +5/navigation_offset = Vector2( 0, 0 ) +5/shape_offset = Vector2( 0, 0 ) +5/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +5/shape_one_way = false +5/shape_one_way_margin = 0.0 +5/shapes = [ ] +5/z_index = 0 +6/name = "tileset_mk_16_16_nature_tileset_godot.png 6" +6/texture = ExtResource( 1 ) +6/tex_offset = Vector2( 0, 0 ) +6/modulate = Color( 1, 1, 1, 1 ) +6/region = Rect2( 0, 0, 960, 400 ) +6/tile_mode = 1 +6/autotile/bitmask_mode = 1 +6/autotile/bitmask_flags = [ Vector2( 25, 0 ), 432, Vector2( 25, 1 ), 438, Vector2( 25, 2 ), 54, Vector2( 25, 3 ), 48, Vector2( 26, 0 ), 504, Vector2( 26, 1 ), 511, Vector2( 26, 2 ), 63, Vector2( 26, 3 ), 56, Vector2( 27, 0 ), 216, Vector2( 27, 1 ), 219, Vector2( 27, 2 ), 27, Vector2( 27, 3 ), 24, Vector2( 28, 0 ), 144, Vector2( 28, 1 ), 146, Vector2( 28, 2 ), 18, Vector2( 28, 3 ), 16, Vector2( 29, 0 ), 176, Vector2( 29, 1 ), 182, Vector2( 29, 2 ), 434, Vector2( 29, 3 ), 50, Vector2( 29, 4 ), 178, Vector2( 30, 0 ), 248, Vector2( 30, 1 ), 255, Vector2( 30, 2 ), 507, Vector2( 30, 3 ), 59, Vector2( 30, 4 ), 251, Vector2( 31, 0 ), 440, Vector2( 31, 1 ), 447, Vector2( 31, 2 ), 510, Vector2( 31, 3 ), 62, Vector2( 31, 4 ), 446, Vector2( 32, 0 ), 152, Vector2( 32, 1 ), 155, Vector2( 32, 2 ), 218, Vector2( 32, 3 ), 26, Vector2( 32, 4 ), 154, Vector2( 33, 0 ), 184, Vector2( 33, 1 ), 191, Vector2( 33, 2 ), 506, Vector2( 33, 3 ), 58, Vector2( 33, 4 ), 186, Vector2( 34, 0 ), 443, Vector2( 34, 1 ), 254, Vector2( 34, 2 ), 442, Vector2( 34, 3 ), 190, Vector2( 35, 2 ), 250, Vector2( 35, 3 ), 187 ] +6/autotile/icon_coordinate = Vector2( 26, 1 ) +6/autotile/tile_size = Vector2( 16, 16 ) +6/autotile/spacing = 0 +6/autotile/occluder_map = [ ] +6/autotile/navpoly_map = [ ] +6/autotile/priority_map = [ ] +6/autotile/z_index_map = [ ] +6/occluder_offset = Vector2( 0, 0 ) +6/navigation_offset = Vector2( 0, 0 ) +6/shape_offset = Vector2( 0, 0 ) +6/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +6/shape_one_way = false +6/shape_one_way_margin = 0.0 +6/shapes = [ ] +6/z_index = 0 +7/name = "tileset_mk_16_16_nature_tileset_godot.png 7" +7/texture = ExtResource( 1 ) +7/tex_offset = Vector2( 0, 0 ) +7/modulate = Color( 1, 1, 1, 1 ) +7/region = Rect2( 0, 0, 960, 400 ) +7/tile_mode = 1 +7/autotile/bitmask_mode = 1 +7/autotile/bitmask_flags = [ Vector2( 25, 6 ), 432, Vector2( 25, 7 ), 438, Vector2( 25, 8 ), 54, Vector2( 25, 9 ), 48, Vector2( 26, 6 ), 504, Vector2( 26, 7 ), 511, Vector2( 26, 8 ), 63, Vector2( 26, 9 ), 56, Vector2( 27, 6 ), 216, Vector2( 27, 7 ), 219, Vector2( 27, 8 ), 27, Vector2( 27, 9 ), 24, Vector2( 28, 6 ), 144, Vector2( 28, 7 ), 146, Vector2( 28, 8 ), 18, Vector2( 28, 9 ), 16, Vector2( 29, 6 ), 176, Vector2( 29, 7 ), 182, Vector2( 29, 8 ), 434, Vector2( 29, 9 ), 50, Vector2( 29, 10 ), 178, Vector2( 30, 6 ), 248, Vector2( 30, 7 ), 255, Vector2( 30, 8 ), 507, Vector2( 30, 9 ), 59, Vector2( 30, 10 ), 251, Vector2( 31, 6 ), 440, Vector2( 31, 7 ), 447, Vector2( 31, 8 ), 510, Vector2( 31, 9 ), 62, Vector2( 31, 10 ), 446, Vector2( 32, 6 ), 152, Vector2( 32, 7 ), 155, Vector2( 32, 8 ), 218, Vector2( 32, 9 ), 26, Vector2( 32, 10 ), 154, Vector2( 33, 6 ), 184, Vector2( 33, 7 ), 191, Vector2( 33, 8 ), 506, Vector2( 33, 9 ), 58, Vector2( 33, 10 ), 186, Vector2( 34, 6 ), 443, Vector2( 34, 7 ), 254, Vector2( 34, 8 ), 442, Vector2( 34, 9 ), 190, Vector2( 35, 8 ), 250, Vector2( 35, 9 ), 187 ] +7/autotile/icon_coordinate = Vector2( 26, 7 ) +7/autotile/tile_size = Vector2( 16, 16 ) +7/autotile/spacing = 0 +7/autotile/occluder_map = [ ] +7/autotile/navpoly_map = [ ] +7/autotile/priority_map = [ ] +7/autotile/z_index_map = [ ] +7/occluder_offset = Vector2( 0, 0 ) +7/navigation_offset = Vector2( 0, 0 ) +7/shape_offset = Vector2( 0, 0 ) +7/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +7/shape_one_way = false +7/shape_one_way_margin = 0.0 +7/shapes = [ ] +7/z_index = 0 +8/name = "tileset_mk_16_16_nature_tileset_godot.png 8" +8/texture = ExtResource( 1 ) +8/tex_offset = Vector2( 0, 0 ) +8/modulate = Color( 1, 1, 1, 1 ) +8/region = Rect2( 0, 0, 960, 400 ) +8/tile_mode = 1 +8/autotile/bitmask_mode = 1 +8/autotile/bitmask_flags = [ Vector2( 37, 0 ), 432, Vector2( 37, 1 ), 438, Vector2( 37, 2 ), 54, Vector2( 37, 3 ), 48, Vector2( 38, 0 ), 504, Vector2( 38, 1 ), 511, Vector2( 38, 2 ), 63, Vector2( 38, 3 ), 56, Vector2( 39, 0 ), 216, Vector2( 39, 1 ), 219, Vector2( 39, 2 ), 27, Vector2( 39, 3 ), 24, Vector2( 40, 0 ), 144, Vector2( 40, 1 ), 146, Vector2( 40, 2 ), 18, Vector2( 40, 3 ), 16, Vector2( 41, 0 ), 176, Vector2( 41, 1 ), 182, Vector2( 41, 2 ), 434, Vector2( 41, 3 ), 50, Vector2( 41, 4 ), 178, Vector2( 42, 0 ), 248, Vector2( 42, 1 ), 255, Vector2( 42, 2 ), 507, Vector2( 42, 3 ), 59, Vector2( 42, 4 ), 251, Vector2( 43, 0 ), 440, Vector2( 43, 1 ), 447, Vector2( 43, 2 ), 510, Vector2( 43, 3 ), 62, Vector2( 43, 4 ), 446, Vector2( 44, 0 ), 152, Vector2( 44, 1 ), 155, Vector2( 44, 2 ), 218, Vector2( 44, 3 ), 26, Vector2( 44, 4 ), 154, Vector2( 45, 0 ), 184, Vector2( 45, 1 ), 191, Vector2( 45, 2 ), 506, Vector2( 45, 3 ), 58, Vector2( 45, 4 ), 186, Vector2( 46, 0 ), 443, Vector2( 46, 1 ), 254, Vector2( 46, 2 ), 442, Vector2( 46, 3 ), 190, Vector2( 47, 2 ), 250, Vector2( 47, 3 ), 187 ] +8/autotile/icon_coordinate = Vector2( 38, 1 ) +8/autotile/tile_size = Vector2( 16, 16 ) +8/autotile/spacing = 0 +8/autotile/occluder_map = [ ] +8/autotile/navpoly_map = [ ] +8/autotile/priority_map = [ ] +8/autotile/z_index_map = [ ] +8/occluder_offset = Vector2( 0, 0 ) +8/navigation_offset = Vector2( 0, 0 ) +8/shape_offset = Vector2( 0, 0 ) +8/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +8/shape_one_way = false +8/shape_one_way_margin = 0.0 +8/shapes = [ ] +8/z_index = 0 +9/name = "tileset_mk_16_16_nature_tileset_godot.png 9" +9/texture = ExtResource( 1 ) +9/tex_offset = Vector2( 0, 0 ) +9/modulate = Color( 1, 1, 1, 1 ) +9/region = Rect2( 0, 0, 960, 400 ) +9/tile_mode = 1 +9/autotile/bitmask_mode = 1 +9/autotile/bitmask_flags = [ Vector2( 37, 6 ), 432, Vector2( 37, 7 ), 438, Vector2( 37, 8 ), 54, Vector2( 37, 9 ), 48, Vector2( 38, 6 ), 504, Vector2( 38, 7 ), 511, Vector2( 38, 8 ), 63, Vector2( 38, 9 ), 56, Vector2( 39, 6 ), 216, Vector2( 39, 7 ), 219, Vector2( 39, 8 ), 27, Vector2( 39, 9 ), 24, Vector2( 40, 6 ), 144, Vector2( 40, 7 ), 146, Vector2( 40, 8 ), 18, Vector2( 40, 9 ), 16, Vector2( 41, 6 ), 176, Vector2( 41, 7 ), 182, Vector2( 41, 8 ), 434, Vector2( 41, 9 ), 50, Vector2( 41, 10 ), 178, Vector2( 42, 6 ), 248, Vector2( 42, 7 ), 255, Vector2( 42, 8 ), 507, Vector2( 42, 9 ), 59, Vector2( 42, 10 ), 251, Vector2( 43, 6 ), 440, Vector2( 43, 7 ), 447, Vector2( 43, 8 ), 510, Vector2( 43, 9 ), 62, Vector2( 43, 10 ), 446, Vector2( 44, 6 ), 152, Vector2( 44, 7 ), 155, Vector2( 44, 8 ), 218, Vector2( 44, 9 ), 26, Vector2( 44, 10 ), 154, Vector2( 45, 6 ), 184, Vector2( 45, 7 ), 191, Vector2( 45, 8 ), 506, Vector2( 45, 9 ), 58, Vector2( 45, 10 ), 186, Vector2( 46, 6 ), 443, Vector2( 46, 7 ), 254, Vector2( 46, 8 ), 442, Vector2( 46, 9 ), 190, Vector2( 47, 8 ), 250, Vector2( 47, 9 ), 187 ] +9/autotile/icon_coordinate = Vector2( 38, 7 ) +9/autotile/tile_size = Vector2( 16, 16 ) +9/autotile/spacing = 0 +9/autotile/occluder_map = [ ] +9/autotile/navpoly_map = [ ] +9/autotile/priority_map = [ ] +9/autotile/z_index_map = [ ] +9/occluder_offset = Vector2( 0, 0 ) +9/navigation_offset = Vector2( 0, 0 ) +9/shape_offset = Vector2( 0, 0 ) +9/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +9/shape_one_way = false +9/shape_one_way_margin = 0.0 +9/shapes = [ ] +9/z_index = 0 +10/name = "tileset_mk_16_16_nature_tileset_godot.png 10" +10/texture = ExtResource( 1 ) +10/tex_offset = Vector2( 0, 0 ) +10/modulate = Color( 1, 1, 1, 1 ) +10/region = Rect2( 0, 0, 960, 400 ) +10/tile_mode = 1 +10/autotile/bitmask_mode = 1 +10/autotile/bitmask_flags = [ Vector2( 49, 0 ), 432, Vector2( 49, 1 ), 438, Vector2( 49, 2 ), 54, Vector2( 49, 3 ), 48, Vector2( 50, 0 ), 504, Vector2( 50, 1 ), 511, Vector2( 50, 2 ), 63, Vector2( 50, 3 ), 56, Vector2( 51, 0 ), 216, Vector2( 51, 1 ), 219, Vector2( 51, 2 ), 27, Vector2( 51, 3 ), 24, Vector2( 52, 0 ), 144, Vector2( 52, 1 ), 146, Vector2( 52, 2 ), 18, Vector2( 52, 3 ), 16, Vector2( 53, 0 ), 176, Vector2( 53, 1 ), 182, Vector2( 53, 2 ), 434, Vector2( 53, 3 ), 50, Vector2( 53, 4 ), 178, Vector2( 54, 0 ), 248, Vector2( 54, 1 ), 255, Vector2( 54, 2 ), 507, Vector2( 54, 3 ), 59, Vector2( 54, 4 ), 251, Vector2( 55, 0 ), 440, Vector2( 55, 1 ), 447, Vector2( 55, 2 ), 510, Vector2( 55, 3 ), 62, Vector2( 55, 4 ), 446, Vector2( 56, 0 ), 152, Vector2( 56, 1 ), 155, Vector2( 56, 2 ), 218, Vector2( 56, 3 ), 26, Vector2( 56, 4 ), 154, Vector2( 57, 0 ), 184, Vector2( 57, 1 ), 191, Vector2( 57, 2 ), 506, Vector2( 57, 3 ), 58, Vector2( 57, 4 ), 186, Vector2( 58, 0 ), 443, Vector2( 58, 1 ), 254, Vector2( 58, 2 ), 442, Vector2( 58, 3 ), 190, Vector2( 59, 2 ), 250, Vector2( 59, 3 ), 187 ] +10/autotile/icon_coordinate = Vector2( 50, 1 ) +10/autotile/tile_size = Vector2( 16, 16 ) +10/autotile/spacing = 0 +10/autotile/occluder_map = [ ] +10/autotile/navpoly_map = [ ] +10/autotile/priority_map = [ ] +10/autotile/z_index_map = [ ] +10/occluder_offset = Vector2( 0, 0 ) +10/navigation_offset = Vector2( 0, 0 ) +10/shape_offset = Vector2( 0, 0 ) +10/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +10/shape_one_way = false +10/shape_one_way_margin = 0.0 +10/shapes = [ ] +10/z_index = 0 +11/name = "tileset_mk_16_16_nature_tileset_godot.png 11" +11/texture = ExtResource( 1 ) +11/tex_offset = Vector2( 0, 0 ) +11/modulate = Color( 1, 1, 1, 1 ) +11/region = Rect2( 0, 0, 960, 400 ) +11/tile_mode = 1 +11/autotile/bitmask_mode = 1 +11/autotile/bitmask_flags = [ Vector2( 49, 6 ), 432, Vector2( 49, 7 ), 438, Vector2( 49, 8 ), 54, Vector2( 49, 9 ), 48, Vector2( 50, 6 ), 504, Vector2( 50, 7 ), 511, Vector2( 50, 8 ), 63, Vector2( 50, 9 ), 56, Vector2( 51, 6 ), 216, Vector2( 51, 7 ), 219, Vector2( 51, 8 ), 27, Vector2( 51, 9 ), 24, Vector2( 52, 6 ), 144, Vector2( 52, 7 ), 146, Vector2( 52, 8 ), 18, Vector2( 52, 9 ), 16, Vector2( 53, 6 ), 176, Vector2( 53, 7 ), 182, Vector2( 53, 8 ), 434, Vector2( 53, 9 ), 50, Vector2( 53, 10 ), 178, Vector2( 54, 6 ), 248, Vector2( 54, 7 ), 255, Vector2( 54, 8 ), 507, Vector2( 54, 9 ), 59, Vector2( 54, 10 ), 251, Vector2( 55, 6 ), 440, Vector2( 55, 7 ), 447, Vector2( 55, 8 ), 510, Vector2( 55, 9 ), 62, Vector2( 55, 10 ), 446, Vector2( 56, 6 ), 152, Vector2( 56, 7 ), 155, Vector2( 56, 8 ), 218, Vector2( 56, 9 ), 26, Vector2( 56, 10 ), 154, Vector2( 57, 6 ), 184, Vector2( 57, 7 ), 191, Vector2( 57, 8 ), 506, Vector2( 57, 9 ), 58, Vector2( 57, 10 ), 186, Vector2( 58, 6 ), 443, Vector2( 58, 7 ), 254, Vector2( 58, 8 ), 442, Vector2( 58, 9 ), 190, Vector2( 59, 8 ), 250, Vector2( 59, 9 ), 187 ] +11/autotile/icon_coordinate = Vector2( 50, 7 ) +11/autotile/tile_size = Vector2( 16, 16 ) +11/autotile/spacing = 0 +11/autotile/occluder_map = [ ] +11/autotile/navpoly_map = [ ] +11/autotile/priority_map = [ ] +11/autotile/z_index_map = [ ] +11/occluder_offset = Vector2( 0, 0 ) +11/navigation_offset = Vector2( 0, 0 ) +11/shape_offset = Vector2( 0, 0 ) +11/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +11/shape_one_way = false +11/shape_one_way_margin = 0.0 +11/shapes = [ ] +11/z_index = 0 diff --git a/Sprites/Assets/Transparent_16x16.png b/Sprites/Assets/Transparent_16x16.png new file mode 100644 index 0000000..c22f319 Binary files /dev/null and b/Sprites/Assets/Transparent_16x16.png differ diff --git a/Sprites/Assets/Level_5_Floor_Tileset.png.import b/Sprites/Assets/Transparent_16x16.png.import similarity index 67% rename from Sprites/Assets/Level_5_Floor_Tileset.png.import rename to Sprites/Assets/Transparent_16x16.png.import index b7d9784..f25ee0b 100644 --- a/Sprites/Assets/Level_5_Floor_Tileset.png.import +++ b/Sprites/Assets/Transparent_16x16.png.import @@ -2,15 +2,15 @@ importer="texture" type="StreamTexture" -path="res://.import/Level_5_Floor_Tileset.png-8417e5e7747082b0687716c91f243b2e.stex" +path="res://.import/Transparent_16x16.png-aabb983b3e615e9d204b07f805d19a2d.stex" metadata={ "vram_texture": false } [deps] -source_file="res://Sprites/Assets/Level_5_Floor_Tileset.png" -dest_files=[ "res://.import/Level_5_Floor_Tileset.png-8417e5e7747082b0687716c91f243b2e.stex" ] +source_file="res://Sprites/Assets/Transparent_16x16.png" +dest_files=[ "res://.import/Transparent_16x16.png-aabb983b3e615e9d204b07f805d19a2d.stex" ] [params] diff --git a/Sprites/Assets/blue_star.png b/Sprites/Assets/blue_star.png new file mode 100644 index 0000000..e6c2012 Binary files /dev/null and b/Sprites/Assets/blue_star.png differ diff --git a/Sprites/Assets/blue_star.png.import b/Sprites/Assets/blue_star.png.import new file mode 100644 index 0000000..1a43942 --- /dev/null +++ b/Sprites/Assets/blue_star.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/blue_star.png-e7fe42ffb50bcd1c77bb437281279d24.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Assets/blue_star.png" +dest_files=[ "res://.import/blue_star.png-e7fe42ffb50bcd1c77bb437281279d24.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=false +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 +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Sprites/Assets/galaxy_background.png b/Sprites/Assets/galaxy_background.png new file mode 100644 index 0000000..f38bbea Binary files /dev/null and b/Sprites/Assets/galaxy_background.png differ diff --git a/Sprites/Assets/galaxy_background.png.import b/Sprites/Assets/galaxy_background.png.import new file mode 100644 index 0000000..200c915 --- /dev/null +++ b/Sprites/Assets/galaxy_background.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/galaxy_background.png-bdfe593e9357334c8f48a3d1bb4aecf8.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Assets/galaxy_background.png" +dest_files=[ "res://.import/galaxy_background.png-bdfe593e9357334c8f48a3d1bb4aecf8.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=false +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 +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Sprites/Assets/resources_basic.png.import b/Sprites/Assets/resources_basic.png.import index 13c4bcd..1055cf3 100644 --- a/Sprites/Assets/resources_basic.png.import +++ b/Sprites/Assets/resources_basic.png.import @@ -18,13 +18,13 @@ compress/mode=0 compress/lossy_quality=0.7 compress/hdr_mode=0 compress/bptc_ldr=0 -compress/normal_map=0 +compress/normal_map=2 flags/repeat=0 flags/filter=false flags/mipmaps=false flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true +flags/srgb=0 +process/fix_alpha_border=false process/premult_alpha=false process/HDR_as_SRGB=false process/invert_color=false diff --git a/Sprites/Enemies/Glowing_Ghost.png b/Sprites/Enemies/Chasing_Glowing_Ghost.png similarity index 100% rename from Sprites/Enemies/Glowing_Ghost.png rename to Sprites/Enemies/Chasing_Glowing_Ghost.png diff --git a/Sprites/Enemies/Chasing_Glowing_Ghost.png.import b/Sprites/Enemies/Chasing_Glowing_Ghost.png.import new file mode 100644 index 0000000..ca1a92d --- /dev/null +++ b/Sprites/Enemies/Chasing_Glowing_Ghost.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Chasing_Glowing_Ghost.png-058a2155c6f21646fb4dbe49b2572e1a.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Enemies/Chasing_Glowing_Ghost.png" +dest_files=[ "res://.import/Chasing_Glowing_Ghost.png-058a2155c6f21646fb4dbe49b2572e1a.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Enemies/Creepy_Glowing_Ghost.png b/Sprites/Enemies/Creepy_Glowing_Ghost.png new file mode 100644 index 0000000..469d14d Binary files /dev/null and b/Sprites/Enemies/Creepy_Glowing_Ghost.png differ diff --git a/Sprites/Enemies/Creepy_Glowing_Ghost.png.import b/Sprites/Enemies/Creepy_Glowing_Ghost.png.import new file mode 100644 index 0000000..adc3708 --- /dev/null +++ b/Sprites/Enemies/Creepy_Glowing_Ghost.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Creepy_Glowing_Ghost.png-a6711d66d268c21b09d75a78af11cb3c.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Enemies/Creepy_Glowing_Ghost.png" +dest_files=[ "res://.import/Creepy_Glowing_Ghost.png-a6711d66d268c21b09d75a78af11cb3c.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Enemies/DarkMatter.png b/Sprites/Enemies/DarkMatter.png new file mode 100644 index 0000000..3533563 Binary files /dev/null and b/Sprites/Enemies/DarkMatter.png differ diff --git a/Sprites/Enemies/DarkMatter.png.import b/Sprites/Enemies/DarkMatter.png.import new file mode 100644 index 0000000..d640048 --- /dev/null +++ b/Sprites/Enemies/DarkMatter.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/DarkMatter.png-2b0c758d6283f4dd53f1323ef137a59c.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Enemies/DarkMatter.png" +dest_files=[ "res://.import/DarkMatter.png-2b0c758d6283f4dd53f1323ef137a59c.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=false +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 +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Sprites/Enemies/DarkMatter_barrier.png b/Sprites/Enemies/DarkMatter_barrier.png new file mode 100644 index 0000000..0062fda Binary files /dev/null and b/Sprites/Enemies/DarkMatter_barrier.png differ diff --git a/Sprites/Enemies/DarkMatter_barrier.png.import b/Sprites/Enemies/DarkMatter_barrier.png.import new file mode 100644 index 0000000..c687421 --- /dev/null +++ b/Sprites/Enemies/DarkMatter_barrier.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/DarkMatter_barrier.png-02e140387176b08e4123e624992e14c4.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Enemies/DarkMatter_barrier.png" +dest_files=[ "res://.import/DarkMatter_barrier.png-02e140387176b08e4123e624992e14c4.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=false +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 +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Sprites/Enemies/Demon_Slime_Spritesheet.png b/Sprites/Enemies/Demon_Slime_Spritesheet.png new file mode 100644 index 0000000..e7fc86e Binary files /dev/null and b/Sprites/Enemies/Demon_Slime_Spritesheet.png differ diff --git a/Sprites/Enemies/Demon_Slime_Spritesheet.png.import b/Sprites/Enemies/Demon_Slime_Spritesheet.png.import new file mode 100644 index 0000000..bded42d --- /dev/null +++ b/Sprites/Enemies/Demon_Slime_Spritesheet.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Demon_Slime_Spritesheet.png-c86872f0ca83bebad995e8c7100b076a.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Enemies/Demon_Slime_Spritesheet.png" +dest_files=[ "res://.import/Demon_Slime_Spritesheet.png-c86872f0ca83bebad995e8c7100b076a.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Enemies/Flaming_Skull_Design.png b/Sprites/Enemies/Flaming_Skull_Design.png new file mode 100644 index 0000000..0550c08 Binary files /dev/null and b/Sprites/Enemies/Flaming_Skull_Design.png differ diff --git a/Sprites/Assets/Level_5_Walls_Tileset.png.import b/Sprites/Enemies/Flaming_Skull_Design.png.import similarity index 67% rename from Sprites/Assets/Level_5_Walls_Tileset.png.import rename to Sprites/Enemies/Flaming_Skull_Design.png.import index 25b1ba1..db7c6ea 100644 --- a/Sprites/Assets/Level_5_Walls_Tileset.png.import +++ b/Sprites/Enemies/Flaming_Skull_Design.png.import @@ -2,15 +2,15 @@ importer="texture" type="StreamTexture" -path="res://.import/Level_5_Walls_Tileset.png-d7ec241820f3c5ab4d160dc1b4772cd2.stex" +path="res://.import/Flaming_Skull_Design.png-bbe536da9e15d97697b839a383720c5b.stex" metadata={ "vram_texture": false } [deps] -source_file="res://Sprites/Assets/Level_5_Walls_Tileset.png" -dest_files=[ "res://.import/Level_5_Walls_Tileset.png-d7ec241820f3c5ab4d160dc1b4772cd2.stex" ] +source_file="res://Sprites/Enemies/Flaming_Skull_Design.png" +dest_files=[ "res://.import/Flaming_Skull_Design.png-bbe536da9e15d97697b839a383720c5b.stex" ] [params] diff --git a/Sprites/Enemies/Hell_Hound_Idle.png b/Sprites/Enemies/Hell_Hound_Idle.png new file mode 100644 index 0000000..d4c661a Binary files /dev/null and b/Sprites/Enemies/Hell_Hound_Idle.png differ diff --git a/Sprites/Enemies/Hell_Hound_Idle.png.import b/Sprites/Enemies/Hell_Hound_Idle.png.import new file mode 100644 index 0000000..9208741 --- /dev/null +++ b/Sprites/Enemies/Hell_Hound_Idle.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Hell_Hound_Idle.png-824c006716754586fa29051bca73c106.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Enemies/Hell_Hound_Idle.png" +dest_files=[ "res://.import/Hell_Hound_Idle.png-824c006716754586fa29051bca73c106.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Enemies/Hell_Hound_Jump.png b/Sprites/Enemies/Hell_Hound_Jump.png new file mode 100644 index 0000000..72472ae Binary files /dev/null and b/Sprites/Enemies/Hell_Hound_Jump.png differ diff --git a/Sprites/Enemies/Hell_Hound_Jump.png.import b/Sprites/Enemies/Hell_Hound_Jump.png.import new file mode 100644 index 0000000..b1e8dd4 --- /dev/null +++ b/Sprites/Enemies/Hell_Hound_Jump.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Hell_Hound_Jump.png-fbd3b494518371a3872726afbf5934ac.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Enemies/Hell_Hound_Jump.png" +dest_files=[ "res://.import/Hell_Hound_Jump.png-fbd3b494518371a3872726afbf5934ac.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Enemies/Hell_Hound_Run.png b/Sprites/Enemies/Hell_Hound_Run.png new file mode 100644 index 0000000..8d49efb Binary files /dev/null and b/Sprites/Enemies/Hell_Hound_Run.png differ diff --git a/Sprites/Enemies/Hell_Hound_Run.png.import b/Sprites/Enemies/Hell_Hound_Run.png.import new file mode 100644 index 0000000..eb2ea9d --- /dev/null +++ b/Sprites/Enemies/Hell_Hound_Run.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Hell_Hound_Run.png-cecf8fa6aaa4259ef87906ca85ee3363.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Enemies/Hell_Hound_Run.png" +dest_files=[ "res://.import/Hell_Hound_Run.png-cecf8fa6aaa4259ef87906ca85ee3363.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Enemies/Hell_Hound_Walk.png b/Sprites/Enemies/Hell_Hound_Walk.png new file mode 100644 index 0000000..177f2a5 Binary files /dev/null and b/Sprites/Enemies/Hell_Hound_Walk.png differ diff --git a/Sprites/Enemies/Hell_Hound_Walk.png.import b/Sprites/Enemies/Hell_Hound_Walk.png.import new file mode 100644 index 0000000..186dece --- /dev/null +++ b/Sprites/Enemies/Hell_Hound_Walk.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Hell_Hound_Walk.png-a686bd610b39e7a5834c0d1b748e9724.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Enemies/Hell_Hound_Walk.png" +dest_files=[ "res://.import/Hell_Hound_Walk.png-a686bd610b39e7a5834c0d1b748e9724.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Enemies/Projectiles/Creepy_Hand.png b/Sprites/Enemies/Projectiles/Creepy_Hand.png new file mode 100644 index 0000000..a675a3e Binary files /dev/null and b/Sprites/Enemies/Projectiles/Creepy_Hand.png differ diff --git a/Sprites/Enemies/Projectiles/Creepy_Hand.png.import b/Sprites/Enemies/Projectiles/Creepy_Hand.png.import new file mode 100644 index 0000000..f989b68 --- /dev/null +++ b/Sprites/Enemies/Projectiles/Creepy_Hand.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Creepy_Hand.png-08a92e3a11f7b6f5409d8d2c9c2390a5.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Enemies/Projectiles/Creepy_Hand.png" +dest_files=[ "res://.import/Creepy_Hand.png-08a92e3a11f7b6f5409d8d2c9c2390a5.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Levels/Environment/Fire_Column_Medium_01.png b/Sprites/Levels/Environment/Fire_Column_Medium_01.png new file mode 100644 index 0000000..2ada560 Binary files /dev/null and b/Sprites/Levels/Environment/Fire_Column_Medium_01.png differ diff --git a/Sprites/Levels/Environment/Fire_Column_Medium_01.png.import b/Sprites/Levels/Environment/Fire_Column_Medium_01.png.import new file mode 100644 index 0000000..645d10b --- /dev/null +++ b/Sprites/Levels/Environment/Fire_Column_Medium_01.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Fire_Column_Medium_01.png-8bd49489bd71a51166de5a8bde00f3c0.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Environment/Fire_Column_Medium_01.png" +dest_files=[ "res://.import/Fire_Column_Medium_01.png-8bd49489bd71a51166de5a8bde00f3c0.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Levels/Environment/Fire_Column_Medium_02.png b/Sprites/Levels/Environment/Fire_Column_Medium_02.png new file mode 100644 index 0000000..40fcef8 Binary files /dev/null and b/Sprites/Levels/Environment/Fire_Column_Medium_02.png differ diff --git a/Sprites/Levels/Environment/Fire_Column_Medium_02.png.import b/Sprites/Levels/Environment/Fire_Column_Medium_02.png.import new file mode 100644 index 0000000..aa8bcc9 --- /dev/null +++ b/Sprites/Levels/Environment/Fire_Column_Medium_02.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Fire_Column_Medium_02.png-de97967dd53d013f5e73c3f9630de01b.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Environment/Fire_Column_Medium_02.png" +dest_files=[ "res://.import/Fire_Column_Medium_02.png-de97967dd53d013f5e73c3f9630de01b.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Levels/Environment/Fire_Column_Medium_03.png b/Sprites/Levels/Environment/Fire_Column_Medium_03.png new file mode 100644 index 0000000..28bd9e3 Binary files /dev/null and b/Sprites/Levels/Environment/Fire_Column_Medium_03.png differ diff --git a/Sprites/Levels/Environment/Fire_Column_Medium_03.png.import b/Sprites/Levels/Environment/Fire_Column_Medium_03.png.import new file mode 100644 index 0000000..e57effe --- /dev/null +++ b/Sprites/Levels/Environment/Fire_Column_Medium_03.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Fire_Column_Medium_03.png-014ac794f61ab7a511cb29caf469ae20.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Environment/Fire_Column_Medium_03.png" +dest_files=[ "res://.import/Fire_Column_Medium_03.png-014ac794f61ab7a511cb29caf469ae20.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Levels/Environment/Fire_Column_Medium_04.png b/Sprites/Levels/Environment/Fire_Column_Medium_04.png new file mode 100644 index 0000000..5705dae Binary files /dev/null and b/Sprites/Levels/Environment/Fire_Column_Medium_04.png differ diff --git a/Sprites/Levels/Environment/Fire_Column_Medium_04.png.import b/Sprites/Levels/Environment/Fire_Column_Medium_04.png.import new file mode 100644 index 0000000..b424883 --- /dev/null +++ b/Sprites/Levels/Environment/Fire_Column_Medium_04.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Fire_Column_Medium_04.png-f9b27a39d43c3a519e4cccdfbd191745.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Environment/Fire_Column_Medium_04.png" +dest_files=[ "res://.import/Fire_Column_Medium_04.png-f9b27a39d43c3a519e4cccdfbd191745.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Levels/Environment/Fire_Column_Medium_05.png b/Sprites/Levels/Environment/Fire_Column_Medium_05.png new file mode 100644 index 0000000..7cff9fb Binary files /dev/null and b/Sprites/Levels/Environment/Fire_Column_Medium_05.png differ diff --git a/Sprites/Levels/Environment/Fire_Column_Medium_05.png.import b/Sprites/Levels/Environment/Fire_Column_Medium_05.png.import new file mode 100644 index 0000000..f61eeb8 --- /dev/null +++ b/Sprites/Levels/Environment/Fire_Column_Medium_05.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Fire_Column_Medium_05.png-871afbb6dcbcb119eace6152490dbf28.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Environment/Fire_Column_Medium_05.png" +dest_files=[ "res://.import/Fire_Column_Medium_05.png-871afbb6dcbcb119eace6152490dbf28.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Levels/Environment/Fire_Column_Medium_06.png b/Sprites/Levels/Environment/Fire_Column_Medium_06.png new file mode 100644 index 0000000..5fc646a Binary files /dev/null and b/Sprites/Levels/Environment/Fire_Column_Medium_06.png differ diff --git a/Sprites/Levels/Environment/Fire_Column_Medium_06.png.import b/Sprites/Levels/Environment/Fire_Column_Medium_06.png.import new file mode 100644 index 0000000..d49d106 --- /dev/null +++ b/Sprites/Levels/Environment/Fire_Column_Medium_06.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Fire_Column_Medium_06.png-668acf262dc13ff23b20914c0b9f3da3.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Environment/Fire_Column_Medium_06.png" +dest_files=[ "res://.import/Fire_Column_Medium_06.png-668acf262dc13ff23b20914c0b9f3da3.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Levels/Environment/Fire_Column_Medium_07.png b/Sprites/Levels/Environment/Fire_Column_Medium_07.png new file mode 100644 index 0000000..4eb3657 Binary files /dev/null and b/Sprites/Levels/Environment/Fire_Column_Medium_07.png differ diff --git a/Sprites/Levels/Environment/Fire_Column_Medium_07.png.import b/Sprites/Levels/Environment/Fire_Column_Medium_07.png.import new file mode 100644 index 0000000..73ddeb1 --- /dev/null +++ b/Sprites/Levels/Environment/Fire_Column_Medium_07.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Fire_Column_Medium_07.png-12dfef49a84d590160d946525128054a.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Environment/Fire_Column_Medium_07.png" +dest_files=[ "res://.import/Fire_Column_Medium_07.png-12dfef49a84d590160d946525128054a.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Levels/Environment/Fire_Column_Medium_08.png b/Sprites/Levels/Environment/Fire_Column_Medium_08.png new file mode 100644 index 0000000..acd47a8 Binary files /dev/null and b/Sprites/Levels/Environment/Fire_Column_Medium_08.png differ diff --git a/Sprites/Levels/Environment/Fire_Column_Medium_08.png.import b/Sprites/Levels/Environment/Fire_Column_Medium_08.png.import new file mode 100644 index 0000000..c479307 --- /dev/null +++ b/Sprites/Levels/Environment/Fire_Column_Medium_08.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Fire_Column_Medium_08.png-a32db557b6b09d2016aa9f5b942f252d.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Environment/Fire_Column_Medium_08.png" +dest_files=[ "res://.import/Fire_Column_Medium_08.png-a32db557b6b09d2016aa9f5b942f252d.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Levels/Environment/Fire_Column_Medium_09.png b/Sprites/Levels/Environment/Fire_Column_Medium_09.png new file mode 100644 index 0000000..e9aacd3 Binary files /dev/null and b/Sprites/Levels/Environment/Fire_Column_Medium_09.png differ diff --git a/Sprites/Levels/Environment/Fire_Column_Medium_09.png.import b/Sprites/Levels/Environment/Fire_Column_Medium_09.png.import new file mode 100644 index 0000000..aae4c15 --- /dev/null +++ b/Sprites/Levels/Environment/Fire_Column_Medium_09.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Fire_Column_Medium_09.png-68fa3b2a0b3c34d8db8df6f274851ba6.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Environment/Fire_Column_Medium_09.png" +dest_files=[ "res://.import/Fire_Column_Medium_09.png-68fa3b2a0b3c34d8db8df6f274851ba6.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Levels/Environment/fire_column_medium_10.png b/Sprites/Levels/Environment/fire_column_medium_10.png new file mode 100644 index 0000000..490e710 Binary files /dev/null and b/Sprites/Levels/Environment/fire_column_medium_10.png differ diff --git a/Sprites/Levels/Environment/fire_column_medium_10.png.import b/Sprites/Levels/Environment/fire_column_medium_10.png.import new file mode 100644 index 0000000..366d67b --- /dev/null +++ b/Sprites/Levels/Environment/fire_column_medium_10.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/fire_column_medium_10.png-9ae78a0f5ef8531c3b56d09574ecd317.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Environment/fire_column_medium_10.png" +dest_files=[ "res://.import/fire_column_medium_10.png-9ae78a0f5ef8531c3b56d09574ecd317.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=false +svg/scale=1.0 diff --git a/Sprites/Levels/Environment/fire_column_medium_11.png b/Sprites/Levels/Environment/fire_column_medium_11.png new file mode 100644 index 0000000..953dd58 Binary files /dev/null and b/Sprites/Levels/Environment/fire_column_medium_11.png differ diff --git a/Sprites/Levels/Environment/fire_column_medium_11.png.import b/Sprites/Levels/Environment/fire_column_medium_11.png.import new file mode 100644 index 0000000..97fa276 --- /dev/null +++ b/Sprites/Levels/Environment/fire_column_medium_11.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/fire_column_medium_11.png-f6c2ac8f20428aebca0febd0f65a5806.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Environment/fire_column_medium_11.png" +dest_files=[ "res://.import/fire_column_medium_11.png-f6c2ac8f20428aebca0febd0f65a5806.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=false +svg/scale=1.0 diff --git a/Sprites/Levels/Environment/fire_column_medium_12.png b/Sprites/Levels/Environment/fire_column_medium_12.png new file mode 100644 index 0000000..f3ebd22 Binary files /dev/null and b/Sprites/Levels/Environment/fire_column_medium_12.png differ diff --git a/Sprites/Levels/Environment/fire_column_medium_12.png.import b/Sprites/Levels/Environment/fire_column_medium_12.png.import new file mode 100644 index 0000000..e7da4e6 --- /dev/null +++ b/Sprites/Levels/Environment/fire_column_medium_12.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/fire_column_medium_12.png-25bc0d063fd42a44b6e9e423e3bf2656.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Environment/fire_column_medium_12.png" +dest_files=[ "res://.import/fire_column_medium_12.png-25bc0d063fd42a44b6e9e423e3bf2656.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=false +svg/scale=1.0 diff --git a/Sprites/Levels/Environment/fire_column_medium_13.png b/Sprites/Levels/Environment/fire_column_medium_13.png new file mode 100644 index 0000000..1690568 Binary files /dev/null and b/Sprites/Levels/Environment/fire_column_medium_13.png differ diff --git a/Sprites/Levels/Environment/fire_column_medium_13.png.import b/Sprites/Levels/Environment/fire_column_medium_13.png.import new file mode 100644 index 0000000..e358f84 --- /dev/null +++ b/Sprites/Levels/Environment/fire_column_medium_13.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/fire_column_medium_13.png-6f8490642f9a7a3884a31ae3975deb08.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Environment/fire_column_medium_13.png" +dest_files=[ "res://.import/fire_column_medium_13.png-6f8490642f9a7a3884a31ae3975deb08.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=false +svg/scale=1.0 diff --git a/Sprites/Levels/Environment/fire_column_medium_14.png b/Sprites/Levels/Environment/fire_column_medium_14.png new file mode 100644 index 0000000..93a4ce9 Binary files /dev/null and b/Sprites/Levels/Environment/fire_column_medium_14.png differ diff --git a/Sprites/Levels/Environment/fire_column_medium_14.png.import b/Sprites/Levels/Environment/fire_column_medium_14.png.import new file mode 100644 index 0000000..98212dc --- /dev/null +++ b/Sprites/Levels/Environment/fire_column_medium_14.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/fire_column_medium_14.png-81452b14764f0dd97e4008c5f9448c38.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Environment/fire_column_medium_14.png" +dest_files=[ "res://.import/fire_column_medium_14.png-81452b14764f0dd97e4008c5f9448c38.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=false +svg/scale=1.0 diff --git a/Sprites/Levels/Interactables/Gold_Key.png b/Sprites/Levels/Interactables/Gold_Key.png new file mode 100644 index 0000000..5e1a333 Binary files /dev/null and b/Sprites/Levels/Interactables/Gold_Key.png differ diff --git a/Sprites/Enemies/Glowing_Ghost.png.import b/Sprites/Levels/Interactables/Gold_Key.png.import similarity index 69% rename from Sprites/Enemies/Glowing_Ghost.png.import rename to Sprites/Levels/Interactables/Gold_Key.png.import index 228ea0a..cc6c4f3 100644 --- a/Sprites/Enemies/Glowing_Ghost.png.import +++ b/Sprites/Levels/Interactables/Gold_Key.png.import @@ -2,15 +2,15 @@ importer="texture" type="StreamTexture" -path="res://.import/Glowing_Ghost.png-46379ff53bc263370d2e0d62c670229c.stex" +path="res://.import/Gold_Key.png-dca351c67fcf6c026f522adeb9a28c73.stex" metadata={ "vram_texture": false } [deps] -source_file="res://Sprites/Enemies/Glowing_Ghost.png" -dest_files=[ "res://.import/Glowing_Ghost.png-46379ff53bc263370d2e0d62c670229c.stex" ] +source_file="res://Sprites/Levels/Interactables/Gold_Key.png" +dest_files=[ "res://.import/Gold_Key.png-dca351c67fcf6c026f522adeb9a28c73.stex" ] [params] diff --git a/Sprites/Levels/Interactables/Silver_Barrier_Closed.png b/Sprites/Levels/Interactables/Silver_Barrier_Closed.png new file mode 100644 index 0000000..bb3fa50 Binary files /dev/null and b/Sprites/Levels/Interactables/Silver_Barrier_Closed.png differ diff --git a/Sprites/Levels/Interactables/Silver_Barrier_Closed.png.import b/Sprites/Levels/Interactables/Silver_Barrier_Closed.png.import new file mode 100644 index 0000000..a9f83c3 --- /dev/null +++ b/Sprites/Levels/Interactables/Silver_Barrier_Closed.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Silver_Barrier_Closed.png-f21af0f8676e345e4c4665869fd9b81c.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Interactables/Silver_Barrier_Closed.png" +dest_files=[ "res://.import/Silver_Barrier_Closed.png-f21af0f8676e345e4c4665869fd9b81c.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Levels/Interactables/Silver_Barrier_Open.png b/Sprites/Levels/Interactables/Silver_Barrier_Open.png new file mode 100644 index 0000000..8a19385 Binary files /dev/null and b/Sprites/Levels/Interactables/Silver_Barrier_Open.png differ diff --git a/Sprites/Levels/Interactables/Silver_Barrier_Open.png.import b/Sprites/Levels/Interactables/Silver_Barrier_Open.png.import new file mode 100644 index 0000000..096529e --- /dev/null +++ b/Sprites/Levels/Interactables/Silver_Barrier_Open.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Silver_Barrier_Open.png-98c2210bfdfd797f9554a71cb67cfeee.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Interactables/Silver_Barrier_Open.png" +dest_files=[ "res://.import/Silver_Barrier_Open.png-98c2210bfdfd797f9554a71cb67cfeee.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Levels/Interactables/Silver_Key.png b/Sprites/Levels/Interactables/Silver_Key.png new file mode 100644 index 0000000..b8704e8 Binary files /dev/null and b/Sprites/Levels/Interactables/Silver_Key.png differ diff --git a/Sprites/Levels/Interactables/Silver_Key.png.import b/Sprites/Levels/Interactables/Silver_Key.png.import new file mode 100644 index 0000000..da710b3 --- /dev/null +++ b/Sprites/Levels/Interactables/Silver_Key.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Silver_Key.png-257bee058565f7389053b11d401f95fc.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Interactables/Silver_Key.png" +dest_files=[ "res://.import/Silver_Key.png-257bee058565f7389053b11d401f95fc.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Levels/Interactables/Treasure_Chest_Closed.png b/Sprites/Levels/Interactables/Treasure_Chest_Closed.png new file mode 100644 index 0000000..8906f54 Binary files /dev/null and b/Sprites/Levels/Interactables/Treasure_Chest_Closed.png differ diff --git a/Sprites/Levels/Interactables/Treasure_Chest_Closed.png.import b/Sprites/Levels/Interactables/Treasure_Chest_Closed.png.import new file mode 100644 index 0000000..6c4e744 --- /dev/null +++ b/Sprites/Levels/Interactables/Treasure_Chest_Closed.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Treasure_Chest_Closed.png-05a8ca4b2f9337a46eec5ee48f4f8d6a.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Interactables/Treasure_Chest_Closed.png" +dest_files=[ "res://.import/Treasure_Chest_Closed.png-05a8ca4b2f9337a46eec5ee48f4f8d6a.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Levels/Interactables/Treasure_Chest_Open.png b/Sprites/Levels/Interactables/Treasure_Chest_Open.png new file mode 100644 index 0000000..8ac3f37 Binary files /dev/null and b/Sprites/Levels/Interactables/Treasure_Chest_Open.png differ diff --git a/Sprites/Levels/Interactables/Treasure_Chest_Open.png.import b/Sprites/Levels/Interactables/Treasure_Chest_Open.png.import new file mode 100644 index 0000000..2f3adef --- /dev/null +++ b/Sprites/Levels/Interactables/Treasure_Chest_Open.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Treasure_Chest_Open.png-7e34474aa905171e4c6d0954a3b40696.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Interactables/Treasure_Chest_Open.png" +dest_files=[ "res://.import/Treasure_Chest_Open.png-7e34474aa905171e4c6d0954a3b40696.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Levels/Objects/Gate_Closed.png b/Sprites/Levels/Objects/Gate_Closed.png new file mode 100644 index 0000000..34af79e Binary files /dev/null and b/Sprites/Levels/Objects/Gate_Closed.png differ diff --git a/Sprites/Levels/Objects/Gate_Closed.png.import b/Sprites/Levels/Objects/Gate_Closed.png.import new file mode 100644 index 0000000..e45f322 --- /dev/null +++ b/Sprites/Levels/Objects/Gate_Closed.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Gate_Closed.png-b6ccc43caadc79b047fe1fe16db8dd28.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Objects/Gate_Closed.png" +dest_files=[ "res://.import/Gate_Closed.png-b6ccc43caadc79b047fe1fe16db8dd28.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Levels/Objects/Gate_Open.png b/Sprites/Levels/Objects/Gate_Open.png new file mode 100644 index 0000000..1aa6de8 Binary files /dev/null and b/Sprites/Levels/Objects/Gate_Open.png differ diff --git a/Sprites/Levels/Objects/Gate_Open.png.import b/Sprites/Levels/Objects/Gate_Open.png.import new file mode 100644 index 0000000..38299dd --- /dev/null +++ b/Sprites/Levels/Objects/Gate_Open.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Gate_Open.png-37083fb9f67ae1cca9c40c13a910a68c.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Objects/Gate_Open.png" +dest_files=[ "res://.import/Gate_Open.png-37083fb9f67ae1cca9c40c13a910a68c.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Levels/Tilesets/Level_4_Tileset.png b/Sprites/Levels/Tilesets/Level_4_Tileset.png new file mode 100644 index 0000000..a238f7e Binary files /dev/null and b/Sprites/Levels/Tilesets/Level_4_Tileset.png differ diff --git a/Sprites/Levels/Tilesets/Level_4_Tileset.png.import b/Sprites/Levels/Tilesets/Level_4_Tileset.png.import new file mode 100644 index 0000000..8712a02 --- /dev/null +++ b/Sprites/Levels/Tilesets/Level_4_Tileset.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Level_4_Tileset.png-0952ef474b7235043baefccd7c567727.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Tilesets/Level_4_Tileset.png" +dest_files=[ "res://.import/Level_4_Tileset.png-0952ef474b7235043baefccd7c567727.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Assets/Level_5_Floor_Tileset.png b/Sprites/Levels/Tilesets/Level_5_Floor_Tileset.png similarity index 100% rename from Sprites/Assets/Level_5_Floor_Tileset.png rename to Sprites/Levels/Tilesets/Level_5_Floor_Tileset.png diff --git a/Sprites/Levels/Tilesets/Level_5_Floor_Tileset.png.import b/Sprites/Levels/Tilesets/Level_5_Floor_Tileset.png.import new file mode 100644 index 0000000..89efb0b --- /dev/null +++ b/Sprites/Levels/Tilesets/Level_5_Floor_Tileset.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Level_5_Floor_Tileset.png-6659a9a904b381125cc681dd7104e9c4.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Tilesets/Level_5_Floor_Tileset.png" +dest_files=[ "res://.import/Level_5_Floor_Tileset.png-6659a9a904b381125cc681dd7104e9c4.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/Sprites/Assets/Level_5_Walls_Tileset.png b/Sprites/Levels/Tilesets/Level_5_Walls_Tileset.png similarity index 100% rename from Sprites/Assets/Level_5_Walls_Tileset.png rename to Sprites/Levels/Tilesets/Level_5_Walls_Tileset.png diff --git a/Sprites/Levels/Tilesets/Level_5_Walls_Tileset.png.import b/Sprites/Levels/Tilesets/Level_5_Walls_Tileset.png.import new file mode 100644 index 0000000..fe92aff --- /dev/null +++ b/Sprites/Levels/Tilesets/Level_5_Walls_Tileset.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Level_5_Walls_Tileset.png-c7ee165ac033cd739afab432c8bab7bd.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/Levels/Tilesets/Level_5_Walls_Tileset.png" +dest_files=[ "res://.import/Level_5_Walls_Tileset.png-c7ee165ac033cd739afab432c8bab7bd.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=2 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=0 +process/fix_alpha_border=false +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=false +svg/scale=1.0 diff --git a/project.godot b/project.godot index 951352d..9baf9f8 100644 --- a/project.godot +++ b/project.godot @@ -47,6 +47,14 @@ player_up={ player_down={ "deadzone": 0.5, "events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":83,"unicode":0,"echo":false,"script":null) + + ] +} +player_attack={ +"deadzone": 0.5, +"events": [ Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"button_mask":0,"position":Vector2( 0, 0 ),"global_position":Vector2( 0, 0 ),"factor":1.0,"button_index":1,"pressed":false,"doubleclick":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":32,"unicode":0,"echo":false,"script":null) + ] } screenshot={ @@ -55,6 +63,12 @@ screenshot={ ] } +[layer_names] + +2d_physics/layer_1="Immovable" +2d_physics/layer_2="Player" +2d_physics/layer_3="Enemies" + [physics] common/enable_pause_aware_picking=true