This commit is contained in:
Bryce
2026-02-21 12:18:48 -08:00
parent ff6d30259b
commit d6b36d1f13
97 changed files with 2329 additions and 68 deletions

View File

@@ -0,0 +1,173 @@
---
name: kq4-exit-checker
description: Validates that all transition pieces in a KQ4 room are correctly configured. Checks that target UIDs are valid and appear_at_node values exist in destination scenes.
---
# KQ4 Exit Checker
## Overview
This skill validates that all transition pieces in a room are correctly configured. A transition is valid if:
1. The `target` field contains the correct UID of the destination scene
2. The `appear_at_node` field matches a node name in the destination scene
3. Node names follow the naming convention (destination room name, not generic)
4. A return transition exists in the destination room (bidirectional)
## When to Use
Use this skill when you need to verify that room transitions are properly wired up. Most commonly used after creating new rooms or modifying existing ones.
## How to Use
### Step 1: Run the Skill
When you invoke this skill, specify the room number (e.g., "9", "009", or "kq4_009_shady_wooded_area").
The skill will:
1. Load the specified room's .tscn file
2. Parse all TransitionPiece nodes
3. For each transition, verify:
- The `target` UID exists and points to the correct scene
- The `appear_at_node` value matches a node in the target scene
- The node name follows the naming convention
- A return transition exists in the destination room
### Step 2: Review Results
The skill outputs:
- **Valid transitions**: Confirmed working connections
- **Invalid transitions**: Issues found with target UIDs or appear_at_node names
- **Naming violations**: Generic names like `north_exit`, `south_exit`, etc.
- **Missing destinations**: Transitions pointing to non-existent rooms
- **Missing return transitions**: Destination room lacks transition back to source
- **Duplicate nodes**: Multiple transitions with the same name
## Validation Rules
### Node Naming Convention (CRITICAL)
Transition node names MUST follow this convention:
- **CORRECT**: Name the node after the destination room (e.g., `kq4_001_beach`, `kq4_025_beach_at_river_delta`)
- **WRONG**: Generic directional names (e.g., `north_exit`, `south_exit`, `east_exit`, `west_exit`, `exit_1`)
This makes the scene self-documenting and ensures consistent `appear_at_node` references.
### Target UID Check
- The `target` field must contain a valid UID that matches an existing scene's UID
- The UID is found in the scene's `.tscn` file header: `[gd_scene format=3 uid="uid://XXXXX"]`
### appear_at_node Check
- The `appear_at_node` field must match a node name in the destination scene
- Following the naming convention, this is typically the name of the CURRENT room
- Example: If Room 001 has `kq4_025_beach_at_river_delta` → Room 025, then `appear_at_node = "kq4_001_beach"` (because Room 025 should have a node named `kq4_001_beach` that leads back)
### Bidirectional Check (CRITICAL)
Every transition MUST have a corresponding return transition in the destination room.
**The Problem**: If Room A has a transition to Room B, but Room B doesn't have a transition back to Room A, the game will crash with:
```
Node not found: "kq4_A_name/exit" (relative to "background")
```
**How to Check**:
1. For each transition in the current room, note:
- Source room name (e.g., `kq4_003_fountain_pool`)
- Transition node name (e.g., `kq4_010_forest_path`)
- Destination scene UID
2. Load the destination scene and search for a node with name = source room name:
```gdscript
# In destination room, look for:
[node name="kq4_003_fountain_pool" parent="." instance=ExtResource("...")]
```
3. If NOT FOUND, this is a CRITICAL ERROR - the transition will crash the game.
**Example Failure**:
```
Room 003 (Fountain Pool):
Transition: kq4_010_forest_path
appear_at_node = "kq4_003_fountain_pool"
target = "uid://3ujj97iw54vo5" (room 010)
Checking Room 010 (Forest Path)...
ERROR: Missing return transition!
Room 010 does NOT have a node named "kq4_003_fountain_pool"
This will cause: Node not found: "kq4_003_fountain_pool/exit"
```
**Required Fix**: Add the missing transition to Room 010:
```gdscript
[node name="kq4_003_fountain_pool" parent="." instance=ExtResource("4_abc")]
appear_at_node = "kq4_010_forest_path"
target = "uid://151dbn9bybiwx"
label = "Fountain Pool"
```
### Script Check
- Make sure that the signals are wired up to real functions for the transition pieces
- Make sure that the script references nodes that are actually in the scene tree
## Example Output
```
Checking exits for Room 3 (Fountain Pool)...
Transition: kq4_002_meadow
target: uid://1489d4oh9twtu ✓
appear_at_node: kq4_003_fountain_pool
Checking destination scene (Room 2)...
Node kq4_003_fountain_pool found ✓
Transition: kq4_010_forest_path
target: uid://3ujj97iw54vo5 ✓
appear_at_node: kq4_003_fountain_pool
Checking destination scene (Room 10)...
ERROR: Node "kq4_003_fountain_pool" NOT FOUND in destination!
This will cause crash: Node not found: "kq4_003_fountain_pool/exit"
FIX: Add transition node "kq4_003_fountain_pool" to Room 10
ERROR: Duplicate node "kq4_010_forest_path" found at lines 54 and 67!
ERROR: Generic node name "west_exit" should be renamed to destination room name!
Summary: 5 transitions checked, 3 errors found
```
## Technical Details
### Finding Scene UIDs
Scene UIDs are stored in `.uid` files or in the .tscn file header:
```bash
# Method 1: Read .uid file
cat scenes/kq4_009_shady_wooded_area/kq4_009_shady_wooded_area.tscn.uid
# Method 2: Parse .tscn header
head -1 scenes/kq4_009_shady_wooded_area/kq4_009_shady_wooded_area.tscn
# Output: [gd_scene format=3 uid="uid://1hkplw2a78b1y"]
```
### Finding Node Names in Scene
Node names are the `name=` attributes in the .tscn file:
```gdscript
[node name="kq4_003_fountain_pool" parent="." instance=ExtResource("4_abc")]
```
### Finding a Specific Node in a Scene
```bash
grep '\[node name="kq4_003_fountain_pool"' scenes/kq4_010_forest_path/kq4_010_forest_path.tscn
```
## Common Issues
1. **Missing return transition**: Destination room lacks a transition back to source room - CAUSES CRASH
2. **Generic node names**: Using `north_exit`, `south_exit`, etc. instead of destination room names
3. **appear_at_node mismatch**: The node name doesn't exist in the destination scene
4. **Missing target UID**: The target UID doesn't match any existing scene
5. **Duplicate node names**: Multiple transitions with the same name in one scene
6. **Bad scripts**: Transition script referencing non-existent nodes
## Checklist for Each Transition
For each transition in Room A going to Room B:
- [ ] Node name = `kq4_B_name` (destination room name)
- [ ] `target` = valid UID of Room B's scene
- [ ] `appear_at_node` = `kq4_A_name` (current room name)
- [ ] Room B has a node named `kq4_A_name`
- [ ] That node in Room B has `appear_at_node = "kq4_B_name"`
- [ ] Signal connection exists in .tscn
- [ ] Handler function exists in .gd file

View File

@@ -47,20 +47,30 @@ Reference the template import file, remember to use create_uid.py to create a ui
### Step 5: Update .tscn File - Transition Pieces
When adding a transition piece to the CURRENT room that leads to a DESTINATION room:
## CRITICAL: Transition Naming Convention
- **Node name**: The node name should match the destination room name (e.g., `kq4_016_graveyard`)
- **target**: The SCENE UID of the destination room (from the destination's .tscn file)
- **appear_at_node**: The NAME of the transition node in the DESTINATION room that leads BACK to the current room. This is almost always the name of the current room, as it it is saying which exit in the destination room to transition move the player to.
- **label**: Human-readable name for the destination (e.g., "Graveyard")
### Node Naming Rule
**ALWAYS name transition nodes after their DESTINATION room, NEVER use generic directional names.**
Example - Adding a south exit from room 010 to room 016:
| CORRECT | WRONG |
|---------|-------|
| `kq4_016_graveyard` | `north_exit` |
| `kq4_003_fountain_pool` | `south_exit` |
| `kq4_010_forest_path` | `east_exit` |
| `kq4_009_shady_wooded_area` | `west_exit` |
### appear_at_node Rule
The `appear_at_node` should be the name of the transition node in the DESTINATION room that leads back to the CURRENT room. Following the naming convention, this is always the current room's name.
### Example - Adding a south exit from room 010 to room 016:
In Room 010 (`kq4_010_forest_path.tscn`):
```gdscript
[node name="kq4_016_graveyard" parent="." instance=ExtResource("4_abc")]
position = Vector2(910, 542)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_010_forest_path" # Name of transition in ROOM 016 that goes back to 010
target = "uid://621uqunr9pm" # Scene UID of room 016
appear_at_node = "kq4_010_forest_path" # This is the CURRENT room's name
target = "uid://27b2k6gky3afg" # Scene UID of destination room 016
label = "Graveyard"
[node name="entrance" parent="kq4_016_graveyard" index="0"]
@@ -68,40 +78,27 @@ position = Vector2(118, 514)
[node name="exit" parent="kq4_016_graveyard" index="1"]
position = Vector2(151, 615)
```
Then add the signal connection in the current room:
```gdscript
[connection signal="interacted" from="kq4_016_graveyard" to="." method="_on_graveyard_interacted"]
```
And add the handler in the current room's .gd file:
Then add the handler in Room 010's .gd file:
```gdscript
func _on_graveyard_interacted() -> void:
$kq4_016_graveyard.default_script(self)
$kq4_016_graveyard.default_script(self)
```
### Step 6: Update .gd File
Remove template functions and add only handlers for connected rooms:
```gdscript
extends Scene
### Step 6: Update the Destination Room (Bidirectional Transitions)
**Every transition MUST have a corresponding return transition in the destination room.**
func _on_forest_path_interacted() -> void:
$kq4_010_forest_path.default_script(self)
```
### Step 7: Update the Destination Room
For each exit you add, you need to add a corresponding transition in the DESTINATION room that leads back to the current room.
Example - In room 016 (Graveyard), add north exit back to room 010:
In Room 016 (`kq4_016_graveyard.tscn`), add the return transition:
```gdscript
[node name="kq4_010_forest_path" parent="." instance=ExtResource("4_abc")]
position = Vector2(910, -213)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_010_forest_path" # Name of THIS transition (room 016's exit to 010)
target = "uid://bxsxv6esxljit" # Scene UID of room 010 (the room we're going TO)
appear_at_node = "kq4_016_graveyard" # This is the CURRENT room's name (016)
target = "uid://3ujj97iw54vo5" # Scene UID of destination room 010
label = "Forest Path"
[node name="entrance" parent="kq4_010_forest_path" index="0"]
@@ -113,19 +110,31 @@ position = Vector2(174, 519)
[connection signal="interacted" from="kq4_010_forest_path" to="." method="_on_forest_path_interacted"]
```
Then add the handler in room 016's .gd file:
Then add the handler in Room 016's .gd file:
```gdscript
func _on_forest_path_interacted() -> void:
$kq4_010_forest_path.default_script(self)
$kq4_010_forest_path.default_script(self)
```
### Summary: target vs appear_at_node
### Step 7: Run the Exit Checker Skill
Run the exit checker skill on the new room, as well as all rooms that you wired up to the new room.
| Field | Value | Meaning |
## Quick Reference: Transition Fields
| Field | Value | Example |
|-------|-------|---------|
| `target` | Scene UID of destination room | Which scene to load |
| `appear_at_node` | Node name of exit in destination room | Which transition in that scene should appear at
| Node name | Destination room name | `kq4_016_graveyard` |
| `target` | Scene UID of destination | `uid://27b2k6gky3afg` |
| `appear_at_node` | CURRENT room name | `kq4_010_forest_path` |
| `label` | Human-readable destination name | `Graveyard` |
## Common Mistakes to Avoid
1. **Generic node names**: Never use `north_exit`, `south_exit`, etc.
2. **Wrong appear_at_node**: Should be the CURRENT room name, not the destination
3. **Missing return transition**: Always add the bidirectional transition
4. **Duplicate nodes**: Never have two transitions with the same node name
5. **Wrong target UID**: Always verify the UID matches the destination scene
## Room Number Mapping
Reference the spec for cardinal direction matches

View File

@@ -0,0 +1,17 @@
extends Scene
func _on_beach_at_river_delta_interacted() -> void:
$kq4_025_beach_at_river_delta.default_script(self)
func _on_fishermans_shack_interacted() -> void:
$kq4_007_fishermans_shack.default_script(self)
func _on_meadow_interacted() -> void:
$kq4_002_meadow.default_script(self)
func _on_open_ocean_interacted() -> void:
$west_exit.default_script(self)

View File

@@ -0,0 +1 @@
uid://3cwoihar636od

View File

@@ -0,0 +1,100 @@
[gd_scene format=3 uid="uid://1rwfkejhz94hp"]
[ext_resource type="Script" uid="uid://3cwoihar636od" path="res://scenes/kq4_001_beach/kq4_001_beach.gd" id="1_abc"]
[ext_resource type="Texture2D" uid="uid://3bbln6eghny8u" path="res://scenes/kq4_001_beach/pic_001_visual.png" id="2_abc"]
[ext_resource type="Script" uid="uid://xmphq3i0wbg3" path="res://ScalePoint_.gd" id="3_abc"]
[ext_resource type="PackedScene" uid="uid://c4vc1wx7k6cw" path="res://TransitionPiece.tscn" id="4_abc"]
[sub_resource type="NavigationPolygon" id="NavigationPolygon_ppo6b"]
vertices = PackedVector2Array(366.85156, 1243.1484, -140.97656, 1182.2422, -76.0625, 588.09375, -30.171875, 216.07031, 1221.4063, 226.97656, 1994.1406, 468.39844, 2011.7969, 1321.9766, 1052.7422, 1419.8672, -76.0625, 588.0781)
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3), PackedInt32Array(3, 4, 5, 6, 7, 0), PackedInt32Array(3, 2, 8)])
outlines = Array[PackedVector2Array]([PackedVector2Array(-39, 206, 1223, 217, 2004, 461, 2022, 1331, 1052, 1430, 365, 1253, -152, 1191, -86, 587)])
[node name="background" type="Node2D" unique_id=657573819]
y_sort_enabled = true
script = ExtResource("1_abc")
[node name="bg" type="Sprite2D" parent="." unique_id=874052749]
scale = Vector2(6, 6)
texture = ExtResource("2_abc")
centered = false
[node name="StartScalePoint" type="Node2D" parent="." unique_id=1640687858]
position = Vector2(1476, 742)
script = ExtResource("3_abc")
target_scale = 0.25
[node name="EndScalePoint" type="Node2D" parent="." unique_id=1996763530]
position = Vector2(1408, 1097)
scale = Vector2(0.44, 0.44)
script = ExtResource("3_abc")
target_scale = 0.35
[node name="pathfind" type="NavigationRegion2D" parent="." unique_id=1418661203]
position = Vector2(-1, 0)
navigation_polygon = SubResource("NavigationPolygon_ppo6b")
[node name="default-starting-point" type="Node2D" parent="." unique_id=1018141532]
position = Vector2(194, 819)
[node name="kq4_025_beach_at_river_delta" parent="." unique_id=484638394 instance=ExtResource("4_abc")]
position = Vector2(910, -213)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_001_beach"
target = "uid://3vcewxyhbqica"
label = "Beach at River Delta"
[node name="entrance" parent="kq4_025_beach_at_river_delta" index="0"]
position = Vector2(133, 643)
[node name="exit" parent="kq4_025_beach_at_river_delta" index="1"]
position = Vector2(174, 519)
[node name="kq4_002_meadow" parent="." unique_id=1916756563 instance=ExtResource("4_abc")]
position = Vector2(1766, 74)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_001_beach"
target = "uid://1489d4oh9twtu"
label = "Meadow"
[node name="entrance" parent="kq4_002_meadow" index="0"]
position = Vector2(24, 565)
[node name="exit" parent="kq4_002_meadow" index="1"]
position = Vector2(293, 554)
[node name="kq4_007_fishermans_shack" parent="." unique_id=990092106 instance=ExtResource("4_abc")]
position = Vector2(910, 542)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_001_beach"
target = "uid://yj4t7thmkoct"
label = "Fisherman's Shack"
[node name="entrance" parent="kq4_007_fishermans_shack" index="0"]
position = Vector2(118, 514)
[node name="exit" parent="kq4_007_fishermans_shack" index="1"]
position = Vector2(151, 615)
[node name="kq4_031_open_ocean" parent="." unique_id=1117747814 instance=ExtResource("4_abc")]
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_001_beach"
target = "uid://2f7c49hpkducc"
label = "Open Ocean"
[node name="entrance" parent="kq4_031_open_ocean" index="0"]
position = Vector2(506, 555)
[node name="exit" parent="kq4_031_open_ocean" index="1"]
position = Vector2(-64, 534)
[connection signal="interacted" from="kq4_031_open_ocean" to="." method="_on_open_ocean_interacted"]
[connection signal="interacted" from="kq4_025_beach_at_river_delta" to="." method="_on_beach_at_river_delta_interacted"]
[connection signal="interacted" from="kq4_002_meadow" to="." method="_on_meadow_interacted"]
[connection signal="interacted" from="kq4_007_fishermans_shack" to="." method="_on_fishermans_shack_interacted"]
[editable path="kq4_025_beach_at_river_delta"]
[editable path="kq4_002_meadow"]
[editable path="kq4_007_fishermans_shack"]
[editable path="kq4_031_open_ocean"]

