It's Cow Game! Version 2.04!
This commit is contained in:
commit
a9e1ed9ddd
3148 changed files with 95332 additions and 0 deletions
|
|
@ -0,0 +1,15 @@
|
|||
~ start
|
||||
Jonald: *Jonald stares intently with a fierce gaze*
|
||||
Jonald: Hello is it your time to leave?
|
||||
- Yes => yes
|
||||
- No => no
|
||||
|
||||
~ yes
|
||||
Jonald: Goodbye
|
||||
do DialogueBoxManager.currentSpeaker.enter_lair()
|
||||
=> END
|
||||
|
||||
~ no
|
||||
Jonald: Ok
|
||||
|
||||
=> END
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
[remap]
|
||||
|
||||
importer="dialogue_manager_compiler_11"
|
||||
type="Resource"
|
||||
uid="uid://doug0qvt4v1xq"
|
||||
path="res://.godot/imported/JonaldLairEntranceGuard.dialogue-2e683de1c929dd4f4d440de37b4497ee.tres"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://NPCs/Jonald/JonaldLairJonalds/EntranceJonald/JonaldLairEntranceGuard.dialogue"
|
||||
dest_files=["res://.godot/imported/JonaldLairEntranceGuard.dialogue-2e683de1c929dd4f4d440de37b4497ee.tres"]
|
||||
|
||||
[params]
|
||||
|
||||
defaults=true
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
extends NPC
|
||||
|
||||
func enter_lair():
|
||||
LocationManager.changeLocation(LocationManager.Locations.JonaldLairEntrance, 0)
|
||||
|
||||
func _ready():
|
||||
dialogueResource = load("res://NPCs/Jonald/JonaldLairJonalds/EntranceJonald/JonaldLairEntranceGuard.dialogue")
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
[gd_scene load_steps=5 format=3 uid="uid://dmis0qb56b23e"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://doqfsp7yxools" path="res://NPCs/NPC.tscn" id="1_v6gls"]
|
||||
[ext_resource type="Script" path="res://NPCs/Jonald/JonaldLairJonalds/EntranceJonald/jonaldLairEntranceGuard.gd" id="2_l0km3"]
|
||||
[ext_resource type="Texture2D" uid="uid://nevhel5mtr64" path="res://NPCs/Jonald/Jonald.png" id="3_rmhlw"]
|
||||
|
||||
[sub_resource type="SpriteFrames" id="SpriteFrames_xh8md"]
|
||||
animations = [{
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("3_rmhlw")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"default",
|
||||
"speed": 5.0
|
||||
}]
|
||||
|
||||
[node name="Jonald" instance=ExtResource("1_v6gls")]
|
||||
script = ExtResource("2_l0km3")
|
||||
|
||||
[node name="Sprite" parent="." index="0"]
|
||||
sprite_frames = SubResource("SpriteFrames_xh8md")
|
||||
|
||||
[node name="Panel" parent="Interactable" index="1"]
|
||||
offset_left = -27.0
|
||||
offset_top = -15.0
|
||||
offset_right = 30.0
|
||||
offset_bottom = 12.0
|
||||
|
||||
[node name="CollisionShape2D" parent="Talkable/InteractionArea" index="0"]
|
||||
visible = false
|
||||
|
||||
[node name="CollisionShape2D" parent="." index="3"]
|
||||
visible = false
|
||||
disabled = true
|
||||
|
||||
[editable path="Interactable"]
|
||||
[editable path="Interactable/ActionMenu"]
|
||||
[editable path="Talkable"]
|
||||
74
NPCs/Jonald/JonaldLairJonalds/LargeJonald.dialogue
Normal file
74
NPCs/Jonald/JonaldLairJonalds/LargeJonald.dialogue
Normal file
|
|
@ -0,0 +1,74 @@
|
|||
~ start
|
||||
|
||||
if get_save_value("refillQuestComplete", false):
|
||||
Jonald: Once again we are safe to continue our operations.
|
||||
Jonald: We have no further missions for you at this time.
|
||||
Jonald: Thank you for everything you've done, and for being you.
|
||||
Jonald: I hope you continue to experience a good Cow Life.
|
||||
=> END!
|
||||
|
||||
if get_save_value("juiceLakeRefilled", false):
|
||||
Jonald: There's someone near the lake who wants to speak to you.
|
||||
=> END!
|
||||
|
||||
if not get_save_value("refillQuestStarted", false):
|
||||
Jonald: *Jonald stares intently with a fierce gaze and then lowers their eyes to you*
|
||||
Jonald: Welcome to the Jonald Lair.
|
||||
Jonald: You have done well to arrive here.
|
||||
Jonald: However, it seems our lair is now undefended.
|
||||
- I'll help => startQuest
|
||||
- Well... => declineQuest
|
||||
|
||||
if DialogueBoxManager.currentSpeaker.ultimate_juice_check():
|
||||
Jonald: Very well done. I see you have the Ultimate Juice.
|
||||
Jonald: Now go. Refill the lake.
|
||||
do DialogueBoxManager.currentSpeaker.refill_lake()
|
||||
Jonald: Good work. Welcome back.
|
||||
Jonald: Someone near the lake would like to speak to you.
|
||||
=> END
|
||||
|
||||
Jonald: *Jonald stares intently with a fierce gaze and then lowers their eyes to you*
|
||||
Jonald: I cannot help you any further.
|
||||
Jonald: If you need more empty key packets I'll set some next to me as I find them.
|
||||
Jonald: We've had many problems to solve before.
|
||||
Jonald: Remember: The solution may be locked, but it lies within you.
|
||||
Jonald: Good Luck.
|
||||
=> END
|
||||
|
||||
~ startQuest
|
||||
if not LevelManager.skill_check("swimming", 25) or not LevelManager.skill_check("appreciating", 28) or not LevelManager.skill_check("juiceDrinking", 30):
|
||||
Jonald: Unfortunately the answers to our problem are not yet within you.
|
||||
Jonald: (Requires level 30 Juice Drinking, level 28 Experiencing, and level 25 Swimming)
|
||||
=> END
|
||||
Jonald: Wonderful.
|
||||
Jonald: We must replace the Juice Barrier protecting our lair.
|
||||
Jonald: Unfortunately we have lost the contact info for our Lead Juice Consultant.
|
||||
Jonald: The answer to this problem lies within you.
|
||||
do DialogueBoxManager.currentSpeaker.give_key_packet()
|
||||
do set_save_value("refillQuestStarted", true)
|
||||
Jonald: *Jonald hands you an empty packet*
|
||||
Jonald: This would have held the key to unlock it, but we already used it the last time this happened.
|
||||
Jonald: Good Luck.
|
||||
=> END
|
||||
|
||||
~ declineQuest
|
||||
Jonald: ...
|
||||
Jonald: ...
|
||||
Jonald: ...
|
||||
Jonald: ...
|
||||
Jonald: ...
|
||||
Jonald: ...
|
||||
Jonald: ...
|
||||
Jonald: ...
|
||||
Jonald: ...
|
||||
Jonald: ...
|
||||
Jonald: ...
|
||||
Jonald: ...
|
||||
Jonald: ...
|
||||
Jonald: ...
|
||||
Jonald: ...
|
||||
Jonald: ...
|
||||
Jonald: ...
|
||||
Jonald: ...
|
||||
Jonald: Please move along.
|
||||
=> END
|
||||
15
NPCs/Jonald/JonaldLairJonalds/LargeJonald.dialogue.import
Normal file
15
NPCs/Jonald/JonaldLairJonalds/LargeJonald.dialogue.import
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
[remap]
|
||||
|
||||
importer="dialogue_manager_compiler_11"
|
||||
type="Resource"
|
||||
uid="uid://bhcwyqige50uv"
|
||||
path="res://.godot/imported/LargeJonald.dialogue-92d7d9b87ca4023822ca0a9bceb33501.tres"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://NPCs/Jonald/JonaldLairJonalds/LargeJonald.dialogue"
|
||||
dest_files=["res://.godot/imported/LargeJonald.dialogue-92d7d9b87ca4023822ca0a9bceb33501.tres"]
|
||||
|
||||
[params]
|
||||
|
||||
defaults=true
|
||||
27
NPCs/Jonald/JonaldLairJonalds/LargeJonald.gd
Normal file
27
NPCs/Jonald/JonaldLairJonalds/LargeJonald.gd
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
extends NPC
|
||||
|
||||
var ultimateJuiceItem
|
||||
|
||||
func _ready():
|
||||
dialogueResource = load("res://NPCs/Jonald/JonaldLairJonalds/LargeJonald.dialogue")
|
||||
ultimateJuiceItem = preload("res://Items/Juice/UltimateJuice.gd").new()
|
||||
|
||||
func refill_lake():
|
||||
SaveManager.set_save_value("juiceLakeRefilled", true)
|
||||
InventoryManager.remove_item_from_inventory(ultimateJuiceItem)
|
||||
|
||||
var cutscene = preload("res://Cutscenes/RefillingJuiceLake/RefillLakeCutscene.tscn").instantiate()
|
||||
add_child(cutscene)
|
||||
|
||||
func give_key_packet():
|
||||
var emptyKeyPacketItem = preload("res://Items/Artificial/Products/EmptyKeyPacket.gd").new()
|
||||
InventoryManager.add_item_to_inventory(emptyKeyPacketItem)
|
||||
MessageManager.item_popup(emptyKeyPacketItem.duplicate())
|
||||
|
||||
func ultimate_juice_check():
|
||||
if InventoryManager.check_if_in_inventory(ultimateJuiceItem):
|
||||
return true
|
||||
return false
|
||||
|
||||
func refill_juice_lake():
|
||||
pass
|
||||
15
NPCs/Jonald/JonaldLairJonalds/TennisJonalds/TennisJonald.gd
Normal file
15
NPCs/Jonald/JonaldLairJonalds/TennisJonalds/TennisJonald.gd
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
extends NPC
|
||||
|
||||
class_name TennisJonald
|
||||
|
||||
var soundDelay = 0.3
|
||||
var soundDelayTimer = 0
|
||||
|
||||
var rng = RandomNumberGenerator.new()
|
||||
var delayRange = 0.1
|
||||
|
||||
func _process(delta):
|
||||
soundDelayTimer -= delta
|
||||
if soundDelayTimer <= 0:
|
||||
soundDelayTimer = soundDelay + rng.randf_range(0, delayRange)
|
||||
$AudioStreamPlayer2D.play()
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
~ start
|
||||
Jonald: *Jonald is too focused on shaking their Woomote to notice you*
|
||||
=> END
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
[remap]
|
||||
|
||||
importer="dialogue_manager_compiler_11"
|
||||
type="Resource"
|
||||
uid="uid://cs8e22xyorlok"
|
||||
path="res://.godot/imported/TennisJonald1.dialogue-f1d65a143b306849ba43569752869684.tres"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://NPCs/Jonald/JonaldLairJonalds/TennisJonalds/TennisJonald1.dialogue"
|
||||
dest_files=["res://.godot/imported/TennisJonald1.dialogue-f1d65a143b306849ba43569752869684.tres"]
|
||||
|
||||
[params]
|
||||
|
||||
defaults=true
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
extends TennisJonald
|
||||
|
||||
func _ready():
|
||||
soundDelayTimer = 0.11
|
||||
dialogueResource = load("res://NPCs/Jonald/JonaldLairJonalds/TennisJonalds/TennisJonald1.dialogue")
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
~ start
|
||||
Jonald: (Jonald's Woomote seems to be out of battery but they haven't noticed)
|
||||
- Your Woomote is out of battery
|
||||
- Let them be => END!
|
||||
Jonald: *Jonald is too focused to hear you*
|
||||
=> END
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
[remap]
|
||||
|
||||
importer="dialogue_manager_compiler_11"
|
||||
type="Resource"
|
||||
uid="uid://dta8yrgu7frtt"
|
||||
path="res://.godot/imported/TennisJonald2.dialogue-04cd9408913d0bf2cbd4b6568a730e61.tres"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://NPCs/Jonald/JonaldLairJonalds/TennisJonalds/TennisJonald2.dialogue"
|
||||
dest_files=["res://.godot/imported/TennisJonald2.dialogue-04cd9408913d0bf2cbd4b6568a730e61.tres"]
|
||||
|
||||
[params]
|
||||
|
||||
defaults=true
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
extends NPC
|
||||
|
||||
func _ready():
|
||||
dialogueResource = load("res://NPCs/Jonald/JonaldLairJonalds/TennisJonalds/TennisJonald2.dialogue")
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
~ start
|
||||
Jonald: *Jonald turns towards you shaking their Woomote dangerously close to your face*
|
||||
Jonald: Hello
|
||||
- Back away
|
||||
=> END
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
[remap]
|
||||
|
||||
importer="dialogue_manager_compiler_11"
|
||||
type="Resource"
|
||||
uid="uid://cbwlkinirpmtn"
|
||||
path="res://.godot/imported/TennisJonald3.dialogue-3221754ff682b59b1e217411b8a832ae.tres"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://NPCs/Jonald/JonaldLairJonalds/TennisJonalds/TennisJonald3.dialogue"
|
||||
dest_files=["res://.godot/imported/TennisJonald3.dialogue-3221754ff682b59b1e217411b8a832ae.tres"]
|
||||
|
||||
[params]
|
||||
|
||||
defaults=true
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
extends TennisJonald
|
||||
|
||||
func _ready():
|
||||
soundDelayTimer = 0.15
|
||||
delayRange = 0.04
|
||||
dialogueResource = load("res://NPCs/Jonald/JonaldLairJonalds/TennisJonalds/TennisJonald3.dialogue")
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
~ start
|
||||
Jonald: (Jonald's Woomote is not connected)
|
||||
- Your Woomote isn't connected
|
||||
- Let them be => END!
|
||||
Jonald: *Jonald stares you while shaking their Woomote*
|
||||
=> END
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
[remap]
|
||||
|
||||
importer="dialogue_manager_compiler_11"
|
||||
type="Resource"
|
||||
uid="uid://bwdinrokwaip"
|
||||
path="res://.godot/imported/TennisJonald4.dialogue-c45d6a46564158c3777e317c58e541ef.tres"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://NPCs/Jonald/JonaldLairJonalds/TennisJonalds/TennisJonald4.dialogue"
|
||||
dest_files=["res://.godot/imported/TennisJonald4.dialogue-c45d6a46564158c3777e317c58e541ef.tres"]
|
||||
|
||||
[params]
|
||||
|
||||
defaults=true
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
extends NPC
|
||||
|
||||
func _ready():
|
||||
dialogueResource = load("res://NPCs/Jonald/JonaldLairJonalds/TennisJonalds/TennisJonald4.dialogue")
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
~ start
|
||||
Jonald: I have never lost, have you?
|
||||
- I have => yes
|
||||
- I haven't => no
|
||||
|
||||
~ yes
|
||||
Jonald: Don't do that
|
||||
=> END
|
||||
~ no
|
||||
Jonald: Very good
|
||||
=> END
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
[remap]
|
||||
|
||||
importer="dialogue_manager_compiler_11"
|
||||
type="Resource"
|
||||
uid="uid://xdlnl3l42y8n"
|
||||
path="res://.godot/imported/TennisJonald5.dialogue-080e1919bb00cf9749eb759fa9ffc341.tres"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://NPCs/Jonald/JonaldLairJonalds/TennisJonalds/TennisJonald5.dialogue"
|
||||
dest_files=["res://.godot/imported/TennisJonald5.dialogue-080e1919bb00cf9749eb759fa9ffc341.tres"]
|
||||
|
||||
[params]
|
||||
|
||||
defaults=true
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
extends TennisJonald
|
||||
|
||||
func _ready():
|
||||
soundDelayTimer = 0.3
|
||||
delayRange = 0.04
|
||||
dialogueResource = load("res://NPCs/Jonald/JonaldLairJonalds/TennisJonalds/TennisJonald5.dialogue")
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
~ start
|
||||
Jonald: I like the swords game but we can't all play on that one
|
||||
=> END
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
[remap]
|
||||
|
||||
importer="dialogue_manager_compiler_11"
|
||||
type="Resource"
|
||||
uid="uid://bvha1pa08a5uc"
|
||||
path="res://.godot/imported/TennisJonald6.dialogue-327d5dc7528fe2df916ce6837bb3a5c5.tres"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://NPCs/Jonald/JonaldLairJonalds/TennisJonalds/TennisJonald6.dialogue"
|
||||
dest_files=["res://.godot/imported/TennisJonald6.dialogue-327d5dc7528fe2df916ce6837bb3a5c5.tres"]
|
||||
|
||||
[params]
|
||||
|
||||
defaults=true
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
extends TennisJonald
|
||||
|
||||
func _ready():
|
||||
soundDelayTimer = 0.31
|
||||
dialogueResource = load("res://NPCs/Jonald/JonaldLairJonalds/TennisJonalds/TennisJonald6.dialogue")
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
~ start
|
||||
do DialogueBoxManager.currentSpeaker.earn_achievement()
|
||||
Jonald: *The tiny Jonald stares into your eyes with a deep wisdom, then winks*
|
||||
=> END
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
[remap]
|
||||
|
||||
importer="dialogue_manager_compiler_11"
|
||||
type="Resource"
|
||||
uid="uid://ddwa86kp5vj4u"
|
||||
path="res://.godot/imported/TinyJonald.dialogue-82583819cb83f658bfd32e3671e9d5f8.tres"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://NPCs/Jonald/JonaldLairJonalds/TinyJonald/TinyJonald.dialogue"
|
||||
dest_files=["res://.godot/imported/TinyJonald.dialogue-82583819cb83f658bfd32e3671e9d5f8.tres"]
|
||||
|
||||
[params]
|
||||
|
||||
defaults=true
|
||||
7
NPCs/Jonald/JonaldLairJonalds/TinyJonald/TinyJonald.gd
Normal file
7
NPCs/Jonald/JonaldLairJonalds/TinyJonald/TinyJonald.gd
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
extends NPC
|
||||
|
||||
func _ready():
|
||||
dialogueResource = load("res://NPCs/Jonald/JonaldLairJonalds/TinyJonald/TinyJonald.dialogue")
|
||||
|
||||
func earn_achievement():
|
||||
AchievementManager.complete_achievement(";)")
|
||||
Loading…
Add table
Add a link
Reference in a new issue