Adds some commented out ideas.

This commit is contained in:
2023-02-26 00:04:11 -08:00
parent 043c7bac7c
commit e6c22cd3c9

View File

@@ -278,29 +278,29 @@ Wend
Let choice = 0 Let choice = 0
Do Do
Cls Cls
Print "╔══════════════════════════════════════════════════════════════════════════════╗" Print "ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»"
Print " What are you going to do? " Print "º What are you going to do? º"
Print " 1 = Character Generator " Print "º 1 = Character Generator º"
Print " 2 = Character Generator for Dummies " Print "º 2 = Character Generator for Dummies º"
Print " 3 = Combat Computer " Print "º 3 = Combat Computer º"
Print " 4 = Dice Roller " Print "º 4 = Dice Roller º"
Print " 5 = Random Character Generator " Print "º 5 = Random Character Generator º"
Print " 6 = " Print "º 6 = º"
Print " 7 = Vehicle Generator " Print "º 7 = Vehicle Generator º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " 0 = End " Print "º 0 = End º"
Print " " Print "º º"
Print "╚══════════════════════════════════════════════════════════════════════════════╝" Print "ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ"
choice = GetChoice(0, 7) choice = GetChoice(0, 7)
Select Case choice Select Case choice
Case 1 Case 1
@@ -319,29 +319,29 @@ Do
Loop Until choice = 0 Loop Until choice = 0
Sub BlankScreen Sub BlankScreen
Print "╔══════════════════════════════════════════════════════════════════════════════╗" Print "ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print "╚══════════════════════════════════════════════════════════════════════════════╝" Print "ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ"
End Sub End Sub
Function GetChoice (min As Integer, max As Integer) Function GetChoice (min As Integer, max As Integer)
@@ -358,7 +358,7 @@ End Function
Sub PrintMenu (items() As String, num_items As Integer) Sub PrintMenu (items() As String, num_items As Integer)
' TODO: allow opting out of the random item. ' TODO: allow opting out of the random item.
' TODO: allow printing inside of a box 1 = item . ' TODO: allow printing inside of a box º 1 = item º.
index_length = Len(Str$(num_items)) index_length = Len(Str$(num_items))
max_item_length = Len("Random") max_item_length = Len("Random")
For i = 1 To num_items For i = 1 To num_items
@@ -880,13 +880,42 @@ Sub CharacterGenerator ()
DisciplinePoints = DisciplinePoints - 1 DisciplinePoints = DisciplinePoints - 1
Wend Wend
Const All_Attributes_Count = 3 ' This would work, but I want a Print... function to print something like a sparse array to hide the already selected option.
Dim All_Attributes(1 To All_Attributes_Count) As String ' It seems like a lot of work to support other sets of attributes and the code is only reused once for abilities.
All_Attributes(1) = "Physical" 'Const All_Attribute_Groups_Count = 3
All_Attributes(2) = "Social" 'Dim All_Attribute_Groups(1 To All_Attribute_Groups_Count) As String
All_Attributes(3) = "Mental" 'Const ATTRIBUTE_GROUP_PHYSICAL = 1
'Const ATTRIBUTE_GROUP_SOCIAL = 2
'Const ATTRIBUTE_GROUP_MENTAL = 3
'All_Attribute_Groups(ATTRIBUTE_GROUP_PHYSICAL) = "Physical"
'All_Attribute_Groups(ATTRIBUTE_GROUP_SOCIAL) = "Social"
'All_Attribute_Groups(ATTRIBUTE_GROUP_MENTAL) = "Mental"
'Const ATTRIBUTE_STRENGTH = 1
'Const ATTRIBUTE_DEXTERITY = 2
'Const ATTRIBUTE_STAMINA = 3
'Const ATTRIBUTE_APPEARANCE = 1
'Const ATTRIBUTE_CHARISMA = 2
'Const ATTRIBUTE_MANIPULATION = 3
'Const ATTRIBUTE_INTELLIGENCE = 1
'Const ATTRIBUTE_PERCEPTION = 2
'Const ATTRIBUTE_WITS = 3
'Dim PrimaryAttributeGroup As Integer
'Do
' Cls
' For index = 1 To All_Attribute_Groups_Count
' Print Str$(index) + " = " + All_Attribute_Groups(index) + " ";
' Next
' Print "0 = Random"
' Input "Choose your primary attribute?", PrimaryAttribute
' If PrimaryAttribute = 0 Then PrimaryAttribute = GetRandomInt(1, All_Attribute_Groups_Count)
'Loop While PrimaryAttribute > All_Attribute_Groups_Count And PrimaryAttribute < 1
'SetAttribute(ch, group, attr, value)
' TODO: Find a more general form for this that stores the chosen attributes in an array ' TODO: Find a more general form for this that stores the chosen attributes in an array
' Most of the way this works just pisses me off. The second do loop is the worst part. I want it to be 1 = ..., 2 = ..., 0 = Random
' If I can't have that then maybe at least something with less code or less reliance on there being 3 attribute groups.
Dim PrimaryAttribute As Integer Dim PrimaryAttribute As Integer
Do Do
Cls Cls
@@ -971,6 +1000,22 @@ Sub CharacterGenerator ()
PhysicalPoints = PhysicalPoints - 1 PhysicalPoints = PhysicalPoints - 1
Loop While PhysicalPoints > 0 Loop While PhysicalPoints > 0
' Something like this might work better
'attr_group_index = 0 ' for 1 to all_attribute_groups_count
'Points = 0
'Do
' Cls
' attr_count = GetAttributeCountInAttributeGroup(attr_group_index)
' Dim attrs(attr_count) As String
' Call FillAttributesFromGroup(attrs, attr_group_index)
' Print "Which attribute would you like to spend 1 of your " + Str$(Points) + " points on?"
' PrintMenuWithValues(attrs, values, states, showRandom)
' attr = GetChoice(states, showRandom)
' if (attr = 0 then attr = GetRandomIndex(1, attr_count, states)
' SetAttribute(ch, attr_group_index, attr, GetAttribute(ch, attr_group_index, attr) + 1)
' points = points - 1
'Loop While Points > 0
' Spend social points ' Spend social points
Do Do
Cls Cls
@@ -1145,18 +1190,18 @@ Sub CharacterGenerator ()
'Which virtue do you wish to add one of your 7 points to? 'Which virtue do you wish to add one of your 7 points to?
'... 0123456789 '... 0123456789
'160 áíóúñѪº¿⌐ '160  ¡¢£¤¥¦§¨©
'170 ¬½¼¡«»░▒▓│ '170 ª«¬­®¯°±²³
'180 ┤╡╢╖╕╣║╗╝╜ '180 ´µ¶·¸¹º»¼½
'190 ╛┐└┴┬├─┼╞╟ '190 ¾¿ÀÁÂÃÄÅÆÇ
'200 ╚╔╩╦╠═╬╧╨╤ '200 ÈÉÊËÌÍÎÏÐÑ
'210 ╥╙╘╒╓╫╪┘┌█ '210 ÒÓÔÕÖרÙÚÛ
'220 ▄▌▐▀αßΓπΣσσ '220 ÜÝÞßàáâãäåå
'230 µτΦΘΩδ2∞φε∩ '230 æçèéêë2ìíîï
' Where do you want the file to be saved? (default is C:\Windows\Desktop)? ' Where do you want the file to be saved? (default is C:\Windows\Desktop)?
' What do you want the file to be called? (default is CHAR1)? ' What do you want the file to be called? (default is CHAR1)?
' enquote forms s/^([╔║╚═╠].*[╗║╝╣])$/print "$1"/g ' enquote forms s/^([ɺÈÍÌ].*[»º¼¹])$/print "$1"/g
' TODO: figure out how to actually calculate generation; seems like a combination of 13 or 15 depending on clan and your generation background count ' TODO: figure out how to actually calculate generation; seems like a combination of 13 or 15 depending on clan and your generation background count
generation$ = "13" generation$ = "13"
@@ -1188,46 +1233,46 @@ Sub CharacterGenerator ()
Next Next
Cls Cls
Print "╔══════════════════════════════════════╦═══════════════════════════════════════╗" Print "ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»"
Print " Name: " + MakeFitL$(ch.name, 30, " ") + " Sex: " + MakeFitL$(sex_string$, 10, " ") + " Generation: " + MakeFitL$(generation$, 9, " ") + " " Print "º Name: " + MakeFitL$(ch.name, 30, " ") + " º Sex: " + MakeFitL$(sex_string$, 10, " ") + " Generation: " + MakeFitL$(generation$, 9, " ") + " º"
Print " Clan: " + MakeFitL$(clan_string$, 30, " ") + " Age: " + MakeFitL$(age$, 32, " ") + " " Print "º Clan: " + MakeFitL$(clan_string$, 30, " ") + " º Age: " + MakeFitL$(age$, 32, " ") + " º"
Print "╠══════════════════════════════════════╣ Player: " + MakeFitL$(player$, 29, " ") + " " Print "ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹ Player: " + MakeFitL$(player$, 29, " ") + " º"
Print " Attributes Chronicle: " + MakeFitL$(chronicle$, 26, " ") + " " Print "º Attributes º Chronicle: " + MakeFitL$(chronicle$, 26, " ") + " º"
Print " Physical Social Mental Haven: " + MakeFitL$(haven$, 30, " ") + " " Print "º Physical Social Mental º Haven: " + MakeFitL$(haven$, 30, " ") + " º"
Print " Str. " + MakeFitL$(Str$(ch.attr_strength), 7, " ") + " App. " + MakeFitL$(Str$(ch.attr_appearance), 7, " ") + " Int. " + MakeFitL$(Str$(ch.attr_intelligence), 5, " ") + " Concept: " + MakeFitL$(concept$, 28, " ") + " " Print "º Str. " + MakeFitL$(Str$(ch.attr_strength), 7, " ") + " App. " + MakeFitL$(Str$(ch.attr_appearance), 7, " ") + " Int. " + MakeFitL$(Str$(ch.attr_intelligence), 5, " ") + " º Concept: " + MakeFitL$(concept$, 28, " ") + " º"
Print " Dex. " + MakeFitL$(Str$(ch.attr_dexterity), 7, " ") + " Cha. " + MakeFitL$(Str$(ch.attr_charisma), 7, " ") + " Per. " + MakeFitL$(Str$(ch.attr_perception), 5, " ") + " ╠═══════════════════════════════════════╣" Print "º Dex. " + MakeFitL$(Str$(ch.attr_dexterity), 7, " ") + " Cha. " + MakeFitL$(Str$(ch.attr_charisma), 7, " ") + " Per. " + MakeFitL$(Str$(ch.attr_perception), 5, " ") + " ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹"
Print " Sta. " + MakeFitL$(Str$(ch.attr_stamina), 7, " ") + " Man. " + MakeFitL$(Str$(ch.attr_manipulation), 7, " ") + " Wit. " + MakeFitL$(Str$(ch.attr_wits), 5, " ") + " Derangements: " Print "º Sta. " + MakeFitL$(Str$(ch.attr_stamina), 7, " ") + " Man. " + MakeFitL$(Str$(ch.attr_manipulation), 7, " ") + " Wit. " + MakeFitL$(Str$(ch.attr_wits), 5, " ") + " º Derangements: º"
Print "╠══════════════════════════════════════╣ Regression,__________________________ " Print "ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹ Regression,__________________________ º"
Print " Disciplines: _____________________________________ " Print "º Disciplines: º _____________________________________ º"
Print " " + MakeFitL$(discipline_strings(0), 36, " ") + " _____________________________________ " Print "º " + MakeFitL$(discipline_strings(0), 36, " ") + " º _____________________________________ º"
Print " " + MakeFitL$(discipline_strings(1), 36, " ") + " _____________________________________ " Print "º " + MakeFitL$(discipline_strings(1), 36, " ") + " º _____________________________________ º"
Print " " + MakeFitL$(discipline_strings(2), 36, " ") + " _____________________________________ " Print "º " + MakeFitL$(discipline_strings(2), 36, " ") + " º _____________________________________ º"
Print "╠══════════════════════════════════════╬═══════════════════════════════════════╣" Print "ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹"
Print " Typhon: 7 Nature: " + MakeFitL$(All_Archetypes(ch.nature), 29, " ") + " " Print "º Typhon: 7 º Nature: " + MakeFitL$(All_Archetypes(ch.nature), 29, " ") + " º"
Print " Willpower: 3 Demeanor: " + MakeFitL$(All_Archetypes(ch.demeanor), 27, " ") + " " Print "º Willpower: 3 º Demeanor: " + MakeFitL$(All_Archetypes(ch.demeanor), 27, " ") + " º"
Print "╠══════════════════════════════════════╩═══════════════════════════════════════╣" Print "ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹"
Print " " Print "º º"
Print " " Print "º º"
Print " " Print "º º"
Print " <<PRESS ANY KEY TO CONTINUE>> " Print "º <<PRESS ANY KEY TO CONTINUE>> º"
Print "╚══════════════════════════════════════════════════════════════════════════════╝" Print "ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ"
Input A Input A
Print "╔══════════════════════════════════════════════════════════════════════════════╗" Print "ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»"
Print " " + MakeFitC$("Abilities", 76, " ") + " " Print "º " + MakeFitC$("Abilities", 76, " ") + " º"
Print " " + MakeFitC$("Talents", 25, " ") + " " + MakeFitC$("Skills", 25, " ") + " " + MakeFitC$("Knowledges", 24, " ") + " " Print "º " + MakeFitC$("Talents", 25, " ") + " " + MakeFitC$("Skills", 25, " ") + " " + MakeFitC$("Knowledges", 24, " ") + " º"
For index = 1 To 10 For index = 1 To 10
Print " " + MakeFitC(MakeFitL$(All_Talents(index) + ":", 14, " ") + Str$(GetTalent(ch, index)), 25, " ") + " " + MakeFitC(MakeFitL$(All_Skills(index) + ":", 14, " ") + Str$(GetSkill(ch, index)), 25, " ") + " " + MakeFitC(MakeFitL$(All_Knowledges(index) + ":", 14, " ") + Str$(GetKnowledge(ch, index)), 24, " ") + " " Print "º " + MakeFitC(MakeFitL$(All_Talents(index) + ":", 14, " ") + Str$(GetTalent(ch, index)), 25, " ") + " " + MakeFitC(MakeFitL$(All_Skills(index) + ":", 14, " ") + Str$(GetSkill(ch, index)), 25, " ") + " " + MakeFitC(MakeFitL$(All_Knowledges(index) + ":", 14, " ") + Str$(GetKnowledge(ch, index)), 24, " ") + " º"
Next Next
Print "╠══════════════════════════════════════╦═══════════════════════════════════════╣" Print "ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹"
Print " Backgrounds: Virtues: " Print "º Backgrounds: º Virtues: º"
Print " " + MakeFitL$(background_strings(0), 36, " ") + " " + MakeFitL$(MakeFitL$("Conscience:", 14, " ") + MakeFitR$(Str$(ch.conscience), 2, " "), 37, " ") + " " Print "º " + MakeFitL$(background_strings(0), 36, " ") + " º " + MakeFitL$(MakeFitL$("Conscience:", 14, " ") + MakeFitR$(Str$(ch.conscience), 2, " "), 37, " ") + " º"
Print " " + MakeFitL$(background_strings(1), 36, " ") + " " + MakeFitL$(MakeFitR$("Conviction:", 14, " ") + MakeFitR$(Str$(ch.conviction), 2, " "), 37, " ") + " " Print "º " + MakeFitL$(background_strings(1), 36, " ") + " º " + MakeFitL$(MakeFitR$("Conviction:", 14, " ") + MakeFitR$(Str$(ch.conviction), 2, " "), 37, " ") + " º"
Print " " + MakeFitL$(background_strings(2), 36, " ") + " " + MakeFitL$(MakeFitR$("Instinct:", 14, " ") + MakeFitR$(Str$(ch.instinct), 2, " "), 37, " ") + " " Print "º " + MakeFitL$(background_strings(2), 36, " ") + " º " + MakeFitL$(MakeFitR$("Instinct:", 14, " ") + MakeFitR$(Str$(ch.instinct), 2, " "), 37, " ") + " º"
Print " " + MakeFitL$(background_strings(3), 36, " ") + " " + MakeFitL$(MakeFitR$("Self-Control:", 14, " ") + MakeFitR$(Str$(ch.selfControl), 2, " "), 37, " ") + " " Print "º " + MakeFitL$(background_strings(3), 36, " ") + " º " + MakeFitL$(MakeFitR$("Self-Control:", 14, " ") + MakeFitR$(Str$(ch.selfControl), 2, " "), 37, " ") + " º"
Print " " + MakeFitL$(background_strings(4), 36, " ") + " " + MakeFitL$(MakeFitR$("Courage:", 14, " ") + MakeFitR$(Str$(ch.courage), 2, " "), 37, " ") + " " Print "º " + MakeFitL$(background_strings(4), 36, " ") + " º " + MakeFitL$(MakeFitR$("Courage:", 14, " ") + MakeFitR$(Str$(ch.courage), 2, " "), 37, " ") + " º"
Print "╠══════════════════════════════════════╩═══════════════════════════════════════╣" Print "ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹"
Print " <<PRESS ANY KEY TO CONTINUE>> " Print "º <<PRESS ANY KEY TO CONTINUE>> º"
Print "╚══════════════════════════════════════════════════════════════════════════════╝" Print "ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ"
While InKey$ = "": Wend While InKey$ = "": Wend
End Sub End Sub