999 lines
37 KiB
Plaintext
999 lines
37 KiB
Plaintext
$Debug
|
|
Sub Initialize_Character_Lib
|
|
' For all of these lookup tables they should look something like this to know the mapping is correct
|
|
' Names(NAME_ITEM1) = "Item1"
|
|
' The index constants should start at 1 and go up to NAMES_COUNT without leaving any holes.
|
|
|
|
' Clans
|
|
Clans(CLAN_ANARCH) = "Anarch"
|
|
Clans(CLAN_ASSAMITE) = "Assamite"
|
|
Clans(CLAN_BAALI) = "Baali"
|
|
Clans(CLAN_BRUJAH) = "Brujah"
|
|
Clans(CLAN_CAITIFF) = "Caitiff"
|
|
Clans(CLAN_CAPPADOCIAN) = "Cappadocian"
|
|
Clans(CLAN_GANGREL) = "Gangrel"
|
|
Clans(CLAN_GIOVANNI) = "Giovanni"
|
|
Clans(CLAN_INCONNU) = "Inconnu"
|
|
Clans(CLAN_LASOMBRA) = "Lasombra"
|
|
Clans(CLAN_MALKAVIAN) = "Malkavian"
|
|
Clans(CLAN_NOSFERATU) = "Nosferatu"
|
|
Clans(CLAN_RAVANOS) = "Ravanos"
|
|
Clans(CLAN_SETTITE) = "Settite"
|
|
Clans(CLAN_TREMERE) = "Tremere"
|
|
Clans(CLAN_TOREADOR) = "Toreador"
|
|
Clans(CLAN_TZISMICE) = "Tzismice"
|
|
Clans(CLAN_VENTRUE) = "Ventrue"
|
|
|
|
' Archetypes
|
|
Archetypes(ARCHETYPE_ARCHITECT) = "Architect"
|
|
Archetypes(ARCHETYPE_AUTOCRAT) = "Autocrat"
|
|
Archetypes(ARCHETYPE_BARBARIAN) = "Barbarian"
|
|
Archetypes(ARCHETYPE_BON_VIVANT) = "Bon Vivant"
|
|
Archetypes(ARCHETYPE_BRAVO) = "Bravo"
|
|
Archetypes(ARCHETYPE_CAREGIVER) = "Caregiver"
|
|
Archetypes(ARCHETYPE_CARETAKER) = "Caretaker"
|
|
Archetypes(ARCHETYPE_CELEBRANT) = "Celebrant"
|
|
Archetypes(ARCHETYPE_CHILD) = "Child"
|
|
Archetypes(ARCHETYPE_CONFORMIST) = "Conformist"
|
|
Archetypes(ARCHETYPE_CONNIVER) = "Conniver"
|
|
Archetypes(ARCHETYPE_CURMUDGEON) = "Curmudgeon"
|
|
Archetypes(ARCHETYPE_DEFENDER) = "Defender"
|
|
Archetypes(ARCHETYPE_DEVIANT) = "Deviant"
|
|
Archetypes(ARCHETYPE_DIRECTOR) = "Director"
|
|
Archetypes(ARCHETYPE_FANATIC) = "Fanatic"
|
|
Archetypes(ARCHETYPE_GALLANT) = "Gallant"
|
|
Archetypes(ARCHETYPE_INNOVATOR) = "Innovator"
|
|
Archetypes(ARCHETYPE_JESTER) = "Jester"
|
|
Archetypes(ARCHETYPE_JUDGE) = "Judge"
|
|
Archetypes(ARCHETYPE_LONER) = "Loner"
|
|
Archetypes(ARCHETYPE_MARTYR) = "Martyr"
|
|
Archetypes(ARCHETYPE_MONSTER) = "Monster"
|
|
Archetypes(ARCHETYPE_PENITENT) = "Penitent"
|
|
Archetypes(ARCHETYPE_REBEL) = "Rebel"
|
|
Archetypes(ARCHETYPE_ROGUE) = "Rogue"
|
|
Archetypes(ARCHETYPE_SURVIVOR) = "Survivor"
|
|
Archetypes(ARCHETYPE_TRADITIONALIST) = "Traditionalist"
|
|
Archetypes(ARCHETYPE_TYRANT) = "Tyrant"
|
|
Archetypes(ARCHETYPE_VISIONARY) = "Visionary"
|
|
|
|
' Disciplines
|
|
Disciplines(DISCIPLINE_ANIMALISM) = "Animalism"
|
|
Disciplines(DISCIPLINE_AUSPEX) = "Auspex"
|
|
Disciplines(DISCIPLINE_BARDO) = "Bardo"
|
|
Disciplines(DISCIPLINE_CELERITY) = "Celerity"
|
|
Disciplines(DISCIPLINE_CHIMESTRY) = "Chimestry"
|
|
Disciplines(DISCIPLINE_DEMENTATION) = "Dementation"
|
|
Disciplines(DISCIPLINE_DOMINATE) = "Dominate"
|
|
Disciplines(DISCIPLINE_FORTITUDE) = "Fortitude"
|
|
Disciplines(DISCIPLINE_MELPOMINEE) = "Melpominee"
|
|
Disciplines(DISCIPLINE_MORTIS) = "Mortis"
|
|
Disciplines(DISCIPLINE_MYTHERCERIA) = "Mytherceria"
|
|
Disciplines(DISCIPLINE_NECROMANCY) = "Necromancy"
|
|
Disciplines(DISCIPLINE_OBEAH) = "Obeah"
|
|
Disciplines(DISCIPLINE_OBFUSCATE) = "Obfuscate"
|
|
Disciplines(DISCIPLINE_OBTENEBRATION) = "Obtenebration"
|
|
Disciplines(DISCIPLINE_POTENCE) = "Potence"
|
|
Disciplines(DISCIPLINE_PRESENCE) = "Presence"
|
|
Disciplines(DISCIPLINE_PROTEAN) = "Protean"
|
|
Disciplines(DISCIPLINE_QUIETUS) = "Quietus"
|
|
Disciplines(DISCIPLINE_SERPENTIS) = "Serpentis"
|
|
Disciplines(DISCIPLINE_SPIRITUS) = "Spiritus"
|
|
Disciplines(DISCIPLINE_THANANTOSIS) = "Thanantosis"
|
|
Disciplines(DISCIPLINE_THAUMATURGY) = "Thaumaturgy"
|
|
Disciplines(DISCIPLINE_VICISSITUDE) = "Vicissitude"
|
|
|
|
' Virtues
|
|
Virtues(VIRTUE_SELF_CONTROL) = "Self-Control"
|
|
Virtues(VIRTUE_COURAGE) = "Courage"
|
|
Virtues(VIRTUE_CONSCIENCE) = "Conscience"
|
|
|
|
' Physical Attributes
|
|
PhysicalAttributes(ATTRIBUTE_STRENGTH) = "Strength"
|
|
PhysicalAttributeAbbreviations(ATTRIBUTE_STRENGTH) = "Str."
|
|
PhysicalAttributes(ATTRIBUTE_DEXTERITY) = "Dexterity"
|
|
PhysicalAttributeAbbreviations(ATTRIBUTE_DEXTERITY) = "Dex."
|
|
PhysicalAttributes(ATTRIBUTE_STAMINA) = "Stamina"
|
|
PhysicalAttributeAbbreviations(ATTRIBUTE_STAMINA) = "Sta."
|
|
|
|
' Social Attributes
|
|
SocialAttributes(ATTRIBUTE_CHARISMA) = "Charisma"
|
|
SocialAttributeAbbreviations(ATTRIBUTE_CHARISMA) = "Cha."
|
|
SocialAttributes(ATTRIBUTE_MANIPULATION) = "Manipulation"
|
|
SocialAttributeAbbreviations(ATTRIBUTE_MANIPULATION) = "Man."
|
|
SocialAttributes(ATTRIBUTE_APPEARANCE) = "Appearance"
|
|
SocialAttributeAbbreviations(ATTRIBUTE_APPEARANCE) = "App."
|
|
|
|
' Mental Attributes
|
|
MentalAttributes(ATTRIBUTE_INTELLIGENCE) = "Intelligence"
|
|
MentalAttributeAbbreviations(ATTRIBUTE_INTELLIGENCE) = "Int."
|
|
MentalAttributes(ATTRIBUTE_PERCEPTION) = "Perception"
|
|
MentalAttributeAbbreviations(ATTRIBUTE_PERCEPTION) = "Per."
|
|
MentalAttributes(ATTRIBUTE_WITS) = "Wits"
|
|
MentalAttributeAbbreviations(ATTRIBUTE_WITS) = "Wits"
|
|
|
|
' Attribute Groups
|
|
AttributeGroups(ATTRIBUTE_GROUP_PHYSICAL) = "Physical"
|
|
AttributeGroups(ATTRIBUTE_GROUP_SOCIAL) = "Social"
|
|
AttributeGroups(ATTRIBUTE_GROUP_MENTAL) = "Mental"
|
|
|
|
' Abilities
|
|
AbilityGroups(ABILITY_GROUP_TALENTS) = "Talents"
|
|
AbilityGroups(ABILITY_GROUP_SKILLS) = "Skills"
|
|
AbilityGroups(ABILITY_GROUP_KNOWLEDGES) = "Knowledges"
|
|
|
|
' Talents
|
|
Talents(TALENT_ACTING) = "Acting"
|
|
Talents(TALENT_ALERTNESS) = "Alertness"
|
|
Talents(TALENT_ATHLETICS) = "Athletics"
|
|
Talents(TALENT_BRAWL) = "Brawl"
|
|
Talents(TALENT_DODGE) = "Dodge"
|
|
Talents(TALENT_EMPATHY) = "Empathy"
|
|
Talents(TALENT_INTIMIDATION) = "Intimidation"
|
|
Talents(TALENT_LEADERSHIP) = "Leadership"
|
|
Talents(TALENT_STREETWISE) = "Streetwise"
|
|
Talents(TALENT_SUBTERFUGE) = "Subterfuge"
|
|
|
|
' Skills
|
|
Skills(SKILL_ANIMAL_KEN) = "Animal Ken"
|
|
Skills(SKILL_DRIVE) = "Drive"
|
|
Skills(SKILL_ETIQUETTE) = "Etiquette"
|
|
Skills(SKILL_FIREARMS) = "Firearms"
|
|
Skills(SKILL_MELEE) = "Melee"
|
|
Skills(SKILL_MUSIC) = "Music"
|
|
Skills(SKILL_REPAIR) = "Repair"
|
|
Skills(SKILL_SECURITY) = "Security"
|
|
Skills(SKILL_STEALTH) = "Stealth"
|
|
Skills(SKILL_SURVIVAL) = "Survival"
|
|
|
|
' Knowwledges
|
|
Knowledges(KNOWLEDGE_BUREAUCRACY) = "Bureaucracy"
|
|
Knowledges(KNOWLEDGE_COMPUTER) = "Computer"
|
|
Knowledges(KNOWLEDGE_FINANCE) = "Finance"
|
|
Knowledges(KNOWLEDGE_INVESTIGATION) = "Investigation"
|
|
Knowledges(KNOWLEDGE_LAW) = "Law"
|
|
Knowledges(KNOWLEDGE_LINGUISTICS) = "Linguistics"
|
|
Knowledges(KNOWLEDGE_MEDICINE) = "Medicine"
|
|
Knowledges(KNOWLEDGE_OCCULT) = "Occult"
|
|
Knowledges(KNOWLEDGE_POLITICS) = "Politics"
|
|
Knowledges(KNOWLEDGE_SCIENCE) = "Science"
|
|
|
|
' Backgrounds
|
|
Backgrounds(BACKGROUND_ALLIES) = "Allies"
|
|
Backgrounds(BACKGROUND_CONTACTS) = "Contacts"
|
|
Backgrounds(BACKGROUND_FAME) = "Fame"
|
|
Backgrounds(BACKGROUND_GENERATION) = "Generation"
|
|
Backgrounds(BACKGROUND_HERD) = "Herd"
|
|
Backgrounds(BACKGROUND_INFLUENCE) = "Influence"
|
|
Backgrounds(BACKGROUND_MENTOR) = "Mentor"
|
|
Backgrounds(BACKGROUND_RESOURCES) = "Resources"
|
|
Backgrounds(BACKGROUND_RETAINERS) = "Retainers"
|
|
Backgrounds(BACKGROUND_STATUS) = "Status"
|
|
|
|
' Genders
|
|
Genders(GENDER_MALE) = "Male"
|
|
Genders(GENDER_FEMALE) = "Female"
|
|
Genders(GENDER_TRANS_MALE) = "Trans-Male"
|
|
Genders(GENDER_TRANS_FEMALE) = "Trans-Female"
|
|
Genders(GENDER_NON_BINARY) = "Non-Binary"
|
|
|
|
' Derangements
|
|
DerangementColors(DERANGEMENT_ID_AMNESIA) = DERANGEMENT_COLOR_AMNESIA
|
|
DerangementColors(DERANGEMENT_ID_DELUSIONS_OF_GRANDEUR) = DERANGEMENT_COLOR_DELUSIONS_OF_GRANDEUR
|
|
DerangementColors(DERANGEMENT_ID_FANTASY) = DERANGEMENT_COLOR_FANTASY
|
|
DerangementColors(DERANGEMENT_ID_MANIC_DEPRESSION) = DERANGEMENT_COLOR_MANIC_DEPRESSION
|
|
DerangementColors(DERANGEMENT_ID_MULTIPLE_PERSONALITIES) = DERANGEMENT_COLOR_MULTIPLE_PERSONALITIES
|
|
DerangementColors(DERANGEMENT_ID_OBSESSION) = DERANGEMENT_COLOR_OBSESSION
|
|
DerangementColors(DERANGEMENT_ID_OVERCOMPENSATION) = DERANGEMENT_COLOR_OVERCOMPENSATION
|
|
DerangementColors(DERANGEMENT_ID_PARANOIA) = DERANGEMENT_COLOR_PARANOIA
|
|
DerangementColors(DERANGEMENT_ID_PERFECTION) = DERANGEMENT_COLOR_PERFECTION
|
|
DerangementColors(DERANGEMENT_ID_REGRESSION) = DERANGEMENT_COLOR_REGRESSION
|
|
|
|
DerangementLabels(DERANGEMENT_ID_AMNESIA) = DERANGEMENT_LABEL_AMNESIA
|
|
DerangementLabels(DERANGEMENT_ID_DELUSIONS_OF_GRANDEUR) = DERANGEMENT_LABEL_DELUSIONS_OF_GRANDEUR
|
|
DerangementLabels(DERANGEMENT_ID_FANTASY) = DERANGEMENT_LABEL_FANTASY
|
|
DerangementLabels(DERANGEMENT_ID_MANIC_DEPRESSION) = DERANGEMENT_LABEL_MANIC_DEPRESSION
|
|
DerangementLabels(DERANGEMENT_ID_MULTIPLE_PERSONALITIES) = DERANGEMENT_LABEL_MULTIPLE_PERSONALITIES
|
|
DerangementLabels(DERANGEMENT_ID_OBSESSION) = DERANGEMENT_LABEL_OBSESSION
|
|
DerangementLabels(DERANGEMENT_ID_OVERCOMPENSATION) = DERANGEMENT_LABEL_OVERCOMPENSATION
|
|
DerangementLabels(DERANGEMENT_ID_PARANOIA) = DERANGEMENT_LABEL_PARANOIA
|
|
DerangementLabels(DERANGEMENT_ID_PERFECTION) = DERANGEMENT_LABEL_PERFECTION
|
|
DerangementLabels(DERANGEMENT_ID_REGRESSION) = DERANGEMENT_LABEL_REGRESSION
|
|
|
|
DerangementDescriptions(DERANGEMENT_ID_AMNESIA) = DERANGEMENT_DESCRIPTION_AMNESIA
|
|
DerangementDescriptions(DERANGEMENT_ID_DELUSIONS_OF_GRANDEUR) = DERANGEMENT_DESCRIPTION_DELUSIONS_OF_GRA
|
|
DerangementDescriptions(DERANGEMENT_ID_FANTASY) = DERANGEMENT_DESCRIPTION_FANTASY
|
|
DerangementDescriptions(DERANGEMENT_ID_MANIC_DEPRESSION) = DERANGEMENT_DESCRIPTION_MANIC_DEPRESSION
|
|
DerangementDescriptions(DERANGEMENT_ID_MULTIPLE_PERSONALITIES) = DERANGEMENT_DESCRIPTION_MULTIPLE_PERSONA
|
|
DerangementDescriptions(DERANGEMENT_ID_OBSESSION) = DERANGEMENT_DESCRIPTION_OBSESSION
|
|
DerangementDescriptions(DERANGEMENT_ID_OVERCOMPENSATION) = DERANGEMENT_DESCRIPTION_OVERCOMPENSATION
|
|
DerangementDescriptions(DERANGEMENT_ID_PARANOIA) = DERANGEMENT_DESCRIPTION_PARANOIA
|
|
DerangementDescriptions(DERANGEMENT_ID_PERFECTION) = DERANGEMENT_DESCRIPTION_PERFECTION
|
|
DerangementDescriptions(DERANGEMENT_ID_REGRESSION) = DERANGEMENT_DESCRIPTION_REGRESSION
|
|
|
|
For i = LBound(Derangements) To UBound(Derangements)
|
|
Call NewDerangement(Derangements(i), i, DerangementLabels(i), DerangementColors(i), DerangementDescriptions(i))
|
|
Next
|
|
|
|
' Freebies
|
|
FREEBIECOSTS(FREEBIE_DISCIPLINE_ID) = FREEBIE_DISCIPLINE_COST
|
|
FREEBIENAMES(FREEBIE_DISCIPLINE_ID) = FREEBIE_DISCIPLINE_NAME
|
|
FREEBIELABELS(FREEBIE_DISCIPLINE_ID) = FREEBIE_DISCIPLINE_LABEL
|
|
Call NewFreebie(Freebies(FREEBIE_DISCIPLINE_ID), FREEBIE_DISCIPLINE_ID, FREEBIE_DISCIPLINE_COST, FREEBIE_DISCIPLINE_NAME, FREEBIE_DISCIPLINE_LABEL)
|
|
|
|
FREEBIECOSTS(FREEBIE_ATTRIBUTE_ID) = FREEBIE_ATTRIBUTE_COST
|
|
FREEBIENAMES(FREEBIE_ATTRIBUTE_ID) = FREEBIE_ATTRIBUTE_NAME
|
|
FREEBIELABELS(FREEBIE_ATTRIBUTE_ID) = FREEBIE_ATTRIBUTE_LABEL
|
|
Call NewFreebie(Freebies(FREEBIE_ATTRIBUTE_ID), FREEBIE_ATTRIBUTE_ID, FREEBIE_ATTRIBUTE_COST, FREEBIE_ATTRIBUTE_NAME, FREEBIE_ATTRIBUTE_LABEL)
|
|
|
|
FREEBIECOSTS(FREEBIE_ABILITY_ID) = FREEBIE_ABILITY_COST
|
|
FREEBIENAMES(FREEBIE_ABILITY_ID) = FREEBIE_ABILITY_NAME
|
|
FREEBIELABELS(FREEBIE_ABILITY_ID) = FREEBIE_ABILITY_LABEL
|
|
Call NewFreebie(Freebies(FREEBIE_ABILITY_ID), FREEBIE_ABILITY_ID, FREEBIE_ABILITY_COST, FREEBIE_ABILITY_NAME, FREEBIE_ABILITY_LABEL)
|
|
|
|
FREEBIECOSTS(FREEBIE_VIRTUE_ID) = FREEBIE_VIRTUE_COST
|
|
FREEBIENAMES(FREEBIE_VIRTUE_ID) = FREEBIE_VIRTUE_NAME
|
|
FREEBIELABELS(FREEBIE_VIRTUE_ID) = FREEBIE_VIRTUE_LABEL
|
|
Call NewFreebie(Freebies(FREEBIE_VIRTUE_ID), FREEBIE_VIRTUE_ID, FREEBIE_VIRTUE_COST, FREEBIE_VIRTUE_NAME, FREEBIE_VIRTUE_LABEL)
|
|
|
|
FREEBIECOSTS(FREEBIE_HUMANITY_ID) = FREEBIE_HUMANITY_COST
|
|
FREEBIENAMES(FREEBIE_HUMANITY_ID) = FREEBIE_HUMANITY_NAME
|
|
FREEBIELABELS(FREEBIE_HUMANITY_ID) = FREEBIE_HUMANITY_LABEL
|
|
Call NewFreebie(Freebies(FREEBIE_HUMANITY_ID), FREEBIE_HUMANITY_ID, FREEBIE_HUMANITY_COST, FREEBIE_HUMANITY_NAME, FREEBIE_HUMANITY_LABEL)
|
|
|
|
FREEBIECOSTS(FREEBIE_BACKGROUND_ID) = FREEBIE_BACKGROUND_COST
|
|
FREEBIENAMES(FREEBIE_BACKGROUND_ID) = FREEBIE_BACKGROUND_NAME
|
|
FREEBIELABELS(FREEBIE_BACKGROUND_ID) = FREEBIE_BACKGROUND_LABEL
|
|
Call NewFreebie(Freebies(FREEBIE_BACKGROUND_ID), FREEBIE_BACKGROUND_ID, FREEBIE_BACKGROUND_COST, FREEBIE_BACKGROUND_NAME, FREEBIE_BACKGROUND_LABEL)
|
|
|
|
FREEBIECOSTS(FREEBIE_SHOW_CHARACTER_SHEET_ID) = FREEBIE_SHOW_CHARACTER_SHEET_COST
|
|
FREEBIENAMES(FREEBIE_SHOW_CHARACTER_SHEET_ID) = FREEBIE_SHOW_CHARACTER_SHEET_NAME
|
|
FREEBIELABELS(FREEBIE_SHOW_CHARACTER_SHEET_ID) = FREEBIE_SHOW_CHARACTER_SHEET_LABEL
|
|
Call NewFreebie(Freebies(FREEBIE_SHOW_CHARACTER_SHEET_ID), FREEBIE_SHOW_CHARACTER_SHEET_ID, FREEBIE_SHOW_CHARACTER_SHEET_COST, FREEBIE_SHOW_CHARACTER_SHEET_NAME, FREEBIE_SHOW_CHARACTER_SHEET_LABEL)
|
|
End Sub
|
|
|
|
' Character
|
|
|
|
Sub NewCharacter (ch As CharacterType)
|
|
' Scalars
|
|
ch.name = ""
|
|
ch.player = ""
|
|
ch.chronicle = ""
|
|
ch.haven = ""
|
|
ch.concept = ""
|
|
ch.age = ""
|
|
ch.gender = 0
|
|
ch.clan = 0
|
|
ch.nature = 0
|
|
ch.demeanor = 0
|
|
ch.generation = 13
|
|
ch.roadName = ""
|
|
ch.roadValue = 0
|
|
ch.willpower = 0
|
|
ch.bloodPool = 0
|
|
ch.derangementId = -1
|
|
ch.freebiePoints = 15
|
|
' Virtues
|
|
ch.selfControl = 1
|
|
ch.courage = 1
|
|
ch.conscience = 1
|
|
|
|
' Arrays/Objects
|
|
' Abilities (Talents/Skills/Knowledges)
|
|
For groupIndex = 1 To ABILITY_GROUPS_COUNT
|
|
For index = 1 To GetNumItemsForAbilityGroup(groupIndex)
|
|
Call SetAbilityValue(ch, groupIndex, index, 0)
|
|
Next
|
|
Next
|
|
' Attributes
|
|
For groupIndex = 1 To ATTRIBUTE_GROUPS_COUNT
|
|
For index = 1 To GetNumAttributesInGroup(groupIndex)
|
|
Call SetAttributeValue(ch, groupIndex, index, 1)
|
|
Next
|
|
Next
|
|
' Backgrounds
|
|
For index = 1 To BACKGROUNDS_COUNT
|
|
Call SetBackground(ch, index, 0)
|
|
Next
|
|
' Disciplines
|
|
For index = 1 To DISCIPLINES_COUNT
|
|
Call SetDiscipline(ch, index, 0)
|
|
Next
|
|
End Sub
|
|
|
|
' Disciplines
|
|
|
|
Function GetDisciplinePoints ()
|
|
GetDisciplinePoints = DISCIPLINE_POINTS
|
|
End Function
|
|
|
|
Sub SetDiscipline (ch As CharacterType, index As Integer, value As Integer)
|
|
Select Case index
|
|
Case DISCIPLINE_ANIMALISM
|
|
ch.discipline_animalism = value
|
|
Case DISCIPLINE_AUSPEX
|
|
ch.discipline_auspex = value
|
|
Case DISCIPLINE_BARDO
|
|
ch.discipline_bardo = value
|
|
Case DISCIPLINE_CELERITY
|
|
ch.discipline_celerity = value
|
|
Case DISCIPLINE_CHIMESTRY
|
|
ch.discipline_chimestry = value
|
|
Case DISCIPLINE_DEMENTATION
|
|
ch.discipline_dementation = value
|
|
Case DISCIPLINE_DOMINATE
|
|
ch.discipline_dominate = value
|
|
Case DISCIPLINE_FORTITUDE
|
|
ch.discipline_fortitude = value
|
|
Case DISCIPLINE_MELPOMINEE
|
|
ch.discipline_melpominee = value
|
|
Case DISCIPLINE_MORTIS
|
|
ch.discipline_mortis = value
|
|
Case DISCIPLINE_MYTHERCERIA
|
|
ch.discipline_mytherceria = value
|
|
Case DISCIPLINE_NECROMANCY
|
|
ch.discipline_necromancy = value
|
|
Case DISCIPLINE_OBEAH
|
|
ch.discipline_obeah = value
|
|
Case DISCIPLINE_OBFUSCATE
|
|
ch.discipline_obfuscate = value
|
|
Case DISCIPLINE_OBTENEBRATION
|
|
ch.discipline_obtenebration = value
|
|
Case DISCIPLINE_POTENCE
|
|
ch.discipline_potence = value
|
|
Case DISCIPLINE_PRESENCE
|
|
ch.discipline_presence = value
|
|
Case DISCIPLINE_PROTEAN
|
|
ch.discipline_protean = value
|
|
Case DISCIPLINE_QUIETUS
|
|
ch.discipline_quietus = value
|
|
Case DISCIPLINE_SERPENTIS
|
|
ch.discipline_serpentis = value
|
|
Case DISCIPLINE_SPIRITUS
|
|
ch.discipline_spiritus = value
|
|
Case DISCIPLINE_THANANTOSIS
|
|
ch.discipline_thanantosis = value
|
|
Case DISCIPLINE_THAUMATURGY
|
|
ch.discipline_thaumaturgy = value
|
|
Case DISCIPLINE_VICISSITUDE
|
|
ch.discipline_vicissitude = value
|
|
End Select
|
|
End Sub
|
|
|
|
Function GetDiscipline (ch As CharacterType, index As Integer)
|
|
Select Case index
|
|
Case DISCIPLINE_ANIMALISM
|
|
GetDiscipline = ch.discipline_animalism
|
|
Case DISCIPLINE_AUSPEX
|
|
GetDiscipline = ch.discipline_auspex
|
|
Case discipline_barde
|
|
GetDiscipline = ch.discipline_bardo
|
|
Case DISCIPLINE_CELERITY
|
|
GetDiscipline = ch.discipline_celerity
|
|
Case DISCIPLINE_CHIMESTRY
|
|
GetDiscipline = ch.discipline_chimestry
|
|
Case DISCIPLINE_DEMENTATION
|
|
GetDiscipline = ch.discipline_dementation
|
|
Case DISCIPLINE_DOMINATE
|
|
GetDiscipline = ch.discipline_dominate
|
|
Case DISCIPLINE_FORTITUDE
|
|
GetDiscipline = ch.discipline_fortitude
|
|
Case DISCIPLINE_MELPOMINEE
|
|
GetDiscipline = ch.discipline_melpominee
|
|
Case DISCIPLINE_MORTIS
|
|
GetDiscipline = ch.discipline_mortis
|
|
Case DISCIPLINE_MYTHERCERIA
|
|
GetDiscipline = ch.discipline_mytherceria
|
|
Case DISCIPLINE_NECROMANCY
|
|
GetDiscipline = ch.discipline_necromancy
|
|
Case DISCIPLINE_OBEAH
|
|
GetDiscipline = ch.discipline_obeah
|
|
Case DISCIPLINE_OBFUSCATE
|
|
GetDiscipline = ch.discipline_obfuscate
|
|
Case DISCIPLINE_OBTENEBRATION
|
|
GetDiscipline = ch.discipline_obtenebration
|
|
Case DISCIPLINE_POTENCE
|
|
GetDiscipline = ch.discipline_potence
|
|
Case DISCIPLINE_PRESENCE
|
|
GetDiscipline = ch.discipline_presence
|
|
Case DISCIPLINE_PROTEAN
|
|
GetDiscipline = ch.discipline_protean
|
|
Case DISCIPLINE_QUIETUS
|
|
GetDiscipline = ch.discipline_quietus
|
|
Case DISCIPLINE_SERPENTIS
|
|
GetDiscipline = ch.discipline_serpentis
|
|
Case DISCIPLINE_SPIRITUS
|
|
GetDiscipline = ch.discipline_spiritus
|
|
Case DISCIPLINE_THANANTOSIS
|
|
GetDiscipline = ch.discipline_thanantosis
|
|
Case DISCIPLINE_THAUMATURGY
|
|
GetDiscipline = ch.discipline_thaumaturgy
|
|
Case DISCIPLINE_VICISSITUDE
|
|
GetDiscipline = ch.discipline_vicissitude
|
|
End Select
|
|
End Function
|
|
|
|
Sub FillDisciplines (ch As CharacterType, disciplines() As Integer)
|
|
ReDim disciplines(1 To DISCIPLINES_COUNT) As Integer
|
|
For index = 1 To DISCIPLINES_COUNT
|
|
disciplines(index) = GetDiscipline(ch, index)
|
|
Next
|
|
End Sub
|
|
|
|
' Virtues
|
|
|
|
Function GetVirtuePoints ()
|
|
GetVirtuePoints = VIRTUE_POINTS
|
|
End Function
|
|
|
|
Sub SetVirtue (ch As CharacterType, index As Integer, value As Integer)
|
|
Select Case index
|
|
Case VIRTUE_SELF_CONTROL
|
|
ch.selfControl = value
|
|
Case VIRTUE_COURAGE
|
|
ch.courage = value
|
|
Case VIRTUE_CONSCIENCE
|
|
ch.conscience = value
|
|
End Select
|
|
End Sub
|
|
|
|
Function GetVirtue (ch As CharacterType, index As Integer)
|
|
value = 0
|
|
Select Case index
|
|
Case VIRTUE_SELF_CONTROL
|
|
value = ch.selfControl
|
|
Case VIRTUE_COURAGE
|
|
value = ch.courage
|
|
Case VIRTUE_CONSCIENCE
|
|
value = ch.conscience
|
|
End Select
|
|
GetVirtue = value
|
|
End Function
|
|
|
|
Sub FillVirtues (ch As CharacterType, values() As Integer)
|
|
ReDim values(1 To VIRTUES_COUNT) As Integer
|
|
For index = 1 To VIRTUES_COUNT
|
|
values(index) = GetVirtue(ch, index)
|
|
Next
|
|
End Sub
|
|
|
|
Function GetFreebiePoints(ch As CharacterType)
|
|
GetFreebiePoints = ch.freebiePoints
|
|
End Function
|
|
|
|
Sub SetFreebiePoints(ch As CharacterType, points As Integer)
|
|
ch.freebiepoints = points
|
|
End Sub
|
|
|
|
' Attributes
|
|
|
|
Sub FillAttributeValues (ch As CharacterType, values() As Integer, groupIndex As Integer)
|
|
count = GetNumAttributesInGroup(groupIndex)
|
|
ReDim values(1 To count) As Integer
|
|
For i = 1 To count
|
|
values(i) = GetAttributeValue(ch, groupIndex, i)
|
|
Next
|
|
End Sub
|
|
|
|
Function GetNumAttributesInGroup (index As Integer)
|
|
Select Case index
|
|
Case ATTRIBUTE_GROUP_PHYSICAL
|
|
count = PHYSICAL_ATTRIBUTES_COUNT
|
|
Case ATTRIBUTE_GROUP_SOCIAL
|
|
count = SOCIAL_ATTRIBUTES_COUNT
|
|
Case ATTRIBUTE_GROUP_MENTAL
|
|
count = MENTAL_ATTRIBUTES_COUNT
|
|
Case Else
|
|
count = 0
|
|
End Select
|
|
GetNumAttributesInGroup = count
|
|
End Function
|
|
|
|
Function GetAttributeName$ (groupIndex As Integer, attributeIndex As Integer)
|
|
attributeName$ = ""
|
|
Select Case groupIndex
|
|
Case ATTRIBUTE_GROUP_PHYSICAL
|
|
attributeName$ = PhysicalAttributes(attributeIndex)
|
|
Case ATTRIBUTE_GROUP_SOCIAL
|
|
attributeName$ = SocialAttributes(attributeIndex)
|
|
Case ATTRIBUTE_GROUP_MENTAL
|
|
attributeName$ = MentalAttributes(attributeIndex)
|
|
End Select
|
|
GetAttributeName = attributeName$
|
|
End Function
|
|
|
|
Sub FillAttributesInGroup (group As Integer, attributes() As String)
|
|
count = GetNumAttributesInGroup(group)
|
|
If count > 0 Then
|
|
ReDim attributes(1 To count) As String
|
|
Else
|
|
ReDim attributes(0) As String
|
|
End If
|
|
Select Case group
|
|
Case ATTRIBUTE_GROUP_PHYSICAL
|
|
For i = 1 To count
|
|
attributes(i) = PhysicalAttributes(i)
|
|
Next
|
|
Case ATTRIBUTE_GROUP_SOCIAL
|
|
For i = 1 To count
|
|
attributes(i) = SocialAttributes(i)
|
|
Next
|
|
Case ATTRIBUTE_GROUP_MENTAL
|
|
For i = 1 To count
|
|
attributes(i) = MentalAttributes(i)
|
|
Next
|
|
End Select
|
|
End Sub
|
|
|
|
Sub FillAttributeAbbreviationsInGroup (group As Integer, abbreviations() As String, count As Integer)
|
|
count = GetNumAttributesInGroup(group)
|
|
If count > 0 Then
|
|
ReDim abbreviations(1 To count) As String
|
|
Else
|
|
ReDim abbreviations(0) As String
|
|
End If
|
|
Select Case group
|
|
Case ATTRIBUTE_GROUP_PHYSICAL
|
|
For i = 1 To count
|
|
abbreviations(i) = PhysicalAttributeAbbreviations(i)
|
|
Next
|
|
Case ATTRIBUTE_GROUP_SOCIAL
|
|
For i = 1 To count
|
|
abbreviations(i) = SocialAttributeAbbreviations(i)
|
|
Next
|
|
Case ATTRIBUTE_GROUP_MENTAL
|
|
For i = 1 To count
|
|
abbreviations(i) = MentalAttributeAbbreviations(i)
|
|
Next
|
|
End Select
|
|
End Sub
|
|
|
|
Sub SetAttributeValue (ch As CharacterType, AttributeGroupIndex As Integer, AttributeIndex As Integer, Value As Integer)
|
|
Select Case AttributeGroupIndex
|
|
Case ATTRIBUTE_GROUP_PHYSICAL
|
|
Select Case AttributeIndex
|
|
Case ATTRIBUTE_STRENGTH
|
|
ch.attr_strength = Value
|
|
Case ATTRIBUTE_DEXTERITY
|
|
ch.attr_dexterity = Value
|
|
Case ATTRIBUTE_STAMINA
|
|
ch.attr_stamina = Value
|
|
End Select
|
|
Case ATTRIBUTE_GROUP_SOCIAL
|
|
Select Case AttributeIndex
|
|
Case ATTRIBUTE_CHARISMA
|
|
ch.attr_charisma = Value
|
|
Case ATTRIBUTE_MANIPULATION
|
|
ch.attr_manipulation = Value
|
|
Case ATTRIBUTE_APPEARANCE
|
|
ch.attr_appearance = Value
|
|
End Select
|
|
Case ATTRIBUTE_GROUP_MENTAL
|
|
Select Case AttributeIndex
|
|
Case ATTRIBUTE_INTELLIGENCE
|
|
ch.attr_intelligence = Value
|
|
Case ATTRIBUTE_PERCEPTION
|
|
ch.attr_perception = Value
|
|
Case ATTRIBUTE_WITS
|
|
ch.attr_wits = Value
|
|
End Select
|
|
End Select
|
|
End Sub
|
|
|
|
Function GetAttributeValue (ch As CharacterType, attributeGroupIndex As Integer, attributeIndex As Integer)
|
|
GetAttributeValue = 0
|
|
Select Case attributeGroupIndex
|
|
Case ATTRIBUTE_GROUP_PHYSICAL
|
|
Select Case attributeIndex
|
|
Case ATTRIBUTE_STRENGTH
|
|
GetAttributeValue = ch.attr_strength
|
|
Case ATTRIBUTE_DEXTERITY
|
|
GetAttributeValue = ch.attr_dexterity
|
|
Case ATTRIBUTE_STAMINA
|
|
GetAttributeValue = ch.attr_stamina
|
|
End Select
|
|
Case ATTRIBUTE_GROUP_SOCIAL
|
|
Select Case attributeIndex
|
|
Case ATTRIBUTE_CHARISMA
|
|
GetAttributeValue = ch.attr_charisma
|
|
Case ATTRIBUTE_MANIPULATION
|
|
GetAttributeValue = ch.attr_manipulation
|
|
Case ATTRIBUTE_APPEARANCE
|
|
GetAttributeValue = ch.attr_appearance
|
|
End Select
|
|
Case ATTRIBUTE_GROUP_MENTAL
|
|
Select Case attributeIndex
|
|
Case ATTRIBUTE_INTELLIGENCE
|
|
GetAttributeValue = ch.attr_intelligence
|
|
Case ATTRIBUTE_PERCEPTION
|
|
GetAttributeValue = ch.attr_perception
|
|
Case ATTRIBUTE_WITS
|
|
GetAttributeValue = ch.attr_wits
|
|
End Select
|
|
End Select
|
|
End Function
|
|
|
|
Function GetAttributePointsForRank (rank As Integer)
|
|
GetAttributePointsForRank = 0
|
|
Select Case rank
|
|
Case 1
|
|
GetAttributePointsForRank = 7
|
|
Case 2
|
|
GetAttributePointsForRank = 5
|
|
Case 3
|
|
GetAttributePointsForRank = 3
|
|
End Select
|
|
End Function
|
|
|
|
' Abilities
|
|
|
|
Sub SetAbilityValue (ch As CharacterType, groupIndex As Integer, index As Integer, value As Integer)
|
|
Select Case groupIndex
|
|
Case ABILITY_GROUP_TALENTS
|
|
Call SetTalent(ch, index, value)
|
|
Case ABILITY_GROUP_SKILLS
|
|
Call SetSkill(ch, index, value)
|
|
Case ABILITY_GROUP_KNOWLEDGES
|
|
Call SetKnowledge(ch, index, value)
|
|
End Select
|
|
End Sub
|
|
|
|
Function GetAbilityValue (ch As CharacterType, abilityIndex As Integer, itemIndex As Integer)
|
|
GetAbilityValue = 0
|
|
Select Case abilityIndex
|
|
Case ABILITY_GROUP_TALENTS
|
|
GetAbilityValue = GetTalent(ch, itemIndex)
|
|
Case ABILITY_GROUP_SKILLS
|
|
GetAbilityValue = GetSkill(ch, itemIndex)
|
|
Case ABILITY_GROUP_KNOWLEDGES
|
|
GetAbilityValue = GetKnowledge(ch, itemIndex)
|
|
End Select
|
|
End Function
|
|
|
|
Function GetAbilityPointsForRank (rank As Integer)
|
|
GetAbilityPointsForRank = 0
|
|
Select Case rank
|
|
Case 1
|
|
GetAbilityPointsForRank = 13
|
|
Case 2
|
|
GetAbilityPointsForRank = 9
|
|
Case 3
|
|
GetAbilityPointsForRank = 5
|
|
End Select
|
|
End Function
|
|
|
|
Sub FillAbilityValues (ch As CharacterType, values() As Integer, groupIndex As Integer)
|
|
count = GetNumItemsForAbilityGroup(groupIndex)
|
|
ReDim values(1 To count) As Integer
|
|
For i = 1 To count
|
|
values(i) = GetAbilityValue(ch, groupIndex, i)
|
|
Next
|
|
End Sub
|
|
|
|
Function GetNumItemsForAbilityGroup (index As Integer)
|
|
Select Case index
|
|
Case ABILITY_GROUP_TALENTS
|
|
count = TALENTS_COUNT
|
|
Case ABILITY_GROUP_SKILLS
|
|
count = SKILLS_COUNT
|
|
Case ABILITY_GROUP_KNOWLEDGES
|
|
count = KNOWLEDGES_COUNT
|
|
Case Else
|
|
count = 0
|
|
End Select
|
|
GetNumItemsForAbilityGroup = count
|
|
End Function
|
|
|
|
Function GetAbilityName$ (groupIndex As Integer, abilityIndex As Integer)
|
|
abilityName$ = ""
|
|
Select Case groupIndex
|
|
Case ABILITY_GROUP_TALENTS
|
|
abilityName$ = Talents(abilityIndex)
|
|
Case ABILITY_GROUP_SKILLS
|
|
abilityName$ = Skills(abilityIndex)
|
|
Case ABILITY_GROUP_KNOWLEDGES
|
|
abilityName$ = Knowledges(abilityIndex)
|
|
End Select
|
|
GetAbilityName = abilityName$
|
|
End Function
|
|
|
|
Sub FillAbilitiesForAbilityGroup (ability As Integer, items() As String)
|
|
count = GetNumItemsForAbilityGroup(ability)
|
|
If count > 0 Then
|
|
ReDim items(1 To count) As String
|
|
Else
|
|
ReDim items(0) As String
|
|
End If
|
|
Select Case ability
|
|
Case ABILITY_GROUP_TALENTS
|
|
For i = 1 To count
|
|
items(i) = Talents(i)
|
|
Next
|
|
Case ABILITY_GROUP_SKILLS
|
|
For i = 1 To count
|
|
items(i) = Skills(i)
|
|
Next
|
|
Case ABILITY_GROUP_KNOWLEDGES
|
|
For i = 1 To count
|
|
items(i) = Knowledges(i)
|
|
Next
|
|
End Select
|
|
End Sub
|
|
|
|
' Ability - Talents
|
|
|
|
Sub SetTalent (ch As CharacterType, index As Integer, value As Integer)
|
|
Select Case index
|
|
Case TALENT_ACTING
|
|
ch.talent_acting = value
|
|
Case TALENT_ALERTNESS
|
|
ch.talent_alertness = value
|
|
Case TALENT_ATHLETICS
|
|
ch.talent_athletics = value
|
|
Case TALENT_BRAWL
|
|
ch.talent_brawl = value
|
|
Case TALENT_DODGE
|
|
ch.talent_dodge = value
|
|
Case TALENT_EMPATHY
|
|
ch.talent_empathy = value
|
|
Case TALENT_INTIMIDATION
|
|
ch.talent_intimidation = value
|
|
Case TALENT_LEADERSHIP
|
|
ch.talent_leadership = value
|
|
Case TALENT_STREETWISE
|
|
ch.talent_streetwise = value
|
|
Case TALENT_SUBTERFUGE
|
|
ch.talent_subterfuge = value
|
|
End Select
|
|
End Sub
|
|
|
|
Function GetTalent (ch As CharacterType, index As Integer)
|
|
Select Case index
|
|
Case TALENT_ACTING
|
|
GetTalent = ch.talent_acting
|
|
Case TALENT_ALERTNESS
|
|
GetTalent = ch.talent_alertness
|
|
Case TALENT_ATHLETICS
|
|
GetTalent = ch.talent_athletics
|
|
Case TALENT_BRAWL
|
|
GetTalent = ch.talent_brawl
|
|
Case TALENT_DODGE
|
|
GetTalent = ch.talent_dodge
|
|
Case TALENT_EMPATHY
|
|
GetTalent = ch.talent_empathy
|
|
Case TALENT_INTIMIDATION
|
|
GetTalent = ch.talent_intimidation
|
|
Case TALENT_LEADERSHIP
|
|
GetTalent = ch.talent_leadership
|
|
Case TALENT_STREETWISE
|
|
GetTalent = ch.talent_streetwise
|
|
Case TALENT_SUBTERFUGE
|
|
GetTalent = ch.talent_subterfuge
|
|
End Select
|
|
End Function
|
|
|
|
' Ability - Skills
|
|
|
|
Sub SetSkill (ch As CharacterType, index As Integer, value As Integer)
|
|
Select Case index
|
|
Case SKILL_ANIMAL_KEN
|
|
ch.skill_animalKen = value
|
|
Case SKILL_DRIVE
|
|
ch.skill_drive = value
|
|
Case SKILL_ETIQUETTE
|
|
ch.skill_etiquette = value
|
|
Case SKILL_FIREARMS
|
|
ch.skill_firearms = value
|
|
Case SKILL_MELEE
|
|
ch.skill_melee = value
|
|
Case SKILL_MUSIC
|
|
ch.skill_music = value
|
|
Case SKILL_REPAIR
|
|
ch.skill_repair = value
|
|
Case SKILL_SECURITY
|
|
ch.skill_security = value
|
|
Case SKILL_STEALTH
|
|
ch.skill_stealth = value
|
|
Case SKILL_SURVIVAL
|
|
ch.skill_survival = value
|
|
End Select
|
|
End Sub
|
|
|
|
Function GetSkill (ch As CharacterType, index As Integer)
|
|
Select Case index
|
|
Case SKILL_ANIMAL_KEN
|
|
GetSkill = ch.skill_animalKen
|
|
Case SKILL_DRIVE
|
|
GetSkill = ch.skill_drive
|
|
Case SKILL_ETIQUETTE
|
|
GetSkill = ch.skill_etiquette
|
|
Case SKILL_FIREARMS
|
|
GetSkill = ch.skill_firearms
|
|
Case SKILL_MELEE
|
|
GetSkill = ch.skill_melee
|
|
Case SKILL_MUSIC
|
|
GetSkill = ch.skill_music
|
|
Case SKILL_REPAIR
|
|
GetSkill = ch.skill_repair
|
|
Case SKILL_SECURITY
|
|
GetSkill = ch.skill_security
|
|
Case SKILL_STEALTH
|
|
GetSkill = ch.skill_stealth
|
|
Case SKILL_SURVIVAL
|
|
GetSkill = ch.skill_survival
|
|
End Select
|
|
End Function
|
|
|
|
' Ability - Knowledges
|
|
|
|
Sub SetKnowledge (ch As CharacterType, index As Integer, value As Integer)
|
|
Select Case index
|
|
Case KNOWLEDGE_BUREAUCRACY
|
|
ch.knowledge_bureaucracy = value
|
|
Case KNOWLEDGE_COMPUTER
|
|
ch.knowledge_computer = value
|
|
Case KNOWLEDGE_FINANCE
|
|
ch.knowledge_finance = value
|
|
Case KNOWLEDGE_INVESTIGATION
|
|
ch.knowledge_investigation = value
|
|
Case KNOWLEDGE_LAW
|
|
ch.knowledge_law = value
|
|
Case KNOWLEDGE_LINGUISTICS
|
|
ch.knowledge_linguistics = value
|
|
Case KNOWLEDGE_MEDICINE
|
|
ch.knowledge_medicine = value
|
|
Case KNOWLEDGE_OCCULT
|
|
ch.knowledge_occult = value
|
|
Case KNOWLEDGE_POLITICS
|
|
ch.knowledge_politics = value
|
|
Case KNOWLEDGE_SCIENCE
|
|
ch.knowledge_science = value
|
|
End Select
|
|
End Sub
|
|
|
|
Function GetKnowledge (ch As CharacterType, index As Integer)
|
|
Select Case index
|
|
Case KNOWLEDGE_BUREAUCRACY
|
|
GetKnowledge = ch.knowledge_bureaucracy
|
|
Case KNOWLEDGE_COMPUTER
|
|
GetKnowledge = ch.knowledge_computer
|
|
Case KNOWLEDGE_FINANCE
|
|
GetKnowledge = ch.knowledge_finance
|
|
Case KNOWLEDGE_INVESTIGATION
|
|
GetKnowledge = ch.knowledge_investigation
|
|
Case KNOWLEDGE_LAW
|
|
GetKnowledge = ch.knowledge_law
|
|
Case KNOWLEDGE_LINGUISTICS
|
|
GetKnowledge = ch.knowledge_linguistics
|
|
Case KNOWLEDGE_MEDICINE
|
|
GetKnowledge = ch.knowledge_medicine
|
|
Case KNOWLEDGE_OCCULT
|
|
GetKnowledge = ch.knowledge_occult
|
|
Case KNOWLEDGE_POLITICS
|
|
GetKnowledge = ch.knowledge_politics
|
|
Case KNOWLEDGE_SCIENCE
|
|
GetKnowledge = ch.knowledge_science
|
|
End Select
|
|
End Function
|
|
|
|
' Backgrounds
|
|
|
|
Sub SetBackground (ch As CharacterType, index As Integer, value As Integer)
|
|
Select Case index
|
|
Case BACKGROUND_ALLIES
|
|
ch.background_allies = value
|
|
Case BACKGROUND_CONTACTS
|
|
ch.background_contacts = value
|
|
Case BACKGROUND_FAME
|
|
ch.background_fame = value
|
|
Case BACKGROUND_GENERATION
|
|
ch.background_generation = value
|
|
Case BACKGROUND_HERD
|
|
ch.background_herd = value
|
|
Case BACKGROUND_INFLUENCE
|
|
ch.background_influence = value
|
|
Case BACKGROUND_MENTOR
|
|
ch.background_mentor = value
|
|
Case BACKGROUND_RESOURCES
|
|
ch.background_resources = value
|
|
Case BACKGROUND_RETAINERS
|
|
ch.background_retainers = value
|
|
Case BACKGROUND_STATUS
|
|
ch.background_status = value
|
|
End Select
|
|
End Sub
|
|
|
|
Function GetBackground (ch As CharacterType, index As Integer)
|
|
Select Case index
|
|
Case BACKGROUND_ALLIES
|
|
GetBackground = ch.background_allies
|
|
Case BACKGROUND_CONTACTS
|
|
GetBackground = ch.background_contacts
|
|
Case BACKGROUND_FAME
|
|
GetBackground = ch.background_fame
|
|
Case BACKGROUND_GENERATION
|
|
GetBackground = ch.background_generation
|
|
Case BACKGROUND_HERD
|
|
GetBackground = ch.background_herd
|
|
Case BACKGROUND_INFLUENCE
|
|
GetBackground = ch.background_influence
|
|
Case BACKGROUND_MENTOR
|
|
GetBackground = ch.background_mentor
|
|
Case BACKGROUND_RESOURCES
|
|
GetBackground = ch.background_resources
|
|
Case BACKGROUND_RETAINERS
|
|
GetBackground = ch.background_retainers
|
|
Case BACKGROUND_STATUS
|
|
GetBackground = ch.background_status
|
|
End Select
|
|
End Function
|
|
|
|
Sub FillBackgrounds (ch As CharacterType, backgrounds() As Integer)
|
|
For index = 1 To BACKGROUNDS_COUNT
|
|
backgrounds(index) = GetBackground(ch, index)
|
|
Next
|
|
End Sub
|
|
|
|
Function GetBackgroundPoints ()
|
|
GetBackgroundPoints = BACKGROUND_POINTS
|
|
End Function
|
|
|
|
' Genders
|
|
|
|
' Derangements
|
|
|
|
Sub NewDerangement (derangement As DerangementType, id As Integer, label As String, textColor As Integer, description As String)
|
|
derangement.id = id
|
|
derangement.label = label
|
|
derangement.textColor = textColor
|
|
derangement.description = description
|
|
End Sub
|
|
|
|
Function GetAllDerangementsLine$ (ch As CharacterType)
|
|
Dim allDerangements(1) As DerangementType
|
|
Call FillDerangements(ch, allDerangements())
|
|
allDerangementsString$ = ""
|
|
For i = 0 To UBound(allDerangements) - 1
|
|
allDerangementsString$ = allDerangementsString$ + allDerangements(i).label + ", "
|
|
Next
|
|
GetAllDerangementsLine$ = allDerangementsString$
|
|
End Function
|
|
|
|
Sub FillDerangements (ch As CharacterType, myDerangements() As DerangementType)
|
|
count = 1
|
|
If ch.derangementId < 0 Or ch.derangementId >= count Then
|
|
Exit Sub
|
|
End If
|
|
ReDim myDerangements(count) As DerangementType
|
|
myDerangements(0) = Derangements(ch.derangementId)
|
|
End Sub
|
|
|
|
' Roads
|
|
function GetRoadName$(ch as charactertype)
|
|
getroadname = ch.roadName
|
|
end function
|
|
|
|
sub SetRoadName(ch as charactertype, roadName as string)
|
|
ch.roadname = roadname
|
|
end sub
|
|
|
|
function GetRoadValue(ch as charactertype)
|
|
getroadvalue = ch.roadValue
|
|
end function
|
|
|
|
sub SetRoadValue(ch as charactertype, roadValue as integer)
|
|
ch.roadvalue = roadvalue
|
|
end sub
|
|
|
|
' Freebies
|
|
sub NewFreebie (freebie As FreebieType, id As integer, cost As integer, freebieName As string, freebieLabel As string)
|
|
freebie.id = id
|
|
freebie.cost = cost
|
|
freebie.name = freebieName
|
|
freebie.label = freebieLabel
|
|
end sub
|
|
|
|
' Scalars
|
|
function GetGeneration(ch as charactertype)
|
|
getgeneration = ch.generation
|
|
end function
|