View File

@@ -0,0 +1 @@
uid://1rwfkejhz94hp

Binary file not shown.

View File

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://8gijrxoi8uxi"
path="res://.godot/imported/pic_001_visual.png-6785e30330a70d3702b483b39eb0c537.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://scenes/kq4_001_beach/pic_001_visual.png"
dest_files=["res://.godot/imported/pic_001_visual.png-6785e30330a70d3702b483b39eb0c537.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View File

@@ -0,0 +1 @@
uid://3bbln6eghny8u

View File

@@ -0,0 +1,17 @@
extends Scene
func _on_fountain_pool_interacted() -> void:
$kq4_003_fountain_pool.default_script(self)
func _on_back_of_fishermans_shack_interacted() -> void:
$kq4_008_back_of_fishermans_shack.default_script(self)
func _on_beach_interacted() -> void:
$kq4_001_beach.default_script(self)
func _on_river_meadow_interacted() -> void:
$kq4_026_river_meadow.default_script(self)

View File

@@ -0,0 +1 @@
uid://1a1agat78ivte

View File

@@ -0,0 +1,101 @@
[gd_scene format=3 uid="uid://1489d4oh9twtu"]
[ext_resource type="Script" uid="uid://1a1agat78ivte" path="res://scenes/kq4_002_meadow/kq4_002_meadow.gd" id="1_abc"]
[ext_resource type="Texture2D" uid="uid://260nf4bqzc7y9" path="res://scenes/kq4_002_meadow/pic_002_visual.png" id="2_abc"]
[ext_resource type="Script" uid="uid://xmphq3i0wbg3" path="res://ScalePoint_.gd" id="3_abc"]
[ext_resource type="PackedScene" uid="uid://c4vc1wx7k6cw" path="res://TransitionPiece.tscn" id="4_abc"]
[sub_resource type="NavigationPolygon" id="NavigationPolygon_ppo6b"]
vertices = PackedVector2Array(366.85156, 1243.1484, -140.97656, 1182.2422, -76.0625, 588.09375, -30.171875, 216.07031, 1221.4063, 226.97656, 1994.1406, 468.39844, 2011.7969, 1321.9766, 1052.7422, 1419.8672, -76.0625, 588.0781)
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3), PackedInt32Array(3, 4, 5, 6, 7, 0), PackedInt32Array(3, 2, 8)])
outlines = Array[PackedVector2Array]([PackedVector2Array(-39, 206, 1223, 217, 2004, 461, 2022, 1331, 1052, 1430, 365, 1253, -152, 1191, -86, 587)])
[node name="background" type="Node2D" unique_id=657573819]
y_sort_enabled = true
script = ExtResource("1_abc")
[node name="bg" type="Sprite2D" parent="." unique_id=874052749]
scale = Vector2(6, 6)
texture = ExtResource("2_abc")
centered = false
[node name="StartScalePoint" type="Node2D" parent="." unique_id=1640687858]
position = Vector2(1476, 742)
script = ExtResource("3_abc")
target_scale = 0.25
[node name="EndScalePoint" type="Node2D" parent="." unique_id=1996763530]
position = Vector2(1408, 1097)
scale = Vector2(0.44, 0.44)
script = ExtResource("3_abc")
target_scale = 0.35
[node name="pathfind" type="NavigationRegion2D" parent="." unique_id=1418661203]
position = Vector2(-1, 0)
navigation_polygon = SubResource("NavigationPolygon_ppo6b")
[node name="default-starting-point" type="Node2D" parent="." unique_id=1018141532]
position = Vector2(194, 819)
[node name="kq4_026_river_meadow" parent="." unique_id=484638394 instance=ExtResource("4_abc")]
position = Vector2(910, -213)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_002_meadow"
target = "uid://10p7miv0a14l7"
label = "River Meadow"
[node name="entrance" parent="kq4_026_river_meadow" index="0"]
position = Vector2(133, 643)
[node name="exit" parent="kq4_026_river_meadow" index="1"]
position = Vector2(174, 519)
[connection signal="interacted" from="kq4_026_river_meadow" to="." method="_on_river_meadow_interacted"]
[node name="kq4_003_fountain_pool" parent="." unique_id=1916756563 instance=ExtResource("4_abc")]
position = Vector2(1766, 74)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_002_meadow"
target = "uid://151dbn9bybiwx"
label = "Fountain Pool"
[node name="entrance" parent="kq4_003_fountain_pool" index="0"]
position = Vector2(24, 565)
[node name="exit" parent="kq4_003_fountain_pool" index="1"]
position = Vector2(293, 554)
[node name="kq4_008_back_of_fishermans_shack" parent="." unique_id=990092106 instance=ExtResource("4_abc")]
position = Vector2(910, 542)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_002_meadow"
target = "uid://bncmzju9ibkv"
label = "Back of Fisherman's Shack"
[node name="entrance" parent="kq4_008_back_of_fishermans_shack" index="0"]
position = Vector2(118, 514)
[node name="exit" parent="kq4_008_back_of_fishermans_shack" index="1"]
position = Vector2(151, 615)
[node name="kq4_001_beach" parent="." unique_id=1117747814 instance=ExtResource("4_abc")]
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_002_meadow"
target = "uid://1rwfkejhz94hp"
label = "Beach"
[node name="entrance" parent="kq4_001_beach" index="0"]
position = Vector2(506, 555)
[node name="exit" parent="kq4_001_beach" index="1"]
position = Vector2(-64, 534)
[connection signal="interacted" from="kq4_001_beach" to="." method="_on_beach_interacted"]
[connection signal="interacted" from="kq4_003_fountain_pool" to="." method="_on_fountain_pool_interacted"]
[connection signal="interacted" from="kq4_008_back_of_fishermans_shack" to="." method="_on_back_of_fishermans_shack_interacted"]
[editable path="kq4_026_river_meadow"]
[editable path="kq4_003_fountain_pool"]
[editable path="kq4_008_back_of_fishermans_shack"]
[editable path="kq4_001_beach"]

View File

@@ -0,0 +1 @@
uid://1489d4oh9twtu

View File

@@ -0,0 +1 @@
uid://bk8q2nad4pu44

Binary file not shown.

