It's Cow Game! Version 2.04!
BIN
UI/MenuBar/Icons/heart.png
Normal file
|
After Width: | Height: | Size: 767 B |
34
UI/MenuBar/Icons/heart.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://t4ebficyagwh"
|
||||
path="res://.godot/imported/heart.png-8d8062fec2324ffe55b63670793bdffb.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://UI/MenuBar/Icons/heart.png"
|
||||
dest_files=["res://.godot/imported/heart.png-8d8062fec2324ffe55b63670793bdffb.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
|
||||
BIN
UI/MenuBar/Icons/inventoryIcon.png
Normal file
|
After Width: | Height: | Size: 559 B |
34
UI/MenuBar/Icons/inventoryIcon.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://blt2vovlmqkqa"
|
||||
path="res://.godot/imported/inventoryIcon.png-2f6b428fea9b4af6ef5cbf35f19daae1.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://UI/MenuBar/Icons/inventoryIcon.png"
|
||||
dest_files=["res://.godot/imported/inventoryIcon.png-2f6b428fea9b4af6ef5cbf35f19daae1.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
|
||||
BIN
UI/MenuBar/Icons/minimizeIcon.png
Normal file
|
After Width: | Height: | Size: 127 B |
34
UI/MenuBar/Icons/minimizeIcon.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://30e8agbu6s36"
|
||||
path="res://.godot/imported/minimizeIcon.png-86bbdb16a02a65217cb34aa4a3e7b5f7.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://UI/MenuBar/Icons/minimizeIcon.png"
|
||||
dest_files=["res://.godot/imported/minimizeIcon.png-86bbdb16a02a65217cb34aa4a3e7b5f7.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
|
||||
BIN
UI/MenuBar/Icons/musicIcon.png
Normal file
|
After Width: | Height: | Size: 383 B |
34
UI/MenuBar/Icons/musicIcon.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cian6frtsfm7p"
|
||||
path="res://.godot/imported/musicIcon.png-beface9aaec3d416239991dab5b97425.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://UI/MenuBar/Icons/musicIcon.png"
|
||||
dest_files=["res://.godot/imported/musicIcon.png-beface9aaec3d416239991dab5b97425.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
|
||||
BIN
UI/MenuBar/Icons/musicIconGrey.png
Normal file
|
After Width: | Height: | Size: 373 B |
34
UI/MenuBar/Icons/musicIconGrey.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://c1qqqp60pmin4"
|
||||
path="res://.godot/imported/musicIconGrey.png-740fe4baa6db1cd7f08ae032e0302f48.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://UI/MenuBar/Icons/musicIconGrey.png"
|
||||
dest_files=["res://.godot/imported/musicIconGrey.png-740fe4baa6db1cd7f08ae032e0302f48.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
|
||||
BIN
UI/MenuBar/Icons/outfitIcon.png
Normal file
|
After Width: | Height: | Size: 322 B |
34
UI/MenuBar/Icons/outfitIcon.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dw08nq7ktm1s4"
|
||||
path="res://.godot/imported/outfitIcon.png-e2cd2db694124cf69e38722f82d998f7.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://UI/MenuBar/Icons/outfitIcon.png"
|
||||
dest_files=["res://.godot/imported/outfitIcon.png-e2cd2db694124cf69e38722f82d998f7.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
|
||||
BIN
UI/MenuBar/Icons/outfitIconGrey.png
Normal file
|
After Width: | Height: | Size: 317 B |
34
UI/MenuBar/Icons/outfitIconGrey.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://e13ga487e578"
|
||||
path="res://.godot/imported/outfitIconGrey.png-41fe78f0d74da131fed2b8e271cf8bbc.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://UI/MenuBar/Icons/outfitIconGrey.png"
|
||||
dest_files=["res://.godot/imported/outfitIconGrey.png-41fe78f0d74da131fed2b8e271cf8bbc.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
|
||||
BIN
UI/MenuBar/Icons/questIcon.png
Normal file
|
After Width: | Height: | Size: 835 B |
34
UI/MenuBar/Icons/questIcon.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://68goo85pfcw7"
|
||||
path="res://.godot/imported/questIcon.png-628fbb744c441dbe5a653ba8394e1fc3.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://UI/MenuBar/Icons/questIcon.png"
|
||||
dest_files=["res://.godot/imported/questIcon.png-628fbb744c441dbe5a653ba8394e1fc3.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
|
||||
BIN
UI/MenuBar/Icons/settingsIcon.png
Normal file
|
After Width: | Height: | Size: 338 B |
34
UI/MenuBar/Icons/settingsIcon.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b85j0dy3qpfgx"
|
||||
path="res://.godot/imported/settingsIcon.png-2cb491f484daba718b23a0437f2153d7.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://UI/MenuBar/Icons/settingsIcon.png"
|
||||
dest_files=["res://.godot/imported/settingsIcon.png-2cb491f484daba718b23a0437f2153d7.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
|
||||
BIN
UI/MenuBar/Icons/skillsIcon.png
Normal file
|
After Width: | Height: | Size: 203 B |
34
UI/MenuBar/Icons/skillsIcon.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dh5lul83sgryb"
|
||||
path="res://.godot/imported/skillsIcon.png-dbb4959f0bebd34c60f7eae99305bc9c.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://UI/MenuBar/Icons/skillsIcon.png"
|
||||
dest_files=["res://.godot/imported/skillsIcon.png-dbb4959f0bebd34c60f7eae99305bc9c.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
|
||||
137
UI/MenuBar/Inventory/InventoryMenu.gd
Normal file
|
|
@ -0,0 +1,137 @@
|
|||
extends PanelContainer
|
||||
|
||||
var groundItemScene = preload("res://Objects/GroundItems/GroundItem.tscn")
|
||||
|
||||
var inventoryDisplayer
|
||||
var keyInventoryDisplayer
|
||||
|
||||
var currentInv = "normal"
|
||||
|
||||
var clickMenu
|
||||
var itemSelected
|
||||
|
||||
var shortcuts = [KEY_1, KEY_2, KEY_3, KEY_4, KEY_5, KEY_6, KEY_7, KEY_8, KEY_9]
|
||||
|
||||
func _ready():
|
||||
inventoryDisplayer = %InventoryItems
|
||||
keyInventoryDisplayer = %KeyInventoryItems
|
||||
clickMenu = %ClickMenu
|
||||
|
||||
inventoryDisplayer.displayScene = load("res://UI/MenuBar/Inventory/ItemInventoryDisplay.tscn")
|
||||
keyInventoryDisplayer.displayScene = load("res://UI/MenuBar/Inventory/ItemInventoryDisplay.tscn")
|
||||
update_inventory()
|
||||
inventoryDisplayer.itemClicked.connect(item_clicked)
|
||||
keyInventoryDisplayer.itemClicked.connect(item_clicked)
|
||||
|
||||
InventoryManager.playerInventoryUpdated.connect(update_inventory)
|
||||
|
||||
func _process(delta):
|
||||
if clickMenu.visible:
|
||||
for i in range(clickMenu.item_count):
|
||||
var currentID = clickMenu.get_item_id(i)
|
||||
if currentID < shortcuts.size() and Input.is_action_just_pressed(str(i+1)):
|
||||
_on_click_menu_id_pressed(currentID)
|
||||
break
|
||||
|
||||
func update_inventory():
|
||||
var inventory = InventoryManager.get_inventory()
|
||||
inventoryDisplayer.inventory = inventory
|
||||
inventoryDisplayer.update_display()
|
||||
|
||||
var keyInventory = InventoryManager.get_inventory("keyItems")
|
||||
keyInventoryDisplayer.inventory = keyInventory
|
||||
keyInventoryDisplayer.update_display()
|
||||
|
||||
func item_clicked(item):
|
||||
clear_click_menu()
|
||||
itemSelected = item
|
||||
|
||||
clickMenu.size.x = 0
|
||||
clickMenu.size.y = 0
|
||||
|
||||
clickMenu.add_item("Behold", 0)
|
||||
if currentInv != "keyItems":
|
||||
clickMenu.add_item("Drop", 1)
|
||||
if Item.types.Juice in item.itemTypes:
|
||||
clickMenu.add_item("Drink", 2)
|
||||
elif item.get_edibility() >= 50:
|
||||
clickMenu.add_item("Eat", 3)
|
||||
if Item.types.Toy in item.itemTypes:
|
||||
clickMenu.add_item("Play", 4)
|
||||
|
||||
clickMenu.show()
|
||||
|
||||
var WindowSize = Vector2(880,620)
|
||||
var MenuSize = clickMenu.size
|
||||
var PopUpPos = get_viewport().get_mouse_position()
|
||||
if MenuSize.x + PopUpPos.x > WindowSize.x: PopUpPos.x -= MenuSize.x
|
||||
if MenuSize.y + PopUpPos.y > WindowSize.y: PopUpPos.y -= MenuSize.y
|
||||
clickMenu.position = PopUpPos
|
||||
|
||||
func clear_click_menu():
|
||||
clickMenu.clear()
|
||||
|
||||
func _on_click_menu_id_pressed(id):
|
||||
if !InventoryManager.check_if_in_inventory(itemSelected, 1, currentInv):
|
||||
return
|
||||
|
||||
if id == 0:
|
||||
behold_item(itemSelected)
|
||||
examine_item(itemSelected)
|
||||
elif id == 1:
|
||||
drop_item(itemSelected)
|
||||
elif id == 2:
|
||||
drink_item(itemSelected)
|
||||
elif id == 3:
|
||||
eat_item(itemSelected)
|
||||
elif id == 4:
|
||||
play_with_item(itemSelected)
|
||||
|
||||
func behold_item(item):
|
||||
GameVariables.player.behold_item(item)
|
||||
|
||||
func drop_item(item):
|
||||
var newGroundItem = groundItemScene.instantiate()
|
||||
newGroundItem.set_item(item.duplicate())
|
||||
newGroundItem.global_position = GameVariables.player.global_position
|
||||
|
||||
if GameVariables.player.swimmingZones.size() > 0:
|
||||
newGroundItem.assume_water_start(GameVariables.player.swimmingZones[0])
|
||||
|
||||
if GameVariables.player.currentInteractingItem != null and GameVariables.player.currentInteractingItem.equals(item):
|
||||
GameVariables.player.change_state("Idle")
|
||||
|
||||
InventoryManager.remove_item_from_inventory(item)
|
||||
LocationManager.currentLocation.add_child(newGroundItem)
|
||||
|
||||
func examine_item(item):
|
||||
MessageManager.addMessage(item.get_description(), null, "System", Color.MIDNIGHT_BLUE,
|
||||
true, false)
|
||||
|
||||
func drink_item(item):
|
||||
GameVariables.player.drink_juice(item)
|
||||
|
||||
func eat_item(item):
|
||||
GameVariables.player.eat_item(item)
|
||||
|
||||
func play_with_item(item):
|
||||
GameVariables.player.play_item(item)
|
||||
if Item.types.Trumpet in item.itemTypes:
|
||||
var trumpetMenu = preload("res://UI/Trumpet/TrumpetMenu.tscn").instantiate()
|
||||
add_child(trumpetMenu)
|
||||
trumpetMenu.popup_centered()
|
||||
trumpetMenu.position.y -= 200
|
||||
|
||||
func _on_inventory_chooser_tab_changed(tab):
|
||||
if tab == 0:
|
||||
currentInv = "normal"
|
||||
else:
|
||||
currentInv = "keyItems"
|
||||
tab += 1
|
||||
|
||||
var inventories = %InventoryHolder.get_children()
|
||||
for i in inventories.size():
|
||||
if i == tab or i == inventories.size() - 1 or i == 0:
|
||||
inventories[i].visible = true
|
||||
else:
|
||||
inventories[i].visible = false
|
||||
76
UI/MenuBar/Inventory/ItemInventoryDisplay.gd
Normal file
|
|
@ -0,0 +1,76 @@
|
|||
extends PanelContainer
|
||||
|
||||
signal itemClicked
|
||||
signal buttonPressed
|
||||
signal fiveButtonPressed
|
||||
signal allButtonPressed
|
||||
|
||||
var itemSpriteDisplay:TextureRect
|
||||
var itemNameDisplay:Label
|
||||
var itemQuantityDisplay:Label
|
||||
|
||||
var quantityDisplayed = 0
|
||||
|
||||
func _ready():
|
||||
itemSpriteDisplay = get_node("MarginContainer/ItemInventoryDisplay/ItemSprite")
|
||||
itemNameDisplay = get_node("MarginContainer/ItemInventoryDisplay/HSplitContainer/ItemName")
|
||||
itemQuantityDisplay = get_node("MarginContainer/ItemInventoryDisplay/HSplitContainer/Quantity")
|
||||
|
||||
func set_sprite(sprite):
|
||||
itemSpriteDisplay.texture = sprite
|
||||
|
||||
func set_item_name(itemName):
|
||||
itemNameDisplay.text = itemName
|
||||
|
||||
func set_quantity(quantity:int):
|
||||
itemQuantityDisplay.text = "x" + str(quantity)
|
||||
quantityDisplayed = quantity
|
||||
|
||||
func hide_quantity():
|
||||
itemQuantityDisplay.visible = false
|
||||
|
||||
func show_positives():
|
||||
var plusButton = $MarginContainer/ItemInventoryDisplay/HSplitContainer/Buttons/PlusButton
|
||||
if plusButton != null:
|
||||
plusButton.visible = true
|
||||
|
||||
func hide_positives():
|
||||
var plusButton = $MarginContainer/ItemInventoryDisplay/HSplitContainer/Buttons/PlusButton
|
||||
if plusButton != null:
|
||||
plusButton.visible = false
|
||||
|
||||
func show_negatives():
|
||||
var minusButton = $MarginContainer/ItemInventoryDisplay/HSplitContainer/Buttons/MinusButton
|
||||
if minusButton != null:
|
||||
minusButton.visible = true
|
||||
|
||||
func hide_negatives():
|
||||
var minusButton = $MarginContainer/ItemInventoryDisplay/HSplitContainer/Buttons/MinusButton
|
||||
if minusButton != null:
|
||||
minusButton.visible = false
|
||||
|
||||
func show_five_button():
|
||||
var fiveButton = get_node("MarginContainer/ItemInventoryDisplay/HSplitContainer/Buttons/5Button")
|
||||
if fiveButton != null:
|
||||
fiveButton.visible = true
|
||||
|
||||
func show_all_button():
|
||||
var allButton = get_node("MarginContainer/ItemInventoryDisplay/HSplitContainer/Buttons/AllButton")
|
||||
if allButton != null:
|
||||
allButton.visible = true
|
||||
|
||||
func _on_plus_button_pressed():
|
||||
buttonPressed.emit()
|
||||
|
||||
func _on_minus_button_pressed():
|
||||
buttonPressed.emit()
|
||||
|
||||
func _on_gui_input(event):
|
||||
if event is InputEventMouseButton and event.pressed and event.button_index == MOUSE_BUTTON_LEFT:
|
||||
itemClicked.emit()
|
||||
|
||||
func _on_5_button_pressed():
|
||||
fiveButtonPressed.emit()
|
||||
|
||||
func _on_all_button_pressed():
|
||||
allButtonPressed.emit()
|
||||
47
UI/MenuBar/Inventory/ItemInventoryDisplay.tscn
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
[gd_scene load_steps=4 format=3 uid="uid://c3bb0ljgv77r2"]
|
||||
|
||||
[ext_resource type="Script" path="res://UI/MenuBar/Inventory/ItemInventoryDisplay.gd" id="1_2pu85"]
|
||||
[ext_resource type="Texture2D" uid="uid://ct5a5b2148uia" path="res://Items/Foods/Fruits/Sprites/Orange.png" id="2_sxoyk"]
|
||||
|
||||
[sub_resource type="Theme" id="Theme_tw8r0"]
|
||||
|
||||
[node name="ItemInventoryDisplay" type="PanelContainer"]
|
||||
offset_right = 229.0
|
||||
offset_bottom = 26.0
|
||||
script = ExtResource("1_2pu85")
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="."]
|
||||
layout_mode = 2
|
||||
theme_override_constants/margin_left = 3
|
||||
theme_override_constants/margin_top = 2
|
||||
theme_override_constants/margin_right = 5
|
||||
theme_override_constants/margin_bottom = 2
|
||||
|
||||
[node name="ItemInventoryDisplay" type="HSplitContainer" parent="MarginContainer"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="ItemSprite" type="TextureRect" parent="MarginContainer/ItemInventoryDisplay"]
|
||||
layout_mode = 2
|
||||
theme = SubResource("Theme_tw8r0")
|
||||
texture = ExtResource("2_sxoyk")
|
||||
expand_mode = 2
|
||||
|
||||
[node name="HSplitContainer" type="HSplitContainer" parent="MarginContainer/ItemInventoryDisplay"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
dragger_visibility = 2
|
||||
|
||||
[node name="ItemName" type="Label" parent="MarginContainer/ItemInventoryDisplay/HSplitContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
text = "Orange"
|
||||
vertical_alignment = 1
|
||||
text_overrun_behavior = 4
|
||||
|
||||
[node name="Quantity" type="Label" parent="MarginContainer/ItemInventoryDisplay/HSplitContainer"]
|
||||
layout_mode = 2
|
||||
text = "Qt. 10"
|
||||
horizontal_alignment = 2
|
||||
vertical_alignment = 1
|
||||
|
||||
[connection signal="gui_input" from="." to="." method="_on_gui_input"]
|
||||
10
UI/MenuBar/Inventory/item_inventory_display_clickable.tscn
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
[gd_scene load_steps=3 format=3 uid="uid://tqulfnxq65nt"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://c3bb0ljgv77r2" path="res://UI/MenuBar/Inventory/ItemInventoryDisplay.tscn" id="1_r3jxp"]
|
||||
[ext_resource type="Script" path="res://ItemInventoryDisplayClickable.gd" id="2_sxs8q"]
|
||||
|
||||
[node name="ItemInventoryDisplay" instance=ExtResource("1_r3jxp")]
|
||||
script = ExtResource("2_sxs8q")
|
||||
|
||||
[node name="PopupMenu" type="PopupMenu" parent="." index="1"]
|
||||
visible = true
|
||||
33
UI/MenuBar/MenuBar.gd
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
extends Control
|
||||
|
||||
var menus
|
||||
|
||||
var currentTab = -1
|
||||
|
||||
func _ready():
|
||||
menus = get_node("VSplitContainer/Menus").get_children()
|
||||
%TabBar.current_tab = 4
|
||||
|
||||
func _on_tab_bar_tab_clicked(tab):
|
||||
if tab == currentTab:
|
||||
currentTab = -1
|
||||
for i in menus.size():
|
||||
menus[i].visible = false
|
||||
%TabBar.current_tab = 4
|
||||
else:
|
||||
for i in menus.size():
|
||||
if i == tab:
|
||||
menus[i].visible = true
|
||||
else:
|
||||
menus[i].visible = false
|
||||
currentTab = tab
|
||||
|
||||
func _on_credits_button_pressed():
|
||||
%CreditsPopup.popup_centered()
|
||||
|
||||
func _on_esc_menu_button_pressed():
|
||||
get_parent().get_node("EscapeMenu").visible = true
|
||||
|
||||
func _on_achievements_button_pressed():
|
||||
get_parent().get_node("AchievementsMenu").visible = true
|
||||
get_parent().get_node("AchievementsMenu").opened()
|
||||
54
UI/MenuBar/OptionsMenu.gd
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
extends PanelContainer
|
||||
|
||||
var totalVolSlider:HSlider
|
||||
var musicVolSlider:HSlider
|
||||
var sfxVolSlider:HSlider
|
||||
var limeOption:CheckBox
|
||||
var messageOption:CheckBox
|
||||
|
||||
func _ready():
|
||||
totalVolSlider = %TotalVolSlider
|
||||
musicVolSlider = %MusicVolSlider
|
||||
sfxVolSlider = %SFXVolSlider
|
||||
limeOption = %limeCheck
|
||||
messageOption = %messageCheck
|
||||
|
||||
initialize_volume_bars()
|
||||
update_volumes(0)
|
||||
|
||||
totalVolSlider.value_changed.connect(update_volumes)
|
||||
musicVolSlider.value_changed.connect(update_volumes)
|
||||
sfxVolSlider.value_changed.connect(update_volumes)
|
||||
limeOption.pressed.connect(limeToggled)
|
||||
|
||||
func initialize_volume_bars():
|
||||
var savedTotalVol = SaveManager.get_global_value("totalVol", 100)
|
||||
totalVolSlider.value = savedTotalVol
|
||||
|
||||
var savedMusicVol = SaveManager.get_global_value("musicVol", 100)
|
||||
musicVolSlider.value = savedMusicVol
|
||||
|
||||
var savedSFXVol = SaveManager.get_global_value("sfxVol", 100)
|
||||
sfxVolSlider.value = savedSFXVol
|
||||
|
||||
var savedlimeOption = SaveManager.get_save_value("LimeEnabled", true)
|
||||
limeOption.button_pressed = savedlimeOption
|
||||
|
||||
func update_volumes(_newVolume):
|
||||
save_volumes()
|
||||
AudioServer.set_bus_volume_db(0, linear_to_db(totalVolSlider.value))
|
||||
AudioServer.set_bus_volume_db(1, linear_to_db(musicVolSlider.value))
|
||||
AudioServer.set_bus_volume_db(2, linear_to_db(sfxVolSlider.value))
|
||||
|
||||
func save_volumes():
|
||||
SaveManager.set_global_value("totalVol", totalVolSlider.value)
|
||||
SaveManager.set_global_value("musicVol", musicVolSlider.value)
|
||||
SaveManager.set_global_value("sfxVol", sfxVolSlider.value)
|
||||
|
||||
func limeToggled():
|
||||
SaveManager.set_save_value("LimeEnabled", limeOption.button_pressed)
|
||||
if !limeOption.button_pressed and SaveManager.get_save_value("BeeslyLimeMode", false):
|
||||
get_tree().call_group("Beesly", "LimeOff")
|
||||
|
||||
func _on_message_check_pressed():
|
||||
SaveManager.set_save_value("ShowMessageOpt",messageOption.button_pressed)
|
||||
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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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()
|
||||
48
UI/MenuBar/Skills/LevelDisplay.gd
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
extends HSplitContainer
|
||||
|
||||
class_name LevelDisplay
|
||||
|
||||
var currentSkill:Skill
|
||||
|
||||
var skillIconDisplay:TextureRect
|
||||
var skillNameDisplay:Label
|
||||
var skillLevelDisplay:Label
|
||||
var skillXPBar:ProgressBar
|
||||
|
||||
func _ready():
|
||||
skillIconDisplay = get_node("SkillIcon")
|
||||
skillNameDisplay = get_node("VSplitContainer/HSplitContainer/SkillName")
|
||||
skillLevelDisplay = get_node("VSplitContainer/HSplitContainer/SkillLevel")
|
||||
skillXPBar = get_node("VSplitContainer/XPBar")
|
||||
|
||||
func _process(_delta):
|
||||
if currentSkill != null:
|
||||
update_xp_bar()
|
||||
update_level()
|
||||
update_skill_info(currentSkill)
|
||||
|
||||
func update_xp_bar():
|
||||
skillXPBar.value = currentSkill.currentXP
|
||||
skillXPBar.max_value = LevelManager.get_XP_to_next_level(currentSkill.currentLevel)
|
||||
var currentXPString = XpDisplayUtils.xpFormater(currentSkill.currentXP, true)
|
||||
|
||||
if skillXPBar.max_value <= 9999999:
|
||||
var maxXPString = XpDisplayUtils.xpFormater(skillXPBar.max_value, true)
|
||||
skillXPBar.get_node("XPLabel").text = currentXPString + "/" + maxXPString + "XP"
|
||||
else:
|
||||
skillXPBar.get_node("XPLabel").text = currentXPString + "XP"
|
||||
|
||||
func update_level():
|
||||
skillLevelDisplay.text = "Lv. " + str(currentSkill.currentLevel)
|
||||
|
||||
func update_skill_info(skill:Skill):
|
||||
if !skill.hidden:
|
||||
skillIconDisplay.texture = currentSkill.get_icon()
|
||||
skillNameDisplay.text = currentSkill.skillName
|
||||
else:
|
||||
skillIconDisplay.texture = currentSkill.hiddenIcon
|
||||
skillNameDisplay.text = "???"
|
||||
|
||||
func set_skill(skill:Skill):
|
||||
currentSkill = skill
|
||||
update_skill_info(currentSkill)
|
||||
68
UI/MenuBar/Skills/LevelDisplay.tscn
Normal file
|
|
@ -0,0 +1,68 @@
|
|||
[gd_scene load_steps=5 format=3 uid="uid://baij4wsgpcd31"]
|
||||
|
||||
[ext_resource type="Script" path="res://UI/MenuBar/Skills/LevelDisplay.gd" id="1_7bb3j"]
|
||||
[ext_resource type="Texture2D" uid="uid://ot8vppthxuwx" path="res://Skills/Arson/arsonIcon.png" id="1_v5m46"]
|
||||
|
||||
[sub_resource type="Theme" id="Theme_tw8r0"]
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_1kgag"]
|
||||
bg_color = Color(0.0980392, 0.580392, 0.305882, 1)
|
||||
corner_radius_top_left = 6
|
||||
corner_radius_bottom_left = 6
|
||||
|
||||
[node name="LevelDisplay" type="HSplitContainer"]
|
||||
offset_right = 267.0
|
||||
offset_bottom = 46.0
|
||||
script = ExtResource("1_7bb3j")
|
||||
|
||||
[node name="SkillIcon" type="TextureRect" parent="."]
|
||||
layout_mode = 2
|
||||
theme = SubResource("Theme_tw8r0")
|
||||
texture = ExtResource("1_v5m46")
|
||||
expand_mode = 2
|
||||
|
||||
[node name="VSplitContainer" type="VSplitContainer" parent="."]
|
||||
layout_mode = 2
|
||||
dragger_visibility = 2
|
||||
|
||||
[node name="HSplitContainer" type="HSplitContainer" parent="VSplitContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
dragger_visibility = 2
|
||||
|
||||
[node name="SkillName" type="Label" parent="VSplitContainer/HSplitContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 8
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
text = "Arson"
|
||||
vertical_alignment = 2
|
||||
|
||||
[node name="SkillLevel" type="Label" parent="VSplitContainer/HSplitContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 8
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
text = "Lv. 10"
|
||||
horizontal_alignment = 2
|
||||
vertical_alignment = 2
|
||||
|
||||
[node name="XPBar" type="ProgressBar" parent="VSplitContainer"]
|
||||
custom_minimum_size = Vector2(0, 20)
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 2
|
||||
theme_override_styles/fill = SubResource("StyleBoxFlat_1kgag")
|
||||
value = 30.0
|
||||
show_percentage = false
|
||||
|
||||
[node name="XPLabel" type="Label" parent="VSplitContainer/XPBar"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 14
|
||||
anchor_top = 0.5
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 0.5
|
||||
offset_top = -13.0
|
||||
offset_bottom = 13.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
text = "4.3/6XP"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
14
UI/MenuBar/Skills/SkillsMenu.gd
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
extends PanelContainer
|
||||
|
||||
var levelDisplayScene = preload("res://UI/MenuBar/Skills/LevelDisplay.tscn")
|
||||
|
||||
func _ready():
|
||||
spawn_level_displays()
|
||||
|
||||
func spawn_level_displays():
|
||||
var skills = LevelManager.get_all_skills()
|
||||
for skill in skills:
|
||||
var newLevelDisplay = levelDisplayScene.instantiate()
|
||||
%LevelDisplayHolder.add_child(newLevelDisplay)
|
||||
newLevelDisplay.set_skill(skill)
|
||||
|
||||
8
UI/MenuBar/menu_bar.tres
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
[gd_resource type="StyleBoxFlat" format=3 uid="uid://n20pvqghdnrm"]
|
||||
|
||||
[resource]
|
||||
bg_color = Color(0.596078, 0.721569, 0.929412, 1)
|
||||
border_width_left = 6
|
||||
border_width_top = 6
|
||||
border_width_right = 6
|
||||
border_color = Color(0, 0, 0, 1)
|
||||
344
UI/MenuBar/menu_bar.tscn
Normal file
|
|
@ -0,0 +1,344 @@
|
|||
[gd_scene load_steps=19 format=3 uid="uid://cq8crk8ai8ggv"]
|
||||
|
||||
[ext_resource type="Script" path="res://UI/MenuBar/MenuBar.gd" id="1_0hriw"]
|
||||
[ext_resource type="StyleBox" uid="uid://n20pvqghdnrm" path="res://UI/MenuBar/menu_bar.tres" id="1_2f8ur"]
|
||||
[ext_resource type="PackedScene" uid="uid://b46o5ib4aqykn" path="res://UI/Credits/Credits.tscn" id="2_r1dt8"]
|
||||
[ext_resource type="Script" path="res://UI/MenuBar/Skills/SkillsMenu.gd" id="3_2bkul"]
|
||||
[ext_resource type="Texture2D" uid="uid://dh5lul83sgryb" path="res://UI/MenuBar/Icons/skillsIcon.png" id="4_gao24"]
|
||||
[ext_resource type="Script" path="res://UI/MenuBar/Inventory/InventoryMenu.gd" id="5_63hd5"]
|
||||
[ext_resource type="PackedScene" uid="uid://c3ku75p4ep3c7" path="res://UI/Inventory/InventoryDisplayer.tscn" id="5_fv4ti"]
|
||||
[ext_resource type="Texture2D" uid="uid://blt2vovlmqkqa" path="res://UI/MenuBar/Icons/inventoryIcon.png" id="6_amtyg"]
|
||||
[ext_resource type="Script" path="res://UI/MenuBar/Quests/QuestsMenu.gd" id="7_3mkgs"]
|
||||
[ext_resource type="Script" path="res://UI/MenuBar/OptionsMenu.gd" id="7_a03ci"]
|
||||
[ext_resource type="Texture2D" uid="uid://b85j0dy3qpfgx" path="res://UI/MenuBar/Icons/settingsIcon.png" id="8_0a6sq"]
|
||||
[ext_resource type="Texture2D" uid="uid://68goo85pfcw7" path="res://UI/MenuBar/Icons/questIcon.png" id="10_58o0j"]
|
||||
[ext_resource type="Texture2D" uid="uid://30e8agbu6s36" path="res://UI/MenuBar/Icons/minimizeIcon.png" id="12_mxc81"]
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_63cks"]
|
||||
content_margin_left = 10.0
|
||||
content_margin_top = 9.0
|
||||
content_margin_right = 10.0
|
||||
content_margin_bottom = 9.0
|
||||
bg_color = Color(0.592157, 0.2, 0.588235, 0.972549)
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_0fcxr"]
|
||||
content_margin_left = 10.0
|
||||
content_margin_top = 9.0
|
||||
content_margin_right = 10.0
|
||||
content_margin_bottom = 9.0
|
||||
bg_color = Color(0.780392, 0.137255, 0.337255, 1)
|
||||
|
||||
[sub_resource type="Theme" id="Theme_2mqxx"]
|
||||
TabBar/styles/tab_selected = SubResource("StyleBoxFlat_63cks")
|
||||
TabBar/styles/tab_unselected = SubResource("StyleBoxFlat_0fcxr")
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_bvuyr"]
|
||||
content_margin_left = 10.0
|
||||
content_margin_top = 9.0
|
||||
content_margin_right = 10.0
|
||||
content_margin_bottom = 9.0
|
||||
bg_color = Color(0.682353, 0.254902, 0.678431, 0.972549)
|
||||
|
||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_ldmfh"]
|
||||
|
||||
[node name="MenuBar" type="Control"]
|
||||
layout_mode = 3
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_left = 604.0
|
||||
offset_top = 238.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
script = ExtResource("1_0hriw")
|
||||
|
||||
[node name="CreditsPopup" parent="." instance=ExtResource("2_r1dt8")]
|
||||
unique_name_in_owner = true
|
||||
visible = false
|
||||
|
||||
[node name="VSplitContainer" type="VSplitContainer" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 12
|
||||
anchor_top = 1.0
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_top = -62.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 0
|
||||
dragger_visibility = 2
|
||||
|
||||
[node name="Menus" type="PanelContainer" parent="VSplitContainer"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="SkillsMenu" type="PanelContainer" parent="VSplitContainer/Menus"]
|
||||
visible = false
|
||||
custom_minimum_size = Vector2(0, 320)
|
||||
layout_mode = 2
|
||||
theme_override_styles/panel = ExtResource("1_2f8ur")
|
||||
script = ExtResource("3_2bkul")
|
||||
|
||||
[node name="VSplitContainer" type="VSplitContainer" parent="VSplitContainer/Menus/SkillsMenu"]
|
||||
layout_mode = 2
|
||||
dragger_visibility = 2
|
||||
|
||||
[node name="SkillsTitle" type="Label" parent="VSplitContainer/Menus/SkillsMenu/VSplitContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 0
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/font_size = 28
|
||||
text = "Skills"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 2
|
||||
|
||||
[node name="ScrollContainer" type="ScrollContainer" parent="VSplitContainer/Menus/SkillsMenu/VSplitContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="VSplitContainer/Menus/SkillsMenu/VSplitContainer/ScrollContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
theme_override_constants/margin_left = 5
|
||||
theme_override_constants/margin_top = -3
|
||||
theme_override_constants/margin_right = 10
|
||||
theme_override_constants/margin_bottom = 3
|
||||
|
||||
[node name="LevelDisplayHolder" type="VBoxContainer" parent="VSplitContainer/Menus/SkillsMenu/VSplitContainer/ScrollContainer/MarginContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
|
||||
[node name="InventoryMenu" type="PanelContainer" parent="VSplitContainer/Menus"]
|
||||
visible = false
|
||||
custom_minimum_size = Vector2(0, 320)
|
||||
layout_mode = 2
|
||||
theme_override_styles/panel = ExtResource("1_2f8ur")
|
||||
script = ExtResource("5_63hd5")
|
||||
|
||||
[node name="InventoryHolder" type="VBoxContainer" parent="VSplitContainer/Menus/InventoryMenu"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
|
||||
[node name="InventoryTitle" type="Label" parent="VSplitContainer/Menus/InventoryMenu/InventoryHolder"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 0
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/font_size = 28
|
||||
text = "Inventory"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 2
|
||||
|
||||
[node name="InventoryItems" parent="VSplitContainer/Menus/InventoryMenu/InventoryHolder" instance=ExtResource("5_fv4ti")]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
|
||||
[node name="KeyInventoryItems" parent="VSplitContainer/Menus/InventoryMenu/InventoryHolder" instance=ExtResource("5_fv4ti")]
|
||||
unique_name_in_owner = true
|
||||
visible = false
|
||||
layout_mode = 2
|
||||
|
||||
[node name="InventoryChooser" type="TabBar" parent="VSplitContainer/Menus/InventoryMenu/InventoryHolder"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 4
|
||||
size_flags_vertical = 8
|
||||
mouse_filter = 1
|
||||
tab_count = 2
|
||||
clip_tabs = false
|
||||
tab_0/title = "Standard"
|
||||
tab_1/title = "Key Items"
|
||||
|
||||
[node name="ClickMenu" type="PopupMenu" parent="VSplitContainer/Menus/InventoryMenu"]
|
||||
unique_name_in_owner = true
|
||||
size = Vector2i(28, 8)
|
||||
|
||||
[node name="QuestsMenu" type="PanelContainer" parent="VSplitContainer/Menus"]
|
||||
visible = false
|
||||
custom_minimum_size = Vector2(0, 320)
|
||||
layout_mode = 2
|
||||
theme_override_styles/panel = ExtResource("1_2f8ur")
|
||||
script = ExtResource("7_3mkgs")
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="VSplitContainer/Menus/QuestsMenu"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="Label" type="Label" parent="VSplitContainer/Menus/QuestsMenu/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/font_size = 28
|
||||
text = "Quests"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 2
|
||||
|
||||
[node name="ScrollContainer" type="ScrollContainer" parent="VSplitContainer/Menus/QuestsMenu/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
|
||||
[node name="QuestDisplays" type="VBoxContainer" parent="VSplitContainer/Menus/QuestsMenu/VBoxContainer/ScrollContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="VSplitContainer/Menus/QuestsMenu/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/margin_left = 16
|
||||
theme_override_constants/margin_top = 6
|
||||
theme_override_constants/margin_right = 16
|
||||
theme_override_constants/margin_bottom = 6
|
||||
|
||||
[node name="AchievementsButton" type="Button" parent="VSplitContainer/Menus/QuestsMenu/VBoxContainer/MarginContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 4
|
||||
theme_override_font_sizes/font_size = 23
|
||||
text = "Achievements"
|
||||
|
||||
[node name="OptionsMenu" type="PanelContainer" parent="VSplitContainer/Menus"]
|
||||
visible = false
|
||||
custom_minimum_size = Vector2(0, 320)
|
||||
layout_mode = 2
|
||||
theme_override_styles/panel = ExtResource("1_2f8ur")
|
||||
script = ExtResource("7_a03ci")
|
||||
|
||||
[node name="VSplitContainer2" type="VSplitContainer" parent="VSplitContainer/Menus/OptionsMenu"]
|
||||
layout_mode = 2
|
||||
collapsed = true
|
||||
dragger_visibility = 2
|
||||
|
||||
[node name="TitleZone" type="MarginContainer" parent="VSplitContainer/Menus/OptionsMenu/VSplitContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/margin_top = 2
|
||||
theme_override_constants/margin_bottom = 8
|
||||
|
||||
[node name="OptionsMenu" type="Label" parent="VSplitContainer/Menus/OptionsMenu/VSplitContainer2/TitleZone"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 0
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/font_size = 28
|
||||
text = "Options"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 2
|
||||
|
||||
[node name="OptionsZone" type="MarginContainer" parent="VSplitContainer/Menus/OptionsMenu/VSplitContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/margin_left = 12
|
||||
theme_override_constants/margin_right = 11
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="VSplitContainer/Menus/OptionsMenu/VSplitContainer2/OptionsZone"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/separation = 0
|
||||
|
||||
[node name="Label" type="Label" parent="VSplitContainer/Menus/OptionsMenu/VSplitContainer2/OptionsZone/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
text = "Total Volume"
|
||||
|
||||
[node name="TotalVolSlider" type="HSlider" parent="VSplitContainer/Menus/OptionsMenu/VSplitContainer2/OptionsZone/VBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
max_value = 1.0
|
||||
step = 0.1
|
||||
tick_count = 11
|
||||
ticks_on_borders = true
|
||||
|
||||
[node name="MarginContainer2" type="MarginContainer" parent="VSplitContainer/Menus/OptionsMenu/VSplitContainer2/OptionsZone/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/margin_top = 7
|
||||
|
||||
[node name="MusicVolumeLabel" type="Label" parent="VSplitContainer/Menus/OptionsMenu/VSplitContainer2/OptionsZone/VBoxContainer/MarginContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
text = "Music Volume"
|
||||
|
||||
[node name="MusicVolSlider" type="HSlider" parent="VSplitContainer/Menus/OptionsMenu/VSplitContainer2/OptionsZone/VBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
max_value = 1.0
|
||||
step = 0.1
|
||||
tick_count = 11
|
||||
ticks_on_borders = true
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="VSplitContainer/Menus/OptionsMenu/VSplitContainer2/OptionsZone/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/margin_top = 7
|
||||
|
||||
[node name="SFX Volume Slider" type="Label" parent="VSplitContainer/Menus/OptionsMenu/VSplitContainer2/OptionsZone/VBoxContainer/MarginContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
text = "SFX Volume"
|
||||
|
||||
[node name="SFXVolSlider" type="HSlider" parent="VSplitContainer/Menus/OptionsMenu/VSplitContainer2/OptionsZone/VBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
max_value = 1.0
|
||||
step = 0.1
|
||||
tick_count = 11
|
||||
ticks_on_borders = true
|
||||
|
||||
[node name="HBoxContainer2" type="HBoxContainer" parent="VSplitContainer/Menus/OptionsMenu/VSplitContainer2/OptionsZone/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="MessageOpen" type="Label" parent="VSplitContainer/Menus/OptionsMenu/VSplitContainer2/OptionsZone/VBoxContainer/HBoxContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
text = "Open Messages on Update
|
||||
"
|
||||
|
||||
[node name="messageCheck" type="CheckBox" parent="VSplitContainer/Menus/OptionsMenu/VSplitContainer2/OptionsZone/VBoxContainer/HBoxContainer2"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
button_pressed = true
|
||||
|
||||
[node name="MarginContainer3" type="MarginContainer" parent="VSplitContainer/Menus/OptionsMenu/VSplitContainer2/OptionsZone/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/margin_top = 7
|
||||
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="VSplitContainer/Menus/OptionsMenu/VSplitContainer2/OptionsZone/VBoxContainer/MarginContainer3"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="Lime mode label" type="Label" parent="VSplitContainer/Menus/OptionsMenu/VSplitContainer2/OptionsZone/VBoxContainer/MarginContainer3/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
text = "Enable Limes
|
||||
"
|
||||
|
||||
[node name="limeCheck" type="CheckBox" parent="VSplitContainer/Menus/OptionsMenu/VSplitContainer2/OptionsZone/VBoxContainer/MarginContainer3/HBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
|
||||
[node name="CreditsButton" type="Button" parent="VSplitContainer/Menus/OptionsMenu/VSplitContainer2/OptionsZone/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 6
|
||||
text = "Credits"
|
||||
|
||||
[node name="EscMenuButton" type="Button" parent="VSplitContainer/Menus/OptionsMenu/VSplitContainer2/OptionsZone/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 6
|
||||
text = "Assist and Quit Menus"
|
||||
|
||||
[node name="TabBar" type="TabBar" parent="VSplitContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 10
|
||||
theme = SubResource("Theme_2mqxx")
|
||||
theme_override_styles/tab_hovered = SubResource("StyleBoxFlat_bvuyr")
|
||||
theme_override_styles/tab_focus = SubResource("StyleBoxEmpty_ldmfh")
|
||||
tab_count = 5
|
||||
scrolling_enabled = false
|
||||
scroll_to_selected = false
|
||||
tab_0/title = ""
|
||||
tab_0/icon = ExtResource("4_gao24")
|
||||
tab_1/title = ""
|
||||
tab_1/icon = ExtResource("6_amtyg")
|
||||
tab_2/title = ""
|
||||
tab_2/icon = ExtResource("10_58o0j")
|
||||
tab_3/title = ""
|
||||
tab_3/icon = ExtResource("8_0a6sq")
|
||||
tab_4/title = ""
|
||||
tab_4/icon = ExtResource("12_mxc81")
|
||||
|
||||
[connection signal="tab_changed" from="VSplitContainer/Menus/InventoryMenu/InventoryHolder/InventoryChooser" to="VSplitContainer/Menus/InventoryMenu" method="_on_inventory_chooser_tab_changed"]
|
||||
[connection signal="id_pressed" from="VSplitContainer/Menus/InventoryMenu/ClickMenu" to="VSplitContainer/Menus/InventoryMenu" method="_on_click_menu_id_pressed"]
|
||||
[connection signal="pressed" from="VSplitContainer/Menus/QuestsMenu/VBoxContainer/MarginContainer/AchievementsButton" to="." method="_on_achievements_button_pressed"]
|
||||
[connection signal="pressed" from="VSplitContainer/Menus/OptionsMenu/VSplitContainer2/OptionsZone/VBoxContainer/HBoxContainer2/messageCheck" to="VSplitContainer/Menus/OptionsMenu" method="_on_message_check_pressed"]
|
||||
[connection signal="pressed" from="VSplitContainer/Menus/OptionsMenu/VSplitContainer2/OptionsZone/VBoxContainer/CreditsButton" to="." method="_on_credits_button_pressed"]
|
||||
[connection signal="pressed" from="VSplitContainer/Menus/OptionsMenu/VSplitContainer2/OptionsZone/VBoxContainer/EscMenuButton" to="." method="_on_esc_menu_button_pressed"]
|
||||
[connection signal="tab_clicked" from="VSplitContainer/TabBar" to="." method="_on_tab_bar_tab_clicked"]
|
||||