From 0ed4540bf0ebdef23aebfc02acafc1d92085241a Mon Sep 17 00:00:00 2001 From: Martin Felis Date: Fri, 16 Jul 2021 12:07:11 +0200 Subject: [PATCH] Gameplay elements implemented --- Globals.gd | 2 +- assets/Yeah.png | Bin 0 -> 105315 bytes assets/Yeah.png.import | 34 ++++++++++++ assets/pirate_with_shovel.svg | 12 ++--- assets/shovel.svg | 93 ++++++++++++++++++++++++++++++++ assets/shovel.svg.import | 34 ++++++++++++ scenes/Game.tscn | 54 ++++++++++++++++++- scenes/Island.gd | 5 ++ scenes/World.gd | 98 +++++++++++++++++++++++++++------- scenes/pirate.gd | 39 ++++++++++++-- 10 files changed, 341 insertions(+), 30 deletions(-) create mode 100644 assets/Yeah.png create mode 100644 assets/Yeah.png.import create mode 100644 assets/shovel.svg create mode 100644 assets/shovel.svg.import diff --git a/Globals.gd b/Globals.gd index 78dc25d..353c07e 100644 --- a/Globals.gd +++ b/Globals.gd @@ -13,7 +13,7 @@ var OceanNavGrid = null var IslandNavGrid = null var hex_size = 128 -var debug_nav = true +var debug_nav = false # Called when the node enters the scene tree for the first time. func _ready(): diff --git a/assets/Yeah.png b/assets/Yeah.png new file mode 100644 index 0000000000000000000000000000000000000000..29485ac6335c484aa228915401b2911270d94933 GIT binary patch literal 105315 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 z