View File

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://45kbpuy1w3ow"
path="res://.godot/imported/pic_002_visual.png-e26bf682d0a00aa726196c5e18f72557.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://scenes/kq4_002_meadow/pic_002_visual.png"
dest_files=["res://.godot/imported/pic_002_visual.png-e26bf682d0a00aa726196c5e18f72557.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View File

@@ -1,9 +1,17 @@
extends Scene
func _on_meadow_interacted() -> void:
$kq4_002_meadow.default_script(self)
func _on_ogre_house_interacted() -> void:
$kq4_004_ogres_cottage.default_script(self)
func _on_shady_wooded_area_interacted() -> void:
$kq4_009_shady_wooded_area.default_script(self)
func _on_forest_path_interacted() -> void:
$kq4_010_forest_path.default_script(self)

View File

@@ -38,6 +38,32 @@ navigation_polygon = SubResource("NavigationPolygon_heq0u")
[node name="default-starting-point" type="Node2D" parent="."]
position = Vector2(194, 819)
[node name="kq4_002_meadow" parent="." instance=ExtResource("4_6r684")]
position = Vector2(-150, 100)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_003_fountain_pool"
target = "uid://1489d4oh9twtu"
label = "Meadow"
[node name="entrance" parent="kq4_002_meadow" index="0"]
position = Vector2(350, 500)
[node name="exit" parent="kq4_002_meadow" index="1"]
position = Vector2(100, 480)
[node name="kq4_010_forest_path" parent="." instance=ExtResource("4_6r684")]
position = Vector2(910, -213)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_003_fountain_pool"
target = "uid://3ujj97iw54vo5"
label = "Forest Path"
[node name="entrance" parent="kq4_010_forest_path" index="0"]
position = Vector2(133, 643)
[node name="exit" parent="kq4_010_forest_path" index="1"]
position = Vector2(174, 519)
[node name="kq4_004_ogres_cottage" parent="." instance=ExtResource("4_6r684")]
position = Vector2(1912, 756)
color = Color(1, 1, 1, 1)
@@ -70,8 +96,11 @@ scale = Vector2(1.163, 1.179)
texture = ExtResource("5_cu368")
centered = false
[connection signal="interacted" from="kq4_002_meadow" to="." method="_on_meadow_interacted"]
[connection signal="interacted" from="kq4_010_forest_path" to="." method="_on_forest_path_interacted"]
[connection signal="interacted" from="kq4_004_ogres_cottage" to="." method="_on_ogre_house_interacted"]
[connection signal="interacted" from="kq4_009_shady_wooded_area" to="." method="_on_shady_wooded_area_interacted"]
[editable path="kq4_002_meadow"]
[editable path="kq4_004_ogres_cottage"]
[editable path="kq4_009_shady_wooded_area"]

View File

@@ -1,6 +1,10 @@
extends Scene
func _on_mine_entrance_interacted() -> void:
$kq4_028_mine_entrance.default_script(self)
func _on_pool_interacted() -> void:
$kq4_003_fountain_pool.default_script(self)

View File

@@ -37,6 +37,19 @@ navigation_polygon = SubResource("NavigationPolygon_furs3")
[node name="default-starting-point" type="Node2D" parent="."]
position = Vector2(194, 819)
[node name="kq4_028_mine_entrance" parent="." instance=ExtResource("4_67nph")]
position = Vector2(910, -213)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_004_ogres_cottage"
target = "uid://qkcwifq2lb9m"
label = "Mine Entrance"
[node name="entrance" parent="kq4_028_mine_entrance" index="0"]
position = Vector2(133, 643)
[node name="exit" parent="kq4_028_mine_entrance" index="1"]
position = Vector2(174, 519)
[node name="kq4_003_fountain_pool" parent="." instance=ExtResource("4_67nph")]
position = Vector2(5, 888)
color = Color(1, 1, 1, 1)
@@ -51,6 +64,8 @@ position = Vector2(184, 70)
[node name="exit" parent="kq4_003_fountain_pool" index="1"]
position = Vector2(-61, 74)
[connection signal="interacted" from="kq4_028_mine_entrance" to="." method="_on_mine_entrance_interacted"]
[connection signal="interacted" from="kq4_003_fountain_pool" to="." method="_on_pool_interacted"]
[node name="kq4_010_forest_path" parent="." instance=ExtResource("4_67nph")]
@@ -69,5 +84,6 @@ position = Vector2(151, 615)
[connection signal="interacted" from="kq4_010_forest_path" to="." method="_on_forest_path_interacted"]
[editable path="kq4_028_mine_entrance"]
[editable path="kq4_003_fountain_pool"]
[editable path="kq4_010_forest_path"]

View File

@@ -0,0 +1,17 @@
extends Scene
func _on_back_of_fishermans_shack_interacted() -> void:
$kq4_008_back_of_fishermans_shack.default_script(self)
func _on_beach_interacted() -> void:
$kq4_001_beach.default_script(self)
func _on_beach_2_interacted() -> void:
$kq4_013_beach.default_script(self)
func _on_open_ocean_interacted() -> void:
$west_exit.default_script(self)

View File

@@ -0,0 +1 @@
uid://2uu84x9n2g1rc

View File

@@ -0,0 +1,98 @@
[gd_scene format=3 uid="uid://yj4t7thmkoct"]
[ext_resource type="Script" uid="uid://2uu84x9n2g1rc" path="res://scenes/kq4_007_fishermans_shack/kq4_007_fishermans_shack.gd" id="1_abc"]
[ext_resource type="Texture2D" uid="uid://2aflqbq19m0ll" path="res://scenes/kq4_007_fishermans_shack/pic_007_visual.png" id="2_abc"]
[ext_resource type="Script" uid="uid://xmphq3i0wbg3" path="res://ScalePoint_.gd" id="3_abc"]
[ext_resource type="PackedScene" uid="uid://c4vc1wx7k6cw" path="res://TransitionPiece.tscn" id="4_abc"]
[sub_resource type="NavigationPolygon" id="NavigationPolygon_ppo6b"]
vertices = PackedVector2Array(366.85156, 1243.1484, -140.97656, 1182.2422, -76.0625, 588.09375, -30.171875, 216.07031, 1221.4063, 226.97656, 1994.1406, 468.39844, 2011.7969, 1321.9766, 1052.7422, 1419.8672, -76.0625, 588.0781)
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3), PackedInt32Array(3, 4, 5, 6, 7, 0), PackedInt32Array(3, 2, 8)])
outlines = Array[PackedVector2Array]([PackedVector2Array(-39, 206, 1223, 217, 2004, 461, 2022, 1331, 1052, 1430, 365, 1253, -152, 1191, -86, 587)])
[node name="background" type="Node2D" unique_id=657573819]
y_sort_enabled = true
script = ExtResource("1_abc")
[node name="bg" type="Sprite2D" parent="." unique_id=874052749]
scale = Vector2(6, 6)
texture = ExtResource("2_abc")
centered = false
[node name="StartScalePoint" type="Node2D" parent="." unique_id=1640687858]
position = Vector2(1476, 742)
script = ExtResource("3_abc")
target_scale = 0.25
[node name="EndScalePoint" type="Node2D" parent="." unique_id=1996763530]
position = Vector2(1408, 1097)
scale = Vector2(0.44, 0.44)
script = ExtResource("3_abc")
target_scale = 0.35
[node name="pathfind" type="NavigationRegion2D" parent="." unique_id=1418661203]
position = Vector2(-1, 0)
navigation_polygon = SubResource("NavigationPolygon_ppo6b")
[node name="default-starting-point" type="Node2D" parent="." unique_id=1018141532]
position = Vector2(194, 819)
[node name="kq4_001_beach" parent="." unique_id=484638394 instance=ExtResource("4_abc")]
position = Vector2(910, -213)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_007_fishermans_shack"
target = "uid://1rwfkejhz94hp"
label = "Beach"
[node name="entrance" parent="kq4_001_beach" index="0"]
position = Vector2(133, 643)
[node name="exit" parent="kq4_001_beach" index="1"]
position = Vector2(174, 519)
[connection signal="interacted" from="kq4_001_beach" to="." method="_on_beach_interacted"]
[node name="kq4_008_back_of_fishermans_shack" parent="." unique_id=1916756563 instance=ExtResource("4_abc")]
position = Vector2(1766, 74)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_007_fishermans_shack"
target = "uid://bncmzju9ibkv"
label = "Back of Fisherman's Shack"
[node name="entrance" parent="kq4_008_back_of_fishermans_shack" index="0"]
position = Vector2(24, 565)
[node name="exit" parent="kq4_008_back_of_fishermans_shack" index="1"]
position = Vector2(293, 554)
[node name="kq4_013_beach" parent="." unique_id=990092106 instance=ExtResource("4_abc")]
position = Vector2(910, 542)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_007_fishermans_shack"
target = "uid://2bqawc9w4uu59"
label = "Beach"
[node name="entrance" parent="kq4_013_beach" index="0"]
position = Vector2(118, 514)
[node name="exit" parent="kq4_013_beach" index="1"]
position = Vector2(151, 615)
[connection signal="interacted" from="kq4_013_beach" to="." method="_on_beach_2_interacted"]
[node name="west_exit" parent="." unique_id=1117747814 instance=ExtResource("4_abc")]
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
label = "West Exit"
[node name="entrance" parent="west_exit" index="0"]
position = Vector2(506, 555)
[node name="exit" parent="west_exit" index="1"]
position = Vector2(-64, 534)
[connection signal="interacted" from="kq4_008_back_of_fishermans_shack" to="." method="_on_back_of_fishermans_shack_interacted"]
[editable path="kq4_001_beach"]
[editable path="kq4_008_back_of_fishermans_shack"]
[editable path="kq4_013_beach"]
[editable path="west_exit"]

View File

@@ -0,0 +1 @@
uid://yj4t7thmkoct

View File

@@ -0,0 +1 @@
uid://bk8q2nad4pu44

Binary file not shown.

View File

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://d2yd6x8jvfq10"
path="res://.godot/imported/pic_007_visual.png-5be9940388ac2487de9d44fb5ac8ca98.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://scenes/kq4_007_fishermans_shack/pic_007_visual.png"
dest_files=["res://.godot/imported/pic_007_visual.png-5be9940388ac2487de9d44fb5ac8ca98.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View File

@@ -0,0 +1,17 @@
extends Scene
func _on_shady_wooded_area_interacted() -> void:
$kq4_009_shady_wooded_area.default_script(self)
func _on_meadow_interacted() -> void:
$kq4_002_meadow.default_script(self)
func _on_fishermans_shack_interacted() -> void:
$kq4_007_fishermans_shack.default_script(self)
func _on_green_meadow_interacted() -> void:
$kq4_014_green_meadow.default_script(self)

View File

@@ -0,0 +1 @@
uid://31tmx5rtcbd9h

View File

@@ -0,0 +1,100 @@
[gd_scene format=3 uid="uid://bncmzju9ibkv"]
[ext_resource type="Script" uid="uid://31tmx5rtcbd9h" path="res://scenes/kq4_008_back_of_fishermans_shack/kq4_008_back_of_fishermans_shack.gd" id="1_abc"]
[ext_resource type="Texture2D" uid="uid://1qgkzu9kzrsb2" path="res://scenes/kq4_008_back_of_fishermans_shack/pic_008_visual.png" id="2_abc"]
[ext_resource type="Script" uid="uid://xmphq3i0wbg3" path="res://ScalePoint_.gd" id="3_abc"]
[ext_resource type="PackedScene" uid="uid://c4vc1wx7k6cw" path="res://TransitionPiece.tscn" id="4_abc"]
[sub_resource type="NavigationPolygon" id="NavigationPolygon_ppo6b"]
vertices = PackedVector2Array(366.85156, 1243.1484, -140.97656, 1182.2422, -76.0625, 588.09375, -30.171875, 216.07031, 1221.4063, 226.97656, 1994.1406, 468.39844, 2011.7969, 1321.9766, 1052.7422, 1419.8672, -76.0625, 588.0781)
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3), PackedInt32Array(3, 4, 5, 6, 7, 0), PackedInt32Array(3, 2, 8)])
outlines = Array[PackedVector2Array]([PackedVector2Array(-39, 206, 1223, 217, 2004, 461, 2022, 1331, 1052, 1430, 365, 1253, -152, 1191, -86, 587)])
[node name="background" type="Node2D" unique_id=657573819]
y_sort_enabled = true
script = ExtResource("1_abc")
[node name="bg" type="Sprite2D" parent="." unique_id=874052749]
scale = Vector2(6, 6)
texture = ExtResource("2_abc")
centered = false
[node name="StartScalePoint" type="Node2D" parent="." unique_id=1640687858]
position = Vector2(1476, 742)
script = ExtResource("3_abc")
target_scale = 0.25
[node name="EndScalePoint" type="Node2D" parent="." unique_id=1996763530]
position = Vector2(1408, 1097)
scale = Vector2(0.44, 0.44)
script = ExtResource("3_abc")
target_scale = 0.35
[node name="pathfind" type="NavigationRegion2D" parent="." unique_id=1418661203]
position = Vector2(-1, 0)
navigation_polygon = SubResource("NavigationPolygon_ppo6b")
[node name="default-starting-point" type="Node2D" parent="." unique_id=1018141532]
position = Vector2(194, 819)
[node name="kq4_009_shady_wooded_area" parent="." unique_id=484638394 instance=ExtResource("4_abc")]
position = Vector2(1766, 74)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_008_back_of_fishermans_shack"
target = "uid://1hkplw2a78b1y"
label = "Shady Wooded Area"
[node name="entrance" parent="kq4_009_shady_wooded_area" index="0"]
position = Vector2(24, 565)
[node name="exit" parent="kq4_009_shady_wooded_area" index="1"]
position = Vector2(293, 554)
[node name="kq4_002_meadow" parent="." unique_id=1117747814 instance=ExtResource("4_abc")]
position = Vector2(910, -213)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_008_back_of_fishermans_shack"
target = "uid://1489d4oh9twtu"
label = "Meadow"
[node name="entrance" parent="kq4_002_meadow" index="0"]
position = Vector2(133, 643)
[node name="exit" parent="kq4_002_meadow" index="1"]
position = Vector2(174, 519)
[node name="kq4_007_fishermans_shack" parent="." unique_id=1117747816 instance=ExtResource("4_abc")]
position = Vector2(-200, 74)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_008_back_of_fishermans_shack"
target = "uid://yj4t7thmkoct"
label = "Fisherman's Shack"
[node name="entrance" parent="kq4_007_fishermans_shack" index="0"]
position = Vector2(133, 643)
[node name="exit" parent="kq4_007_fishermans_shack" index="1"]
position = Vector2(300, 554)
[node name="kq4_014_green_meadow" parent="." unique_id=990092107 instance=ExtResource("4_abc")]
position = Vector2(910, 542)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_008_back_of_fishermans_shack"
target = "uid://tkeyuep0ivo6"
label = "Green Meadow"
[node name="entrance" parent="kq4_014_green_meadow" index="0"]
position = Vector2(118, 514)
[node name="exit" parent="kq4_014_green_meadow" index="1"]
position = Vector2(151, 615)
[connection signal="interacted" from="kq4_009_shady_wooded_area" to="." method="_on_shady_wooded_area_interacted"]
[connection signal="interacted" from="kq4_002_meadow" to="." method="_on_meadow_interacted"]
[connection signal="interacted" from="kq4_007_fishermans_shack" to="." method="_on_fishermans_shack_interacted"]
[connection signal="interacted" from="kq4_014_green_meadow" to="." method="_on_green_meadow_interacted"]
[editable path="kq4_009_shady_wooded_area"]
[editable path="kq4_002_meadow"]
[editable path="kq4_014_green_meadow"]
[editable path="kq4_007_fishermans_shack"]

