It's Cow Game! Version 2.04!
10
NPCs/Tutorial/EllieMode/Alligator/Alligator.dialogue
Normal 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
|
||||
15
NPCs/Tutorial/EllieMode/Alligator/Alligator.dialogue.import
Normal 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
|
||||
13
NPCs/Tutorial/EllieMode/Alligator/Alligator.gd
Normal 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
|
||||
BIN
NPCs/Tutorial/EllieMode/Alligator/Alligator.png
Normal file
|
After Width: | Height: | Size: 13 KiB |
34
NPCs/Tutorial/EllieMode/Alligator/Alligator.png.import
Normal 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
|
||||
97
NPCs/Tutorial/EllieMode/Alligator/Alligator.tscn
Normal 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"]
|
||||
13
NPCs/Tutorial/EllieMode/Jaguar/Jaguar.dialogue
Normal 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
|
||||
15
NPCs/Tutorial/EllieMode/Jaguar/Jaguar.dialogue.import
Normal 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
|
||||
13
NPCs/Tutorial/EllieMode/Jaguar/Jaguar.gd
Normal 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
|
||||
BIN
NPCs/Tutorial/EllieMode/Jaguar/Jaguar.png
Normal file
|
After Width: | Height: | Size: 17 KiB |
34
NPCs/Tutorial/EllieMode/Jaguar/Jaguar.png.import
Normal 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
|
||||
94
NPCs/Tutorial/EllieMode/Jaguar/Jaguar.tscn
Normal 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"]
|
||||
3
NPCs/Tutorial/EllieMode/Monkey/Monkey.dialogue
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
~ start
|
||||
|
||||
Joe: i'm the president of the island
|
||||
15
NPCs/Tutorial/EllieMode/Monkey/Monkey.dialogue.import
Normal 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
|
||||
4
NPCs/Tutorial/EllieMode/Monkey/Monkey.gd
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
extends NPC
|
||||
|
||||
func _ready():
|
||||
dialogueResource = load("res://NPCs/Tutorial/EllieMode/Monkey/Monkey.dialogue")
|
||||
BIN
NPCs/Tutorial/EllieMode/Monkey/Monkey.png
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
34
NPCs/Tutorial/EllieMode/Monkey/Monkey.png.import
Normal 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
|
||||
45
NPCs/Tutorial/EllieMode/Monkey/Monkey.tscn
Normal 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"]
|
||||
10
NPCs/Tutorial/EllieMode/Tapir/Tapir.dialogue
Normal 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
|
||||
15
NPCs/Tutorial/EllieMode/Tapir/Tapir.dialogue.import
Normal 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
|
||||
13
NPCs/Tutorial/EllieMode/Tapir/Tapir.gd
Normal 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
|
||||
BIN
NPCs/Tutorial/EllieMode/Tapir/Tapir.png
Normal file
|
After Width: | Height: | Size: 16 KiB |
34
NPCs/Tutorial/EllieMode/Tapir/Tapir.png.import
Normal 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
|
||||
141
NPCs/Tutorial/EllieMode/Tapir/Tapir.tscn
Normal 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"]
|
||||
5
NPCs/Tutorial/EllieMode/Toad/Toad.dialogue
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
~ start
|
||||
|
||||
Toad?: pissgate was my fault!
|
||||
|
||||
=> END
|
||||
15
NPCs/Tutorial/EllieMode/Toad/Toad.dialogue.import
Normal 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
|
||||
13
NPCs/Tutorial/EllieMode/Toad/Toad.gd
Normal 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
|
||||
BIN
NPCs/Tutorial/EllieMode/Toad/Toad.png
Normal file
|
After Width: | Height: | Size: 16 KiB |
34
NPCs/Tutorial/EllieMode/Toad/Toad.png.import
Normal 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
|
||||
183
NPCs/Tutorial/EllieMode/Toad/Toad.tscn
Normal 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"]
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
extends "res://NPCs/Tutorial/Normal/ArsonAlliogator/ArsonAlliogator.gd"
|
||||
|
||||
func _ready():
|
||||
dialogueResource = load("res://NPCs/Tutorial/Museum/ArsonAlligator/ArsonAlligatorMuseum.dialogue")
|
||||
|
|
@ -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"]
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
~ start
|
||||
|
||||
Juicing Jaguar: ... Hey... you wanna juice?
|
||||
Juicing Jaguar: I never leave home.... without my juicer...
|
||||
|
||||
=> END
|
||||
|
|
@ -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
|
||||
|
|
@ -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")
|
||||
|
||||
52
NPCs/Tutorial/Museum/JuicingJaguar/JuicingJaguarMuseum.tscn
Normal 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"]
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
extends "res://NPCs/Tutorial/Normal/ScavengingSheep/ScavengingSheep.gd"
|
||||
|
||||
func _ready():
|
||||
dialogueResource = load("res://NPCs/Tutorial/Museum/ScavengingSheep/ScavengingSheepMuseum.dialogue")
|
||||
|
|
@ -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"]
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
4
NPCs/Tutorial/Museum/TradingToad/TradingToadMuseum.gd
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
extends "res://NPCs/Tutorial/Normal/TradingToad/TradingToad.gd"
|
||||
|
||||
func _ready():
|
||||
dialogueResource = load("res://NPCs/Tutorial/Museum/TradingToad/TradingToadMuseum.dialogue")
|
||||
52
NPCs/Tutorial/Museum/TradingToad/TradingToadMuseum.tscn
Normal 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"]
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
extends "res://NPCs/Tutorial/Normal/TutorialTapir/TutorialTapir.gd"
|
||||
|
||||
func _ready():
|
||||
dialogueResource = load("res://NPCs/Tutorial/Museum/TutorialTapir/TutorialTapirMuseum.dialogue")
|
||||
53
NPCs/Tutorial/Museum/TutorialTapir/TutorialTapirMuseum.tscn
Normal 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"]
|
||||
56
NPCs/Tutorial/Normal/ArsonAlliogator/ArsonAlligator.tscn
Normal 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"]
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
13
NPCs/Tutorial/Normal/ArsonAlliogator/ArsonAlliogator.gd
Normal 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
|
||||
BIN
NPCs/Tutorial/Normal/ArsonAlliogator/alligator.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
34
NPCs/Tutorial/Normal/ArsonAlliogator/alligator.png.import
Normal 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
|
||||
40
NPCs/Tutorial/Normal/JuicingJaguar/JuicingJaguar.dialogue
Normal 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
|
||||
|
|
@ -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
|
||||
13
NPCs/Tutorial/Normal/JuicingJaguar/JuicingJaguar.gd
Normal 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
|
||||
53
NPCs/Tutorial/Normal/JuicingJaguar/JuicingJaguar.tscn
Normal 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"]
|
||||
BIN
NPCs/Tutorial/Normal/JuicingJaguar/jaguar.png
Normal file
|
After Width: | Height: | Size: 17 KiB |
34
NPCs/Tutorial/Normal/JuicingJaguar/jaguar.png.import
Normal 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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
17
NPCs/Tutorial/Normal/ScavengingSheep/ScavengingSheep.gd
Normal 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
|
||||
53
NPCs/Tutorial/Normal/ScavengingSheep/ScavengingSheep.tscn
Normal 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"]
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
BIN
NPCs/Tutorial/Normal/ScavengingSheep/sheep.png
Normal file
|
After Width: | Height: | Size: 13 KiB |
34
NPCs/Tutorial/Normal/ScavengingSheep/sheep.png.import
Normal 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
|
||||
22
NPCs/Tutorial/Normal/TradingToad/TradingToad.dialogue
Normal 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
|
||||
15
NPCs/Tutorial/Normal/TradingToad/TradingToad.dialogue.import
Normal 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
|
||||
13
NPCs/Tutorial/Normal/TradingToad/TradingToad.gd
Normal 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
|
||||
52
NPCs/Tutorial/Normal/TradingToad/TradingToad.tscn
Normal 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"]
|
||||
BIN
NPCs/Tutorial/Normal/TradingToad/toad.png
Normal file
|
After Width: | Height: | Size: 14 KiB |
34
NPCs/Tutorial/Normal/TradingToad/toad.png.import
Normal 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
|
||||
28
NPCs/Tutorial/Normal/TutorialTapir/TutorialTapir.dialogue
Normal 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
|
||||
|
|
@ -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
|
||||
13
NPCs/Tutorial/Normal/TutorialTapir/TutorialTapir.gd
Normal 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
|
||||
52
NPCs/Tutorial/Normal/TutorialTapir/TutorialTapir.tscn
Normal 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"]
|
||||
BIN
NPCs/Tutorial/Normal/TutorialTapir/tapir.png
Normal file
|
After Width: | Height: | Size: 10 KiB |
34
NPCs/Tutorial/Normal/TutorialTapir/tapir.png.import
Normal 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
|
||||