IJ0+Z!>G(OG8aG8l0IJ+wOd5+iD`7(w}AL^;9 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 QZrY@&rhBFYdpY?30B54ur2qf` literal 0 HcmV?d00001 diff --git a/assets/Yeah.png.import b/assets/Yeah.png.import new file mode 100644 index 0000000..5b15d35 --- /dev/null +++ b/assets/Yeah.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Yeah.png-e875d971d004375e7d655e960f859fdd.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Yeah.png" +dest_files=[ "res://.import/Yeah.png-e875d971d004375e7d655e960f859fdd.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 index a65786c..91f4add 100644 --- a/assets/pirate_with_shovel.svg +++ b/assets/pirate_with_shovel.svg @@ -25,15 +25,15 @@ borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="2.8" - inkscape:cx="201.04361" - inkscape:cy="80.467705" + inkscape:zoom="0.98994949" + inkscape:cx="263.67284" + inkscape:cy="10.726653" inkscape:document-units="mm" inkscape:current-layer="layer2" showgrid="false" - inkscape:window-width="1916" + inkscape:window-width="956" inkscape:window-height="1041" - inkscape:window-x="0" + inkscape:window-x="960" inkscape:window-y="37" inkscape:window-maximized="0" fit-margin-top="0" @@ -49,7 +49,7 @@ image/svg+xml - + diff --git a/assets/shovel.svg b/assets/shovel.svg new file mode 100644 index 0000000..74b561c --- /dev/null +++ b/assets/shovel.svg @@ -0,0 +1,93 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + diff --git a/assets/shovel.svg.import b/assets/shovel.svg.import new file mode 100644 index 0000000..d8d8ac9 --- /dev/null +++ b/assets/shovel.svg.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/shovel.svg-008b29b052e7f004096ee9ed0e7f010d.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/shovel.svg" +dest_files=[ "res://.import/shovel.svg-008b29b052e7f004096ee9ed0e7f010d.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/scenes/Game.tscn b/scenes/Game.tscn index 4eb447b..f29d4ef 100644 --- a/scenes/Game.tscn +++ b/scenes/Game.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=14 format=2] +[gd_scene load_steps=16 format=2] [ext_resource path="res://scenes/World.gd" type="Script" id=1] [ext_resource path="res://scenes/Grid.gd" type="Script" id=2] @@ -9,6 +9,8 @@ [ext_resource path="res://scenes/Editor.gd" type="Script" id=7] [ext_resource path="res://scenes/GridHighlight.gd" type="Script" id=8] [ext_resource path="res://assets/boat.svg" type="Texture" id=9] +[ext_resource path="res://assets/shovel.svg" type="Texture" id=10] +[ext_resource path="res://assets/Yeah.png" type="Texture" id=11] [sub_resource type="DynamicFont" id=1] size = 27 @@ -273,15 +275,62 @@ margin_bottom = 221.0 rect_min_size = Vector2( 100, 100 ) text = "Birdy" +[node name="DigButton" type="Button" parent="World/UI/VBoxContainer"] +margin_top = 242.0 +margin_right = 115.0 +margin_bottom = 342.0 +rect_min_size = Vector2( 100, 100 ) +text = "Dig" + +[node name="SuccessMessage" type="Control" parent="World/UI"] +visible = false +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +margin_left = -20.0 +margin_top = -20.0 +margin_right = 20.0 +margin_bottom = 20.0 +rect_scale = Vector2( 0.5, 0.5 ) +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="TextureRect" type="TextureRect" parent="World/UI/SuccessMessage"] +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +margin_left = -706.0 +margin_top = -264.0 +margin_right = 706.0 +margin_bottom = 264.0 +texture = ExtResource( 11 ) +stretch_mode = 4 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="DigSites" type="Node2D" parent="World"] + [node name="PlayerChar" type="KinematicBody2D" parent="World"] script = ExtResource( 5 ) -[node name="pirate" type="Sprite" parent="World/PlayerChar"] +[node name="Pirate" type="Sprite" parent="World/PlayerChar"] scale = Vector2( 0.45498, 0.45498 ) texture = ExtResource( 3 ) [node name="CollisionShape2D" type="CollisionShape2D" parent="World/PlayerChar"] +[node name="Shovel" type="Sprite" parent="World/PlayerChar"] +visible = false +scale = Vector2( 0.455, 0.455 ) +texture = ExtResource( 10 ) + +[node name="DigTimer" type="Timer" parent="World/PlayerChar"] +one_shot = true + [node name="Camera" type="Camera2D" parent="World"] current = true @@ -313,3 +362,4 @@ render_target_update_mode = 1 [connection signal="pressed" from="World/UI/TopContainer/Button" to="World" method="_on_generate_button_pressed"] [connection signal="pressed" from="World/UI/VBoxContainer/MapButton" to="World" method="_on_MapButton_pressed"] [connection signal="pressed" from="World/UI/VBoxContainer/BirdyButton" to="World" method="_on_BirdyButton_pressed"] +[connection signal="pressed" from="World/UI/VBoxContainer/DigButton" to="World" method="_on_DigButton_pressed"] diff --git a/scenes/Island.gd b/scenes/Island.gd index c6a6033..377a08a 100644 --- a/scenes/Island.gd +++ b/scenes/Island.gd @@ -135,6 +135,11 @@ func get_tile_by_world_coord(world_coord: Vector2): return null +func is_point_on_treasure_site(world_coord: Vector2): + var local_coord = get_local_coord_by_world_coord(world_coord) + return treasure_local_coords != null and local_coord == treasure_local_coords + + func is_point_on_landing_site(world_coord: Vector2): return (Globals.WorldToHex(world_coord) - Globals.WorldToHex(landing_site_world)).length_squared() < 1 diff --git a/scenes/World.gd b/scenes/World.gd index 528a668..192d331 100644 --- a/scenes/World.gd +++ b/scenes/World.gd @@ -6,6 +6,7 @@ onready var GridHighlight = get_node("GridHighlight") onready var Editor = get_node("../Editor") onready var Islands = get_node("Islands") +onready var DigSites = get_node("DigSites") onready var EditIslandButton = get_node("UI/TopContainer/EditIslandButton") onready var WorldCamera = get_node("Camera") onready var OffsetValueLabel = get_node("UI/TopContainer/OffsetValue") @@ -13,6 +14,7 @@ onready var ZoomValueLabel = get_node("UI/TopContainer/ZoomValue") onready var HexCoordValueLabel = get_node("UI/TopContainer/HexCoordValue") onready var WorldCoordValueLabel = get_node("UI/TopContainer/WorldCoordValue") onready var TileTypeValueLabel = get_node("UI/TopContainer/TileTypeValue") +onready var SuccessMessage = get_node("UI/SuccessMessage") onready var PlayerChar = get_node("PlayerChar") onready var PlayerBoat = get_node("PlayerBoat") onready var FPSValueLabel = get_node("UI/TopContainer/FPSValue") @@ -25,6 +27,9 @@ onready var BirdyTimer = get_node("Birdy/Timer") var Island = preload("Island.gd") var SpringDamper = preload("res://SpringDamper.gd") +var DigSiteSprite = preload("res://assets/digsite.svg") +var DigSiteTreasureSprite = preload("res://assets/treasuredigsite.svg") + var hex_grid_bbox = [[0,0], [10,10]] var hex_hover = Vector2.ZERO @@ -61,7 +66,9 @@ func _ready(): # Set player starting position PlayerChar.position = Globals.HexGrid.get_hex_center(Vector2(0,0)) - + PlayerChar.connect("dig_stopped", self, "on_dig_stopped") + + self.connect("treasure_found", self, "on_treasure_found") func _process(delta): if is_editor_active(): @@ -119,6 +126,12 @@ func clear_islands(): for island in Islands.get_children(): Islands.remove_child(island) island.queue_free() + + +func clear_digsites(): + for digsite in DigSites.get_children(): + DigSites.remove_child(digsite) + digsite.queue_free() func get_tile_type(world_coord: Vector2): @@ -140,6 +153,14 @@ func add_island_at(file_name, offset_world: Vector2): func is_editor_active(): return Editor == null or not Editor.is_active() + +func check_player_on_treasure(): + if current_island == null: + return false + + return current_island.is_point_on_treasure_site(Globals.HexToWorld(PlayerChar.cur_tile)) + + func check_island_location_valid(new_island): var grid_origin_world_coord = Globals.HexToWorld(Vector2(0,0)) if new_island.get_tile_by_world_coord(grid_origin_world_coord) != null: @@ -163,6 +184,9 @@ func place_treasure(): treasure_island.treasure_local_coords = grass_tiles[randi() % len(grass_tiles)] + if Globals.debug_nav: + treasure_island.highlight_treasure = true + treasure_island.update() func render_treasure_map(): @@ -190,26 +214,43 @@ func render_treasure_map(): IslandMap.texture = IslandMapRenderer.get_texture() -func generate(): +func reset(): PlayerChar.transform.origin = Vector2.ZERO PlayerChar.position = Vector2.ZERO PlayerChar.target = Vector2.ZERO + hex_line_path = [] + player_navigation_path = [] + player_path_plan_start = null + player_path_plan_end = null + + current_island = null treasure_island = null + clear_islands() + clear_digsites() + + SuccessMessage.visible = false + +func generate(): + reset() + var rng = RandomNumberGenerator.new() rng.randomize() - - clear_islands() + randomize() + var radius = 800 - var num_islands = 10 - var island_index_offset = randi() % 10 + var num_islands = 4 + + var island_files = [] + for i in range (num_islands): + island_files.append("res://islands/pirate_game_island_" + str(i) + ".island") + island_files.shuffle() for i in range (num_islands): var island = Island.new() - var island_index = (i + island_index_offset) % 10 - var file_name = "res://islands/pirate_game_island_" + str(island_index) + ".island" + var file_name = island_files[i] island.load_island(file_name) var rand_coord = Vector2(rng.randi_range(-radius, radius), rng.randi_range(-radius, radius)) @@ -234,7 +275,7 @@ func generate(): Islands.add_child(island) num_islands = Islands.get_child_count() - treasure_island = Islands.get_child(randi() % num_islands) + treasure_island = Islands.get_child(rng.randi() % num_islands) place_treasure() @@ -291,6 +332,7 @@ func update_current_island(): func on_enter_island(island): print ("Entering island") + PlayerChar.on_enter_island() current_island = island anchor_tile = PlayerChar.prev_tile landing_tile = PlayerChar.cur_tile @@ -303,11 +345,31 @@ func on_enter_island(island): func on_leave_island(island): print ("Leaving island") + PlayerChar.on_leave_island() island.is_active = false island.landing_site_local_coord = null island.update() +func on_dig_stopped(): + print ("Dig stopped!") + var dig_site = Sprite.new() + dig_site.transform.origin = Globals.HexToWorld(PlayerChar.cur_tile) + + if check_player_on_treasure(): + emit_signal("treasure_found") + on_treasure_found() + dig_site.texture = DigSiteTreasureSprite + else: + dig_site.texture = DigSiteSprite + + DigSites.add_child(dig_site) + + +func on_treasure_found(): + SuccessMessage.visible = true + + func check_player_near_anchor(): if current_island == null: return false @@ -315,6 +377,7 @@ func check_player_near_anchor(): var anchor_world = Globals.HexToWorld(anchor_tile) return (PlayerChar.position - anchor_world).length() < Globals.hex_size + func update_navigation_target_ocean(start_world: Vector2, target_world: Vector2): var start_coord = Globals.WorldToHex(start_world) var goal_coord = Globals.WorldToHex(target_world) @@ -326,12 +389,10 @@ func update_navigation_target_ocean(start_world: Vector2, target_world: Vector2) var direct_path = Globals.WorldLineToHexTiles(start_world, target_world) if get_tile_type(start_world) != null and current_island != null and len(direct_path) > 1: - print ("type 0: ", get_tile_type(direct_path[0])) - print ("type 1: ", get_tile_type(direct_path[1])) - print ("on landing site: ", current_island.is_point_on_landing_site (start_world)) +# print ("on landing site: ", current_island.is_point_on_landing_site (start_world)) if current_island.is_point_on_landing_site (start_world): if get_tile_type(direct_path[1]) == null: - print ("starting from landing site") +# print ("starting from landing site") direct_path.pop_front() start_coord = Globals.WorldToHex(direct_path.front()) else: @@ -350,7 +411,7 @@ func update_navigation_target_ocean(start_world: Vector2, target_world: Vector2) print ("Could not find path!") return - print ("Using ", Globals.WorldToHex(direct_path.back()), " instead of ", goal_coord, " as goal.") +# print ("Using ", Globals.WorldToHex(direct_path.back()), " instead of ", goal_coord, " as goal.") goal_coord = Globals.WorldToHex(direct_path.back()) island_landing_site_world = last_removed @@ -375,12 +436,10 @@ func update_navigation_target_ocean(start_world: Vector2, target_world: Vector2) func update_navigation_target_island(start_world: Vector2, target_world: Vector2): - print ("Navigating Island") var start_coord = Globals.WorldToHex(start_world) var goal_coord = Globals.WorldToHex(target_world) var path = Globals.IslandNavGrid.find_path(start_coord, goal_coord) - print ("Path length: ", len(path)) for target in path.slice(0,-1): var target_world_coord = Globals.HexToWorld(target.axial_coords) var target_type = get_tile_type(target_world_coord) @@ -396,7 +455,6 @@ func update_player_navigation_target(target_world: Vector2): var start_timestamp = OS.get_system_time_msecs() var player_near_anchor = check_player_near_anchor() - print ("Player near anchor: ", player_near_anchor) if current_island != null: update_navigation_target_island(start_world, target_world) @@ -408,7 +466,6 @@ func update_player_navigation_target(target_world: Vector2): update_navigation_target_ocean(start_world, target_world) var planning_duration_msec = OS.get_system_time_msecs() - start_timestamp - print ("Planning took ", round(planning_duration_msec), "ms.") update() @@ -489,3 +546,8 @@ func _on_BirdyButton_pressed(): BirdyTimer.one_shot = true BirdyTimer.start(birdy_duration) + +func _on_DigButton_pressed(): + print ("dig pressed") + if PlayerChar.state == PlayerChar.State.Walking: + PlayerChar.on_dig_start() diff --git a/scenes/pirate.gd b/scenes/pirate.gd index 2a49921..4c6c2e2 100644 --- a/scenes/pirate.gd +++ b/scenes/pirate.gd @@ -2,13 +2,29 @@ extends KinematicBody2D export (int) var speed = 200 +enum State { + Sailing, + Walking, + Digging +} + +signal dig_stopped + +onready var Shovel = get_node("Shovel") +onready var DigTimer = get_node("DigTimer") + var velocity = Vector2() var target = Vector2() var prev_tile = null # Hex coords of previous tile var cur_tile = null # Hex coords of current tile +var state = State.Sailing func get_input(): velocity = Vector2() + + if state == State.Digging: + return + if Input.is_action_pressed("walk_right"): velocity.x += 1 if Input.is_action_pressed("walk_left"): @@ -29,13 +45,30 @@ func _physics_process(_delta): if tile != cur_tile: prev_tile = cur_tile cur_tile = tile + + Shovel.visible = state == State.Digging # Called when the node enters the scene tree for the first time. func _ready(): position = Vector2(0,0) + DigTimer.connect("timeout", self, "on_dig_stop") -# Called every frame. 'delta' is the elapsed time since the previous frame. -#func _process(delta): -# pass +func on_enter_island(): + state = State.Walking + + +func on_leave_island(): + state = State.Sailing + + +func on_dig_start(): + print ("Start digging") + state = State.Digging + DigTimer.start(1.0) + + +func on_dig_stop(): + state = State.Walking + emit_signal ("dig_stopped")