View File

@@ -0,0 +1 @@
uid://bncmzju9ibkv

View File

@@ -0,0 +1 @@
uid://bk8q2nad4pu44

Binary file not shown.

View File

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dj0dhjq2mkjrh"
path="res://.godot/imported/pic_008_visual.png-547e0116a0605a4a13f6d564c0c3947e.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://scenes/kq4_008_back_of_fishermans_shack/pic_008_visual.png"
dest_files=["res://.godot/imported/pic_008_visual.png-547e0116a0605a4a13f6d564c0c3947e.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View File

@@ -7,3 +7,11 @@ func _on_fountain_pool_interacted() -> void:
func _on_forest_path_interacted() -> void:
$kq4_010_forest_path.default_script(self)
func _on_frog_pond_interacted() -> void:
$kq4_015_frog_pond.default_script(self)
func _on_back_of_fishermans_shack_interacted() -> void:
$kq4_008_back_of_fishermans_shack.default_script(self)

View File

@@ -63,8 +63,38 @@ position = Vector2(24, 565)
[node name="exit" parent="kq4_010_forest_path" index="1"]
position = Vector2(293, 554)
[node name="kq4_008_back_of_fishermans_shack" parent="." unique_id=1117747814 instance=ExtResource("4_abc")]
position = Vector2(-200, 100)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_009_shady_wooded_area"
target = "uid://bncmzju9ibkv"
label = "Back of Fisherman's Shack"
[node name="entrance" parent="kq4_008_back_of_fishermans_shack" index="0"]
position = Vector2(350, 500)
[node name="exit" parent="kq4_008_back_of_fishermans_shack" index="1"]
position = Vector2(100, 480)
[connection signal="interacted" from="kq4_003_fountain_pool" to="." method="_on_fountain_pool_interacted"]
[connection signal="interacted" from="kq4_010_forest_path" to="." method="_on_forest_path_interacted"]
[connection signal="interacted" from="kq4_015_frog_pond" to="." method="_on_frog_pond_interacted"]
[connection signal="interacted" from="kq4_008_back_of_fishermans_shack" to="." method="_on_back_of_fishermans_shack_interacted"]
[node name="kq4_015_frog_pond" parent="." unique_id=999999992 instance=ExtResource("4_abc")]
position = Vector2(910, 542)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_009_shady_wooded_area"
target = "uid://2zga29mwl2ced"
label = "Frog Pond"
[node name="entrance" parent="kq4_015_frog_pond" index="0"]
position = Vector2(133, 643)
[node name="exit" parent="kq4_015_frog_pond" index="1"]
position = Vector2(174, 519)
[editable path="kq4_008_back_of_fishermans_shack"]
[editable path="kq4_003_fountain_pool"]
[editable path="kq4_010_forest_path"]
[editable path="kq4_015_frog_pond"]

View File

@@ -1,6 +1,10 @@
extends Scene
func _on_fountain_pool_interacted() -> void:
$kq4_003_fountain_pool.default_script(self)
func _on_ogres_cottage_interacted() -> void:
$kq4_004_ogres_cottage.default_script(self)

View File

@@ -37,6 +37,19 @@ navigation_polygon = SubResource("NavigationPolygon_ppo6b")
[node name="default-starting-point" type="Node2D" parent="." unique_id=1018141532]
position = Vector2(194, 819)
[node name="kq4_003_fountain_pool" parent="." unique_id=1117747813 instance=ExtResource("4_abc")]
position = Vector2(910, -213)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_010_forest_path"
target = "uid://151dbn9bybiwx"
label = "Fountain Pool"
[node name="entrance" parent="kq4_003_fountain_pool" index="0"]
position = Vector2(133, 643)
[node name="exit" parent="kq4_003_fountain_pool" index="1"]
position = Vector2(174, 519)
[node name="kq4_004_ogres_cottage" parent="." unique_id=484638394 instance=ExtResource("4_abc")]
position = Vector2(910, -213)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
@@ -89,11 +102,13 @@ position = Vector2(350, 500)
[node name="exit" parent="kq4_009_shady_wooded_area" index="1"]
position = Vector2(100, 480)
[connection signal="interacted" from="kq4_003_fountain_pool" to="." method="_on_fountain_pool_interacted"]
[connection signal="interacted" from="kq4_004_ogres_cottage" to="." method="_on_ogres_cottage_interacted"]
[connection signal="interacted" from="kq4_011_enchanted_grove" to="." method="_on_enchanted_grove_interacted"]
[connection signal="interacted" from="kq4_016_graveyard" to="." method="_on_graveyard_interacted"]
[connection signal="interacted" from="kq4_009_shady_wooded_area" to="." method="_on_shady_wooded_area_interacted"]
[editable path="kq4_003_fountain_pool"]
[editable path="kq4_004_ogres_cottage"]
[editable path="kq4_011_enchanted_grove"]
[editable path="kq4_016_graveyard"]

View File

@@ -0,0 +1,17 @@
extends Scene
func _on_fishermans_shack_interacted() -> void:
$kq4_007_fishermans_shack.default_script(self)
func _on_coastal_cliffs_interacted() -> void:
$kq4_019_coastal_cliffs.default_script(self)
func _on_green_meadow_interacted() -> void:
$kq4_014_green_meadow.default_script(self)
func _on_open_ocean_interacted() -> void:
$west_exit.default_script(self)

View File

@@ -0,0 +1 @@
uid://lkgcoggep50e

View File

@@ -0,0 +1,100 @@
[gd_scene format=3 uid="uid://2bqawc9w4uu59"]
[ext_resource type="Script" uid="uid://lkgcoggep50e" path="res://scenes/kq4_013_beach/kq4_013_beach.gd" id="1_abc"]
[ext_resource type="Texture2D" uid="uid://1glo07e4r7520" path="res://scenes/kq4_013_beach/pic_013_visual.png" id="2_abc"]
[ext_resource type="Script" uid="uid://xmphq3i0wbg3" path="res://ScalePoint_.gd" id="3_abc"]
[ext_resource type="PackedScene" uid="uid://c4vc1wx7k6cw" path="res://TransitionPiece.tscn" id="4_abc"]
[sub_resource type="NavigationPolygon" id="NavigationPolygon_ppo6b"]
vertices = PackedVector2Array(366.85156, 1243.1484, -140.97656, 1182.2422, -76.0625, 588.09375, -30.171875, 216.07031, 1221.4063, 226.97656, 1994.1406, 468.39844, 2011.7969, 1321.9766, 1052.7422, 1419.8672, -76.0625, 588.0781)
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3), PackedInt32Array(3, 4, 5, 6, 7, 0), PackedInt32Array(3, 2, 8)])
outlines = Array[PackedVector2Array]([PackedVector2Array(-39, 206, 1223, 217, 2004, 461, 2022, 1331, 1052, 1430, 365, 1253, -152, 1191, -86, 587)])
[node name="background" type="Node2D" unique_id=657573819]
y_sort_enabled = true
script = ExtResource("1_abc")
[node name="bg" type="Sprite2D" parent="." unique_id=874052749]
scale = Vector2(6, 6)
texture = ExtResource("2_abc")
centered = false
[node name="StartScalePoint" type="Node2D" parent="." unique_id=1640687858]
position = Vector2(1476, 742)
script = ExtResource("3_abc")
target_scale = 0.25
[node name="EndScalePoint" type="Node2D" parent="." unique_id=1996763530]
position = Vector2(1408, 1097)
scale = Vector2(0.44, 0.44)
script = ExtResource("3_abc")
target_scale = 0.35
[node name="pathfind" type="NavigationRegion2D" parent="." unique_id=1418661203]
position = Vector2(-1, 0)
navigation_polygon = SubResource("NavigationPolygon_ppo6b")
[node name="default-starting-point" type="Node2D" parent="." unique_id=1018141532]
position = Vector2(194, 819)
[node name="kq4_007_fishermans_shack" parent="." unique_id=484638394 instance=ExtResource("4_abc")]
position = Vector2(910, -213)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_013_beach"
target = "uid://yj4t7thmkoct"
label = "Fisherman's Shack"
[node name="entrance" parent="kq4_007_fishermans_shack" index="0"]
position = Vector2(133, 643)
[node name="exit" parent="kq4_007_fishermans_shack" index="1"]
position = Vector2(174, 519)
[node name="kq4_014_green_meadow" parent="." unique_id=1916756563 instance=ExtResource("4_abc")]
position = Vector2(1766, 74)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_013_beach"
target = "uid://tkeyuep0ivo6"
label = "Green Meadow"
[node name="entrance" parent="kq4_014_green_meadow" index="0"]
position = Vector2(24, 565)
[node name="exit" parent="kq4_014_green_meadow" index="1"]
position = Vector2(293, 554)
[node name="kq4_019_coastal_cliffs" parent="." unique_id=990092106 instance=ExtResource("4_abc")]
position = Vector2(910, 542)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_013_beach"
target = "uid://3eh8ys3v25m45"
label = "Coastal Cliffs"
[node name="entrance" parent="kq4_019_coastal_cliffs" index="0"]
position = Vector2(118, 514)
[node name="exit" parent="kq4_019_coastal_cliffs" index="1"]
position = Vector2(151, 615)
[node name="kq4_031_open_ocean" parent="." unique_id=1117747814 instance=ExtResource("4_abc")]
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_013_beach"
target = "uid://2f7c49hpkducc"
label = "Open Ocean"
[node name="entrance" parent="kq4_031_open_ocean" index="0"]
position = Vector2(506, 555)
[node name="exit" parent="kq4_031_open_ocean" index="1"]
position = Vector2(-64, 534)
[connection signal="interacted" from="kq4_031_open_ocean" to="." method="_on_open_ocean_interacted"]
[connection signal="interacted" from="kq4_007_fishermans_shack" to="." method="_on_fishermans_shack_interacted"]
[connection signal="interacted" from="kq4_014_green_meadow" to="." method="_on_green_meadow_interacted"]
[connection signal="interacted" from="kq4_019_coastal_cliffs" to="." method="_on_coastal_cliffs_interacted"]
[editable path="kq4_007_fishermans_shack"]
[editable path="kq4_014_green_meadow"]
[editable path="kq4_019_coastal_cliffs"]
[editable path="kq4_031_open_ocean"]

View File

@@ -0,0 +1 @@
uid://2bqawc9w4uu59

Binary file not shown.

