Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Sub Main
- Dim subjects = Generate()
- For Each subject In subjects
- Console.WriteLine(subject.ToString)
- Next
- End Sub
- Function Generate() As List(Of Subject)
- Dim subjects = New List(Of Subject)
- For name = 0 To 11
- For stone = 0 To 11
- For archetype = 0 To 11
- For domain = 0 To 11
- Dim n As Name = name
- Dim s As Stone = stone
- Dim a As Archetype = archetype
- Dim d As Domain = domain
- If subjects.Where(Function(x) x.Name = n AndAlso x.Stone = s).Any Then Continue For
- If subjects.Where(Function(x) x.Name = n AndAlso x.Archetype = a).Any Then Continue For
- If subjects.Where(Function(x) x.Name = n AndAlso x.Domain = d).Any Then Continue For
- If subjects.Where(Function(x) x.Archetype = a AndAlso x.Domain = d).Any Then Continue For
- If subjects.Where(Function(x) x.Stone = s AndAlso x.Archetype = a).Any Then Continue For
- If subjects.Where(Function(x) x.Stone = s AndAlso x.Domain = d).Any Then Continue For
- subjects.Add(New Subject(n, s, a, d))
- Next
- Next
- Next
- Next
- Return subjects
- End Function
- Class Subject
- Property Name As Name
- Property Stone As Stone
- Property Archetype As Archetype
- Property Domain As Domain
- Sub New(name As Name, stone As Stone, archetype As Archetype, domain As Domain)
- Me.Name = name
- Me.Stone = stone
- Me.Archetype = archetype
- Me.Domain = domain
- End Sub
- Shadows Function ToString() As String
- Return Me.Name.ToString & ", the " & String.Join(" ", New String() {Me.Stone.ToString, Me.Domain.ToString, Me.Archetype.ToString})
- End Function
- End Class
- Enum Name As UShort
- Kue
- Mary
- James
- Lou
- Brian
- Jordan
- Kate
- Hiro
- Matthew
- Marco
- Catherine
- Nancy
- End Enum
- Enum Stone As UShort
- Garnet
- Amethyst
- Bloodstone
- Diamond
- Emerald
- Moonstone
- Ruby
- Carnelian
- Sapphire
- Opal
- Topaz
- Turquoise
- End Enum
- Enum Archetype As UShort
- Sylph
- Seer
- Heir
- Mage
- Maid
- Witch
- Page
- Knight
- Rogue
- Thief
- Bard
- Prince
- End Enum
- Enum Domain As UShort
- Time
- Space
- Hope
- Rage
- Heart
- Mind
- Breath
- Blood
- Doom
- Life
- Light
- Void
- End Enum
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement