It's Cow Game! Version 2.04!
This commit is contained in:
commit
a9e1ed9ddd
3148 changed files with 95332 additions and 0 deletions
11
UI/MenuBar/Quests/QuestCompletedPopup.gd
Normal file
11
UI/MenuBar/Quests/QuestCompletedPopup.gd
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
extends PopupPanel
|
||||
|
||||
func set_quest(quest):
|
||||
%QuestNameLabel.text = quest.questName
|
||||
%QuestRewardsLabel.text = quest.get_completion_message()
|
||||
|
||||
func _on_popup_hide():
|
||||
queue_free()
|
||||
|
||||
func _on_continue_button_pressed():
|
||||
hide()
|
||||
84
UI/MenuBar/Quests/QuestCompletedPopup.tscn
Normal file
84
UI/MenuBar/Quests/QuestCompletedPopup.tscn
Normal file
|
|
@ -0,0 +1,84 @@
|
|||
[gd_scene load_steps=5 format=3 uid="uid://dnh6ixm8m3uiq"]
|
||||
|
||||
[ext_resource type="Script" path="res://UI/MenuBar/Quests/QuestCompletedPopup.gd" id="1_iq8xr"]
|
||||
|
||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_6sn1x"]
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_wnuu2"]
|
||||
bg_color = Color(0.321569, 0.482353, 0.713726, 1)
|
||||
border_width_left = 8
|
||||
border_width_top = 8
|
||||
border_width_right = 8
|
||||
border_width_bottom = 8
|
||||
border_color = Color(0.917647, 0.94902, 0, 1)
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_5n0qo"]
|
||||
bg_color = Color(0.113725, 0.172549, 0.368627, 1)
|
||||
border_color = Color(0.87451, 0.847059, 0, 1)
|
||||
|
||||
[node name="QuestCompletedPopup" type="PopupPanel"]
|
||||
size = Vector2i(400, 393)
|
||||
visible = true
|
||||
max_size = Vector2i(32768, 400)
|
||||
theme_override_styles/panel = SubResource("StyleBoxEmpty_6sn1x")
|
||||
script = ExtResource("1_iq8xr")
|
||||
|
||||
[node name="PanelContainer" type="PanelContainer" parent="."]
|
||||
offset_right = 400.0
|
||||
offset_bottom = 393.0
|
||||
theme_override_styles/panel = SubResource("StyleBoxFlat_wnuu2")
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="PanelContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/margin_left = 5
|
||||
theme_override_constants/margin_top = 8
|
||||
theme_override_constants/margin_right = 5
|
||||
theme_override_constants/margin_bottom = 5
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="PanelContainer/MarginContainer"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="QuestCompletedLabel" type="Label" parent="PanelContainer/MarginContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 0
|
||||
theme_override_colors/font_color = Color(0.972549, 0.85098, 0, 1)
|
||||
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
|
||||
theme_override_constants/outline_size = 12
|
||||
theme_override_font_sizes/font_size = 28
|
||||
text = "QUEST COMPLETE!"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 2
|
||||
|
||||
[node name="QuestNameLabel" type="Label" parent="PanelContainer/MarginContainer/VBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 0
|
||||
theme_override_colors/font_color = Color(0, 0.968627, 0.964706, 1)
|
||||
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
|
||||
theme_override_constants/outline_size = 10
|
||||
theme_override_font_sizes/font_size = 28
|
||||
text = "Beesley's Special Juice"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 2
|
||||
|
||||
[node name="PanelContainer" type="PanelContainer" parent="PanelContainer/MarginContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
theme_override_styles/panel = SubResource("StyleBoxFlat_5n0qo")
|
||||
|
||||
[node name="QuestRewardsLabel" type="Label" parent="PanelContainer/MarginContainer/VBoxContainer/PanelContainer"]
|
||||
unique_name_in_owner = true
|
||||
custom_minimum_size = Vector2(100, 0)
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 6
|
||||
text = "Go Talk to the beesley bee to start the quest!"
|
||||
horizontal_alignment = 1
|
||||
autowrap_mode = 2
|
||||
|
||||
[node name="ContinueButton" type="Button" parent="PanelContainer/MarginContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 4
|
||||
text = "Continue"
|
||||
|
||||
[connection signal="popup_hide" from="." to="." method="_on_popup_hide"]
|
||||
[connection signal="pressed" from="PanelContainer/MarginContainer/VBoxContainer/ContinueButton" to="." method="_on_continue_button_pressed"]
|
||||
46
UI/MenuBar/Quests/QuestDisplayer.gd
Normal file
46
UI/MenuBar/Quests/QuestDisplayer.gd
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
extends PanelContainer
|
||||
|
||||
var questStatusPopupScene = preload("res://UI/MenuBar/Quests/QuestStatusPopup.tscn")
|
||||
var currentBaseColor
|
||||
|
||||
var questDisplayed
|
||||
|
||||
func _ready():
|
||||
currentBaseColor = %QuestNameLabel.get("theme_override_colors/font_color")
|
||||
|
||||
func refresh_completion():
|
||||
set_status(questDisplayed.is_completed())
|
||||
|
||||
func set_status(completed):
|
||||
if completed:
|
||||
%QuestNameLabel.set("theme_override_colors/font_color", Color.GREEN)
|
||||
currentBaseColor = Color.GREEN
|
||||
|
||||
func set_quest_name(questName):
|
||||
%QuestNameLabel.text = questName
|
||||
|
||||
func set_quest(quest):
|
||||
questDisplayed = quest
|
||||
set_quest_name(quest.questName)
|
||||
set_status(quest.is_completed())
|
||||
|
||||
func _on_gui_input(event):
|
||||
if event is InputEventMouseButton and event.pressed and event.button_index == MOUSE_BUTTON_LEFT:
|
||||
show_quest_overview()
|
||||
|
||||
func show_quest_overview():
|
||||
var questPopup = questStatusPopupScene.instantiate()
|
||||
add_child(questPopup)
|
||||
questPopup.set_quest(questDisplayed)
|
||||
questPopup.popup_centered()
|
||||
|
||||
func _on_mouse_entered():
|
||||
var hoverColor = currentBaseColor
|
||||
hoverColor.r += 0.3
|
||||
hoverColor.g += 0.3
|
||||
hoverColor.b += 0.3
|
||||
%QuestNameLabel.set("theme_override_colors/font_color", hoverColor)
|
||||
|
||||
func _on_mouse_exited():
|
||||
%QuestNameLabel.set("theme_override_colors/font_color", currentBaseColor)
|
||||
|
||||
36
UI/MenuBar/Quests/QuestDisplayer.tscn
Normal file
36
UI/MenuBar/Quests/QuestDisplayer.tscn
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
[gd_scene load_steps=3 format=3 uid="uid://dqlw131ldoewm"]
|
||||
|
||||
[ext_resource type="Script" path="res://UI/MenuBar/Quests/QuestDisplayer.gd" id="1_7f2o6"]
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_oaqtv"]
|
||||
bg_color = Color(0.6, 0.6, 0.6, 0)
|
||||
|
||||
[node name="QuestDisplayer" type="PanelContainer"]
|
||||
offset_right = 263.0
|
||||
offset_bottom = 26.0
|
||||
size_flags_horizontal = 3
|
||||
theme_override_styles/panel = SubResource("StyleBoxFlat_oaqtv")
|
||||
script = ExtResource("1_7f2o6")
|
||||
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="."]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="HBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
theme_override_constants/margin_left = 5
|
||||
|
||||
[node name="QuestNameLabel" type="Label" parent="HBoxContainer/MarginContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
theme_override_colors/font_color = Color(0.85098, 0, 0, 1)
|
||||
theme_override_colors/font_shadow_color = Color(0, 0, 0, 1)
|
||||
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
|
||||
theme_override_constants/outline_size = 4
|
||||
theme_override_constants/shadow_outline_size = 4
|
||||
theme_override_font_sizes/font_size = 19
|
||||
text = "Beesley's Special Juice"
|
||||
|
||||
[connection signal="gui_input" from="." to="." method="_on_gui_input"]
|
||||
[connection signal="mouse_entered" from="." to="." method="_on_mouse_entered"]
|
||||
[connection signal="mouse_exited" from="." to="." method="_on_mouse_exited"]
|
||||
13
UI/MenuBar/Quests/QuestStatusPopup.gd
Normal file
13
UI/MenuBar/Quests/QuestStatusPopup.gd
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
extends PopupPanel
|
||||
|
||||
func set_quest(quest):
|
||||
%QuestNameLabel.text = quest.questName
|
||||
%QuestScaleLabel.text = quest.get_scale_name()
|
||||
%QuestProgressLabel.text = quest.get_progress_report()
|
||||
%QuestRequirementsLabel.text = quest.get_requirements_report()
|
||||
|
||||
func _on_popup_hide():
|
||||
queue_free()
|
||||
|
||||
func _on_continue_button_pressed():
|
||||
hide()
|
||||
104
UI/MenuBar/Quests/QuestStatusPopup.tscn
Normal file
104
UI/MenuBar/Quests/QuestStatusPopup.tscn
Normal file
|
|
@ -0,0 +1,104 @@
|
|||
[gd_scene load_steps=5 format=3 uid="uid://kq1k014lm2m0"]
|
||||
|
||||
[ext_resource type="Script" path="res://UI/MenuBar/Quests/QuestStatusPopup.gd" id="1_yr0v5"]
|
||||
|
||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_4e5mo"]
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_1sp3r"]
|
||||
bg_color = Color(0.321569, 0.482353, 0.713726, 1)
|
||||
border_width_left = 8
|
||||
border_width_top = 8
|
||||
border_width_right = 8
|
||||
border_width_bottom = 8
|
||||
border_color = Color(0.917647, 0.94902, 0, 1)
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_4hdaa"]
|
||||
bg_color = Color(0.113725, 0.172549, 0.368627, 1)
|
||||
border_color = Color(0.87451, 0.847059, 0, 1)
|
||||
|
||||
[node name="QuestStatusPopup" type="PopupPanel"]
|
||||
size = Vector2i(500, 500)
|
||||
visible = true
|
||||
extend_to_title = true
|
||||
max_size = Vector2i(32768, 500)
|
||||
theme_override_styles/panel = SubResource("StyleBoxEmpty_4e5mo")
|
||||
script = ExtResource("1_yr0v5")
|
||||
|
||||
[node name="PanelContainer" type="PanelContainer" parent="."]
|
||||
offset_right = 500.0
|
||||
offset_bottom = 500.0
|
||||
theme_override_styles/panel = SubResource("StyleBoxFlat_1sp3r")
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="PanelContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/margin_left = 9
|
||||
theme_override_constants/margin_top = 8
|
||||
theme_override_constants/margin_right = 9
|
||||
theme_override_constants/margin_bottom = 5
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="PanelContainer/MarginContainer"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="QuestNameLabel" type="Label" parent="PanelContainer/MarginContainer/VBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 0
|
||||
theme_override_colors/font_color = Color(0.12549, 0.847059, 0.905882, 1)
|
||||
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
|
||||
theme_override_constants/outline_size = 14
|
||||
theme_override_font_sizes/font_size = 32
|
||||
text = "Beesley's Special Juice"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 2
|
||||
|
||||
[node name="QuestScaleLabel" type="Label" parent="PanelContainer/MarginContainer/VBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 0
|
||||
theme_override_colors/font_color = Color(0.741176, 0.988235, 0, 1)
|
||||
theme_override_colors/font_shadow_color = Color(0, 0, 0, 1)
|
||||
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
|
||||
theme_override_constants/outline_size = 0
|
||||
theme_override_constants/shadow_outline_size = 8
|
||||
theme_override_font_sizes/font_size = 20
|
||||
text = "Moderate"
|
||||
horizontal_alignment = 1
|
||||
|
||||
[node name="PanelContainer" type="PanelContainer" parent="PanelContainer/MarginContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
theme_override_styles/panel = SubResource("StyleBoxFlat_4hdaa")
|
||||
|
||||
[node name="QuestProgressLabel" type="Label" parent="PanelContainer/MarginContainer/VBoxContainer/PanelContainer"]
|
||||
unique_name_in_owner = true
|
||||
custom_minimum_size = Vector2(100, 0)
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 6
|
||||
text = "Go Talk to the beesley bee to start the quest!
|
||||
Go Talk to the beesley bee to start the quest!
|
||||
Go Talk to the beesley bee to start the quest!
|
||||
Go Talk to the beesley bee to start the quest!
|
||||
Go Talk to the beesley bee to start the quest!
|
||||
Go Talk to the beesley bee to start the quest!
|
||||
Go Talk to the beesley bee to start the quest!
|
||||
Go Talk to the beesley bee to start the quest!
|
||||
Go Talk to the beesley bee to start the quest!
|
||||
"
|
||||
horizontal_alignment = 1
|
||||
autowrap_mode = 3
|
||||
|
||||
[node name="QuestRequirementsLabel" type="Label" parent="PanelContainer/MarginContainer/VBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 0
|
||||
text = "Requirements
|
||||
None"
|
||||
horizontal_alignment = 1
|
||||
|
||||
[node name="ContinueButton" type="Button" parent="PanelContainer/MarginContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 4
|
||||
text = "Continue"
|
||||
|
||||
[connection signal="popup_hide" from="." to="." method="_on_popup_hide"]
|
||||
[connection signal="pressed" from="PanelContainer/MarginContainer/VBoxContainer/ContinueButton" to="." method="_on_continue_button_pressed"]
|
||||
20
UI/MenuBar/Quests/QuestsMenu.gd
Normal file
20
UI/MenuBar/Quests/QuestsMenu.gd
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
extends PanelContainer
|
||||
|
||||
var questDisplayerScene = preload("res://UI/MenuBar/Quests/QuestDisplayer.tscn")
|
||||
|
||||
func _ready():
|
||||
var quests = QuestManager.get_all_quests()
|
||||
for quest in quests:
|
||||
spawn_quest_display(quest)
|
||||
|
||||
QuestManager.questCompleted.connect(update_quest_displays)
|
||||
|
||||
func spawn_quest_display(quest):
|
||||
var newDisplayer = questDisplayerScene.instantiate()
|
||||
newDisplayer.set_quest(quest)
|
||||
|
||||
%QuestDisplays.add_child(newDisplayer)
|
||||
|
||||
func update_quest_displays():
|
||||
for questDisplay in %QuestDisplays.get_children():
|
||||
questDisplay.refresh_completion()
|
||||
Loading…
Add table
Add a link
Reference in a new issue