View File

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c85hhuvme0wjf"
path="res://.godot/imported/pic_013_visual.png-023aa45a837f9d70bfefe1445aa978cd.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://scenes/kq4_013_beach/pic_013_visual.png"
dest_files=["res://.godot/imported/pic_013_visual.png-023aa45a837f9d70bfefe1445aa978cd.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View File

@@ -0,0 +1 @@
uid://1glo07e4r7520

View File

@@ -0,0 +1,17 @@
extends Scene
func _on_back_of_fishermans_shack_interacted() -> void:
$kq4_008_back_of_fishermans_shack.default_script(self)
func _on_frog_pond_interacted() -> void:
$kq4_015_frog_pond.default_script(self)
func _on_meadow_interacted() -> void:
$kq4_020_meadow.default_script(self)
func _on_beach_interacted() -> void:
$kq4_013_beach.default_script(self)

View File

@@ -0,0 +1 @@
uid://1k06wwatabzqa

View File

@@ -0,0 +1,100 @@
[gd_scene format=3 uid="uid://tkeyuep0ivo6"]
[ext_resource type="Script" uid="uid://1k06wwatabzqa" path="res://scenes/kq4_014_green_meadow/kq4_014_green_meadow.gd" id="1_abc"]
[ext_resource type="Texture2D" uid="uid://dskmgchg6f4qm" path="res://scenes/kq4_014_green_meadow/pic_014_visual.png" id="2_abc"]
[ext_resource type="Script" uid="uid://xmphq3i0wbg3" path="res://ScalePoint_.gd" id="3_abc"]
[ext_resource type="PackedScene" uid="uid://c4vc1wx7k6cw" path="res://TransitionPiece.tscn" id="4_abc"]
[sub_resource type="NavigationPolygon" id="NavigationPolygon_ppo6b"]
vertices = PackedVector2Array(366.85156, 1243.1484, -140.97656, 1182.2422, -76.0625, 588.09375, -30.171875, 216.07031, 1221.4063, 226.97656, 1994.1406, 468.39844, 2011.7969, 1321.9766, 1052.7422, 1419.8672, -76.0625, 588.0781)
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3), PackedInt32Array(3, 4, 5, 6, 7, 0), PackedInt32Array(3, 2, 8)])
outlines = Array[PackedVector2Array]([PackedVector2Array(-39, 206, 1223, 217, 2004, 461, 2022, 1331, 1052, 1430, 365, 1253, -152, 1191, -86, 587)])
[node name="background" type="Node2D" unique_id=657573819]
y_sort_enabled = true
script = ExtResource("1_abc")
[node name="bg" type="Sprite2D" parent="." unique_id=874052749]
scale = Vector2(6, 6)
texture = ExtResource("2_abc")
centered = false
[node name="StartScalePoint" type="Node2D" parent="." unique_id=1640687858]
position = Vector2(1476, 742)
script = ExtResource("3_abc")
target_scale = 0.25
[node name="EndScalePoint" type="Node2D" parent="." unique_id=1996763530]
position = Vector2(1408, 1097)
scale = Vector2(0.44, 0.44)
script = ExtResource("3_abc")
target_scale = 0.35
[node name="pathfind" type="NavigationRegion2D" parent="." unique_id=1418661203]
position = Vector2(-1, 0)
navigation_polygon = SubResource("NavigationPolygon_ppo6b")
[node name="default-starting-point" type="Node2D" parent="." unique_id=1018141532]
position = Vector2(194, 819)
[node name="kq4_008_back_of_fishermans_shack" parent="." unique_id=484638394 instance=ExtResource("4_abc")]
position = Vector2(910, -213)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_014_green_meadow"
target = "uid://bncmzju9ibkv"
label = "Back of Fisherman's Shack"
[node name="entrance" parent="kq4_008_back_of_fishermans_shack" index="0"]
position = Vector2(133, 643)
[node name="exit" parent="kq4_008_back_of_fishermans_shack" index="1"]
position = Vector2(174, 519)
[node name="kq4_015_frog_pond" parent="." unique_id=1916756563 instance=ExtResource("4_abc")]
position = Vector2(1766, 74)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_014_green_meadow"
target = "uid://2zga29mwl2ced"
label = "Frog Pond"
[node name="entrance" parent="kq4_015_frog_pond" index="0"]
position = Vector2(24, 565)
[node name="exit" parent="kq4_015_frog_pond" index="1"]
position = Vector2(293, 554)
[node name="kq4_020_meadow" parent="." unique_id=990092106 instance=ExtResource("4_abc")]
position = Vector2(910, 542)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_014_green_meadow"
target = "uid://2yy1t1lic39gp"
label = "Meadow"
[node name="entrance" parent="kq4_020_meadow" index="0"]
position = Vector2(118, 514)
[node name="exit" parent="kq4_020_meadow" index="1"]
position = Vector2(151, 615)
[node name="kq4_013_beach" parent="." unique_id=1117747814 instance=ExtResource("4_abc")]
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_014_green_meadow"
target = "uid://2bqawc9w4uu59"
label = "Beach"
[node name="entrance" parent="kq4_013_beach" index="0"]
position = Vector2(506, 555)
[node name="exit" parent="kq4_013_beach" index="1"]
position = Vector2(-64, 534)
[connection signal="interacted" from="kq4_013_beach" to="." method="_on_beach_interacted"]
[connection signal="interacted" from="kq4_008_back_of_fishermans_shack" to="." method="_on_back_of_fishermans_shack_interacted"]
[connection signal="interacted" from="kq4_015_frog_pond" to="." method="_on_frog_pond_interacted"]
[connection signal="interacted" from="kq4_020_meadow" to="." method="_on_meadow_interacted"]
[editable path="kq4_008_back_of_fishermans_shack"]
[editable path="kq4_015_frog_pond"]
[editable path="kq4_020_meadow"]
[editable path="kq4_013_beach"]

View File

@@ -0,0 +1 @@
uid://tkeyuep0ivo6

View File

@@ -0,0 +1 @@
uid://bk8q2nad4pu44

Binary file not shown.

View File

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dskmgchg6f4qm"
path="res://.godot/imported/pic_014_visual.png-04518065ef806e7cb045396921e35e56.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://scenes/kq4_014_green_meadow/pic_014_visual.png"
dest_files=["res://.godot/imported/pic_014_visual.png-04518065ef806e7cb045396921e35e56.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View File

@@ -0,0 +1,21 @@
extends Scene
func _on_shady_wooded_area_interacted() -> void:
$kq4_009_shady_wooded_area.default_script(self)
func _on_graveyard_interacted() -> void:
$kq4_016_graveyard.default_script(self)
func _on_green_meadow_interacted() -> void:
$kq4_014_green_meadow.default_script(self)
func _on_bridge_over_stream_interacted() -> void:
$kq4_021_bridge_over_stream.default_script(self)
func _on_shady_wooded_area_interacted_from_9() -> void:
$kq4_009_shady_wooded_area.default_script(self)

View File

@@ -0,0 +1 @@
uid://2oiys25ji01ni

View File

@@ -0,0 +1,101 @@
[gd_scene format=3 uid="uid://2zga29mwl2ced"]
[ext_resource type="Script" uid="uid://2oiys25ji01ni" path="res://scenes/kq4_015_frog_pond/kq4_015_frog_pond.gd" id="1_abc"]
[ext_resource type="Texture2D" uid="uid://1d40stij8zu0l" path="res://scenes/kq4_015_frog_pond/pic_015_visual.png" id="2_abc"]
[ext_resource type="Script" uid="uid://xmphq3i0wbg3" path="res://ScalePoint_.gd" id="3_abc"]
[ext_resource type="PackedScene" uid="uid://c4vc1wx7k6cw" path="res://TransitionPiece.tscn" id="4_abc"]
[sub_resource type="NavigationPolygon" id="NavigationPolygon_ppo6b"]
vertices = PackedVector2Array(366.85156, 1243.1484, -140.97656, 1182.2422, -76.0625, 588.09375, -30.171875, 216.07031, 1221.4063, 226.97656, 1994.1406, 468.39844, 2011.7969, 1321.9766, 1052.7422, 1419.8672, -76.0625, 588.0781)
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3), PackedInt32Array(3, 4, 5, 6, 7, 0), PackedInt32Array(3, 2, 8)])
outlines = Array[PackedVector2Array]([PackedVector2Array(-39, 206, 1223, 217, 2004, 461, 2022, 1331, 1052, 1430, 365, 1253, -152, 1191, -86, 587)])
[node name="background" type="Node2D" unique_id=657573819]
y_sort_enabled = true
script = ExtResource("1_abc")
[node name="bg" type="Sprite2D" parent="." unique_id=874052749]
scale = Vector2(6, 6)
texture = ExtResource("2_abc")
centered = false
[node name="StartScalePoint" type="Node2D" parent="." unique_id=1640687858]
position = Vector2(1476, 742)
script = ExtResource("3_abc")
target_scale = 0.25
[node name="EndScalePoint" type="Node2D" parent="." unique_id=1996763530]
position = Vector2(1408, 1097)
scale = Vector2(0.44, 0.44)
script = ExtResource("3_abc")
target_scale = 0.35
[node name="pathfind" type="NavigationRegion2D" parent="." unique_id=1418661203]
position = Vector2(-1, 0)
navigation_polygon = SubResource("NavigationPolygon_ppo6b")
[node name="default-starting-point" type="Node2D" parent="." unique_id=1018141532]
position = Vector2(194, 819)
[node name="kq4_009_shady_wooded_area" parent="." unique_id=484638394 instance=ExtResource("4_abc")]
position = Vector2(910, -213)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_015_frog_pond"
target = "uid://1hkplw2a78b1y"
label = "Shady Wooded Area"
[node name="entrance" parent="kq4_009_shady_wooded_area" index="0"]
position = Vector2(133, 643)
[node name="exit" parent="kq4_009_shady_wooded_area" index="1"]
position = Vector2(174, 519)
[node name="kq4_016_graveyard" parent="." unique_id=1916756563 instance=ExtResource("4_abc")]
position = Vector2(1766, 74)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_015_frog_pond"
target = "uid://27b2k6gky3afg"
label = "Graveyard"
[node name="entrance" parent="kq4_016_graveyard" index="0"]
position = Vector2(24, 565)
[node name="exit" parent="kq4_016_graveyard" index="1"]
position = Vector2(293, 554)
[connection signal="interacted" from="kq4_009_shady_wooded_area" to="." method="_on_shady_wooded_area_interacted"]
[connection signal="interacted" from="kq4_016_graveyard" to="." method="_on_graveyard_interacted"]
[node name="kq4_014_green_meadow" parent="." unique_id=1117747815 instance=ExtResource("4_abc")]
position = Vector2(-200, 74)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_015_frog_pond"
target = "uid://tkeyuep0ivo6"
label = "Green Meadow"
[node name="entrance" parent="kq4_014_green_meadow" index="0"]
position = Vector2(133, 643)
[node name="exit" parent="kq4_014_green_meadow" index="1"]
position = Vector2(300, 554)
[node name="kq4_021_bridge_over_stream" parent="." unique_id=990092107 instance=ExtResource("4_abc")]
position = Vector2(910, 542)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_015_frog_pond"
target = "uid://3uxipzjekijqc"
label = "Bridge over Stream"
[node name="entrance" parent="kq4_021_bridge_over_stream" index="0"]
position = Vector2(118, 514)
[node name="exit" parent="kq4_021_bridge_over_stream" index="1"]
position = Vector2(151, 615)
[connection signal="interacted" from="kq4_014_green_meadow" to="." method="_on_green_meadow_interacted"]
[connection signal="interacted" from="kq4_021_bridge_over_stream" to="." method="_on_bridge_over_stream_interacted"]
[editable path="kq4_009_shady_wooded_area"]
[editable path="kq4_016_graveyard"]
[editable path="kq4_021_bridge_over_stream"]
[editable path="kq4_014_green_meadow"]

View File

@@ -0,0 +1 @@
uid://2zga29mwl2ced

View File

@@ -0,0 +1 @@
uid://bk8q2nad4pu44

Binary file not shown.

