Corrected a bad push with the character creator and made it so you can save csv files to the user directory

This commit is contained in:
PersonGuyGit 2023-09-10 12:55:36 -06:00
parent 9570917cd0
commit 519da8b940
4 changed files with 724 additions and 38 deletions

View File

@ -1,13 +0,0 @@
[remap]
importer="csv_translation"
type="Translation"
valid=false
[deps]
source_file="res://data.csv"
[params]
compress=true
delimiter=0

View File

@ -86,41 +86,54 @@ onready var special8 = $"RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/V
onready var special9 = $"RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SpecialAbilitiesVBoxContainer/CenterContainer/GridContainer/SBOptionButton9" onready var special9 = $"RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SpecialAbilitiesVBoxContainer/CenterContainer/GridContainer/SBOptionButton9"
# Called when the node enters the scene tree for the first time.
func _ready():
pass # Replace with function body.
func _handle_user_input():
# Save the data to a CSV file. # Save the data to a CSV file.
var data = [CharacterName, Profession, Demeanor, Species, Culture, Faction, Description, HeightAndWeight, var rowData = [CharacterName, Profession, Demeanor, Species, Culture, Faction, Description, HeightAndWeight,
Backstory, Gender, Equipment, Charisma, Dialog, Constitution, Agility, SelfDisipline, Memory, Reasoning, Backstory, Gender, Equipment, Charisma, Dialog, Constitution, Agility, SelfDisipline, Memory, Reasoning,
Strength, Quickness, Presence, Intuition, Empathy, Appearence, skill1, skill2, skill3, skill4, skill5, Strength, Quickness, Presence, Intuition, Empathy, Appearence, skill1, skill2, skill3, skill4, skill5,
skill6, skill7, skill8, skill9, skill10, special1, special2, special3, special4, special5, special6, skill6, skill7, skill8, skill9, skill10, special1, special2, special3, special4, special5, special6,
special7, special8, special9] special7, special8, special9]
var header = ["CharacterName", "Profession", "Demeanor", "Species", "Culture", "Faction", "Description", "HeightAndWeight", var headerData = ["CharacterName", "Profession", "Demeanor", "Species", "Culture", "Faction", "Description", "HeightAndWeight",
"Backstory", "Gender", "Equipment", "Charisma", "Dialog", "Constitution", "Agility", "SelfDisipline", "Memory", "Backstory", "Gender", "Equipment", "Charisma", "Dialog", "Constitution", "Agility", "SelfDisipline", "Memory",
"Reasoning","Strength", "Quickness", "Presence", "Intuition", "Empathy", "Appearance", "skill1", "skill2", "skill3", "skill4", "Reasoning","Strength", "Quickness", "Presence", "Intuition", "Empathy", "Appearance", "skill1", "skill2", "skill3", "skill4",
"skill5", "skill6", "skill7", "skill8", "skill9", "skill10", "special1", "special2", "special3", "special4", "special5", "special6", "skill5", "skill6", "skill7", "skill8", "skill9", "skill10", "special1", "special2", "special3", "special4", "special5", "special6",
"special7", "special8", "special9"] "special7", "special8", "special9"]
# Called when the node enters the scene tree for the first time.
func _ready():
pass # Replace with function body.
func save_data_to_csv(data: Array, file_path: String):
var file = File.new() var file = File.new()
if file.open(file_path, File.WRITE) == OK:
for row in data:
file.store_string(format_row(row))
file.close()
print("Data saved to", file_path)
else:
print("Failed to open", file_path, "for writing.")
# Open the file for writing. func format_row(row_data: Array) -> String:
file.open(filename, File.WRITE) # Convert the array of data to a comma-separated string
var formatted_row = ""
# Write the header row to the file. for i in range(row_data.size()):
file.store_string(','.join(header)) formatted_row += str(row_data[i])
if i < row_data.size() - 1:
# Write the data rows to the file. formatted_row += ","
for row in data: formatted_row += "\n"
file.store_string(','.join(row)) return formatted_row
# Close the file.
file.close()
# Example usage:
var data_to_save = [
["Name", "Age", "Score"],
["John", 25, 85],
["Alice", 30, 92],
["Bob", 28, 78],
]
var file_path = "user://data.csv" # Use 'user://' to save in the user data directory
func _on_Button_pressed(): func _on_Button_pressed():
_handle_user_input() var fileName = "character_data.csv"
save_data_to_csv(data_to_save, file_path)

