It's Cow Game! Version 2.04!

This commit is contained in:
PajamaBee 2024-09-19 23:06:51 -05:00
commit a9e1ed9ddd
3148 changed files with 95332 additions and 0 deletions

View file

@ -0,0 +1,10 @@
~ start
Alligator?: im an alligator and i love lasagna!
Alligator?: do you want to raid the capitol with me?
- sure
Alligator?: im so excited
- no thanks
Alligator?: boring
=> END

View file

@ -0,0 +1,15 @@
[remap]
importer="dialogue_manager_compiler_11"
type="Resource"
uid="uid://d1rmj3e5q3pbx"
path="res://.godot/imported/Alligator.dialogue-25eecbd206ba1c22b35d9d4a224ea7af.tres"
[deps]
source_file="res://NPCs/Tutorial/EllieMode/Alligator/Alligator.dialogue"
dest_files=["res://.godot/imported/Alligator.dialogue-25eecbd206ba1c22b35d9d4a224ea7af.tres"]
[params]
defaults=true

View file

@ -0,0 +1,13 @@
extends NPC
# Called when the node enters the scene tree for the first time.
func _ready():
characterName = "Arson Alliogator?"
pronouns = "She/Her"
dialogueResource = load("res://NPCs/Tutorial/EllieMode/Alligator/Alligator.dialogue")
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):
pass

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://buid5g4tlpydo"
path="res://.godot/imported/Alligator.png-fd3aabe7ae93d2a7b3d2d19004585631.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Tutorial/EllieMode/Alligator/Alligator.png"
dest_files=["res://.godot/imported/Alligator.png-fd3aabe7ae93d2a7b3d2d19004585631.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
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/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,97 @@
[gd_scene load_steps=8 format=3 uid="uid://s2myk8onq887"]
[ext_resource type="Script" path="res://NPCs/Tutorial/EllieMode/Alligator/Alligator.gd" id="1_xq45w"]
[ext_resource type="Texture2D" uid="uid://buid5g4tlpydo" path="res://NPCs/Tutorial/EllieMode/Alligator/Alligator.png" id="2_p41to"]
[ext_resource type="PackedScene" uid="uid://c31736waactb2" path="res://Interactions/Talking/Talkable.tscn" id="3_a64p3"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="4_ay1pa"]
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_msiv5"]
radius = 28.0
height = 432.0
[sub_resource type="SpriteFrames" id="SpriteFrames_tw8wn"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_p41to")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="CircleShape2D" id="CircleShape2D_87sa2"]
radius = 143.0
[node name="Alligator" type="StaticBody2D"]
script = ExtResource("1_xq45w")
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
position = Vector2(8, -40)
rotation = 1.5708
shape = SubResource("CapsuleShape2D_msiv5")
[node name="Sprite" type="AnimatedSprite2D" parent="."]
position = Vector2(1, -52)
scale = Vector2(0.8, 0.8)
sprite_frames = SubResource("SpriteFrames_tw8wn")
[node name="Talkable" parent="." instance=ExtResource("3_a64p3")]
[node name="CollisionShape2D" parent="Talkable/InteractionArea" index="0"]
position = Vector2(113, -57)
shape = SubResource("CircleShape2D_87sa2")
[node name="Interactable" parent="." instance=ExtResource("4_ay1pa")]
[node name="75166" type="MarginContainer" parent="Interactable/ActionMenu/PopupMenu" index="3"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
[node name="75167" type="ScrollContainer" parent="Interactable/ActionMenu/PopupMenu/75166"]
layout_mode = 2
[node name="75168" type="Control" parent="Interactable/ActionMenu/PopupMenu/75166/75167"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="75169" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="4"]
wait_time = 0.3
one_shot = true
[node name="75170" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="5"]
wait_time = 0.3
one_shot = true
[node name="68898" type="MarginContainer" parent="Interactable/ActionMenu/PopupMenu" index="6"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
[node name="68899" type="ScrollContainer" parent="Interactable/ActionMenu/PopupMenu/68898"]
layout_mode = 2
[node name="68900" type="Control" parent="Interactable/ActionMenu/PopupMenu/68898/68899"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="68901" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="7"]
wait_time = 0.3
one_shot = true
[node name="68902" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="8"]
wait_time = 0.3
one_shot = true
[node name="Panel" parent="Interactable" index="1"]
offset_left = -211.0
offset_top = -121.0
offset_right = 228.0
offset_bottom = 4.0
[editable path="Talkable"]
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]

View file

@ -0,0 +1,13 @@
~ start
Jaguar?: i love juice, you know what else i love?
- what
Jaguar?: mathematics.
~ math
Jaguar?: want to learn some math?
- sure
Jaguar?: 64 is bigger than 32 and 16.
- no thanks
=> math
=> END

View file

@ -0,0 +1,15 @@
[remap]
importer="dialogue_manager_compiler_11"
type="Resource"
uid="uid://d4fdh0rji74w7"
path="res://.godot/imported/Jaguar.dialogue-dcebf1756fd2f76e9878bb8cbac4c576.tres"
[deps]
source_file="res://NPCs/Tutorial/EllieMode/Jaguar/Jaguar.dialogue"
dest_files=["res://.godot/imported/Jaguar.dialogue-dcebf1756fd2f76e9878bb8cbac4c576.tres"]
[params]
defaults=true

View file

@ -0,0 +1,13 @@
extends NPC
# Called when the node enters the scene tree for the first time.
func _ready():
characterName = "Jaguar?"
pronouns = "any"
dialogueResource = load("res://NPCs/Tutorial/EllieMode/Jaguar/Jaguar.dialogue")
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):
pass

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://tf4jp0oiyqwm"
path="res://.godot/imported/Jaguar.png-7666c969f62e17c0bd7588db87d3e3fd.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Tutorial/EllieMode/Jaguar/Jaguar.png"
dest_files=["res://.godot/imported/Jaguar.png-7666c969f62e17c0bd7588db87d3e3fd.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
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/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,94 @@
[gd_scene load_steps=8 format=3 uid="uid://bl1ne6s1awa5a"]
[ext_resource type="Texture2D" uid="uid://tf4jp0oiyqwm" path="res://NPCs/Tutorial/EllieMode/Jaguar/Jaguar.png" id="1_8phq3"]
[ext_resource type="Script" path="res://NPCs/Tutorial/EllieMode/Jaguar/Jaguar.gd" id="1_smbn4"]
[ext_resource type="PackedScene" uid="uid://c31736waactb2" path="res://Interactions/Talking/Talkable.tscn" id="2_wwwk8"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="3_t2afp"]
[sub_resource type="CircleShape2D" id="CircleShape2D_teff5"]
radius = 123.179
[sub_resource type="SpriteFrames" id="SpriteFrames_mvhn8"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("1_8phq3")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="CircleShape2D" id="CircleShape2D_4sl6e"]
radius = 122.004
[node name="Jaguar" type="StaticBody2D"]
script = ExtResource("1_smbn4")
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
position = Vector2(4, -107)
shape = SubResource("CircleShape2D_teff5")
[node name="Sprite" type="AnimatedSprite2D" parent="."]
position = Vector2(6, -100)
sprite_frames = SubResource("SpriteFrames_mvhn8")
[node name="Talkable" parent="." instance=ExtResource("2_wwwk8")]
[node name="CollisionShape2D" parent="Talkable/InteractionArea" index="0"]
position = Vector2(4, -105)
shape = SubResource("CircleShape2D_4sl6e")
[node name="Interactable" parent="." instance=ExtResource("3_t2afp")]
[node name="75166" type="MarginContainer" parent="Interactable/ActionMenu/PopupMenu" index="3"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
[node name="75167" type="ScrollContainer" parent="Interactable/ActionMenu/PopupMenu/75166"]
layout_mode = 2
[node name="75168" type="Control" parent="Interactable/ActionMenu/PopupMenu/75166/75167"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="75169" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="4"]
wait_time = 0.3
one_shot = true
[node name="75170" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="5"]
wait_time = 0.3
one_shot = true
[node name="68898" type="MarginContainer" parent="Interactable/ActionMenu/PopupMenu" index="6"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
[node name="68899" type="ScrollContainer" parent="Interactable/ActionMenu/PopupMenu/68898"]
layout_mode = 2
[node name="68900" type="Control" parent="Interactable/ActionMenu/PopupMenu/68898/68899"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="68901" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="7"]
wait_time = 0.3
one_shot = true
[node name="68902" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="8"]
wait_time = 0.3
one_shot = true
[node name="Panel" parent="Interactable" index="1"]
offset_left = -108.0
offset_top = -185.0
offset_right = 122.0
offset_bottom = -3.0
[editable path="Talkable"]
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]

View file

@ -0,0 +1,3 @@
~ start
Joe: i'm the president of the island

View file

@ -0,0 +1,15 @@
[remap]
importer="dialogue_manager_compiler_11"
type="Resource"
uid="uid://dqpnhufp1qbqo"
path="res://.godot/imported/Monkey.dialogue-59633db3be0a27df55f57b62627a1be6.tres"
[deps]
source_file="res://NPCs/Tutorial/EllieMode/Monkey/Monkey.dialogue"
dest_files=["res://.godot/imported/Monkey.dialogue-59633db3be0a27df55f57b62627a1be6.tres"]
[params]
defaults=true

View file

@ -0,0 +1,4 @@
extends NPC
func _ready():
dialogueResource = load("res://NPCs/Tutorial/EllieMode/Monkey/Monkey.dialogue")

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dolawgltaj7h6"
path="res://.godot/imported/Monkey.png-d2495a86e0839f156d6cc7d6e671e447.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Tutorial/EllieMode/Monkey/Monkey.png"
dest_files=["res://.godot/imported/Monkey.png-d2495a86e0839f156d6cc7d6e671e447.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
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/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,45 @@
[gd_scene load_steps=6 format=3 uid="uid://dtwg0fhgvbr67"]
[ext_resource type="PackedScene" uid="uid://doqfsp7yxools" path="res://NPCs/NPC.tscn" id="1_r0n3l"]
[ext_resource type="Script" path="res://NPCs/Tutorial/EllieMode/Monkey/Monkey.gd" id="2_sufov"]
[ext_resource type="Texture2D" uid="uid://dolawgltaj7h6" path="res://NPCs/Tutorial/EllieMode/Monkey/Monkey.png" id="3_efu4c"]
[sub_resource type="SpriteFrames" id="SpriteFrames_jdn3x"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("3_efu4c")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_yv3vt"]
radius = 6.0
height = 116.0
[node name="Monkey" instance=ExtResource("1_r0n3l")]
script = ExtResource("2_sufov")
[node name="Sprite" parent="." index="0"]
position = Vector2(35, -41)
sprite_frames = SubResource("SpriteFrames_jdn3x")
[node name="Panel" parent="Interactable" index="1"]
offset_left = -55.0
offset_top = -87.0
offset_right = 124.0
offset_bottom = 14.0
[node name="CollisionShape2D" parent="Talkable/InteractionArea" index="0"]
position = Vector2(0, -25)
[node name="CollisionShape2D" parent="." index="3"]
position = Vector2(3, 5)
rotation = 1.5708
shape = SubResource("CapsuleShape2D_yv3vt")
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]
[editable path="Talkable"]

View file

@ -0,0 +1,10 @@
~ start
Tapir?: it looks like you're trying to walk.
Tapir?: Would you like to learn about walking EXP?
- sure
Tapir?: sorry im busy rn
- no thanks
Tapir?: ok :(
=> END

View file

@ -0,0 +1,15 @@
[remap]
importer="dialogue_manager_compiler_11"
type="Resource"
uid="uid://v4x8o7l8dv4w"
path="res://.godot/imported/Tapir.dialogue-0107d32d895c7b80e7058ef8946cbbd1.tres"
[deps]
source_file="res://NPCs/Tutorial/EllieMode/Tapir/Tapir.dialogue"
dest_files=["res://.godot/imported/Tapir.dialogue-0107d32d895c7b80e7058ef8946cbbd1.tres"]
[params]
defaults=true

View file

@ -0,0 +1,13 @@
extends NPC
# Called when the node enters the scene tree for the first time.
func _ready():
characterName = "Tapir"
pronouns = "any"
dialogueResource = load("res://NPCs/Tutorial/EllieMode/Tapir/Tapir.dialogue")
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):
pass

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dlpluiksmgdd5"
path="res://.godot/imported/Tapir.png-9adab82ac5aa5131d3f49a5e3b6ea2ea.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Tutorial/EllieMode/Tapir/Tapir.png"
dest_files=["res://.godot/imported/Tapir.png-9adab82ac5aa5131d3f49a5e3b6ea2ea.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
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/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,141 @@
[gd_scene load_steps=8 format=3 uid="uid://om8gqxjwe7km"]
[ext_resource type="Script" path="res://NPCs/Tutorial/EllieMode/Tapir/Tapir.gd" id="1_43g56"]
[ext_resource type="PackedScene" uid="uid://c31736waactb2" path="res://Interactions/Talking/Talkable.tscn" id="2_o7u4g"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="3_nagsk"]
[ext_resource type="Texture2D" uid="uid://dlpluiksmgdd5" path="res://NPCs/Tutorial/EllieMode/Tapir/Tapir.png" id="4_m48nb"]
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_05ohv"]
radius = 95.0
height = 396.0
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_4inki"]
radius = 131.0
height = 498.0
[sub_resource type="SpriteFrames" id="SpriteFrames_aanpq"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("4_m48nb")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[node name="Tapir" type="StaticBody2D"]
script = ExtResource("1_43g56")
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
position = Vector2(4, -107)
rotation = 1.5708
shape = SubResource("CapsuleShape2D_05ohv")
[node name="Talkable" parent="." instance=ExtResource("2_o7u4g")]
[node name="CollisionShape2D" parent="Talkable/InteractionArea" index="0"]
position = Vector2(4, -105)
rotation = 1.5708
shape = SubResource("CapsuleShape2D_4inki")
[node name="Interactable" parent="." instance=ExtResource("3_nagsk")]
[node name="42741" type="MarginContainer" parent="Interactable/ActionMenu/PopupMenu" index="3"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
[node name="42742" type="ScrollContainer" parent="Interactable/ActionMenu/PopupMenu/42741"]
layout_mode = 2
[node name="42743" type="Control" parent="Interactable/ActionMenu/PopupMenu/42741/42742"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="42744" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="4"]
wait_time = 0.3
one_shot = true
[node name="42745" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="5"]
wait_time = 0.3
one_shot = true
[node name="20834" type="MarginContainer" parent="Interactable/ActionMenu/PopupMenu" index="6"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
[node name="20835" type="ScrollContainer" parent="Interactable/ActionMenu/PopupMenu/20834"]
layout_mode = 2
[node name="20836" type="Control" parent="Interactable/ActionMenu/PopupMenu/20834/20835"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="20837" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="7"]
wait_time = 0.3
one_shot = true
[node name="20838" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="8"]
wait_time = 0.3
one_shot = true
[node name="75166" type="MarginContainer" parent="Interactable/ActionMenu/PopupMenu" index="9"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
[node name="75167" type="ScrollContainer" parent="Interactable/ActionMenu/PopupMenu/75166"]
layout_mode = 2
[node name="75168" type="Control" parent="Interactable/ActionMenu/PopupMenu/75166/75167"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="75169" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="10"]
wait_time = 0.3
one_shot = true
[node name="75170" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="11"]
wait_time = 0.3
one_shot = true
[node name="68898" type="MarginContainer" parent="Interactable/ActionMenu/PopupMenu" index="12"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
[node name="68899" type="ScrollContainer" parent="Interactable/ActionMenu/PopupMenu/68898"]
layout_mode = 2
[node name="68900" type="Control" parent="Interactable/ActionMenu/PopupMenu/68898/68899"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="68901" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="13"]
wait_time = 0.3
one_shot = true
[node name="68902" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="14"]
wait_time = 0.3
one_shot = true
[node name="Panel" parent="Interactable" index="1"]
offset_left = -182.0
offset_top = -185.0
offset_right = 226.0
offset_bottom = -3.0
[node name="Sprite" type="AnimatedSprite2D" parent="."]
position = Vector2(-4, -110)
sprite_frames = SubResource("SpriteFrames_aanpq")
flip_h = true
[editable path="Talkable"]
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]

View file

@ -0,0 +1,5 @@
~ start
Toad?: pissgate was my fault!
=> END

View file

@ -0,0 +1,15 @@
[remap]
importer="dialogue_manager_compiler_11"
type="Resource"
uid="uid://cw7j3hk5mvkcm"
path="res://.godot/imported/Toad.dialogue-cf70fcc195547e687807eea3ffd8e0a9.tres"
[deps]
source_file="res://NPCs/Tutorial/EllieMode/Toad/Toad.dialogue"
dest_files=["res://.godot/imported/Toad.dialogue-cf70fcc195547e687807eea3ffd8e0a9.tres"]
[params]
defaults=true

View file

@ -0,0 +1,13 @@
extends NPC
# Called when the node enters the scene tree for the first time.
func _ready():
characterName = "Toad?"
pronouns = "He/Him"
dialogueResource = load("res://NPCs/Tutorial/EllieMode/Toad/Toad.dialogue")
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):
pass

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bo3kj5ht1oekw"
path="res://.godot/imported/Toad.png-311b5c08dbe09d197e85b3f2451203bf.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Tutorial/EllieMode/Toad/Toad.png"
dest_files=["res://.godot/imported/Toad.png-311b5c08dbe09d197e85b3f2451203bf.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
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/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,183 @@
[gd_scene load_steps=8 format=3 uid="uid://c71p067cpwaay"]
[ext_resource type="Script" path="res://NPCs/Tutorial/EllieMode/Toad/Toad.gd" id="1_viteo"]
[ext_resource type="PackedScene" uid="uid://c31736waactb2" path="res://Interactions/Talking/Talkable.tscn" id="2_4fjla"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="3_lgalt"]
[ext_resource type="Texture2D" uid="uid://bo3kj5ht1oekw" path="res://NPCs/Tutorial/EllieMode/Toad/Toad.png" id="4_nndch"]
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_bg3gv"]
radius = 71.0
height = 188.0
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_rcf5t"]
radius = 75.0
height = 226.0
[sub_resource type="SpriteFrames" id="SpriteFrames_ch7if"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("4_nndch")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[node name="Toad" type="StaticBody2D"]
script = ExtResource("1_viteo")
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
position = Vector2(4, -107)
rotation = 1.5708
shape = SubResource("CapsuleShape2D_bg3gv")
[node name="Talkable" parent="." instance=ExtResource("2_4fjla")]
[node name="CollisionShape2D" parent="Talkable/InteractionArea" index="0"]
position = Vector2(4, -105)
rotation = 1.5708
shape = SubResource("CapsuleShape2D_rcf5t")
[node name="Interactable" parent="." instance=ExtResource("3_lgalt")]
[node name="62669" type="MarginContainer" parent="Interactable/ActionMenu/PopupMenu" index="3"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
[node name="62670" type="ScrollContainer" parent="Interactable/ActionMenu/PopupMenu/62669"]
layout_mode = 2
[node name="62671" type="Control" parent="Interactable/ActionMenu/PopupMenu/62669/62670"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="62672" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="4"]
wait_time = 0.3
one_shot = true
[node name="62673" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="5"]
wait_time = 0.3
one_shot = true
[node name="43167" type="MarginContainer" parent="Interactable/ActionMenu/PopupMenu" index="6"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
[node name="43168" type="ScrollContainer" parent="Interactable/ActionMenu/PopupMenu/43167"]
layout_mode = 2
[node name="43169" type="Control" parent="Interactable/ActionMenu/PopupMenu/43167/43168"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="43170" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="7"]
wait_time = 0.3
one_shot = true
[node name="43171" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="8"]
wait_time = 0.3
one_shot = true
[node name="42741" type="MarginContainer" parent="Interactable/ActionMenu/PopupMenu" index="9"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
[node name="42742" type="ScrollContainer" parent="Interactable/ActionMenu/PopupMenu/42741"]
layout_mode = 2
[node name="42743" type="Control" parent="Interactable/ActionMenu/PopupMenu/42741/42742"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="42744" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="10"]
wait_time = 0.3
one_shot = true
[node name="42745" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="11"]
wait_time = 0.3
one_shot = true
[node name="20834" type="MarginContainer" parent="Interactable/ActionMenu/PopupMenu" index="12"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
[node name="20835" type="ScrollContainer" parent="Interactable/ActionMenu/PopupMenu/20834"]
layout_mode = 2
[node name="20836" type="Control" parent="Interactable/ActionMenu/PopupMenu/20834/20835"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="20837" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="13"]
wait_time = 0.3
one_shot = true
[node name="20838" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="14"]
wait_time = 0.3
one_shot = true
[node name="75166" type="MarginContainer" parent="Interactable/ActionMenu/PopupMenu" index="15"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
[node name="75167" type="ScrollContainer" parent="Interactable/ActionMenu/PopupMenu/75166"]
layout_mode = 2
[node name="75168" type="Control" parent="Interactable/ActionMenu/PopupMenu/75166/75167"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="75169" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="16"]
wait_time = 0.3
one_shot = true
[node name="75170" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="17"]
wait_time = 0.3
one_shot = true
[node name="68898" type="MarginContainer" parent="Interactable/ActionMenu/PopupMenu" index="18"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
[node name="68899" type="ScrollContainer" parent="Interactable/ActionMenu/PopupMenu/68898"]
layout_mode = 2
[node name="68900" type="Control" parent="Interactable/ActionMenu/PopupMenu/68898/68899"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="68901" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="19"]
wait_time = 0.3
one_shot = true
[node name="68902" type="Timer" parent="Interactable/ActionMenu/PopupMenu" index="20"]
wait_time = 0.3
one_shot = true
[node name="Panel" parent="Interactable" index="1"]
offset_left = -79.0
offset_top = -173.0
offset_right = 71.0
offset_bottom = -40.0
[node name="Sprite" type="AnimatedSprite2D" parent="."]
position = Vector2(-4, -110)
sprite_frames = SubResource("SpriteFrames_ch7if")
flip_h = true
[editable path="Talkable"]
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]

View file

@ -0,0 +1,12 @@
~ start
Arson Alligator: HI!!! Do you like my art??
Arson Alligator: When my grandma handed me the priceless rare artifact that was passed down in my family for MANY generations ....
Arson Alligator: I IMMEDIATELY knew what to do!!!!
Arson Alligator: And I tell you, it was NOT an easy thing to accomplish....!!!!
Arson Alligator: .....Because this thing wasn't very flammable at all!!
Arson Alligator: But I trained my arson skill for YEARS!!
Arson Alligator: Until finally I was able to achieve the artistic arson ability to create this unique ash!!!!!
Arson Alligator: I'm an artist - AND SO ARE YOU, every time you use the transformative process of ARSON!!!
=> END

View file

@ -0,0 +1,15 @@
[remap]
importer="dialogue_manager_compiler_11"
type="Resource"
uid="uid://bfuua0haqfv0a"
path="res://.godot/imported/ArsonAlligatorMuseum.dialogue-dc3538e3eab19ec736d5bffe4d72dc88.tres"
[deps]
source_file="res://NPCs/Tutorial/Museum/ArsonAlligator/ArsonAlligatorMuseum.dialogue"
dest_files=["res://.godot/imported/ArsonAlligatorMuseum.dialogue-dc3538e3eab19ec736d5bffe4d72dc88.tres"]
[params]
defaults=true

View file

@ -0,0 +1,4 @@
extends "res://NPCs/Tutorial/Normal/ArsonAlliogator/ArsonAlliogator.gd"
func _ready():
dialogueResource = load("res://NPCs/Tutorial/Museum/ArsonAlligator/ArsonAlligatorMuseum.dialogue")

View file

@ -0,0 +1,56 @@
[gd_scene load_steps=8 format=3 uid="uid://c6jih7g6a20n8"]
[ext_resource type="Script" path="res://NPCs/Tutorial/Museum/ArsonAlligator/ArsonAlligatorMuseum.gd" id="1_co1p7"]
[ext_resource type="Texture2D" uid="uid://caiqgwk8f8xgg" path="res://NPCs/Tutorial/Normal/ArsonAlliogator/alligator.png" id="2_2tnyg"]
[ext_resource type="PackedScene" uid="uid://c31736waactb2" path="res://Interactions/Talking/Talkable.tscn" id="3_0wjnr"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="4_ev072"]
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_eqku6"]
radius = 21.2091
height = 173.643
[sub_resource type="SpriteFrames" id="SpriteFrames_pe01l"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_2tnyg")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_cjexf"]
radius = 19.9753
height = 189.281
[node name="ArsonAlligator" type="StaticBody2D"]
script = ExtResource("1_co1p7")
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
position = Vector2(2, -27)
rotation = 1.44862
shape = SubResource("CapsuleShape2D_eqku6")
[node name="Sprite" type="AnimatedSprite2D" parent="."]
position = Vector2(-1, -38)
sprite_frames = SubResource("SpriteFrames_pe01l")
[node name="Talkable" parent="." instance=ExtResource("3_0wjnr")]
[node name="CollisionShape2D" parent="Talkable/InteractionArea" index="0"]
position = Vector2(0, -24)
rotation = 1.45037
shape = SubResource("CapsuleShape2D_cjexf")
[node name="Interactable" parent="." instance=ExtResource("4_ev072")]
[node name="Panel" parent="Interactable" index="1"]
offset_left = -91.0
offset_top = -55.0
offset_right = 98.0
offset_bottom = -1.0
[editable path="Talkable"]
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]

View file

@ -0,0 +1,6 @@
~ start
Juicing Jaguar: ... Hey... you wanna juice?
Juicing Jaguar: I never leave home.... without my juicer...
=> END

View file

@ -0,0 +1,15 @@
[remap]
importer="dialogue_manager_compiler_11"
type="Resource"
uid="uid://cc71ij21iei37"
path="res://.godot/imported/JuicingJaguarMuseum.dialogue-ce562d11dc1a6ac10c5cef836948118d.tres"
[deps]
source_file="res://NPCs/Tutorial/Museum/JuicingJaguar/JuicingJaguarMuseum.dialogue"
dest_files=["res://.godot/imported/JuicingJaguarMuseum.dialogue-ce562d11dc1a6ac10c5cef836948118d.tres"]
[params]
defaults=true

View file

@ -0,0 +1,7 @@
extends "res://NPCs/Tutorial/Normal/JuicingJaguar/JuicingJaguar.gd"
func _ready():
characterName = "Juicing Jaguar"
pronouns = "any"
dialogueResource = load("res://NPCs/Tutorial/Museum/JuicingJaguar/JuicingJaguarMuseum.dialogue")

View file

@ -0,0 +1,52 @@
[gd_scene load_steps=8 format=3 uid="uid://cgubfyidvtchs"]
[ext_resource type="Script" path="res://NPCs/Tutorial/Museum/JuicingJaguar/JuicingJaguarMuseum.gd" id="1_sm527"]
[ext_resource type="Texture2D" uid="uid://bp4ic0vjga07h" path="res://NPCs/Tutorial/Normal/JuicingJaguar/jaguar.png" id="2_4wpg0"]
[ext_resource type="PackedScene" uid="uid://c31736waactb2" path="res://Interactions/Talking/Talkable.tscn" id="3_c3n7a"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="4_qro6j"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_ycqct"]
size = Vector2(128, 63)
[sub_resource type="SpriteFrames" id="SpriteFrames_8ue1k"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_4wpg0")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="CircleShape2D" id="CircleShape2D_vq17j"]
radius = 84.1487
[node name="JuicingJaguar" type="StaticBody2D"]
script = ExtResource("1_sm527")
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
position = Vector2(13, -29.5)
shape = SubResource("RectangleShape2D_ycqct")
[node name="Sprite" type="AnimatedSprite2D" parent="."]
position = Vector2(13, -41)
sprite_frames = SubResource("SpriteFrames_8ue1k")
[node name="Talkable" parent="." instance=ExtResource("3_c3n7a")]
[node name="CollisionShape2D" parent="Talkable/InteractionArea" index="0"]
position = Vector2(17, -43)
shape = SubResource("CircleShape2D_vq17j")
[node name="Interactable" parent="." instance=ExtResource("4_qro6j")]
[node name="Panel" parent="Interactable" index="1"]
offset_left = -54.0
offset_top = -88.0
offset_right = 81.0
offset_bottom = -1.0
[editable path="Talkable"]
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]

View file

@ -0,0 +1,5 @@
~ start
Scavenging Sheep: this is my pile :)
Scavenging Sheep: but you can scavenge it also it's ok cause it contains a real large amount of things
=> END

View file

@ -0,0 +1,15 @@
[remap]
importer="dialogue_manager_compiler_11"
type="Resource"
uid="uid://6v8fpnq8cld3"
path="res://.godot/imported/ScavengingSheepMuseum.dialogue-bc870fa1267953fd6b90504c7412cb74.tres"
[deps]
source_file="res://NPCs/Tutorial/Museum/ScavengingSheep/ScavengingSheepMuseum.dialogue"
dest_files=["res://.godot/imported/ScavengingSheepMuseum.dialogue-bc870fa1267953fd6b90504c7412cb74.tres"]
[params]
defaults=true

View file

@ -0,0 +1,4 @@
extends "res://NPCs/Tutorial/Normal/ScavengingSheep/ScavengingSheep.gd"
func _ready():
dialogueResource = load("res://NPCs/Tutorial/Museum/ScavengingSheep/ScavengingSheepMuseum.dialogue")

View file

@ -0,0 +1,52 @@
[gd_scene load_steps=8 format=3 uid="uid://d6badkbews0m"]
[ext_resource type="Script" path="res://NPCs/Tutorial/Museum/ScavengingSheep/ScavengingSheepMuseum.gd" id="1_0swsa"]
[ext_resource type="Texture2D" uid="uid://cap0f1gbtx2e5" path="res://NPCs/Tutorial/Normal/ScavengingSheep/sheep.png" id="2_fp5vk"]
[ext_resource type="PackedScene" uid="uid://c31736waactb2" path="res://Interactions/Talking/Talkable.tscn" id="3_ptehf"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="4_dohoh"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_3fv85"]
size = Vector2(84, 14)
[sub_resource type="SpriteFrames" id="SpriteFrames_lnefd"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_fp5vk")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="CircleShape2D" id="CircleShape2D_j7osu"]
radius = 58.0086
[node name="ScavengingSheep" type="StaticBody2D"]
script = ExtResource("1_0swsa")
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
position = Vector2(27, -5)
shape = SubResource("RectangleShape2D_3fv85")
[node name="Sprite" type="AnimatedSprite2D" parent="."]
position = Vector2(12, -42)
sprite_frames = SubResource("SpriteFrames_lnefd")
[node name="Talkable" parent="." instance=ExtResource("3_ptehf")]
[node name="CollisionShape2D" parent="Talkable/InteractionArea" index="0"]
position = Vector2(5, -42)
shape = SubResource("CircleShape2D_j7osu")
[node name="Interactable" parent="." instance=ExtResource("4_dohoh")]
[node name="Panel" parent="Interactable" index="1"]
offset_left = -51.0
offset_top = -81.0
offset_right = 75.0
offset_bottom = 0.0
[editable path="Talkable"]
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]

View file

@ -0,0 +1,5 @@
~ start
Trading Toad: Here is a US Dollar bill. This was scavenged from the ruins of the hell world "Suburbs".
Trading Toad: It symbolizes that world's descent into "capitalism", a quirky economic philosophy in which you'd have to exchange these bills for goods and services... absurd, I know!
=> END

View file

@ -0,0 +1,15 @@
[remap]
importer="dialogue_manager_compiler_11"
type="Resource"
uid="uid://dhfhaq680q2mn"
path="res://.godot/imported/TradingToadMuseum.dialogue-c5f542166a2dc230ae6f9cf718a4eaf0.tres"
[deps]
source_file="res://NPCs/Tutorial/Museum/TradingToad/TradingToadMuseum.dialogue"
dest_files=["res://.godot/imported/TradingToadMuseum.dialogue-c5f542166a2dc230ae6f9cf718a4eaf0.tres"]
[params]
defaults=true

View file

@ -0,0 +1,4 @@
extends "res://NPCs/Tutorial/Normal/TradingToad/TradingToad.gd"
func _ready():
dialogueResource = load("res://NPCs/Tutorial/Museum/TradingToad/TradingToadMuseum.dialogue")

View file

@ -0,0 +1,52 @@
[gd_scene load_steps=8 format=3 uid="uid://cl61g7t26jo1k"]
[ext_resource type="Script" path="res://NPCs/Tutorial/Museum/TradingToad/TradingToadMuseum.gd" id="1_tiwlk"]
[ext_resource type="Texture2D" uid="uid://cly56xk8fgli2" path="res://NPCs/Tutorial/Normal/TradingToad/toad.png" id="2_tfcwj"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="3_akt6n"]
[ext_resource type="PackedScene" uid="uid://c31736waactb2" path="res://Interactions/Talking/Talkable.tscn" id="4_te0wm"]
[sub_resource type="CircleShape2D" id="CircleShape2D_6gxxe"]
radius = 23.0868
[sub_resource type="SpriteFrames" id="SpriteFrames_0xhso"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_tfcwj")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="CircleShape2D" id="CircleShape2D_2vls4"]
radius = 36.0555
[node name="TradingToad" type="StaticBody2D"]
script = ExtResource("1_tiwlk")
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
position = Vector2(-2, -19)
shape = SubResource("CircleShape2D_6gxxe")
[node name="Sprite" type="AnimatedSprite2D" parent="."]
position = Vector2(2, -37)
sprite_frames = SubResource("SpriteFrames_0xhso")
[node name="Interactable" parent="." instance=ExtResource("3_akt6n")]
[node name="Panel" parent="Interactable" index="1"]
offset_left = -28.0
offset_top = -67.0
offset_right = 36.0
offset_bottom = 0.0
[node name="Talkable" parent="." instance=ExtResource("4_te0wm")]
[node name="CollisionShape2D" parent="Talkable/InteractionArea" index="0"]
position = Vector2(1, -32)
shape = SubResource("CircleShape2D_2vls4")
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]
[editable path="Talkable"]

View file

@ -0,0 +1,6 @@
~ start
Tutorial Tapir: This is one of our world's first known tutorials
Tutorial Tapir: A guide on "How to Cow"
Tutorial Tapir: It's in ancient writing and hasn't been fully translated... one day...
=> END

View file

@ -0,0 +1,15 @@
[remap]
importer="dialogue_manager_compiler_11"
type="Resource"
uid="uid://ped5qa6de35"
path="res://.godot/imported/TutorialTapirMuseum.dialogue-8ae9de19a726b2532287f8d96828312f.tres"
[deps]
source_file="res://NPCs/Tutorial/Museum/TutorialTapir/TutorialTapirMuseum.dialogue"
dest_files=["res://.godot/imported/TutorialTapirMuseum.dialogue-8ae9de19a726b2532287f8d96828312f.tres"]
[params]
defaults=true

View file

@ -0,0 +1,4 @@
extends "res://NPCs/Tutorial/Normal/TutorialTapir/TutorialTapir.gd"
func _ready():
dialogueResource = load("res://NPCs/Tutorial/Museum/TutorialTapir/TutorialTapirMuseum.dialogue")

View file

@ -0,0 +1,53 @@
[gd_scene load_steps=8 format=3 uid="uid://y83ngfwqcr0e"]
[ext_resource type="Script" path="res://NPCs/Tutorial/Museum/TutorialTapir/TutorialTapirMuseum.gd" id="1_kpl1m"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="2_oavva"]
[ext_resource type="PackedScene" uid="uid://c31736waactb2" path="res://Interactions/Talking/Talkable.tscn" id="3_2ne13"]
[ext_resource type="Texture2D" uid="uid://be7unxtjx6hcd" path="res://NPCs/Tutorial/Normal/TutorialTapir/tapir.png" id="4_grcyh"]
[sub_resource type="CircleShape2D" id="CircleShape2D_5d5yn"]
radius = 66.0076
[sub_resource type="RectangleShape2D" id="RectangleShape2D_3mssv"]
size = Vector2(87, 25)
[sub_resource type="SpriteFrames" id="SpriteFrames_e41h6"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("4_grcyh")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[node name="TutorialTapir" type="StaticBody2D"]
script = ExtResource("1_kpl1m")
[node name="Interactable" parent="." instance=ExtResource("2_oavva")]
[node name="Panel" parent="Interactable" index="1"]
offset_left = -55.0
offset_top = -104.0
offset_right = 76.0
offset_bottom = -1.0
[node name="Talkable" parent="." instance=ExtResource("3_2ne13")]
[node name="CollisionShape2D" parent="Talkable/InteractionArea" index="0"]
position = Vector2(2, -47)
shape = SubResource("CircleShape2D_5d5yn")
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
position = Vector2(16.5, -13.5)
shape = SubResource("RectangleShape2D_3mssv")
[node name="Sprite" type="AnimatedSprite2D" parent="."]
position = Vector2(35, -52)
sprite_frames = SubResource("SpriteFrames_e41h6")
flip_h = true
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]
[editable path="Talkable"]

View file

@ -0,0 +1,56 @@
[gd_scene load_steps=8 format=3 uid="uid://bg1nwnomgw3el"]
[ext_resource type="Script" path="res://NPCs/Tutorial/Normal/ArsonAlliogator/ArsonAlliogator.gd" id="1_87n48"]
[ext_resource type="Texture2D" uid="uid://caiqgwk8f8xgg" path="res://NPCs/Tutorial/Normal/ArsonAlliogator/alligator.png" id="2_54lic"]
[ext_resource type="PackedScene" uid="uid://c31736waactb2" path="res://Interactions/Talking/Talkable.tscn" id="2_disfv"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="3_mixyw"]
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_eqku6"]
radius = 21.2091
height = 173.643
[sub_resource type="SpriteFrames" id="SpriteFrames_pe01l"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_54lic")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_cjexf"]
radius = 19.9753
height = 189.281
[node name="ArsonAlligator" type="StaticBody2D"]
script = ExtResource("1_87n48")
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
position = Vector2(2, -27)
rotation = 1.44862
shape = SubResource("CapsuleShape2D_eqku6")
[node name="Sprite" type="AnimatedSprite2D" parent="."]
position = Vector2(-1, -38)
sprite_frames = SubResource("SpriteFrames_pe01l")
[node name="Talkable" parent="." instance=ExtResource("2_disfv")]
[node name="CollisionShape2D" parent="Talkable/InteractionArea" index="0"]
position = Vector2(0, -24)
rotation = 1.45037
shape = SubResource("CapsuleShape2D_cjexf")
[node name="Interactable" parent="." instance=ExtResource("3_mixyw")]
[node name="Panel" parent="Interactable" index="1"]
offset_left = -91.0
offset_top = -55.0
offset_right = 98.0
offset_bottom = -1.0
[editable path="Talkable"]
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]

View file

@ -0,0 +1,52 @@
~ start
if not get_save_value("tutorialAlligatorTalked", false)
=> init
elif get_save_value("tutorialAlligatorDone", false)
=> rand
elif get_save_value("tutorialArsoned", false)
=> postArson
else
=> midArson
=> END
~ init
Arson Alligator: You know what's the most essential skill in the life of every animal?
Arson Alligator: ARSON...!!!
Arson Alligator: Look around you!
Arson Alligator: What do you see?
Arson Alligator: FLAMMABLE THINGS!!!
Arson Alligator: You can and SHOULD burn everything you feel like burning!!!
Arson Alligator: Some things are easy to set on fire
Arson Alligator: others are more stubborn
Arson Alligator: but a determined arsonist can reduce everything in their path to ashes!!!
Arson Alligator: If you see black smoke that's a good sign!!!
Arson Alligator: That means you can set the thing ablaze if you keep trying!!!
Arson Alligator: If you try to burn something and there's no fire and no smoke
Arson Alligator: then you gotta first practise your arson more on other things!!!
Arson Alligator: Arson is an art!!!
Arson Alligator: Go burn something!!!
do set_save_value("tutorialAlligatorTalked", true)
=> END
~ midArson
Arson Alligator: Go burn something!!!
=> END
~ postArson
Arson Alligator: Is there anything you can do with all that ash?
Arson Alligator: Heck if I know!!
Arson Alligator: Maybe someday science will figure something out!!
Arson Alligator: But don't worry about that now
Arson Alligator: just focus on those AWESOME flames!!!!
do set_save_value("tutorialAlligatorDone", true)
=> END!
~ rand
% Arson Alligator: Burn, baby, burn!!!
% Arson Alligator: This boat looks flammable...!!!
% Arson Alligator: Heck yes, I rhyme "fire" on "desire"!!!
- continue => END
- repeat tutorial => init

View file

@ -0,0 +1,15 @@
[remap]
importer="dialogue_manager_compiler_11"
type="Resource"
uid="uid://cxhbid7hmhykp"
path="res://.godot/imported/ArsonAlliogator.dialogue-e85fcf6f23c302c38856264739eb2de3.tres"
[deps]
source_file="res://NPCs/Tutorial/Normal/ArsonAlliogator/ArsonAlliogator.dialogue"
dest_files=["res://.godot/imported/ArsonAlliogator.dialogue-e85fcf6f23c302c38856264739eb2de3.tres"]
[params]
defaults=true

View file

@ -0,0 +1,13 @@
extends NPC
# Called when the node enters the scene tree for the first time.
func _ready():
characterName = "Arson Alliogator"
pronouns = "She/Her"
dialogueResource = load("res://NPCs/Tutorial/Normal/ArsonAlliogator/ArsonAlliogator.dialogue")
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):
pass

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://caiqgwk8f8xgg"
path="res://.godot/imported/alligator.png-3d4b909ab991f12fb44ff548616bd83d.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Tutorial/Normal/ArsonAlliogator/alligator.png"
dest_files=["res://.godot/imported/alligator.png-3d4b909ab991f12fb44ff548616bd83d.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
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/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,40 @@
~ start
if not get_save_value("tutorialJaguarTalked", false)
=> init
elif get_save_value("tutorialJaguarDone", false)
=> rand
elif get_save_value("tutorialJuiced", false)
=> postJuice
else
=> midJuice
=> END
~ init
Juicing Jaguar: ... Hey... wanna know a secret? You can juice pretty much every item you find...
Juicing Jaguar: That's right, there is juice in almost everything... sometimes there's also goo... or further secrets!
Juicing Jaguar: Just pop your stuff into a juicing machine like this one I have right here, and see what happens...
Juicing Jaguar: Try juicing an orange. If you dont have one go talk to scavanging sheep
do set_save_value("tutorialJaguarTalked", true)
=> END
~ midJuice
Juicing Jaguar: Try juicing an orange. If you dont have one go talk to scavanging sheep
=> END
~ postJuice
Juicing Jaguar: Now, using a juicing machine is simple...
Juicing Jaguar: ...juice drinking is a skill that takes a lot of experience to truly excel in...
Juicing Jaguar: Some juices are easy to drink even for a beginner
Juicing Jaguar: Others can only be ingested by a veritable juice connoisseur such as myself...
Juicing Jaguar: Good luck, novice juice enthusiast...
do set_save_value("tutorialJaguarDone", true)
=> END
~ rand
% Juicing Jaguar: Feeling juicy?
% Juicing Jaguar: What could be more refreshing than a nice glass of juice?
- continue => END
- repeat tutorial => init

View file

@ -0,0 +1,15 @@
[remap]
importer="dialogue_manager_compiler_11"
type="Resource"
uid="uid://cccp2wsdq02ql"
path="res://.godot/imported/JuicingJaguar.dialogue-ec158bb3f199f33a60d55041e50f7af3.tres"
[deps]
source_file="res://NPCs/Tutorial/Normal/JuicingJaguar/JuicingJaguar.dialogue"
dest_files=["res://.godot/imported/JuicingJaguar.dialogue-ec158bb3f199f33a60d55041e50f7af3.tres"]
[params]
defaults=true

View file

@ -0,0 +1,13 @@
extends NPC
# Called when the node enters the scene tree for the first time.
func _ready():
characterName = "Juicing Jaguar"
pronouns = "any"
dialogueResource = load("res://NPCs/Tutorial/Normal/JuicingJaguar/JuicingJaguar.dialogue")
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):
pass

View file

@ -0,0 +1,53 @@
[gd_scene load_steps=8 format=3 uid="uid://c01l3yqjfdav0"]
[ext_resource type="Script" path="res://NPCs/Tutorial/Normal/JuicingJaguar/JuicingJaguar.gd" id="1_h0kve"]
[ext_resource type="Texture2D" uid="uid://bp4ic0vjga07h" path="res://NPCs/Tutorial/Normal/JuicingJaguar/jaguar.png" id="2_p3igi"]
[ext_resource type="PackedScene" uid="uid://c31736waactb2" path="res://Interactions/Talking/Talkable.tscn" id="3_l27ci"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="4_tbday"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_ycqct"]
size = Vector2(128, 63)
[sub_resource type="SpriteFrames" id="SpriteFrames_8ue1k"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_p3igi")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="CircleShape2D" id="CircleShape2D_vq17j"]
radius = 84.1487
[node name="JuicingJaguar" type="StaticBody2D"]
script = ExtResource("1_h0kve")
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
position = Vector2(13, -29.5)
shape = SubResource("RectangleShape2D_ycqct")
[node name="Sprite" type="AnimatedSprite2D" parent="."]
position = Vector2(13, -41)
sprite_frames = SubResource("SpriteFrames_8ue1k")
flip_h = true
[node name="Talkable" parent="." instance=ExtResource("3_l27ci")]
[node name="CollisionShape2D" parent="Talkable/InteractionArea" index="0"]
position = Vector2(17, -43)
shape = SubResource("CircleShape2D_vq17j")
[node name="Interactable" parent="." instance=ExtResource("4_tbday")]
[node name="Panel" parent="Interactable" index="1"]
offset_left = -54.0
offset_top = -88.0
offset_right = 81.0
offset_bottom = -1.0
[editable path="Talkable"]
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bp4ic0vjga07h"
path="res://.godot/imported/jaguar.png-425a7a37757560410ca795824e47ac0f.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Tutorial/Normal/JuicingJaguar/jaguar.png"
dest_files=["res://.godot/imported/jaguar.png-425a7a37757560410ca795824e47ac0f.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
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/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,36 @@
~ start
if not get_save_value("tutorialSheepTalked", false)
=> init
elif get_save_value("tutorialSheepDone", false)
=> rand
elif get_save_value("tutorialScavenged", false)
=> postScavenge
else
=> midScavenge
~ init
Scavenging Sheep: This world... is filled with things...! The more you look, the more you find...
Scavenging Sheep: When you keep looking, and keep finding, and keep... pocketing... that is known as... scavenging!
Scavenging Sheep: Maybe if you were looking inside this here barrel... chances are, you could find... and keep... a thing!
Scavenging Sheep: I wonder how many things one could find in such barrels... or in boxes... or even in trees...
Scavenging Sheep: in my experience, I tend to always find as much as I need...
do set_save_value("tutorialSheepTalked", true)
=> END
~ midScavenge
Scavenging Sheep: Maybe if you were looking inside this here barrel...
=> END
~ postScavenge
Scavenging Sheep: I've also noticed that I keep getting quicker at finding what I want... the more I look for things...
Scavenging Sheep: Go ahead, little cow... go and find everything your heart desires...
do set_save_value("tutorialSheepDone", true)
=> END
~ rand
% Scavenging Sheep: Hey... would you like to ruminate together... some day?
% Scavenging Sheep: My imagination is unlimited, but my legs are short...
- continue => END
- repeat tutorial => init

View file

@ -0,0 +1,15 @@
[remap]
importer="dialogue_manager_compiler_11"
type="Resource"
uid="uid://bdsweum10yg00"
path="res://.godot/imported/ScavengingSheep.dialogue-568d67f5c325641c399581a2b9789fa6.tres"
[deps]
source_file="res://NPCs/Tutorial/Normal/ScavengingSheep/ScavengingSheep.dialogue"
dest_files=["res://.godot/imported/ScavengingSheep.dialogue-568d67f5c325641c399581a2b9789fa6.tres"]
[params]
defaults=true

View file

@ -0,0 +1,17 @@
extends NPC
@export var EllieMode = false
# Called when the node enters the scene tree for the first time.
func _ready():
characterName = "Scavenging Sheep"
pronouns = "any"
if EllieMode:
dialogueResource = load("res://NPCs/Tutorial/Normal/ScavengingSheep/ScavengingSheep2.dialogue")
else:
dialogueResource = load("res://NPCs/Tutorial/Normal/ScavengingSheep/ScavengingSheep.dialogue")
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):
pass

View file

@ -0,0 +1,53 @@
[gd_scene load_steps=8 format=3 uid="uid://cpkmcy7ijcrhx"]
[ext_resource type="Script" path="res://NPCs/Tutorial/Normal/ScavengingSheep/ScavengingSheep.gd" id="1_cmmvp"]
[ext_resource type="Texture2D" uid="uid://cap0f1gbtx2e5" path="res://NPCs/Tutorial/Normal/ScavengingSheep/sheep.png" id="2_p7xrh"]
[ext_resource type="PackedScene" uid="uid://c31736waactb2" path="res://Interactions/Talking/Talkable.tscn" id="3_7glr2"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="4_wmynp"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_3fv85"]
size = Vector2(79, 15)
[sub_resource type="SpriteFrames" id="SpriteFrames_lnefd"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_p7xrh")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="CircleShape2D" id="CircleShape2D_j7osu"]
radius = 58.0086
[node name="ScavengingSheep" type="StaticBody2D"]
script = ExtResource("1_cmmvp")
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
position = Vector2(-2.5, -7.5)
shape = SubResource("RectangleShape2D_3fv85")
[node name="Sprite" type="AnimatedSprite2D" parent="."]
position = Vector2(12, -42)
sprite_frames = SubResource("SpriteFrames_lnefd")
flip_h = true
[node name="Talkable" parent="." instance=ExtResource("3_7glr2")]
[node name="CollisionShape2D" parent="Talkable/InteractionArea" index="0"]
position = Vector2(5, -42)
shape = SubResource("CircleShape2D_j7osu")
[node name="Interactable" parent="." instance=ExtResource("4_wmynp")]
[node name="Panel" parent="Interactable" index="1"]
offset_left = -51.0
offset_top = -81.0
offset_right = 75.0
offset_bottom = 0.0
[editable path="Talkable"]
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]

View file

@ -0,0 +1,9 @@
~ start
Scavenging Sheep: Oh... Hi...
Scavenging Sheep: Didnt think you would be back... so soon...
Scavenging Sheep: ...
Scavenging Sheep: ...uhm...
Scavenging Sheep: ...dont worry about it...
=> END

View file

@ -0,0 +1,15 @@
[remap]
importer="dialogue_manager_compiler_11"
type="Resource"
uid="uid://qlig566bnrad"
path="res://.godot/imported/ScavengingSheep2.dialogue-2e90be4100f56b5e77fb53953ab97b24.tres"
[deps]
source_file="res://NPCs/Tutorial/Normal/ScavengingSheep/ScavengingSheep2.dialogue"
dest_files=["res://.godot/imported/ScavengingSheep2.dialogue-2e90be4100f56b5e77fb53953ab97b24.tres"]
[params]
defaults=true

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cap0f1gbtx2e5"
path="res://.godot/imported/sheep.png-e1fffe52ad16e910418e304d1447ef3f.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Tutorial/Normal/ScavengingSheep/sheep.png"
dest_files=["res://.godot/imported/sheep.png-e1fffe52ad16e910418e304d1447ef3f.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
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/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,22 @@
~ start
if not get_save_value("tutorialToadDone", false)
=> init
else
=> rand
~ init
Trading Toad: Ever hear about "capitalism"? People in the past were into some WILD stuff, yikes...
Trading Toad: What's "money" even supposed to be? A myth from a forgotten time, and I hear it didn't even taste good.
Trading Toad: But grapes, they're delicious. Grapes have REAL value. I want grapes, and lots of them!
Trading Toad: Which is why you can trade items for other items in places like cafes and shops
Trading Toad: Basically wherever animals are offering things from a menu. Try the menu card next to me!
Trading Toad: Don't worry, it's easy to find everything you need to thrive here.
Trading Toad: Other animals will be happy to share and trade stuff. Have fun!
do set_save_value("tutorialToadDone", true)
=> END
~ rand
% Trading Toad: It's ok if you don't have everything figured out always!
% Trading Toad: Whenever I get tired of carrying too many grapes, I just eat them
- continue => END
- repeat tutorial => init

View file

@ -0,0 +1,15 @@
[remap]
importer="dialogue_manager_compiler_11"
type="Resource"
uid="uid://6ccskjbqvhnk"
path="res://.godot/imported/TradingToad.dialogue-feb7390abef6849d185f377daf8d90f1.tres"
[deps]
source_file="res://NPCs/Tutorial/Normal/TradingToad/TradingToad.dialogue"
dest_files=["res://.godot/imported/TradingToad.dialogue-feb7390abef6849d185f377daf8d90f1.tres"]
[params]
defaults=true

View file

@ -0,0 +1,13 @@
extends NPC
# Called when the node enters the scene tree for the first time.
func _ready():
characterName = "Trading Toad"
pronouns = "He/Him"
dialogueResource = load("res://NPCs/Tutorial/Normal/TradingToad/TradingToad.dialogue")
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):
pass

View file

@ -0,0 +1,52 @@
[gd_scene load_steps=8 format=3 uid="uid://h4xktqg1hl6h"]
[ext_resource type="Script" path="res://NPCs/Tutorial/Normal/TradingToad/TradingToad.gd" id="1_audrv"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="2_4t8qg"]
[ext_resource type="Texture2D" uid="uid://cly56xk8fgli2" path="res://NPCs/Tutorial/Normal/TradingToad/toad.png" id="2_af2bp"]
[ext_resource type="PackedScene" uid="uid://c31736waactb2" path="res://Interactions/Talking/Talkable.tscn" id="3_hr4u7"]
[sub_resource type="CircleShape2D" id="CircleShape2D_6gxxe"]
radius = 23.0868
[sub_resource type="SpriteFrames" id="SpriteFrames_0xhso"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_af2bp")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="CircleShape2D" id="CircleShape2D_2vls4"]
radius = 36.0555
[node name="TradingToad" type="StaticBody2D"]
script = ExtResource("1_audrv")
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
position = Vector2(-2, -19)
shape = SubResource("CircleShape2D_6gxxe")
[node name="Sprite" type="AnimatedSprite2D" parent="."]
position = Vector2(2, -37)
sprite_frames = SubResource("SpriteFrames_0xhso")
[node name="Interactable" parent="." instance=ExtResource("2_4t8qg")]
[node name="Panel" parent="Interactable" index="1"]
offset_left = -28.0
offset_top = -67.0
offset_right = 36.0
offset_bottom = 0.0
[node name="Talkable" parent="." instance=ExtResource("3_hr4u7")]
[node name="CollisionShape2D" parent="Talkable/InteractionArea" index="0"]
position = Vector2(1, -32)
shape = SubResource("CircleShape2D_2vls4")
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]
[editable path="Talkable"]

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cly56xk8fgli2"
path="res://.godot/imported/toad.png-c2bd05c1d9347c19361f6c9cff4f197e.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Tutorial/Normal/TradingToad/toad.png"
dest_files=["res://.godot/imported/toad.png-c2bd05c1d9347c19361f6c9cff4f197e.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
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/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,28 @@
~ start
if get_save_value("tutorialTapirDone", false)
=> rand
~ init
Tutorial Tapir: Good morning, You look wonderful and energetic, so let's get started!
- Good morning
Tutorial Tapir: Before we arrive at Snoutsville there are some things you should probably know,and I'm here to teach you.
~ tutorial
Tutorial Tapir: You can walk places by clicking where you would like to go. It is also how you interact with animals and things.
Tutorial Tapir: The icons on the bottom right open your skill menu, inventory, and game options.
Tutorial Tapir: You can pick up items from the ground, and likewise you can drop things from your inventory.
Tutorial Tapir: Engaging in activities such as walking gives you experience for the respective skill.
Tutorial Tapir: Try walking around on this boat and talking to all the animals, they will teach you some additional knowledge!
Tutorial Tapir: When you're done checking everything out, feel free to chill out downstairs.
Tutorial Tapir: I'm sure we will arrive at Snoutsville very soon!
- Ok, thank you
do set_save_value("tutorialTapirDone", true)
=> END
~ rand
% Tutorial Tapir: Did you know tapirs are related to horses and rhinos?
% Tutorial Tapir: When I was a baby, I used to look like a watermelon. Now I look like a princess.
% Tutorial Tapir: I hope you're enjoying this cow type experience!
- continue => END
- repeat tutorial => tutorial
=> END

View file

@ -0,0 +1,15 @@
[remap]
importer="dialogue_manager_compiler_11"
type="Resource"
uid="uid://cwdd56jmnq6wi"
path="res://.godot/imported/TutorialTapir.dialogue-fb6500c44eb8adac6e2c2fd8f81a866c.tres"
[deps]
source_file="res://NPCs/Tutorial/Normal/TutorialTapir/TutorialTapir.dialogue"
dest_files=["res://.godot/imported/TutorialTapir.dialogue-fb6500c44eb8adac6e2c2fd8f81a866c.tres"]
[params]
defaults=true

View file

@ -0,0 +1,13 @@
extends NPC
# Called when the node enters the scene tree for the first time.
func _ready():
characterName = "Tutorial Tapir"
pronouns = "any"
dialogueResource = load("res://NPCs/Tutorial/Normal/TutorialTapir/TutorialTapir.dialogue")
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):
pass

View file

@ -0,0 +1,52 @@
[gd_scene load_steps=8 format=3 uid="uid://ccvxw3e2nc55a"]
[ext_resource type="Script" path="res://NPCs/Tutorial/Normal/TutorialTapir/TutorialTapir.gd" id="1_dfdi1"]
[ext_resource type="PackedScene" uid="uid://bqibe7ha6r5ls" path="res://Interactions/Interactable/interactable.tscn" id="1_m8lte"]
[ext_resource type="PackedScene" uid="uid://c31736waactb2" path="res://Interactions/Talking/Talkable.tscn" id="2_ejyhi"]
[ext_resource type="Texture2D" uid="uid://be7unxtjx6hcd" path="res://NPCs/Tutorial/Normal/TutorialTapir/tapir.png" id="4_d6syc"]
[sub_resource type="CircleShape2D" id="CircleShape2D_5d5yn"]
radius = 66.0076
[sub_resource type="RectangleShape2D" id="RectangleShape2D_3mssv"]
size = Vector2(91, 23)
[sub_resource type="SpriteFrames" id="SpriteFrames_e41h6"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("4_d6syc")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[node name="TutorialTapir" type="StaticBody2D"]
script = ExtResource("1_dfdi1")
[node name="Interactable" parent="." instance=ExtResource("1_m8lte")]
[node name="Panel" parent="Interactable" index="1"]
offset_left = -55.0
offset_top = -104.0
offset_right = 76.0
offset_bottom = -1.0
[node name="Talkable" parent="." instance=ExtResource("2_ejyhi")]
[node name="CollisionShape2D" parent="Talkable/InteractionArea" index="0"]
position = Vector2(2, -47)
shape = SubResource("CircleShape2D_5d5yn")
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
position = Vector2(18.5, -14.5)
shape = SubResource("RectangleShape2D_3mssv")
[node name="Sprite" type="AnimatedSprite2D" parent="."]
position = Vector2(-1, -54)
sprite_frames = SubResource("SpriteFrames_e41h6")
[editable path="Interactable"]
[editable path="Interactable/ActionMenu"]
[editable path="Talkable"]

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://be7unxtjx6hcd"
path="res://.godot/imported/tapir.png-e41d9eb841c2b35532a48b77d1b6d27b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://NPCs/Tutorial/Normal/TutorialTapir/tapir.png"
dest_files=["res://.godot/imported/tapir.png-e41d9eb841c2b35532a48b77d1b6d27b.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
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/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