View File

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c6osahy1usmg0"
path="res://.godot/imported/pic_015_visual.png-1eaab82f64245133ae799cb4c980f1c5.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://scenes/kq4_015_frog_pond/pic_015_visual.png"
dest_files=["res://.godot/imported/pic_015_visual.png-1eaab82f64245133ae799cb4c980f1c5.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View File

@@ -1,8 +1,11 @@
extends Scene
func _on_frog_pond_interacted() -> void:
$kq4_015_frog_pond.default_script(self)
func _on_forest_path_interacted() -> void:
print("HERE OK")
$kq4_010_forest_path.default_script(self)

View File

@@ -37,6 +37,19 @@ navigation_polygon = SubResource("NavigationPolygon_ppo6b")
[node name="default-starting-point" type="Node2D" parent="." unique_id=1018141532]
position = Vector2(194, 819)
[node name="kq4_015_frog_pond" parent="." unique_id=999999992 instance=ExtResource("4_abc")]
position = Vector2(-200, 100)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_016_graveyard"
target = "uid://2zga29mwl2ced"
label = "Frog Pond"
[node name="entrance" parent="kq4_015_frog_pond" index="0"]
position = Vector2(350, 500)
[node name="exit" parent="kq4_015_frog_pond" index="1"]
position = Vector2(100, 480)
[node name="kq4_010_forest_path" parent="." unique_id=1290603997 instance=ExtResource("4_abc")]
position = Vector2(910, -213)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
@@ -63,8 +76,11 @@ position = Vector2(133, 643)
[node name="exit" parent="kq4_022_gnomes_cottage" index="1"]
position = Vector2(174, 519)
[connection signal="interacted" from="kq4_015_frog_pond" to="." method="_on_frog_pond_interacted"]
[connection signal="interacted" from="kq4_010_forest_path" to="." method="_on_forest_path_interacted"]
[connection signal="interacted" from="kq4_022_gnomes_cottage" to="." method="_on_gnomes_cottage_interacted"]
[editable path="kq4_015_frog_pond"]
[editable path="kq4_010_forest_path"]
[editable path="kq4_022_gnomes_cottage"]

View File

@@ -2,4 +2,12 @@ extends Scene
func _on_meadow_interacted() -> void:
$kq4_020_meadow.default_script(self) # Replace with function body.
$kq4_020_meadow.default_script(self)
func _on_beach_interacted() -> void:
$kq4_013_beach.default_script(self)
func _on_beach_at_river_delta_interacted() -> void:
$kq4_025_beach_at_river_delta.default_script(self)

View File

@@ -31,7 +31,7 @@ position = Vector2(2048, 766)
[node name="kq4_025_beach_at_river_delta" parent="." index="6" instance=ExtResource("4_8xjvi")]
polygon = PackedVector2Array(999, 905, 2014, 941, 1973, 1208, 938, 1204)
appear_at_node = "kq4_025_beach_at_river_delta"
appear_at_node = "kq4_019_coastal_cliffs"
target = "uid://3vcewxyhbqica"
label = "River Delta"
@@ -41,5 +41,22 @@ position = Vector2(1734, 906)
[node name="exit" parent="kq4_025_beach_at_river_delta" index="1"]
position = Vector2(1538, 1274)
[node name="kq4_013_beach" parent="." index="7" instance=ExtResource("4_8xjvi")]
polygon = PackedVector2Array(1200, 100, 1300, 200, 1500, 200, 1600, 100)
appear_at_node = "kq4_019_coastal_cliffs"
target = "uid://2bqawc9w4uu59"
label = "Beach"
[node name="entrance" parent="kq4_013_beach" index="0"]
position = Vector2(1400, 300)
[node name="exit" parent="kq4_013_beach" index="1"]
position = Vector2(1400, 150)
[connection signal="interacted" from="kq4_013_beach" to="." method="_on_beach_interacted"]
[connection signal="interacted" from="kq4_020_meadow" to="." method="_on_meadow_interacted"]
[connection signal="interacted" from="kq4_025_beach_at_river_delta" to="." method="_on_beach_at_river_delta_interacted"]
[editable path="kq4_020_meadow"]
[editable path="kq4_025_beach_at_river_delta"]
[editable path="kq4_013_beach"]

View File

@@ -1,9 +1,17 @@
extends Scene
func _on_pool_interacted() -> void:
$kq4_003_fountain_pool.default_script(self)
func _on_green_meadow_interacted() -> void:
$kq4_014_green_meadow.default_script(self)
func _on_bridge_over_stream_interacted() -> void:
$kq4_021_bridge_over_stream.default_script(self)
func _on_oceanside_interacted() -> void:
$kq4_019_coastal_cliffs.default_script(self)
func _on_river_meadow_interacted() -> void:
$kq4_026_river_meadow.default_script(self)

View File

@@ -39,9 +39,35 @@ navigation_polygon = SubResource("NavigationPolygon_ppo6b")
[node name="default-starting-point" type="Node2D" parent="." unique_id=1018141532]
position = Vector2(194, 819)
[node name="kq4_014_green_meadow" parent="." unique_id=1117747813 instance=ExtResource("4_nrc7r")]
position = Vector2(910, -213)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_020_meadow"
target = "uid://tkeyuep0ivo6"
label = "Green Meadow"
[node name="entrance" parent="kq4_014_green_meadow" index="0"]
position = Vector2(133, 643)
[node name="exit" parent="kq4_014_green_meadow" index="1"]
position = Vector2(174, 519)
[node name="kq4_021_bridge_over_stream" parent="." unique_id=1117747812 instance=ExtResource("4_nrc7r")]
position = Vector2(1766, 74)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_020_meadow"
target = "uid://3uxipzjekijqc"
label = "Bridge over Stream"
[node name="entrance" parent="kq4_021_bridge_over_stream" index="0"]
position = Vector2(24, 565)
[node name="exit" parent="kq4_021_bridge_over_stream" index="1"]
position = Vector2(293, 554)
[node name="kq4_019_coastal_cliffs" parent="." unique_id=1117747814 instance=ExtResource("4_nrc7r")]
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_019_coastal_cliffs"
appear_at_node = "kq4_020_meadow"
target = "uid://3eh8ys3v25m45"
label = "Beach"
@@ -51,6 +77,19 @@ position = Vector2(506, 555)
[node name="exit" parent="kq4_019_coastal_cliffs" index="1"]
position = Vector2(-64, 534)
[node name="kq4_026_river_meadow" parent="." instance=ExtResource("4_nrc7r")]
position = Vector2(910, 542)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_020_meadow"
target = "uid://10p7miv0a14l7"
label = "River Meadow"
[node name="entrance" parent="kq4_026_river_meadow" index="0"]
position = Vector2(118, 514)
[node name="exit" parent="kq4_026_river_meadow" index="1"]
position = Vector2(151, 615)
[node name="Tree" type="Sprite2D" parent="." unique_id=2128315710]
position = Vector2(335, 855)
scale = Vector2(1.159, 1.181)
@@ -58,6 +97,12 @@ texture = ExtResource("5_ppo6b")
centered = false
offset = Vector2(-289.042, -723.963)
[connection signal="interacted" from="kq4_014_green_meadow" to="." method="_on_green_meadow_interacted"]
[connection signal="interacted" from="kq4_021_bridge_over_stream" to="." method="_on_bridge_over_stream_interacted"]
[connection signal="interacted" from="kq4_019_coastal_cliffs" to="." method="_on_oceanside_interacted"]
[connection signal="interacted" from="kq4_026_river_meadow" to="." method="_on_river_meadow_interacted"]
[editable path="kq4_014_green_meadow"]
[editable path="kq4_021_bridge_over_stream"]
[editable path="kq4_019_coastal_cliffs"]
[editable path="kq4_026_river_meadow"]

View File

@@ -0,0 +1,17 @@
extends Scene
func _on_frog_pond_interacted() -> void:
$kq4_015_frog_pond.default_script(self)
func _on_gnomes_cottage_interacted() -> void:
$kq4_022_gnomes_cottage.default_script(self)
func _on_meadow_interacted() -> void:
$kq4_020_meadow.default_script(self)
func _on_forest_path_interacted() -> void:
$kq4_027_forest_path.default_script(self)

View File

@@ -0,0 +1 @@
uid://ygfmtwnsa8sl

View File

@@ -0,0 +1,101 @@
[gd_scene format=3 uid="uid://3uxipzjekijqc"]
[ext_resource type="Script" uid="uid://ygfmtwnsa8sl" path="res://scenes/kq4_021_bridge_over_stream/kq4_021_bridge_over_stream.gd" id="1_abc"]
[ext_resource type="Texture2D" uid="uid://164oxibermalv" path="res://scenes/kq4_021_bridge_over_stream/pic_021_visual.png" id="2_abc"]
[ext_resource type="Script" uid="uid://xmphq3i0wbg3" path="res://ScalePoint_.gd" id="3_abc"]
[ext_resource type="PackedScene" uid="uid://c4vc1wx7k6cw" path="res://TransitionPiece.tscn" id="4_abc"]
[sub_resource type="NavigationPolygon" id="NavigationPolygon_ppo6b"]
vertices = PackedVector2Array(366.85156, 1243.1484, -140.97656, 1182.2422, -76.0625, 588.09375, -30.171875, 216.07031, 1221.4063, 226.97656, 1994.1406, 468.39844, 2011.7969, 1321.9766, 1052.7422, 1419.8672, -76.0625, 588.0781)
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3), PackedInt32Array(3, 4, 5, 6, 7, 0), PackedInt32Array(3, 2, 8)])
outlines = Array[PackedVector2Array]([PackedVector2Array(-39, 206, 1223, 217, 2004, 461, 2022, 1331, 1052, 1430, 365, 1253, -152, 1191, -86, 587)])
[node name="background" type="Node2D" unique_id=657573819]
y_sort_enabled = true
script = ExtResource("1_abc")
[node name="bg" type="Sprite2D" parent="." unique_id=874052749]
scale = Vector2(6, 6)
texture = ExtResource("2_abc")
centered = false
[node name="StartScalePoint" type="Node2D" parent="." unique_id=1640687858]
position = Vector2(1476, 742)
script = ExtResource("3_abc")
target_scale = 0.25
[node name="EndScalePoint" type="Node2D" parent="." unique_id=1996763530]
position = Vector2(1408, 1097)
scale = Vector2(0.44, 0.44)
script = ExtResource("3_abc")
target_scale = 0.35
[node name="pathfind" type="NavigationRegion2D" parent="." unique_id=1418661203]
position = Vector2(-1, 0)
navigation_polygon = SubResource("NavigationPolygon_ppo6b")
[node name="default-starting-point" type="Node2D" parent="." unique_id=1018141532]
position = Vector2(194, 819)
[node name="kq4_015_frog_pond" parent="." unique_id=484638394 instance=ExtResource("4_abc")]
position = Vector2(910, -213)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_021_bridge_over_stream"
target = "uid://2zga29mwl2ced"
label = "Frog Pond"
[node name="entrance" parent="kq4_015_frog_pond" index="0"]
position = Vector2(133, 643)
[node name="exit" parent="kq4_015_frog_pond" index="1"]
position = Vector2(174, 519)
[node name="kq4_022_gnomes_cottage" parent="." unique_id=1916756563 instance=ExtResource("4_abc")]
position = Vector2(1766, 74)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_021_bridge_over_stream"
target = "uid://3oq4x3exoimdb"
label = "Gnome's Cottage"
[node name="entrance" parent="kq4_022_gnomes_cottage" index="0"]
position = Vector2(24, 565)
[node name="exit" parent="kq4_022_gnomes_cottage" index="1"]
position = Vector2(293, 554)
[node name="kq4_027_forest_path" parent="." unique_id=990092106 instance=ExtResource("4_abc")]
position = Vector2(910, 542)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_021_bridge_over_stream"
target = "uid://1fpyosj18xls7"
label = "Forest Path"
[node name="entrance" parent="kq4_027_forest_path" index="0"]
position = Vector2(118, 514)
[node name="exit" parent="kq4_027_forest_path" index="1"]
position = Vector2(151, 615)
[connection signal="interacted" from="kq4_027_forest_path" to="." method="_on_forest_path_interacted"]
[node name="kq4_020_meadow" parent="." unique_id=1117747814 instance=ExtResource("4_abc")]
position = Vector2(-200, 74)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_021_bridge_over_stream"
target = "uid://2yy1t1lic39gp"
label = "Meadow"
[node name="entrance" parent="kq4_020_meadow" index="0"]
position = Vector2(133, 643)
[node name="exit" parent="kq4_020_meadow" index="1"]
position = Vector2(300, 554)
[connection signal="interacted" from="kq4_015_frog_pond" to="." method="_on_frog_pond_interacted"]
[connection signal="interacted" from="kq4_022_gnomes_cottage" to="." method="_on_gnomes_cottage_interacted"]
[connection signal="interacted" from="kq4_020_meadow" to="." method="_on_meadow_interacted"]
[editable path="kq4_015_frog_pond"]
[editable path="kq4_022_gnomes_cottage"]
[editable path="kq4_027_forest_path"]
[editable path="kq4_020_meadow"]

View File

@@ -0,0 +1 @@
uid://3uxipzjekijqc

View File

@@ -0,0 +1 @@
uid://bk8q2nad4pu44

Binary file not shown.