View File

@ -0,0 +1,686 @@
[gd_scene load_steps=4 format=2]
[ext_resource path="res://screens/wizards/character_creation/skills_option_button.gd" type="Script" id=1]
[ext_resource path="res://screens/wizards/character_creation/specials_option_button.gd" type="Script" id=2]
[ext_resource path="res://screens/wizards/character_creation/character_creation_wizard.gd" type="Script" id=3]
[node name="Control" type="Control"]
anchor_right = 1.0
anchor_bottom = 1.0
script = ExtResource( 3 )
[node name="ColorRect" type="ColorRect" parent="."]
anchor_right = 1.0
anchor_bottom = 1.0
color = Color( 0.537255, 0.537255, 0.537255, 1 )
[node name="RootVBoxContainer" type="VBoxContainer" parent="."]
margin_right = 397.0
margin_bottom = 600.0
custom_constants/separation = 20
[node name="Label" type="Label" parent="RootVBoxContainer"]
margin_right = 628.0
margin_bottom = 14.0
text = "Character Creator Wizard"
align = 1
valign = 1
[node name="TopHBoxContainer" type="HBoxContainer" parent="RootVBoxContainer"]
margin_top = 34.0
margin_right = 628.0
margin_bottom = 418.0
custom_constants/separation = 60
[node name="LeftVBoxContainer" type="VBoxContainer" parent="RootVBoxContainer/TopHBoxContainer"]
margin_right = 168.0
margin_bottom = 384.0
[node name="VBoxContainer" type="VBoxContainer" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer"]
margin_right = 168.0
margin_bottom = 384.0
custom_constants/separation = 10
[node name="Label" type="Label" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer"]
margin_right = 168.0
margin_bottom = 14.0
text = "Character Info:"
align = 1
valign = 1
uppercase = true
[node name="CenterContainer" type="CenterContainer" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer"]
margin_top = 24.0
margin_right = 168.0
margin_bottom = 384.0
[node name="GridContainer" type="GridContainer" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer"]
margin_right = 168.0
margin_bottom = 360.0
columns = 2
[node name="CharacterNameLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_top = 5.0
margin_right = 106.0
margin_bottom = 19.0
text = "Character Name:"
[node name="CharacterNameLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_left = 110.0
margin_right = 168.0
margin_bottom = 24.0
[node name="ProfessionLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_top = 33.0
margin_right = 106.0
margin_bottom = 47.0
text = "Profession:"
[node name="ProfessionLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_left = 110.0
margin_top = 28.0
margin_right = 168.0
margin_bottom = 52.0
[node name="DemeanorLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_top = 61.0
margin_right = 106.0
margin_bottom = 75.0
text = "Demeanor:"
[node name="DemeanorLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_left = 110.0
margin_top = 56.0
margin_right = 168.0
margin_bottom = 80.0
[node name="SpeciesLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_top = 89.0
margin_right = 106.0
margin_bottom = 103.0
text = "Species:"
[node name="SpeciesLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_left = 110.0
margin_top = 84.0
margin_right = 168.0
margin_bottom = 108.0
[node name="CultureLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_top = 117.0
margin_right = 106.0
margin_bottom = 131.0
text = "Culture:"
[node name="CultureLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_left = 110.0
margin_top = 112.0
margin_right = 168.0
margin_bottom = 136.0
[node name="FactionLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_top = 145.0
margin_right = 106.0
margin_bottom = 159.0
text = "Faction:"
[node name="FactionLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_left = 110.0
margin_top = 140.0
margin_right = 168.0
margin_bottom = 164.0
[node name="DescriptionLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_top = 173.0
margin_right = 106.0
margin_bottom = 187.0
text = "Description:"
[node name="DescriptionLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_left = 110.0
margin_top = 168.0
margin_right = 168.0
margin_bottom = 192.0
[node name="HWLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_top = 201.0
margin_right = 106.0
margin_bottom = 215.0
text = "Height / Weight:"
[node name="HWLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_left = 110.0
margin_top = 196.0
margin_right = 168.0
margin_bottom = 220.0
[node name="BackstoryLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_top = 229.0
margin_right = 106.0
margin_bottom = 243.0
text = "Backstory:"
[node name="BackstoryLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_left = 110.0
margin_top = 224.0
margin_right = 168.0
margin_bottom = 248.0
[node name="GenderLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_top = 257.0
margin_right = 106.0
margin_bottom = 271.0
text = "Gender:"
[node name="GenderLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_left = 110.0
margin_top = 252.0
margin_right = 168.0
margin_bottom = 276.0
[node name="EquipmentLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_top = 285.0
margin_right = 106.0
margin_bottom = 299.0
text = "Equipment:"
[node name="EquipmentLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_left = 110.0
margin_top = 280.0
margin_right = 168.0
margin_bottom = 304.0
[node name="CharismaLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_top = 313.0
margin_right = 106.0
margin_bottom = 327.0
text = "Charisma:"
[node name="CharismaLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_left = 110.0
margin_top = 308.0
margin_right = 168.0
margin_bottom = 332.0
[node name="DialogueLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_top = 341.0
margin_right = 106.0
margin_bottom = 355.0
text = "Dialogue:"
[node name="DialogueLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/LeftVBoxContainer/VBoxContainer/CenterContainer/GridContainer"]
margin_left = 110.0
margin_top = 336.0
margin_right = 168.0
margin_bottom = 360.0
[node name="RightVBoxContainer" type="VBoxContainer" parent="RootVBoxContainer/TopHBoxContainer"]
margin_left = 228.0
margin_right = 628.0
margin_bottom = 384.0
[node name="VBoxContainer" type="VBoxContainer" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer"]
margin_right = 400.0
margin_bottom = 368.0
custom_constants/separation = 20
[node name="HBoxContainer" type="HBoxContainer" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer"]
margin_right = 400.0
margin_bottom = 328.0
custom_constants/separation = 20
[node name="AttributesVboxContainer" type="VBoxContainer" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer"]
margin_right = 157.0
margin_bottom = 328.0
custom_constants/separation = 10
[node name="Label" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer"]
margin_right = 157.0
margin_bottom = 14.0
text = "Attributes:"
align = 1
valign = 1
uppercase = true
[node name="CenterContainer" type="CenterContainer" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer"]
margin_top = 24.0
margin_right = 157.0
margin_bottom = 328.0
[node name="GridContainer" type="GridContainer" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer/CenterContainer"]
margin_right = 157.0
margin_bottom = 304.0
columns = 2
[node name="ConLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer/CenterContainer/GridContainer"]
margin_top = 5.0
margin_right = 95.0
margin_bottom = 19.0
text = "Constitution:"
[node name="ConLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer/CenterContainer/GridContainer"]
margin_left = 99.0
margin_right = 157.0
margin_bottom = 24.0
[node name="AgilityLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer/CenterContainer/GridContainer"]
margin_top = 33.0
margin_right = 95.0
margin_bottom = 47.0
text = "Agility:"
[node name="AgilityLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer/CenterContainer/GridContainer"]
margin_left = 99.0
margin_top = 28.0
margin_right = 157.0
margin_bottom = 52.0
[node name="SelfDisciplineLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer/CenterContainer/GridContainer"]
margin_top = 61.0
margin_right = 95.0
margin_bottom = 75.0
text = "Self Discipline:"
[node name="SelfDisciplineLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer/CenterContainer/GridContainer"]
margin_left = 99.0
margin_top = 56.0
margin_right = 157.0
margin_bottom = 80.0
[node name="MemoryLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer/CenterContainer/GridContainer"]
margin_top = 89.0
margin_right = 95.0
margin_bottom = 103.0
text = "Memory:"
[node name="MemoryLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer/CenterContainer/GridContainer"]
margin_left = 99.0
margin_top = 84.0
margin_right = 157.0
margin_bottom = 108.0
[node name="ReasoningLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer/CenterContainer/GridContainer"]
margin_top = 117.0
margin_right = 95.0
margin_bottom = 131.0
text = "Reasoning:"
[node name="ReasoningLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer/CenterContainer/GridContainer"]
margin_left = 99.0
margin_top = 112.0
margin_right = 157.0
margin_bottom = 136.0
[node name="StrengthLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer/CenterContainer/GridContainer"]
margin_top = 145.0
margin_right = 95.0
margin_bottom = 159.0
text = "Strength:"
[node name="StrengthLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer/CenterContainer/GridContainer"]
margin_left = 99.0
margin_top = 140.0
margin_right = 157.0
margin_bottom = 164.0
[node name="QuicknessLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer/CenterContainer/GridContainer"]
margin_top = 173.0
margin_right = 95.0
margin_bottom = 187.0
text = "Quickness:"
[node name="QuicknessLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer/CenterContainer/GridContainer"]
margin_left = 99.0
margin_top = 168.0
margin_right = 157.0
margin_bottom = 192.0
[node name="PresenceLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer/CenterContainer/GridContainer"]
margin_top = 201.0
margin_right = 95.0
margin_bottom = 215.0
text = "Presence:"
[node name="PresenceLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer/CenterContainer/GridContainer"]
margin_left = 99.0
margin_top = 196.0
margin_right = 157.0
margin_bottom = 220.0
[node name="IntuitionLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer/CenterContainer/GridContainer"]
margin_top = 229.0
margin_right = 95.0
margin_bottom = 243.0
text = "Intuition:"
[node name="IntuitionLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer/CenterContainer/GridContainer"]
margin_left = 99.0
margin_top = 224.0
margin_right = 157.0
margin_bottom = 248.0
[node name="EmpathyLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer/CenterContainer/GridContainer"]
margin_top = 257.0
margin_right = 95.0
margin_bottom = 271.0
text = "Empathy:"
[node name="EmpathyLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer/CenterContainer/GridContainer"]
margin_left = 99.0
margin_top = 252.0
margin_right = 157.0
margin_bottom = 276.0
[node name="AppearenceLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer/CenterContainer/GridContainer"]
margin_top = 285.0
margin_right = 95.0
margin_bottom = 299.0
text = "Appearence:"
[node name="AppearenceLineEdit" type="LineEdit" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/AttributesVboxContainer/CenterContainer/GridContainer"]
margin_left = 99.0
margin_top = 280.0
margin_right = 157.0
margin_bottom = 304.0
[node name="SkillsVboxContainer" type="VBoxContainer" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer"]
margin_left = 177.0
margin_right = 260.0
margin_bottom = 328.0
custom_constants/separation = 10
[node name="Label" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SkillsVboxContainer"]
margin_right = 83.0
margin_bottom = 14.0
text = "Skills:"
align = 1
valign = 1
uppercase = true
[node name="CenterContainer" type="CenterContainer" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SkillsVboxContainer"]
margin_top = 24.0
margin_right = 83.0
margin_bottom = 260.0
[node name="GridContainer" type="GridContainer" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SkillsVboxContainer/CenterContainer"]
margin_right = 83.0
margin_bottom = 236.0
columns = 2
[node name="SkillLabel" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SkillsVboxContainer/CenterContainer/GridContainer"]
margin_top = 3.0
margin_right = 50.0
margin_bottom = 17.0
text = "Skill 1:"
[node name="SkillOptionButton" type="OptionButton" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SkillsVboxContainer/CenterContainer/GridContainer"]
margin_left = 54.0
margin_right = 83.0
margin_bottom = 20.0
script = ExtResource( 1 )
[node name="SkillLabel2" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SkillsVboxContainer/CenterContainer/GridContainer"]
margin_top = 27.0
margin_right = 50.0
margin_bottom = 41.0
text = "Skill 2:"
[node name="SkillOptionButton2" type="OptionButton" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SkillsVboxContainer/CenterContainer/GridContainer"]
margin_left = 54.0
margin_top = 24.0
margin_right = 83.0
margin_bottom = 44.0
script = ExtResource( 1 )
[node name="SkillLabel3" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SkillsVboxContainer/CenterContainer/GridContainer"]
margin_top = 51.0
margin_right = 50.0
margin_bottom = 65.0
text = "Skill 3:"
[node name="SkillOptionButton3" type="OptionButton" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SkillsVboxContainer/CenterContainer/GridContainer"]
margin_left = 54.0
margin_top = 48.0
margin_right = 83.0
margin_bottom = 68.0
script = ExtResource( 1 )
[node name="SkillLabel4" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SkillsVboxContainer/CenterContainer/GridContainer"]
margin_top = 75.0
margin_right = 50.0
margin_bottom = 89.0
text = "Skill 4:"
[node name="SkillOptionButton4" type="OptionButton" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SkillsVboxContainer/CenterContainer/GridContainer"]
margin_left = 54.0
margin_top = 72.0
margin_right = 83.0
margin_bottom = 92.0
script = ExtResource( 1 )
[node name="SkillLabel5" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SkillsVboxContainer/CenterContainer/GridContainer"]
margin_top = 99.0
margin_right = 50.0
margin_bottom = 113.0
text = "Skill 5:"
[node name="SkillOptionButton5" type="OptionButton" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SkillsVboxContainer/CenterContainer/GridContainer"]
margin_left = 54.0
margin_top = 96.0
margin_right = 83.0
margin_bottom = 116.0
script = ExtResource( 1 )
[node name="SkillLabel6" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SkillsVboxContainer/CenterContainer/GridContainer"]
margin_top = 123.0
margin_right = 50.0
margin_bottom = 137.0
text = "Skill 6:"
[node name="SkillOptionButton6" type="OptionButton" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SkillsVboxContainer/CenterContainer/GridContainer"]
margin_left = 54.0
margin_top = 120.0
margin_right = 83.0
margin_bottom = 140.0
script = ExtResource( 1 )
[node name="SkillLabel7" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SkillsVboxContainer/CenterContainer/GridContainer"]
margin_top = 147.0
margin_right = 50.0
margin_bottom = 161.0
text = "Skill 7:"
[node name="SkillOptionButton7" type="OptionButton" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SkillsVboxContainer/CenterContainer/GridContainer"]
margin_left = 54.0
margin_top = 144.0
margin_right = 83.0
margin_bottom = 164.0
script = ExtResource( 1 )
[node name="SkillLabel9" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SkillsVboxContainer/CenterContainer/GridContainer"]
margin_top = 171.0
margin_right = 50.0
margin_bottom = 185.0
text = "Skill 9:"
[node name="SkillOptionButton8" type="OptionButton" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SkillsVboxContainer/CenterContainer/GridContainer"]
margin_left = 54.0
margin_top = 168.0
margin_right = 83.0
margin_bottom = 188.0
script = ExtResource( 1 )
[node name="SkillLabel8" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SkillsVboxContainer/CenterContainer/GridContainer"]
margin_top = 195.0
margin_right = 50.0
margin_bottom = 209.0
text = "Skill 8:"
[node name="SkillOptionButton9" type="OptionButton" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SkillsVboxContainer/CenterContainer/GridContainer"]
margin_left = 54.0
margin_top = 192.0
margin_right = 83.0
margin_bottom = 212.0
script = ExtResource( 1 )
[node name="SkillLabel10" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SkillsVboxContainer/CenterContainer/GridContainer"]
margin_top = 219.0
margin_right = 50.0
margin_bottom = 233.0
text = "Skill 10:"
[node name="SkillOptionButton10" type="OptionButton" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SkillsVboxContainer/CenterContainer/GridContainer"]
margin_left = 54.0
margin_top = 216.0
margin_right = 83.0
margin_bottom = 236.0
script = ExtResource( 1 )
[node name="SpecialAbilitiesVBoxContainer" type="VBoxContainer" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer"]
margin_left = 280.0
margin_right = 400.0
margin_bottom = 328.0
custom_constants/separation = 10
[node name="Label" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SpecialAbilitiesVBoxContainer"]
margin_right = 120.0
margin_bottom = 14.0
text = "Special Abilities:"
align = 1
valign = 1
uppercase = true
[node name="CenterContainer" type="CenterContainer" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SpecialAbilitiesVBoxContainer"]
margin_top = 24.0
margin_right = 120.0
margin_bottom = 236.0
[node name="GridContainer" type="GridContainer" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SpecialAbilitiesVBoxContainer/CenterContainer"]
margin_left = 23.0
margin_right = 96.0
margin_bottom = 212.0
columns = 2
[node name="Label" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SpecialAbilitiesVBoxContainer/CenterContainer/GridContainer"]
margin_top = 3.0
margin_right = 40.0
margin_bottom = 17.0
text = "Slot 1:"
[node name="SBOptionButton" type="OptionButton" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SpecialAbilitiesVBoxContainer/CenterContainer/GridContainer"]
margin_left = 44.0
margin_right = 73.0
margin_bottom = 20.0
script = ExtResource( 2 )
[node name="Label2" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SpecialAbilitiesVBoxContainer/CenterContainer/GridContainer"]
margin_top = 27.0
margin_right = 40.0
margin_bottom = 41.0
text = "Slot 2:"
[node name="SBOptionButton2" type="OptionButton" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SpecialAbilitiesVBoxContainer/CenterContainer/GridContainer"]
margin_left = 44.0
margin_top = 24.0
margin_right = 73.0
margin_bottom = 44.0
script = ExtResource( 2 )
[node name="Label3" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SpecialAbilitiesVBoxContainer/CenterContainer/GridContainer"]
margin_top = 51.0
margin_right = 40.0
margin_bottom = 65.0
text = "Slot 3:"
[node name="SBOptionButton3" type="OptionButton" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SpecialAbilitiesVBoxContainer/CenterContainer/GridContainer"]
margin_left = 44.0
margin_top = 48.0
margin_right = 73.0
margin_bottom = 68.0
script = ExtResource( 2 )
[node name="Label4" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SpecialAbilitiesVBoxContainer/CenterContainer/GridContainer"]
margin_top = 75.0
margin_right = 40.0
margin_bottom = 89.0
text = "Slot 4:"
[node name="SBOptionButton4" type="OptionButton" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SpecialAbilitiesVBoxContainer/CenterContainer/GridContainer"]
margin_left = 44.0
margin_top = 72.0
margin_right = 73.0
margin_bottom = 92.0
script = ExtResource( 2 )
[node name="Label5" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SpecialAbilitiesVBoxContainer/CenterContainer/GridContainer"]
margin_top = 99.0
margin_right = 40.0
margin_bottom = 113.0
text = "Slot 5:"
[node name="SBOptionButton5" type="OptionButton" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SpecialAbilitiesVBoxContainer/CenterContainer/GridContainer"]
margin_left = 44.0
margin_top = 96.0
margin_right = 73.0
margin_bottom = 116.0
script = ExtResource( 2 )
[node name="Label6" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SpecialAbilitiesVBoxContainer/CenterContainer/GridContainer"]
margin_top = 123.0
margin_right = 40.0
margin_bottom = 137.0
text = "Slot 6:"
[node name="SBOptionButton6" type="OptionButton" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SpecialAbilitiesVBoxContainer/CenterContainer/GridContainer"]
margin_left = 44.0
margin_top = 120.0
margin_right = 73.0
margin_bottom = 140.0
script = ExtResource( 2 )
[node name="Label7" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SpecialAbilitiesVBoxContainer/CenterContainer/GridContainer"]
margin_top = 147.0
margin_right = 40.0
margin_bottom = 161.0
text = "Slot 7:"
[node name="SBOptionButton7" type="OptionButton" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SpecialAbilitiesVBoxContainer/CenterContainer/GridContainer"]
margin_left = 44.0
margin_top = 144.0
margin_right = 73.0
margin_bottom = 164.0
script = ExtResource( 2 )
[node name="Label8" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SpecialAbilitiesVBoxContainer/CenterContainer/GridContainer"]
margin_top = 171.0
margin_right = 40.0
margin_bottom = 185.0
text = "Slot 8:"
[node name="SBOptionButton8" type="OptionButton" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SpecialAbilitiesVBoxContainer/CenterContainer/GridContainer"]
margin_left = 44.0
margin_top = 168.0
margin_right = 73.0
margin_bottom = 188.0
script = ExtResource( 2 )
[node name="Label9" type="Label" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SpecialAbilitiesVBoxContainer/CenterContainer/GridContainer"]
margin_top = 195.0
margin_right = 40.0
margin_bottom = 209.0
text = "Slot 9:"
[node name="SBOptionButton9" type="OptionButton" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/HBoxContainer/SpecialAbilitiesVBoxContainer/CenterContainer/GridContainer"]
margin_left = 44.0
margin_top = 192.0
margin_right = 73.0
margin_bottom = 212.0
script = ExtResource( 2 )
[node name="Button" type="Button" parent="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer"]
margin_top = 348.0
margin_right = 400.0
margin_bottom = 368.0
text = "Export Character To Module"
[connection signal="pressed" from="RootVBoxContainer/TopHBoxContainer/RightVBoxContainer/VBoxContainer/Button" to="." method="_on_Button_pressed"]