feat: add new dialogue boxes; add another green ninja npc; add an array of dialogues variations;

This commit is contained in:
2026-09-19 17:26:04 +02:00
parent 5c3a533559
commit 23aa21b7b7
3 changed files with 44 additions and 6 deletions
+22 -1
View File
@@ -6,7 +6,9 @@
[ext_resource type="Texture2D" uid="uid://c3l7w3n700qx3" path="res://Ninja Adventure - Asset Pack/Backgrounds/Tilesets/TilesetReliefDetail.png" id="3_oi8ly"] [ext_resource type="Texture2D" uid="uid://c3l7w3n700qx3" path="res://Ninja Adventure - Asset Pack/Backgrounds/Tilesets/TilesetReliefDetail.png" id="3_oi8ly"]
[ext_resource type="PackedScene" uid="uid://dhvuy8co661xo" path="res://Scenes/SceneEntrance/scene_entrance.tscn" id="5_oi8ly"] [ext_resource type="PackedScene" uid="uid://dhvuy8co661xo" path="res://Scenes/SceneEntrance/scene_entrance.tscn" id="5_oi8ly"]
[ext_resource type="PackedScene" uid="uid://orvnsdbeji56" path="res://Scenes/Block/block.tscn" id="6_12ovb"] [ext_resource type="PackedScene" uid="uid://orvnsdbeji56" path="res://Scenes/Block/block.tscn" id="6_12ovb"]
[ext_resource type="Texture2D" uid="uid://beisx8cy6a4jv" path="res://Ninja Adventure - Asset Pack/Actor/Characters/NinjaGreen/SpriteSheet.png" id="6_dc78n"]
[ext_resource type="PackedScene" uid="uid://dfu6aj67vqwfn" path="res://Scenes/LockedDoor/locked_door.tscn" id="6_elpgg"] [ext_resource type="PackedScene" uid="uid://dfu6aj67vqwfn" path="res://Scenes/LockedDoor/locked_door.tscn" id="6_elpgg"]
[ext_resource type="Texture2D" uid="uid://d2sp6q0reih0" path="res://Ninja Adventure - Asset Pack/Actor/Characters/NinjaGreen/Faceset.png" id="7_6qy3m"]
[ext_resource type="Script" uid="uid://decx4kt8ftrb5" path="res://Scenes/LockedDoor/locked_door.gd" id="7_nr542"] [ext_resource type="Script" uid="uid://decx4kt8ftrb5" path="res://Scenes/LockedDoor/locked_door.gd" id="7_nr542"]
[ext_resource type="PackedScene" uid="uid://onpen57mc6i8" path="res://Scenes/PuzzleButton/puzzle_button.tscn" id="7_ohrk8"] [ext_resource type="PackedScene" uid="uid://onpen57mc6i8" path="res://Scenes/PuzzleButton/puzzle_button.tscn" id="7_ohrk8"]
[ext_resource type="PackedScene" uid="uid://dsb83tlcapw8l" path="res://Scenes/NPC/npc.tscn" id="10_g3lhp"] [ext_resource type="PackedScene" uid="uid://dsb83tlcapw8l" path="res://Scenes/NPC/npc.tscn" id="10_g3lhp"]
@@ -802,7 +804,24 @@ tile_map_data = PackedByteArray("AAAIAP7/AAAAAAIAAAAKAP3/AAAAAAIAAAAMAP7/AAAAAAI
tile_set = SubResource("TileSet_ilnae") tile_set = SubResource("TileSet_ilnae")
[node name="NPC" parent="ObstacleLayer" unique_id=687608910 groups=["interactable"] instance=ExtResource("10_g3lhp")] [node name="NPC" parent="ObstacleLayer" unique_id=687608910 groups=["interactable"] instance=ExtResource("10_g3lhp")]
position = Vector2(40, -29) position = Vector2(40, -28)
[node name="NPC2" parent="ObstacleLayer" unique_id=1631815121 groups=["interactable"] instance=ExtResource("10_g3lhp")]
position = Vector2(74, -28)
[node name="Sprite2D" parent="ObstacleLayer/NPC2" index="1" unique_id=2127209036]
texture = ExtResource("6_dc78n")
region_enabled = true
region_rect = Rect2(0, 0, 16, 16)
[node name="NPCIcon" parent="ObstacleLayer/NPC2/CanvasLayer/DialogBoxTexture" parent_id_path=PackedInt32Array(1631815121, 2039853714) index="0" unique_id=1385209557]
texture = ExtResource("7_6qy3m")
[node name="DialogLabel" parent="ObstacleLayer/NPC2/CanvasLayer" parent_id_path=PackedInt32Array(1631815121, 1510478417) index="1" unique_id=439922902]
text = "Did you know that there's a cave in the east?"
[node name="NameLabel" parent="ObstacleLayer/NPC2/CanvasLayer" parent_id_path=PackedInt32Array(1631815121, 1510478417) index="2" unique_id=1649543931]
text = "Green Ninja"
[node name="SceneEntrance" parent="." unique_id=1734357035 instance=ExtResource("5_oi8ly")] [node name="SceneEntrance" parent="." unique_id=1734357035 instance=ExtResource("5_oi8ly")]
position = Vector2(137, -107) position = Vector2(137, -107)
@@ -823,3 +842,5 @@ zoom = Vector2(5, 5)
[connection signal="pressed" from="PuzzleButton" to="LockedDoor" method="_on_puzzle_button_pressed"] [connection signal="pressed" from="PuzzleButton" to="LockedDoor" method="_on_puzzle_button_pressed"]
[connection signal="unpressed" from="PuzzleButton" to="LockedDoor" method="_on_puzzle_button_unpressed"] [connection signal="unpressed" from="PuzzleButton" to="LockedDoor" method="_on_puzzle_button_unpressed"]
[editable path="ObstacleLayer/NPC2"]
+4
View File
@@ -1,11 +1,15 @@
extends StaticBody2D extends StaticBody2D
@export var dialogue_lines: Array[String] = ["Hello!", "Good day to you!", "Welcome!"]
var can_interact: bool = false var can_interact: bool = false
# Called every frame. 'delta' is the elapsed time since the previous frame. # Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void: func _process(delta: float) -> void:
if Input.is_action_just_pressed("Interact") and can_interact: if Input.is_action_just_pressed("Interact") and can_interact:
$CanvasLayer/DialogLabel.text = dialogue_lines[randi_range(0, 2)]
if $CanvasLayer.visible == false: if $CanvasLayer.visible == false:
$CanvasLayer.visible = true $CanvasLayer.visible = true
get_tree().paused = true
else: else:
$CanvasLayer.visible = false $CanvasLayer.visible = false
get_tree().paused = false
+18 -5
View File
@@ -16,7 +16,11 @@ region = Rect2(0, 0, 16, 16)
font_size = 48 font_size = 48
font_color = Color(0, 0, 0, 1) font_color = Color(0, 0, 0, 1)
[sub_resource type="LabelSettings" id="LabelSettings_chgu2"]
font_size = 28
[node name="NPC" type="StaticBody2D" unique_id=687608910] [node name="NPC" type="StaticBody2D" unique_id=687608910]
process_mode = 3
script = ExtResource("1_bjna2") script = ExtResource("1_bjna2")
[node name="CollisionShape2D" type="CollisionShape2D" parent="." unique_id=1581401512] [node name="CollisionShape2D" type="CollisionShape2D" parent="." unique_id=1581401512]
@@ -29,7 +33,7 @@ texture = SubResource("AtlasTexture_chgu2")
[node name="CanvasLayer" type="CanvasLayer" parent="." unique_id=1510478417] [node name="CanvasLayer" type="CanvasLayer" parent="." unique_id=1510478417]
visible = false visible = false
[node name="TextureRect" type="TextureRect" parent="CanvasLayer" unique_id=2039853714] [node name="DialogBoxTexture" type="TextureRect" parent="CanvasLayer" unique_id=2039853714]
offset_left = 428.0 offset_left = 428.0
offset_top = 498.0 offset_top = 498.0
offset_right = 728.0 offset_right = 728.0
@@ -38,7 +42,7 @@ offset_transform_enabled = true
offset_transform_scale = Vector2(3.7, 3.7) offset_transform_scale = Vector2(3.7, 3.7)
texture = ExtResource("3_0s07e") texture = ExtResource("3_0s07e")
[node name="TextureRect" type="TextureRect" parent="CanvasLayer/TextureRect" unique_id=1385209557] [node name="NPCIcon" type="TextureRect" parent="CanvasLayer/DialogBoxTexture" unique_id=1385209557 groups=["interactable"]]
layout_mode = 0 layout_mode = 0
offset_left = 5.0 offset_left = 5.0
offset_top = 14.0 offset_top = 14.0
@@ -46,10 +50,19 @@ offset_right = 45.0
offset_bottom = 54.0 offset_bottom = 54.0
texture = ExtResource("4_aqj1y") texture = ExtResource("4_aqj1y")
[node name="Label" type="Label" parent="CanvasLayer" unique_id=439922902] [node name="DialogLabel" type="Label" parent="CanvasLayer" unique_id=439922902]
offset_left = 208.0 offset_left = 208.0
offset_top = 472.0 offset_top = 472.0
offset_right = 492.0 offset_right = 1109.0
offset_bottom = 539.0 offset_bottom = 623.0
text = "Hello World!" text = "Hello World!"
label_settings = SubResource("LabelSettings_0s07e") label_settings = SubResource("LabelSettings_0s07e")
autowrap_mode = 3
[node name="NameLabel" type="Label" parent="CanvasLayer" unique_id=1649543931]
offset_left = 58.0
offset_top = 419.0
offset_right = 270.0
offset_bottom = 458.0
text = "Blue Ninja"
label_settings = SubResource("LabelSettings_chgu2")