View File

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bbiogbsu2tboj"
path="res://.godot/imported/pic_021_visual.png-427038f2ced928f746c65107d8b239e0.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://scenes/kq4_021_bridge_over_stream/pic_021_visual.png"
dest_files=["res://.godot/imported/pic_021_visual.png-427038f2ced928f746c65107d8b239e0.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View File

@@ -66,7 +66,7 @@ position = Vector2(151, 615)
[node name="kq4_023_forest_path_with_cottage" parent="." unique_id=990092106 instance=ExtResource("4_abc")]
position = Vector2(1766, 74)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_023_forest_path_with_cottage"
appear_at_node = "kq4_022_gnomes_cottage"
target = "uid://1mhkt47y9jjhc"
label = "Forest Path with Cottage"
@@ -79,6 +79,7 @@ position = Vector2(293, 554)
[node name="kq4_021" parent="." unique_id=1117747814 instance=ExtResource("4_abc")]
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_022_gnomes_cottage"
target = "uid://3uxipzjekijqc"
label = "West Exit"
[node name="entrance" parent="kq4_021" index="0"]

View File

@@ -0,0 +1,17 @@
extends Scene
func _on_coastal_cliffs_interacted() -> void:
$kq4_019_coastal_cliffs.default_script(self)
func _on_river_meadow_interacted() -> void:
$kq4_026_river_meadow.default_script(self)
func _on_open_ocean_interacted() -> void:
$west_exit.default_script(self)
func _on_beach_interacted() -> void:
$kq4_001_beach.default_script(self)

View File

@@ -1,27 +1,55 @@
[gd_scene format=3 uid="uid://3vcewxyhbqica"]
[ext_resource type="PackedScene" uid="uid://ctkmgtcvpnkm8" path="res://TemplateScene.tscn" id="1_vunpr"]
[ext_resource type="Script" uid="uid://1ndyfao92bvne" path="res://scenes/kq4_025_beach_at_river_delta/kq4_025_beach_at_river_delta.gd" id="1_abc"]
[ext_resource type="Texture2D" uid="uid://bjt8wovxf8m1b" path="res://scenes/kq4_025_beach_at_river_delta/reg.png" id="2_uc3vv"]
[ext_resource type="PackedScene" uid="uid://c4vc1wx7k6cw" path="res://TransitionPiece.tscn" id="3_slrk6"]
[ext_resource type="Texture2D" uid="uid://ddvidy6i6wnka" path="res://scenes/kq4_025_beach_at_river_delta/tree.png" id="4_slrk6"]
[ext_resource type="Script" uid="uid://xmphq3i0wbg3" path="res://ScalePoint_.gd" id="3_abc"]
[ext_resource type="PackedScene" uid="uid://c4vc1wx7k6cw" path="res://TransitionPiece.tscn" id="4_abc"]
[ext_resource type="Texture2D" uid="uid://ddvidy6i6wnka" path="res://scenes/kq4_025_beach_at_river_delta/tree.png" id="5_abc"]
[sub_resource type="NavigationPolygon" id="NavigationPolygon_n0vbh"]
vertices = PackedVector2Array(1420.8, 882.891, 643.523, 782.813, 755.508, 679.367, 1170.98, 718.422, 1446.82, 264.32, 1830.07, 288.641, 1892.21, 394.188, 1460.68, 425.43, 1357.31, 386.203, 2174.01, 646.32, 2120.42, 949.383, 1827.87, 811.828, 1884.59, 654.039, 1592.76, 853.242, 1279.84, 600.93, 1418.68, 506.969, 1706.24, 821.109, 1346.11, 437.141, 1248.03, 530.352)
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3), PackedInt32Array(4, 5, 6, 7, 8), PackedInt32Array(9, 10, 11, 12), PackedInt32Array(13, 0, 3, 14, 15, 16), PackedInt32Array(17, 8, 7, 15), PackedInt32Array(15, 12, 11, 16), PackedInt32Array(17, 15, 14, 18)])
outlines = Array[PackedVector2Array]([PackedVector2Array(1442, 254, 1836, 279, 1909, 403, 1467, 435, 1433, 501, 1886, 644, 2186, 636, 2128, 964, 1826, 822, 1708, 831, 1595, 863, 1421, 893, 621, 790, 752, 669, 1167, 708, 1268, 599, 1236, 528, 1337, 432, 1348, 382)])
[node name="Scene" unique_id=819405050 instance=ExtResource("1_vunpr")]
[node name="background" type="Node2D" unique_id=657573819]
y_sort_enabled = true
script = ExtResource("1_abc")
[node name="bg" parent="." index="0"]
[node name="bg" type="Sprite2D" parent="." unique_id=874052749]
scale = Vector2(1.17, 1.17)
texture = ExtResource("2_uc3vv")
centered = false
[node name="pathfind" parent="." index="3"]
[node name="StartScalePoint" type="Node2D" parent="." unique_id=1640687858]
position = Vector2(1476, 742)
script = ExtResource("3_abc")
target_scale = 0.25
[node name="EndScalePoint" type="Node2D" parent="." unique_id=1996763530]
position = Vector2(1408, 1097)
scale = Vector2(0.44, 0.44)
script = ExtResource("3_abc")
target_scale = 0.35
[node name="pathfind" type="NavigationRegion2D" parent="." unique_id=1418661203]
position = Vector2(-1, 0)
navigation_polygon = SubResource("NavigationPolygon_n0vbh")
[node name="kq4_019_coastal_cliffs" parent="." index="5" unique_id=893874410 instance=ExtResource("3_slrk6")]
[node name="default-starting-point" type="Node2D" parent="." unique_id=1018141532]
position = Vector2(194, 819)
[node name="Tree" type="Sprite2D" parent="." unique_id=1514036032]
z_as_relative = false
y_sort_enabled = true
position = Vector2(1821, 484)
scale = Vector2(1.17, 1.17)
texture = ExtResource("5_abc")
centered = false
offset = Vector2(-1556.81, -413.703)
[node name="kq4_019_coastal_cliffs" parent="." unique_id=893874410 instance=ExtResource("4_abc")]
polygon = PackedVector2Array(1442, 94, 973, 238, 939, 386, 1753, 367, 1751, 180)
appear_at_node = "kq4_19_coastal_cliffs"
appear_at_node = "kq4_025_beach_at_river_delta"
target = "uid://3eh8ys3v25m45"
label = "Coastal Cliffs"
@@ -31,13 +59,51 @@ position = Vector2(1310, 784)
[node name="exit" parent="kq4_019_coastal_cliffs" index="1"]
position = Vector2(1535, 302)
[node name="Tree" type="Sprite2D" parent="." index="6" unique_id=1514036032]
z_as_relative = false
y_sort_enabled = true
position = Vector2(1821, 484)
scale = Vector2(1.17, 1.17)
texture = ExtResource("4_slrk6")
centered = false
offset = Vector2(-1556.81, -413.703)
[node name="kq4_026_river_meadow" parent="." unique_id=1234567890 instance=ExtResource("4_abc")]
position = Vector2(1800, 400)
polygon = PackedVector2Array(1700, 300, 1900, 300, 1900, 500, 1700, 500)
appear_at_node = "kq4_025_beach_at_river_delta"
target = "uid://10p7miv0a14l7"
label = "River Meadow"
[node name="entrance" parent="kq4_026_river_meadow" index="0"]
position = Vector2(1750, 450)
[node name="exit" parent="kq4_026_river_meadow" index="1"]
position = Vector2(1850, 350)
[node name="kq4_031_open_ocean" parent="." unique_id=1117747814 instance=ExtResource("4_abc")]
position = Vector2(100, 400)
polygon = PackedVector2Array(100, 300, 200, 300, 200, 500, 100, 500)
appear_at_node = "kq4_025_beach_at_river_delta"
target = "uid://2f7c49hpkducc"
label = "Open Ocean"
[node name="entrance" parent="kq4_031_open_ocean" index="0"]
position = Vector2(150, 450)
[node name="exit" parent="kq4_031_open_ocean" index="1"]
position = Vector2(50, 350)
[node name="kq4_001_beach" parent="." unique_id=1117747815 instance=ExtResource("4_abc")]
position = Vector2(910, 542)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_025_beach_at_river_delta"
target = "uid://1rwfkejhz94hp"
label = "Beach"
[node name="entrance" parent="kq4_001_beach" index="0"]
position = Vector2(118, 514)
[node name="exit" parent="kq4_001_beach" index="1"]
position = Vector2(151, 615)
[connection signal="interacted" from="kq4_019_coastal_cliffs" to="." method="_on_coastal_cliffs_interacted"]
[connection signal="interacted" from="kq4_026_river_meadow" to="." method="_on_river_meadow_interacted"]
[connection signal="interacted" from="kq4_031_open_ocean" to="." method="_on_open_ocean_interacted"]
[connection signal="interacted" from="kq4_001_beach" to="." method="_on_beach_interacted"]
[editable path="kq4_019_coastal_cliffs"]
[editable path="kq4_026_river_meadow"]
[editable path="kq4_031_open_ocean"]
[editable path="kq4_001_beach"]

View File

@@ -0,0 +1,17 @@
extends Scene
func _on_meadow_20_interacted() -> void:
$kq4_020_meadow.default_script(self)
func _on_meadow_2_interacted() -> void:
$kq4_002_meadow.default_script(self)
func _on_beach_at_river_delta_interacted() -> void:
$kq4_025_beach_at_river_delta.default_script(self)
func _on_forest_path_interacted() -> void:
$kq4_027_forest_path.default_script(self)

View File

@@ -0,0 +1 @@
uid://kx1zaj92qsq7

View File

@@ -0,0 +1,100 @@
[gd_scene format=3 uid="uid://10p7miv0a14l7"]
[ext_resource type="Script" uid="uid://kx1zaj92qsq7" path="res://scenes/kq4_026_river_meadow/kq4_026_river_meadow.gd" id="1_abc"]
[ext_resource type="Texture2D" uid="uid://1yls50w1d6hp7" path="res://scenes/kq4_026_river_meadow/pic_026_visual.png" id="2_abc"]
[ext_resource type="Script" uid="uid://xmphq3i0wbg3" path="res://ScalePoint_.gd" id="3_abc"]
[ext_resource type="PackedScene" uid="uid://c4vc1wx7k6cw" path="res://TransitionPiece.tscn" id="4_abc"]
[sub_resource type="NavigationPolygon" id="NavigationPolygon_ppo6b"]
vertices = PackedVector2Array(366.85156, 1243.1484, -140.97656, 1182.2422, -76.0625, 588.09375, -30.171875, 216.07031, 1221.4063, 226.97656, 1994.1406, 468.39844, 2011.7969, 1321.9766, 1052.7422, 1419.8672, -76.0625, 588.0781)
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3), PackedInt32Array(3, 4, 5, 6, 7, 0), PackedInt32Array(3, 2, 8)])
outlines = Array[PackedVector2Array]([PackedVector2Array(-39, 206, 1223, 217, 2004, 461, 2022, 1331, 1052, 1430, 365, 1253, -152, 1191, -86, 587)])
[node name="background" type="Node2D" unique_id=657573819]
y_sort_enabled = true
script = ExtResource("1_abc")
[node name="bg" type="Sprite2D" parent="." unique_id=874052749]
scale = Vector2(6, 6)
texture = ExtResource("2_abc")
centered = false
[node name="StartScalePoint" type="Node2D" parent="." unique_id=1640687858]
position = Vector2(1476, 742)
script = ExtResource("3_abc")
target_scale = 0.25
[node name="EndScalePoint" type="Node2D" parent="." unique_id=1996763530]
position = Vector2(1408, 1097)
scale = Vector2(0.44, 0.44)
script = ExtResource("3_abc")
target_scale = 0.35
[node name="pathfind" type="NavigationRegion2D" parent="." unique_id=1418661203]
position = Vector2(-1, 0)
navigation_polygon = SubResource("NavigationPolygon_ppo6b")
[node name="default-starting-point" type="Node2D" parent="." unique_id=1018141532]
position = Vector2(194, 819)
[node name="kq4_020_meadow" parent="." unique_id=484638394 instance=ExtResource("4_abc")]
position = Vector2(910, -213)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_026_river_meadow"
target = "uid://2yy1t1lic39gp"
label = "Meadow"
[node name="entrance" parent="kq4_020_meadow" index="0"]
position = Vector2(133, 643)
[node name="exit" parent="kq4_020_meadow" index="1"]
position = Vector2(174, 519)
[node name="kq4_027_forest_path" parent="." unique_id=1916756563 instance=ExtResource("4_abc")]
position = Vector2(1766, 74)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_026_river_meadow"
target = "uid://1fpyosj18xls7"
label = "Forest Path"
[node name="entrance" parent="kq4_027_forest_path" index="0"]
position = Vector2(24, 565)
[node name="exit" parent="kq4_027_forest_path" index="1"]
position = Vector2(293, 554)
[connection signal="interacted" from="kq4_027_forest_path" to="." method="_on_forest_path_interacted"]
[node name="kq4_002_meadow" parent="." unique_id=990092106 instance=ExtResource("4_abc")]
position = Vector2(910, 542)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_026_river_meadow"
target = "uid://1489d4oh9twtu"
label = "Meadow"
[node name="entrance" parent="kq4_002_meadow" index="0"]
position = Vector2(118, 514)
[node name="exit" parent="kq4_002_meadow" index="1"]
position = Vector2(151, 615)
[node name="kq4_025_beach_at_river_delta" parent="." unique_id=1117747814 instance=ExtResource("4_abc")]
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_026_river_meadow"
target = "uid://3vcewxyhbqica"
label = "Beach at River Delta"
[node name="entrance" parent="kq4_025_beach_at_river_delta" index="0"]
position = Vector2(506, 555)
[node name="exit" parent="kq4_025_beach_at_river_delta" index="1"]
position = Vector2(-64, 534)
[connection signal="interacted" from="kq4_020_meadow" to="." method="_on_meadow_20_interacted"]
[connection signal="interacted" from="kq4_002_meadow" to="." method="_on_meadow_2_interacted"]
[connection signal="interacted" from="kq4_025_beach_at_river_delta" to="." method="_on_beach_at_river_delta_interacted"]
[editable path="kq4_020_meadow"]
[editable path="kq4_027_forest_path"]
[editable path="kq4_002_meadow"]
[editable path="kq4_025_beach_at_river_delta"]

View File

@@ -0,0 +1 @@
uid://10p7miv0a14l7

Binary file not shown.

