From f0657fbfa6f40536ca25e67e3454a49f7599b808 Mon Sep 17 00:00:00 2001 From: Martin Felis Date: Sat, 12 Jun 2021 17:48:58 +0200 Subject: [PATCH] Initial commit --- .gitignore | 2 + DebugLayer.gd | 39 ++++++ DigSite.tscn | 16 +++ GameCamera.gd | 24 ++++ GameScene.gd | 59 +++++++++ GameScene.tscn | 81 ++++++++++++ Globals.gd | 41 ++++++ Island.tscn | 26 ++++ Level.gd | 10 ++ NavTarget.gd | 16 +++ Player.gd | 82 ++++++++++++ assets/digsite.svg | 102 +++++++++++++++ assets/digsite.svg.import | 34 +++++ assets/island.svg | 67 ++++++++++ assets/island.svg.import | 34 +++++ assets/pirate.svg | 154 +++++++++++++++++++++++ assets/pirate.svg.import | 34 +++++ assets/pirate_with_shovel.svg | 178 +++++++++++++++++++++++++++ assets/pirate_with_shovel.svg.import | 34 +++++ assets/treasure.svg | 141 +++++++++++++++++++++ assets/treasure.svg.import | 34 +++++ assets/water.svg | 68 ++++++++++ assets/water.svg.import | 34 +++++ default_env.tres | 7 ++ icon.png | Bin 0 -> 3305 bytes icon.png.import | 34 +++++ project.godot | 58 +++++++++ 27 files changed, 1409 insertions(+) create mode 100644 .gitignore create mode 100644 DebugLayer.gd create mode 100644 DigSite.tscn create mode 100644 GameCamera.gd create mode 100644 GameScene.gd create mode 100644 GameScene.tscn create mode 100644 Globals.gd create mode 100644 Island.tscn create mode 100644 Level.gd create mode 100644 NavTarget.gd create mode 100644 Player.gd create mode 100644 assets/digsite.svg create mode 100644 assets/digsite.svg.import create mode 100644 assets/island.svg create mode 100644 assets/island.svg.import create mode 100644 assets/pirate.svg create mode 100644 assets/pirate.svg.import create mode 100644 assets/pirate_with_shovel.svg create mode 100644 assets/pirate_with_shovel.svg.import create mode 100644 assets/treasure.svg create mode 100644 assets/treasure.svg.import create mode 100644 assets/water.svg create mode 100644 assets/water.svg.import create mode 100644 default_env.tres create mode 100644 icon.png create mode 100644 icon.png.import create mode 100644 project.godot diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3caccf9 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +.import/* +.*.swp diff --git a/DebugLayer.gd b/DebugLayer.gd new file mode 100644 index 0000000..f55cd3f --- /dev/null +++ b/DebugLayer.gd @@ -0,0 +1,39 @@ +extends Node2D + +var NavTarget + +func _ready(): + NavTarget = get_node("NavTarget") + +func draw_nav_target_box(): + var rect = Rect2 (NavTarget.GridCoords * Globals.GRID_SIZE, Vector2(Globals.GRID_SIZE, Globals.GRID_SIZE)) + draw_rect (rect, "#99000044", true) + +func _process(_delta): + update() + +func _draw(): + var offset = -Vector2(Globals.WIDTH, Globals.HEIGHT) * 0.5 + draw_nav_target_box() + + draw_set_transform(offset, 0, Vector2.ONE) + + # outer bounds + draw_line(Vector2(0,0), Vector2(Globals.WIDTH, 0), Globals.GRID_COLOR) + draw_line(Vector2(0,Globals.HEIGHT), Vector2(Globals.WIDTH, Globals.HEIGHT), Globals.GRID_COLOR) + + draw_line(Vector2(0,0), Vector2(0, Globals.HEIGHT), Globals.GRID_COLOR) + draw_line(Vector2(Globals.WIDTH,0), Vector2(Globals.WIDTH, Globals.HEIGHT), Globals.GRID_COLOR) + + # inner lines + var columns = floor (Globals.WIDTH / Globals.GRID_SIZE) + var rows = floor (Globals.HEIGHT / Globals.GRID_SIZE) + + for x in range (columns): + draw_line (Vector2(x * Globals.GRID_SIZE, 0), Vector2(x * Globals.GRID_SIZE, Globals.HEIGHT), Globals.GRID_COLOR) + + for y in range (rows): + draw_line (Vector2(0, y * Globals.GRID_SIZE), Vector2(Globals.WIDTH, y * Globals.GRID_SIZE), Globals.GRID_COLOR) + + draw_line(Vector2(0, Globals.HEIGHT * 0.5), Vector2(Globals.WIDTH, Globals.HEIGHT * 0.5), "#aa0000", 3) + draw_line(Vector2(Globals.WIDTH * 0.5, 0), Vector2(Globals.WIDTH * 0.5, Globals.HEIGHT), "#00aa00", 3) diff --git a/DigSite.tscn b/DigSite.tscn new file mode 100644 index 0000000..64995a7 --- /dev/null +++ b/DigSite.tscn @@ -0,0 +1,16 @@ +[gd_scene load_steps=3 format=2] + +[ext_resource path="res://assets/digsite.svg" type="Texture" id=1] +[ext_resource path="res://assets/treasure.svg" type="Texture" id=2] + +[node name="DigSite" type="Node2D"] + +[node name="treasure" type="Sprite" parent="."] +position = Vector2( -2.6727, -19.5998 ) +z_index = 3 +texture = ExtResource( 2 ) + +[node name="digsite" type="Sprite" parent="."] +visible = false +z_index = 3 +texture = ExtResource( 1 ) diff --git a/GameCamera.gd b/GameCamera.gd new file mode 100644 index 0000000..b089a47 --- /dev/null +++ b/GameCamera.gd @@ -0,0 +1,24 @@ +extends Camera2D + +var Widgets + +# Called when the node enters the scene tree for the first time. +func _ready(): + Widgets = get_node("Widgets") + pass # Replace with function body. + +func _process(_delta): + var win_size = OS.get_window_safe_area().size + Widgets.margin_left = -win_size.x * 0.5 + Widgets.margin_top = -win_size.y * 0.5 + pass + +func screenToWorld(pos): + var screen_size = OS.get_window_safe_area().size + print ("pos", pos) + print ("Screen size: ", screen_size) + var camera_coords = pos - screen_size * 0.5 + print ("Camera coords: ", camera_coords) + var world_coords = camera_coords + self.transform.origin + print ("world coords: ", world_coords) + return world_coords diff --git a/GameScene.gd b/GameScene.gd new file mode 100644 index 0000000..5e159d6 --- /dev/null +++ b/GameScene.gd @@ -0,0 +1,59 @@ +extends Node2D + +var Player +var Level +var GameCamera +var DebugLayer +var NavTarget +var DebugLabel +var DigSite +var DiggedSites = {} + +# 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(): + Player = get_node("Player") + Level = get_node("Level") + GameCamera = get_node("GameCamera") + DebugLayer = get_node("DebugLayer") + NavTarget = get_node("DebugLayer/NavTarget") + DebugLabel = GameCamera.get_node("Widgets/HBoxContainer/DebugLabel") + DigSite = preload("res://DigSite.tscn") + Globals.DebugLabel = DebugLabel + + Player.connect("DigSiteReached", self, "handle_dig_site_reached") + Player.connect("DigStop", self, "handle_dig_stop") + + +func handle_dig_site_reached(dig_grid_coords): + if not DiggedSites.has(dig_grid_coords): + print ("Starting digging at ", dig_grid_coords) + var new_digsite = DigSite.instance() + new_digsite.transform.origin = dig_grid_coords + print ("digsite world:", new_digsite.transform.origin) + Level.add_child(new_digsite) + DiggedSites[dig_grid_coords] = true + Player.start_dig() + + +func handle_dig_stop(): + print ("Stopping digging") + + +func _process(delta): + Globals.ClearDebugLabel() + GameCamera.transform.origin = Player.transform.origin + + +func _input(event): + if event is InputEventMouseButton: + if event.button_index == BUTTON_LEFT and event.pressed: + var event_world_pos = GameCamera.screenToWorld(event.position) + NavTarget.transform.origin = event_world_pos + Player.NavTarget = Globals.WorldToGridCenter(event_world_pos) + DebugLabel.text = str(event_world_pos) + if event.button_index == BUTTON_WHEEL_UP and event.pressed: + print("Wheel up") diff --git a/GameScene.tscn b/GameScene.tscn new file mode 100644 index 0000000..84dae41 --- /dev/null +++ b/GameScene.tscn @@ -0,0 +1,81 @@ +[gd_scene load_steps=11 format=2] + +[ext_resource path="res://assets/island.svg" type="Texture" id=1] +[ext_resource path="res://Player.gd" type="Script" id=2] +[ext_resource path="res://assets/water.svg" type="Texture" id=3] +[ext_resource path="res://assets/pirate.svg" type="Texture" id=4] +[ext_resource path="res://GameScene.gd" type="Script" id=5] +[ext_resource path="res://assets/pirate_with_shovel.svg" type="Texture" id=6] +[ext_resource path="res://DebugLayer.gd" type="Script" id=7] +[ext_resource path="res://GameCamera.gd" type="Script" id=8] +[ext_resource path="res://NavTarget.gd" type="Script" id=9] +[ext_resource path="res://DigSite.tscn" type="PackedScene" id=10] + +[node name="GameScene" type="Node2D"] +script = ExtResource( 5 ) + +[node name="DebugLayer" type="Node2D" parent="."] +z_index = 2 +script = ExtResource( 7 ) + +[node name="NavTarget" type="Node2D" parent="DebugLayer"] +z_index = 5 +script = ExtResource( 9 ) + +[node name="Level" type="Node2D" parent="."] +z_index = -10 + +[node name="Water" type="Sprite" parent="Level"] +scale = Vector2( 1098, 303 ) +texture = ExtResource( 3 ) + +[node name="island" type="Sprite" parent="Level"] +z_index = 1 +texture = ExtResource( 1 ) + +[node name="DigSite" parent="Level" instance=ExtResource( 10 )] +visible = false +z_index = 3 + +[node name="GameCamera" type="Camera2D" parent="."] +current = true +script = ExtResource( 8 ) + +[node name="Widgets" type="Control" parent="GameCamera"] +margin_left = 8.0 +margin_right = 40.0 +margin_bottom = 40.0 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="HBoxContainer" type="HBoxContainer" parent="GameCamera/Widgets"] +margin_right = 40.0 +margin_bottom = 40.0 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="DebugLabel" type="Label" parent="GameCamera/Widgets/HBoxContainer"] +self_modulate = Color( 0, 0, 0, 1 ) +margin_top = 4.0 +margin_right = 109.0 +margin_bottom = 35.0 +text = "Blabuiaeuiaeuiae +" +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="Player" type="Node2D" parent="."] +z_index = -5 +script = ExtResource( 2 ) + +[node name="PirateSprite" type="Sprite" parent="Player"] +texture = ExtResource( 4 ) + +[node name="PirateWithShovelSprite" type="Sprite" parent="Player"] +texture = ExtResource( 6 ) + +[node name="ShovelTargetOffset" type="Node2D" parent="Player"] +position = Vector2( 88, 74 ) diff --git a/Globals.gd b/Globals.gd new file mode 100644 index 0000000..0716f4d --- /dev/null +++ b/Globals.gd @@ -0,0 +1,41 @@ +extends Node + +const WIDTH=1024 +const HEIGHT=1024 +const GRID_SIZE=float(64.0) +const GRID_COLOR="#000000" +const SHOVEL_DURATION=1 + +var DebugLabel = null + +# Called when the node enters the scene tree for the first time. +func _ready(): + pass # Replace with function body. + +func ClearDebugLabel(): + if DebugLabel == null: + return + + DebugLabel.text = "" + +func DebugLabelAdd(text): + if DebugLabel == null: + return + + DebugLabel.text = DebugLabel.text + text + "\n" + +func WorldToGridCoord(world_pos): + return Vector2( + floor (world_pos.x / Globals.GRID_SIZE), + floor (world_pos.y / Globals.GRID_SIZE) + ) + +func WorldToGridCenter(world_pos): + return WorldToGridCoord(world_pos) * GRID_SIZE + Vector2(GRID_SIZE, GRID_SIZE) * 0.5 + +func GridCenterToWorldCoord(grid_coord): + return grid_coord * GRID_SIZE + Vector2(GRID_SIZE, GRID_SIZE) * 0.5 + +# Called every frame. 'delta' is the elapsed time since the previous frame. +#func _process(delta): +# pass diff --git a/Island.tscn b/Island.tscn new file mode 100644 index 0000000..fe875d2 --- /dev/null +++ b/Island.tscn @@ -0,0 +1,26 @@ +[gd_scene load_steps=5 format=2] + +[ext_resource path="res://assets/island.svg" type="Texture" id=1] +[ext_resource path="res://Player.gd" type="Script" id=2] +[ext_resource path="res://assets/water.svg" type="Texture" id=3] +[ext_resource path="res://assets/pirate.svg" type="Texture" id=4] + +[node name="Node2D" type="Node2D"] + +[node name="Sprite" type="Sprite" parent="."] +scale = Vector2( 1098, 303 ) +texture = ExtResource( 3 ) + +[node name="island" type="Sprite" parent="."] +position = Vector2( 485, 278 ) +texture = ExtResource( 1 ) + +[node name="Player" type="Node2D" parent="."] +script = ExtResource( 2 ) + +[node name="pirate" type="Sprite" parent="Player"] +position = Vector2( 228, 207 ) +texture = ExtResource( 4 ) + +[node name="Camera2D" type="Camera2D" parent="."] +current = true diff --git a/Level.gd b/Level.gd new file mode 100644 index 0000000..ea52656 --- /dev/null +++ b/Level.gd @@ -0,0 +1,10 @@ +extends Node2D + +# Called when the node enters the scene tree for the first time. +func _ready(): + pass # Replace with function body. + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +#func _process(delta): +# pass diff --git a/NavTarget.gd b/NavTarget.gd new file mode 100644 index 0000000..ad45a89 --- /dev/null +++ b/NavTarget.gd @@ -0,0 +1,16 @@ +extends Node2D + +var GridCoords = Vector2.ZERO + +# Called when the node enters the scene tree for the first time. +func _ready(): + pass # Replace with function body. + +func _process(_delta): + GridCoords = Globals.WorldToGridCoord(self.transform.origin) + + Globals.DebugLabelAdd(str("GridCoords: ", GridCoords)) + Globals.DebugLabelAdd(str("Nav Origin: ", self.transform.origin)) + +func _draw(): + draw_circle (Vector2.ZERO, 5, "#ff0000") diff --git a/Player.gd b/Player.gd new file mode 100644 index 0000000..c033348 --- /dev/null +++ b/Player.gd @@ -0,0 +1,82 @@ +extends Node2D + +enum PlayerState { + IDLE, + WALKING, + SHOVEL +} + +signal DigSiteReached +signal DigStop + +# Declare member variables here. Examples: +# var a = 2 +# var b = "text" +var speed = 200 +var isInteracting = false +var ShovelSprite +var shovel_offset = Vector2.ZERO +var NavTarget = Vector2.ZERO +var State = PlayerState.IDLE +var ShovelTimer = 0 + +# Called when the node enters the scene tree for the first time. +func _ready(): + ShovelSprite = get_node("PirateWithShovelSprite") + var ShovelTargetOffset = get_node("ShovelTargetOffset") + shovel_offset = ShovelTargetOffset.transform.origin - self.transform.origin + +func start_dig(): + self.State = PlayerState.SHOVEL + self.ShovelTimer = Globals.SHOVEL_DURATION + +func update_state(delta): + if State == PlayerState.SHOVEL: + ShovelTimer = ShovelTimer - delta + if ShovelTimer < 0: + emit_signal ("DigStop") + ShovelTimer = 0 + State = PlayerState.IDLE + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _process(delta): + update_state(delta) + + Globals.DebugLabelAdd(str("Player.NavTarget: ", NavTarget)) + + var direction = Vector2.ZERO + + if Input.is_action_pressed("walk_left"): + direction.x = direction.x - 1 + + if Input.is_action_pressed("walk_right"): + direction.x = direction.x + 1 + + if Input.is_action_pressed("walk_up"): + direction.y = direction.y - 1 + + if Input.is_action_pressed("walk_down"): + direction.y = direction.y + 1 + + direction = direction.normalized() + + var movement_target = NavTarget - shovel_offset + var vec_to_target = movement_target - self.transform.origin + var dist_to_target = vec_to_target.length() + + Globals.DebugLabelAdd(str("Direction: ", direction)) + + if dist_to_target > speed * delta: + direction = (vec_to_target).normalized() + var velocity = direction * speed + self.transform.origin = self.transform.origin + velocity * delta + self.State = PlayerState.WALKING + else: + direction = Vector2.ZERO + self.transform.origin = movement_target + + if self.State == PlayerState.WALKING: + emit_signal ("DigSiteReached", Globals.WorldToGridCenter(NavTarget)) + + ShovelSprite.visible = State == PlayerState.SHOVEL + diff --git a/assets/digsite.svg b/assets/digsite.svg new file mode 100644 index 0000000..f67cc1b --- /dev/null +++ b/assets/digsite.svg @@ -0,0 +1,102 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/assets/digsite.svg.import b/assets/digsite.svg.import new file mode 100644 index 0000000..ca262c7 --- /dev/null +++ b/assets/digsite.svg.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/digsite.svg-3d544b72e8538c493ff2c7b0ea3cbdfe.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/digsite.svg" +dest_files=[ "res://.import/digsite.svg-3d544b72e8538c493ff2c7b0ea3cbdfe.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/island.svg b/assets/island.svg new file mode 100644 index 0000000..a58a69c --- /dev/null +++ b/assets/island.svg @@ -0,0 +1,67 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + diff --git a/assets/island.svg.import b/assets/island.svg.import new file mode 100644 index 0000000..bb90f00 --- /dev/null +++ b/assets/island.svg.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/island.svg-e09d289820221828f73255b2ef99765b.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/island.svg" +dest_files=[ "res://.import/island.svg-e09d289820221828f73255b2ef99765b.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/pirate.svg b/assets/pirate.svg new file mode 100644 index 0000000..9c800ed --- /dev/null +++ b/assets/pirate.svg @@ -0,0 +1,154 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/pirate.svg.import b/assets/pirate.svg.import new file mode 100644 index 0000000..ff815a6 --- /dev/null +++ b/assets/pirate.svg.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/pirate.svg-b5137b2528ef058c6c14f8ea13b79308.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/pirate.svg" +dest_files=[ "res://.import/pirate.svg-b5137b2528ef058c6c14f8ea13b79308.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/pirate_with_shovel.svg b/assets/pirate_with_shovel.svg new file mode 100644 index 0000000..a65786c --- /dev/null +++ b/assets/pirate_with_shovel.svg @@ -0,0 +1,178 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/pirate_with_shovel.svg.import b/assets/pirate_with_shovel.svg.import new file mode 100644 index 0000000..1cab7b6 --- /dev/null +++ b/assets/pirate_with_shovel.svg.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/pirate_with_shovel.svg-923e9589b9df5155880262d305572474.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/pirate_with_shovel.svg" +dest_files=[ "res://.import/pirate_with_shovel.svg-923e9589b9df5155880262d305572474.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/treasure.svg b/assets/treasure.svg new file mode 100644 index 0000000..585283f --- /dev/null +++ b/assets/treasure.svg @@ -0,0 +1,141 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/treasure.svg.import b/assets/treasure.svg.import new file mode 100644 index 0000000..a0069aa --- /dev/null +++ b/assets/treasure.svg.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/treasure.svg-4bfa43428d947d30919c959f060e57d8.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/treasure.svg" +dest_files=[ "res://.import/treasure.svg-4bfa43428d947d30919c959f060e57d8.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/water.svg b/assets/water.svg new file mode 100644 index 0000000..4545059 --- /dev/null +++ b/assets/water.svg @@ -0,0 +1,68 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + diff --git a/assets/water.svg.import b/assets/water.svg.import new file mode 100644 index 0000000..0bcc4bc --- /dev/null +++ b/assets/water.svg.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/water.svg-da03a482c42144629df10051327cffaf.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/water.svg" +dest_files=[ "res://.import/water.svg-da03a482c42144629df10051327cffaf.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/default_env.tres b/default_env.tres new file mode 100644 index 0000000..20207a4 --- /dev/null +++ b/default_env.tres @@ -0,0 +1,7 @@ +[gd_resource type="Environment" load_steps=2 format=2] + +[sub_resource type="ProceduralSky" id=1] + +[resource] +background_mode = 2 +background_sky = SubResource( 1 ) diff --git a/icon.png b/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..c98fbb601c83c81ec8c22b1dba7d1d57c62b323c GIT binary patch literal 3305 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 literal 0 HcmV?d00001 diff --git a/icon.png.import b/icon.png.import new file mode 100644 index 0000000..96cbf46 --- /dev/null +++ b/icon.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://icon.png" +dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/project.godot b/project.godot new file mode 100644 index 0000000..6c562d8 --- /dev/null +++ b/project.godot @@ -0,0 +1,58 @@ +; Engine configuration file. +; It's best edited using the editor UI and not directly, +; since the parameters that go here are not all obvious. +; +; Format: +; [section] ; section goes between [] +; param=value ; assign values to parameters + +config_version=4 + +[application] + +config/name="LilPirateTreasureHunt" +config/icon="res://icon.png" + +[autoload] + +Globals="*res://Globals.gd" + +[global] + +view=false + +[input] + +walk_left={ +"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":85,"unicode":0,"echo":false,"script":null) + ] +} +walk_right={ +"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":65,"unicode":0,"echo":false,"script":null) + ] +} +walk_up={ +"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":86,"unicode":0,"echo":false,"script":null) + ] +} +walk_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":73,"unicode":0,"echo":false,"script":null) + ] +} +interact={ +"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":32,"unicode":0,"echo":false,"script":null) + ] +} + +[physics] + +common/enable_pause_aware_picking=true + +[rendering] + +environment/default_environment="res://default_env.tres"