View File

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dr5lmofiyx76m"
path="res://.godot/imported/pic_026_visual.png-386f2fd90b5899c5d3649d4d1cd42e1c.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://scenes/kq4_026_river_meadow/pic_026_visual.png"
dest_files=["res://.godot/imported/pic_026_visual.png-386f2fd90b5899c5d3649d4d1cd42e1c.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View File

@@ -0,0 +1 @@
uid://1yls50w1d6hp7

View File

@@ -0,0 +1,17 @@
extends Scene
func _on_bridge_over_stream_interacted() -> void:
$kq4_021_bridge_over_stream.default_script(self)
func _on_fountain_pool_interacted() -> void:
$kq4_003_fountain_pool.default_script(self)
func _on_mine_entrance_interacted() -> void:
$kq4_028_mine_entrance.default_script(self)
func _on_river_meadow_interacted() -> void:
$kq4_026_river_meadow.default_script(self)

View File

@@ -0,0 +1 @@
uid://3ofmq34xm3qb0

View File

@@ -0,0 +1,99 @@
[gd_scene format=3 uid="uid://1fpyosj18xls7"]
[ext_resource type="Script" uid="uid://3ofmq34xm3qb0" path="res://scenes/kq4_027_forest_path/kq4_027_forest_path.gd" id="1_abc"]
[ext_resource type="Texture2D" uid="uid://1tsm5mtf1ls7d" path="res://scenes/kq4_027_forest_path/pic_027_visual.png" id="2_abc"]
[ext_resource type="Script" uid="uid://xmphq3i0wbg3" path="res://ScalePoint_.gd" id="3_abc"]
[ext_resource type="PackedScene" uid="uid://c4vc1wx7k6cw" path="res://TransitionPiece.tscn" id="4_abc"]
[sub_resource type="NavigationPolygon" id="NavigationPolygon_ppo6b"]
vertices = PackedVector2Array(366.85156, 1243.1484, -140.97656, 1182.2422, -76.0625, 588.09375, -30.171875, 216.07031, 1221.4063, 226.97656, 1994.1406, 468.39844, 2011.7969, 1321.9766, 1052.7422, 1419.8672, -76.0625, 588.0781)
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3), PackedInt32Array(3, 4, 5, 6, 7, 0), PackedInt32Array(3, 2, 8)])
outlines = Array[PackedVector2Array]([PackedVector2Array(-39, 206, 1223, 217, 2004, 461, 2022, 1331, 1052, 1430, 365, 1253, -152, 1191, -86, 587)])
[node name="background" type="Node2D" unique_id=657573819]
y_sort_enabled = true
script = ExtResource("1_abc")
[node name="bg" type="Sprite2D" parent="." unique_id=874052749]
scale = Vector2(6, 6)
texture = ExtResource("2_abc")
centered = false
[node name="StartScalePoint" type="Node2D" parent="." unique_id=1640687858]
position = Vector2(1476, 742)
script = ExtResource("3_abc")
target_scale = 0.25
[node name="EndScalePoint" type="Node2D" parent="." unique_id=1996763530]
position = Vector2(1408, 1097)
scale = Vector2(0.44, 0.44)
script = ExtResource("3_abc")
target_scale = 0.35
[node name="pathfind" type="NavigationRegion2D" parent="." unique_id=1418661203]
position = Vector2(-1, 0)
navigation_polygon = SubResource("NavigationPolygon_ppo6b")
[node name="default-starting-point" type="Node2D" parent="." unique_id=1018141532]
position = Vector2(194, 819)
[node name="kq4_021_bridge_over_stream" parent="." unique_id=484638394 instance=ExtResource("4_abc")]
position = Vector2(910, -213)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_027_forest_path"
target = "uid://3uxipzjekijqc"
label = "Bridge over Stream"
[node name="entrance" parent="kq4_021_bridge_over_stream" index="0"]
position = Vector2(133, 643)
[node name="exit" parent="kq4_021_bridge_over_stream" index="1"]
position = Vector2(174, 519)
[node name="kq4_028_mine_entrance" parent="." unique_id=1916756563 instance=ExtResource("4_abc")]
position = Vector2(1766, 74)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_027_forest_path"
target = "uid://qkcwifq2lb9m"
label = "Mine Entrance"
[node name="entrance" parent="kq4_028_mine_entrance" index="0"]
position = Vector2(24, 565)
[node name="exit" parent="kq4_028_mine_entrance" index="1"]
position = Vector2(293, 554)
[node name="kq4_003_fountain_pool" parent="." unique_id=990092106 instance=ExtResource("4_abc")]
position = Vector2(910, 542)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_027_forest_path"
target = "uid://151dbn9bybiwx"
label = "Fountain Pool"
[node name="entrance" parent="kq4_003_fountain_pool" index="0"]
position = Vector2(118, 514)
[node name="exit" parent="kq4_003_fountain_pool" index="1"]
position = Vector2(151, 615)
[node name="kq4_026_river_meadow" parent="." unique_id=1117747814 instance=ExtResource("4_abc")]
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_027_forest_path"
target = "uid://10p7miv0a14l7"
label = "River Meadow"
[node name="entrance" parent="kq4_026_river_meadow" index="0"]
position = Vector2(506, 555)
[node name="exit" parent="kq4_026_river_meadow" index="1"]
position = Vector2(-64, 534)
[connection signal="interacted" from="kq4_021_bridge_over_stream" to="." method="_on_bridge_over_stream_interacted"]
[connection signal="interacted" from="kq4_028_mine_entrance" to="." method="_on_mine_entrance_interacted"]
[connection signal="interacted" from="kq4_003_fountain_pool" to="." method="_on_fountain_pool_interacted"]
[connection signal="interacted" from="kq4_026_river_meadow" to="." method="_on_river_meadow_interacted"]
[editable path="kq4_021_bridge_over_stream"]
[editable path="kq4_028_mine_entrance"]
[editable path="kq4_003_fountain_pool"]
[editable path="kq4_026_river_meadow"]

View File

@@ -0,0 +1 @@
uid://1fpyosj18xls7

Binary file not shown.

View File

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dndfmbbwneknr"
path="res://.godot/imported/pic_027_visual.png-87c96ab1edc9839a0353b4d9546651d9.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://scenes/kq4_027_forest_path/pic_027_visual.png"
dest_files=["res://.godot/imported/pic_027_visual.png-87c96ab1edc9839a0353b4d9546651d9.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View File

@@ -0,0 +1 @@
uid://1tsm5mtf1ls7d

View File

@@ -9,9 +9,9 @@ func _on_029_interacted() -> void:
$kq4_029.default_script(self)
func _on_004_interacted() -> void:
$kq4_004.default_script(self)
func _on_ogres_cottage_interacted() -> void:
$kq4_004_ogres_cottage.default_script(self)
func _on_027_interacted() -> void:
func _on_forest_path_interacted() -> void:
$kq4_027.default_script(self)

View File

@@ -62,22 +62,24 @@ position = Vector2(24, 565)
[node name="exit" parent="kq4_029" index="1"]
position = Vector2(293, 554)
[node name="kq4_004" parent="." unique_id=990092106 instance=ExtResource("4_abc")]
[node name="kq4_004_ogres_cottage" parent="." unique_id=990092106 instance=ExtResource("4_abc")]
position = Vector2(910, 542)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_028_mine_entrance"
label = "South Exit"
target = "uid://1nxmm3b1kcdm1"
label = "Ogre's Cottage"
[node name="entrance" parent="kq4_004" index="0"]
[node name="entrance" parent="kq4_004_ogres_cottage" index="0"]
position = Vector2(118, 514)
[node name="exit" parent="kq4_004" index="1"]
[node name="exit" parent="kq4_004_ogres_cottage" index="1"]
position = Vector2(151, 615)
[node name="kq4_027" parent="." unique_id=1117747814 instance=ExtResource("4_abc")]
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_028_mine_entrance"
label = "West Exit"
target = "uid://1fpyosj18xls7"
label = "Forest Path"
[node name="entrance" parent="kq4_027" index="0"]
position = Vector2(506, 555)
@@ -85,12 +87,13 @@ position = Vector2(506, 555)
[node name="exit" parent="kq4_027" index="1"]
position = Vector2(-64, 534)
[connection signal="interacted" from="kq4_027" to="." method="_on_forest_path_interacted"]
[connection signal="interacted" from="kq4_022_gnomes_cottage" to="." method="_on_gnomes_cottage_interacted"]
[connection signal="interacted" from="kq4_029" to="." method="_on_029_interacted"]
[connection signal="interacted" from="kq4_004" to="." method="_on_004_interacted"]
[connection signal="interacted" from="kq4_027" to="." method="_on_027_interacted"]
[connection signal="interacted" from="kq4_004_ogres_cottage" to="." method="_on_ogres_cottage_interacted"]
[editable path="kq4_022_gnomes_cottage"]
[editable path="kq4_029"]
[editable path="kq4_004"]
[editable path="kq4_004_ogres_cottage"]
[editable path="kq4_027"]

View File

@@ -0,0 +1,9 @@
extends Scene
func _on_beach_interacted() -> void:
$kq4_001_beach.default_script(self)
func _on_beach_at_river_delta_interacted() -> void:
$east_exit.default_script(self)

View File

@@ -0,0 +1 @@
uid://yhbvyjnna0sk

View File

@@ -0,0 +1,93 @@
[gd_scene format=3 uid="uid://2f7c49hpkducc"]
[ext_resource type="Script" uid="uid://1hjbz7zjl0ody" path="res://scenes/kq4_031_open_ocean/kq4_031_open_ocean.gd" id="1_abc"]
[ext_resource type="Texture2D" uid="uid://33ffq67ojobi7" path="res://scenes/kq4_031_open_ocean/pic_031_visual.png" id="2_abc"]
[ext_resource type="Script" uid="uid://xmphq3i0wbg3" path="res://ScalePoint_.gd" id="3_abc"]
[ext_resource type="PackedScene" uid="uid://c4vc1wx7k6cw" path="res://TransitionPiece.tscn" id="4_abc"]
[sub_resource type="NavigationPolygon" id="NavigationPolygon_ppo6b"]
vertices = PackedVector2Array(366.85156, 1243.1484, -140.97656, 1182.2422, -76.0625, 588.09375, -30.171875, 216.07031, 1221.4063, 226.97656, 1994.1406, 468.39844, 2011.7969, 1321.9766, 1052.7422, 1419.8672, -76.0625, 588.0781)
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3), PackedInt32Array(3, 4, 5, 6, 7, 0), PackedInt32Array(3, 2, 8)])
outlines = Array[PackedVector2Array]([PackedVector2Array(-39, 206, 1223, 217, 2004, 461, 2022, 1331, 1052, 1430, 365, 1253, -152, 1191, -86, 587)])
[node name="background" type="Node2D" unique_id=657573819]
y_sort_enabled = true
script = ExtResource("1_abc")
[node name="bg" type="Sprite2D" parent="." unique_id=874052749]
scale = Vector2(6, 6)
texture = ExtResource("2_abc")
centered = false
[node name="StartScalePoint" type="Node2D" parent="." unique_id=1640687858]
position = Vector2(1476, 742)
script = ExtResource("3_abc")
target_scale = 0.25
[node name="EndScalePoint" type="Node2D" parent="." unique_id=1996763530]
position = Vector2(1408, 1097)
scale = Vector2(0.44, 0.44)
script = ExtResource("3_abc")
target_scale = 0.35
[node name="pathfind" type="NavigationRegion2D" parent="." unique_id=1418661203]
position = Vector2(-1, 0)
navigation_polygon = SubResource("NavigationPolygon_ppo6b")
[node name="default-starting-point" type="Node2D" parent="." unique_id=1018141532]
position = Vector2(194, 819)
[node name="kq4_001_beach" parent="." unique_id=484638394 instance=ExtResource("4_abc")]
position = Vector2(910, -213)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_031_open_ocean"
target = "uid://1rwfkejhz94hp"
label = "Beach"
[node name="entrance" parent="kq4_001_beach" index="0"]
position = Vector2(133, 643)
[node name="exit" parent="kq4_001_beach" index="1"]
position = Vector2(174, 519)
[node name="kq4_025_beach_at_river_delta" parent="." unique_id=1916756563 instance=ExtResource("4_abc")]
position = Vector2(1766, 74)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
appear_at_node = "kq4_031_open_ocean"
target = "uid://3vcewxyhbqica"
label = "Beach at River Delta"
[node name="entrance" parent="kq4_025_beach_at_river_delta" index="0"]
position = Vector2(24, 565)
[node name="exit" parent="kq4_025_beach_at_river_delta" index="1"]
position = Vector2(293, 554)
[node name="south_exit" parent="." unique_id=990092106 instance=ExtResource("4_abc")]
position = Vector2(910, 542)
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
label = "South Exit"
[node name="entrance" parent="south_exit" index="0"]
position = Vector2(118, 514)
[node name="exit" parent="south_exit" index="1"]
position = Vector2(151, 615)
[node name="west_exit" parent="." unique_id=1117747814 instance=ExtResource("4_abc")]
polygon = PackedVector2Array(-108, 454, -87, 649, 376, 658, 348, 381)
label = "West Exit"
[node name="entrance" parent="west_exit" index="0"]
position = Vector2(506, 555)
[node name="exit" parent="west_exit" index="1"]
position = Vector2(-64, 534)
[connection signal="interacted" from="kq4_001_beach" to="." method="_on_beach_interacted"]
[connection signal="interacted" from="kq4_025_beach_at_river_delta" to="." method="_on_beach_at_river_delta_interacted"]
[editable path="kq4_001_beach"]
[editable path="kq4_025_beach_at_river_delta"]
[editable path="south_exit"]
[editable path="west_exit"]

View File

@@ -0,0 +1 @@
uid://bk8q2nad4pu44

Binary file not shown.

View File

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b1kcmsrwk857u"
path="res://.godot/imported/pic_031_visual.png-ed3fd5d7ebac998ef6d459ee36bb8988.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://scenes/kq4_031_open_ocean/pic_031_visual.png"
dest_files=["res://.godot/imported/pic_031_visual.png-ed3fd5d7ebac998ef6d459ee36bb8988.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1