Browse Source

charter sex requirements added

combat-2
MagicBot 9 months ago
parent
commit
2ea38519e4
  1. 70
      src/engine/Enum.java

70
src/engine/Enum.java

@ -10,7 +10,6 @@ package engine;
import ch.claude_martin.enumbitset.EnumBitSetHelper; import ch.claude_martin.enumbitset.EnumBitSetHelper;
import engine.gameManager.ConfigManager; import engine.gameManager.ConfigManager;
import engine.gameManager.DbManager;
import engine.gameManager.PowersManager; import engine.gameManager.PowersManager;
import engine.gameManager.ZoneManager; import engine.gameManager.ZoneManager;
import engine.math.Vector2f; import engine.math.Vector2f;
@ -2321,7 +2320,8 @@ public class Enum {
public enum GuildCharterType { public enum GuildCharterType {
NONE("None", new String[][]{{"None"}}, new String[]{"Thearchy", "Common Rule", "Theocracy", "Republic Rule"}, NONE("None", new String[][]{{"None"}}, new String[]{"Thearchy", "Common Rule", "Theocracy", "Republic Rule"},
EnumSet.noneOf(PromoteType.class), EnumSet.noneOf(PromoteType.class),
EnumSet.noneOf(MonsterType.class)), EnumSet.noneOf(MonsterType.class),
EnumSet.noneOf(SexType.class)),
CATHEDRAL("Church of the All-Father", new String[][]{ CATHEDRAL("Church of the All-Father", new String[][]{
{"Acolyte", "Acolyte"}, {"Acolyte", "Acolyte"},
@ -2336,7 +2336,8 @@ public class Enum {
EnumSet.of(PromoteType.Bard, PromoteType.Channeler, PromoteType.Crusader, PromoteType.Nightstalker, EnumSet.of(PromoteType.Bard, PromoteType.Channeler, PromoteType.Crusader, PromoteType.Nightstalker,
PromoteType.Prelate, PromoteType.Priest, PromoteType.Sentinel, PromoteType.Scout), PromoteType.Prelate, PromoteType.Priest, PromoteType.Sentinel, PromoteType.Scout),
EnumSet.of(MonsterType.Aelfborn, MonsterType.Centaur, MonsterType.Elf, MonsterType.HalfGiant, EnumSet.of(MonsterType.Aelfborn, MonsterType.Centaur, MonsterType.Elf, MonsterType.HalfGiant,
MonsterType.Human)), MonsterType.Human),
EnumSet.allOf(SexType.class)),
MILITARY("Military", new String[][]{ MILITARY("Military", new String[][]{
{"Recruit"}, {"Recruit"},
{"Footman"}, {"Footman"},
@ -2349,7 +2350,8 @@ public class Enum {
new String[]{"Autocracy", "Common Rule", "Council Rule", "Militocracy"}, new String[]{"Autocracy", "Common Rule", "Council Rule", "Militocracy"},
EnumSet.of(PromoteType.Bard, PromoteType.Priest, PromoteType.Scout, PromoteType.Warlock, EnumSet.of(PromoteType.Bard, PromoteType.Priest, PromoteType.Scout, PromoteType.Warlock,
PromoteType.Warrior, PromoteType.Wizard), PromoteType.Warrior, PromoteType.Wizard),
EnumSet.of(MonsterType.Centaur, MonsterType.HalfGiant, MonsterType.Human)), EnumSet.of(MonsterType.Centaur, MonsterType.HalfGiant, MonsterType.Human),
EnumSet.allOf(SexType.class)),
TEMPLE("Temple of the Cleansing Flame", new String[][]{ TEMPLE("Temple of the Cleansing Flame", new String[][]{
{"Aspirant"}, {"Aspirant"},
{"Novice"}, {"Novice"},
@ -2363,7 +2365,8 @@ public class Enum {
new String[]{"Despot Rule", "Common Rule", "Protectorship", "Republic Rule"}, new String[]{"Despot Rule", "Common Rule", "Protectorship", "Republic Rule"},
EnumSet.of(PromoteType.Assassin, PromoteType.Bard, PromoteType.Channeler, PromoteType.Confessor, EnumSet.of(PromoteType.Assassin, PromoteType.Bard, PromoteType.Channeler, PromoteType.Confessor,
PromoteType.Nightstalker, PromoteType.Priest, PromoteType.Scout, PromoteType.Templar), PromoteType.Nightstalker, PromoteType.Priest, PromoteType.Scout, PromoteType.Templar),
EnumSet.of(MonsterType.HalfGiant, MonsterType.Human)), EnumSet.of(MonsterType.HalfGiant, MonsterType.Human),
EnumSet.allOf(SexType.class)),
BARBARIAN("Barbarian Clan", new String[][]{ BARBARIAN("Barbarian Clan", new String[][]{
{"Barbarian"}, {"Barbarian"},
{"Skald"}, {"Skald"},
@ -2375,7 +2378,8 @@ public class Enum {
new String[]{"Chiefdom", "Common Rule", "Council Rule", "Republic Rule"}, new String[]{"Chiefdom", "Common Rule", "Council Rule", "Republic Rule"},
EnumSet.of(PromoteType.Barbarian, PromoteType.Bard, PromoteType.Doomsayer, PromoteType.Fury, EnumSet.of(PromoteType.Barbarian, PromoteType.Bard, PromoteType.Doomsayer, PromoteType.Fury,
PromoteType.Priest, PromoteType.Scout, PromoteType.Thief, PromoteType.Warrior), PromoteType.Priest, PromoteType.Scout, PromoteType.Thief, PromoteType.Warrior),
EnumSet.of(MonsterType.Aelfborn, MonsterType.HalfGiant, MonsterType.Human, MonsterType.Minotaur)), EnumSet.of(MonsterType.Aelfborn, MonsterType.HalfGiant, MonsterType.Human, MonsterType.Minotaur),
EnumSet.allOf(SexType.class)),
RANGER("Ranger's Brotherhood", new String[][]{ RANGER("Ranger's Brotherhood", new String[][]{
{"Yeoman"}, {"Yeoman"},
{"Pathfinder"}, {"Pathfinder"},
@ -2387,7 +2391,8 @@ public class Enum {
new String[]{"Despot Rule", "Collectivism", "Council Rule", "Republic Rule"}, new String[]{"Despot Rule", "Collectivism", "Council Rule", "Republic Rule"},
EnumSet.of(PromoteType.Bard, PromoteType.Channeler, PromoteType.Druid, PromoteType.Priest, EnumSet.of(PromoteType.Bard, PromoteType.Channeler, PromoteType.Druid, PromoteType.Priest,
PromoteType.Ranger, PromoteType.Scout, PromoteType.Warrior), PromoteType.Ranger, PromoteType.Scout, PromoteType.Warrior),
EnumSet.of(MonsterType.Aelfborn, MonsterType.Elf, MonsterType.HalfGiant, MonsterType.Human, MonsterType.Shade)), EnumSet.of(MonsterType.Aelfborn, MonsterType.Elf, MonsterType.HalfGiant, MonsterType.Human, MonsterType.Shade),
EnumSet.allOf(SexType.class)),
AMAZON("Amazon Temple", new String[][]{ AMAZON("Amazon Temple", new String[][]{
{"Amazon Thrall", "Amazon"}, {"Amazon Thrall", "Amazon"},
{"Amazon Slave", "Amazon Warrior"}, {"Amazon Slave", "Amazon Warrior"},
@ -2398,7 +2403,8 @@ public class Enum {
new String[]{"Despot Rule", "Common Rule", "Gynarchy", "Gynocracy"}, new String[]{"Despot Rule", "Common Rule", "Gynarchy", "Gynocracy"},
EnumSet.of(PromoteType.Bard, PromoteType.Druid, PromoteType.Fury, PromoteType.Huntress, EnumSet.of(PromoteType.Bard, PromoteType.Druid, PromoteType.Fury, PromoteType.Huntress,
PromoteType.Priest, PromoteType.Scout, PromoteType.Warrior, PromoteType.Wizard), PromoteType.Priest, PromoteType.Scout, PromoteType.Warrior, PromoteType.Wizard),
EnumSet.of(MonsterType.Aelfborn, MonsterType.Elf, MonsterType.HalfGiant, MonsterType.Human)), EnumSet.of(MonsterType.Aelfborn, MonsterType.Elf, MonsterType.HalfGiant, MonsterType.Human),
EnumSet.of(SexType.FEMALE)),
NOBLE("Noble House", new String[][]{ NOBLE("Noble House", new String[][]{
{"Serf"}, {"Serf"},
{"Vassal"}, {"Vassal"},
@ -2412,7 +2418,8 @@ public class Enum {
new String[]{"Monarchy", "Common Rule", "Feodality", "Republic"}, new String[]{"Monarchy", "Common Rule", "Feodality", "Republic"},
EnumSet.of(PromoteType.Assassin, PromoteType.Bard, PromoteType.Channeler, PromoteType.Priest, EnumSet.of(PromoteType.Assassin, PromoteType.Bard, PromoteType.Channeler, PromoteType.Priest,
PromoteType.Scout, PromoteType.Thief, PromoteType.Warlock, PromoteType.Warrior, PromoteType.Wizard), PromoteType.Scout, PromoteType.Thief, PromoteType.Warlock, PromoteType.Warrior, PromoteType.Wizard),
EnumSet.of(MonsterType.Aelfborn, MonsterType.HalfGiant, MonsterType.Human)), EnumSet.of(MonsterType.Aelfborn, MonsterType.HalfGiant, MonsterType.Human),
EnumSet.allOf(SexType.class)),
WIZARD("Wizard's Conclave", new String[][]{ WIZARD("Wizard's Conclave", new String[][]{
{"Apprentice"}, {"Apprentice"},
{"Neophyte"}, {"Neophyte"},
@ -2424,7 +2431,8 @@ public class Enum {
new String[]{"Despot Rule", "Common Rule", "Council Rule", "Magocracy"}, new String[]{"Despot Rule", "Common Rule", "Council Rule", "Magocracy"},
EnumSet.of(PromoteType.Assassin, PromoteType.Bard, PromoteType.Channeler, PromoteType.Doomsayer, EnumSet.of(PromoteType.Assassin, PromoteType.Bard, PromoteType.Channeler, PromoteType.Doomsayer,
PromoteType.Fury, PromoteType.Necromancer, PromoteType.Priest, PromoteType.Warlock, PromoteType.Wizard), PromoteType.Fury, PromoteType.Necromancer, PromoteType.Priest, PromoteType.Warlock, PromoteType.Wizard),
EnumSet.of(MonsterType.Aelfborn, MonsterType.Elf, MonsterType.Human, MonsterType.Nephilim, MonsterType.Shade)), EnumSet.of(MonsterType.Aelfborn, MonsterType.Elf, MonsterType.Human, MonsterType.Nephilim, MonsterType.Shade),
EnumSet.allOf(SexType.class)),
MERCENARY("Mercenary Company", new String[][]{ MERCENARY("Mercenary Company", new String[][]{
{"Soldier"}, {"Soldier"},
{"Man-at-Arms"}, {"Man-at-Arms"},
@ -2437,7 +2445,8 @@ public class Enum {
new String[]{"Magistrature", "Mob Law", "Council Rule", "Republic Rule"}, new String[]{"Magistrature", "Mob Law", "Council Rule", "Republic Rule"},
EnumSet.of(PromoteType.Assassin, PromoteType.Bard, PromoteType.Priest, PromoteType.Scout, EnumSet.of(PromoteType.Assassin, PromoteType.Bard, PromoteType.Priest, PromoteType.Scout,
PromoteType.Thief, PromoteType.Warlock, PromoteType.Warrior), PromoteType.Thief, PromoteType.Warlock, PromoteType.Warrior),
EnumSet.of(MonsterType.Aelfborn, MonsterType.Aracoix, MonsterType.HalfGiant, MonsterType.Human, MonsterType.Shade)), EnumSet.of(MonsterType.Aelfborn, MonsterType.Aracoix, MonsterType.HalfGiant, MonsterType.Human, MonsterType.Shade),
EnumSet.allOf(SexType.class)),
THIEVES("Thieve's Den", new String[][]{ THIEVES("Thieve's Den", new String[][]{
{"Urchin"}, {"Urchin"},
{"Footpad"}, {"Footpad"},
@ -2452,7 +2461,8 @@ public class Enum {
EnumSet.of(PromoteType.Assassin, PromoteType.Barbarian, PromoteType.Bard, PromoteType.Priest, EnumSet.of(PromoteType.Assassin, PromoteType.Barbarian, PromoteType.Bard, PromoteType.Priest,
PromoteType.Scout, PromoteType.Thief, PromoteType.Wizard), PromoteType.Scout, PromoteType.Thief, PromoteType.Wizard),
EnumSet.of(MonsterType.Aelfborn, MonsterType.Aracoix, MonsterType.Elf, MonsterType.Human, MonsterType.Irekei, EnumSet.of(MonsterType.Aelfborn, MonsterType.Aracoix, MonsterType.Elf, MonsterType.Human, MonsterType.Irekei,
MonsterType.Nephilim, MonsterType.Shade, MonsterType.Vampire)), MonsterType.Nephilim, MonsterType.Shade, MonsterType.Vampire),
EnumSet.allOf(SexType.class)),
DWARF("Dwarf Hold", new String[][]{ DWARF("Dwarf Hold", new String[][]{
{"Citizen"}, {"Citizen"},
{"Master"}, {"Master"},
@ -2463,7 +2473,8 @@ public class Enum {
new String[]{"Despot Rule", "Common Rule", "Council Rule", "Republic Rule"}, new String[]{"Despot Rule", "Common Rule", "Council Rule", "Republic Rule"},
EnumSet.of(PromoteType.Crusader, PromoteType.Prelate, PromoteType.Priest, PromoteType.Sentinel, EnumSet.of(PromoteType.Crusader, PromoteType.Prelate, PromoteType.Priest, PromoteType.Sentinel,
PromoteType.Warrior), PromoteType.Warrior),
EnumSet.of(MonsterType.Dwarf)), EnumSet.of(MonsterType.Dwarf),
EnumSet.allOf(SexType.class)),
HIGHCOURT("High Court", new String[][]{ HIGHCOURT("High Court", new String[][]{
{"Eccekebe"}, {"Eccekebe"},
{"Saedulor"}, {"Saedulor"},
@ -2478,7 +2489,8 @@ public class Enum {
EnumSet.of(PromoteType.Assassin, PromoteType.Bard, PromoteType.Channeler, PromoteType.Druid, EnumSet.of(PromoteType.Assassin, PromoteType.Bard, PromoteType.Channeler, PromoteType.Druid,
PromoteType.Necromancer, PromoteType.Priest, PromoteType.Ranger, PromoteType.Scout, PromoteType.Necromancer, PromoteType.Priest, PromoteType.Ranger, PromoteType.Scout,
PromoteType.Thief, PromoteType.Warrior, PromoteType.Wizard), PromoteType.Thief, PromoteType.Warrior, PromoteType.Wizard),
EnumSet.of(MonsterType.Elf, MonsterType.Minotaur)), EnumSet.of(MonsterType.Elf, MonsterType.Minotaur),
EnumSet.allOf(SexType.class)),
VIRAKT("Virakt", new String[][]{ VIRAKT("Virakt", new String[][]{
{"Jov'uus"}, {"Jov'uus"},
{"Urikhan"}, {"Urikhan"},
@ -2492,7 +2504,8 @@ public class Enum {
EnumSet.of(PromoteType.Assassin, PromoteType.Bard, PromoteType.Channeler, PromoteType.Fury, EnumSet.of(PromoteType.Assassin, PromoteType.Bard, PromoteType.Channeler, PromoteType.Fury,
PromoteType.Huntress, PromoteType.Nightstalker, PromoteType.Priest, PromoteType.Ranger, PromoteType.Huntress, PromoteType.Nightstalker, PromoteType.Priest, PromoteType.Ranger,
PromoteType.Scout, PromoteType.Thief, PromoteType.Warrior, PromoteType.Wizard), PromoteType.Scout, PromoteType.Thief, PromoteType.Warrior, PromoteType.Wizard),
EnumSet.of(MonsterType.Irekei)), EnumSet.of(MonsterType.Irekei),
EnumSet.allOf(SexType.class)),
BRIALIA("Coven of Brialia", new String[][]{ // Unknown Rank names BRIALIA("Coven of Brialia", new String[][]{ // Unknown Rank names
{"Devotee"}, {"Devotee"},
{"Initiated"}, {"Initiated"},
@ -2504,7 +2517,8 @@ public class Enum {
{"Witch King", "Witch Queen"}}, {"Witch King", "Witch Queen"}},
new String[]{"Despot Rule", "Common Rule", "Council Rule", "Republic Rule"}, new String[]{"Despot Rule", "Common Rule", "Council Rule", "Republic Rule"},
EnumSet.allOf(PromoteType.class), EnumSet.allOf(PromoteType.class),
EnumSet.allOf(MonsterType.class)), EnumSet.allOf(MonsterType.class),
EnumSet.allOf(SexType.class)),
UNHOLY("Unholy Legion", new String[][]{ // Unknown Rank names UNHOLY("Unholy Legion", new String[][]{ // Unknown Rank names
{"Footman"}, {"Footman"},
@ -2519,7 +2533,8 @@ public class Enum {
EnumSet.of(PromoteType.Assassin, PromoteType.Channeler, PromoteType.Necromancer, PromoteType.Priest, EnumSet.of(PromoteType.Assassin, PromoteType.Channeler, PromoteType.Necromancer, PromoteType.Priest,
PromoteType.Scout, PromoteType.Thief, PromoteType.Warlock, PromoteType.Warrior, PromoteType.Scout, PromoteType.Thief, PromoteType.Warlock, PromoteType.Warrior,
PromoteType.Wizard), PromoteType.Wizard),
EnumSet.of(MonsterType.Human, MonsterType.Shade, MonsterType.Vampire)), EnumSet.of(MonsterType.Human, MonsterType.Shade, MonsterType.Vampire),
EnumSet.allOf(SexType.class)),
SCOURGE("Cult of the Scourge", new String[][]{ SCOURGE("Cult of the Scourge", new String[][]{
{"Thrall"}, {"Thrall"},
{"Mudir"}, {"Mudir"},
@ -2529,7 +2544,8 @@ public class Enum {
new String[]{"Despot Rule", "Common Rule", "Council Rule", "Republic Rule"}, new String[]{"Despot Rule", "Common Rule", "Council Rule", "Republic Rule"},
EnumSet.of(PromoteType.Bard, PromoteType.Channeler, PromoteType.Doomsayer, PromoteType.Priest, EnumSet.of(PromoteType.Bard, PromoteType.Channeler, PromoteType.Doomsayer, PromoteType.Priest,
PromoteType.Scout, PromoteType.Warrior, PromoteType.Wizard), PromoteType.Scout, PromoteType.Warrior, PromoteType.Wizard),
EnumSet.of(MonsterType.Aelfborn, MonsterType.Human, MonsterType.Minotaur, MonsterType.Nephilim)), EnumSet.of(MonsterType.Aelfborn, MonsterType.Human, MonsterType.Minotaur, MonsterType.Nephilim),
EnumSet.allOf(SexType.class)),
PIRATE("Pirate Crew", new String[][]{ PIRATE("Pirate Crew", new String[][]{
{"Midshipman", "Midshipwoman"}, {"Midshipman", "Midshipwoman"},
{"Sailor"}, {"Sailor"},
@ -2539,7 +2555,8 @@ public class Enum {
{"Captain"}}, {"Captain"}},
new String[]{"Despot Rule", "Common Rule", "Council Rule", "Republic Rule"}, new String[]{"Despot Rule", "Common Rule", "Council Rule", "Republic Rule"},
EnumSet.allOf(PromoteType.class), EnumSet.allOf(PromoteType.class),
EnumSet.allOf(MonsterType.class)), EnumSet.allOf(MonsterType.class),
EnumSet.allOf(SexType.class)),
HERALD("Academy of Heralds", new String[][]{ HERALD("Academy of Heralds", new String[][]{
{"Pupil"}, {"Pupil"},
{"Scribe"}, {"Scribe"},
@ -2551,7 +2568,8 @@ public class Enum {
{"Loremaster"}}, {"Loremaster"}},
new String[]{"Despot Rule", "Common Rule", "Council Rule", "Republic Rule"}, new String[]{"Despot Rule", "Common Rule", "Council Rule", "Republic Rule"},
EnumSet.allOf(PromoteType.class), EnumSet.allOf(PromoteType.class),
EnumSet.allOf(MonsterType.class)), EnumSet.allOf(MonsterType.class),
EnumSet.allOf(SexType.class)),
CENTAUR("Centaur Cohort", new String[][]{ CENTAUR("Centaur Cohort", new String[][]{
{"Hoplite"}, {"Hoplite"},
{"Peltast"}, {"Peltast"},
@ -2565,7 +2583,8 @@ public class Enum {
EnumSet.of(PromoteType.Barbarian, PromoteType.Crusader, PromoteType.Druid, PromoteType.Huntress, EnumSet.of(PromoteType.Barbarian, PromoteType.Crusader, PromoteType.Druid, PromoteType.Huntress,
PromoteType.Prelate, PromoteType.Priest, PromoteType.Ranger, PromoteType.Sentinel, PromoteType.Prelate, PromoteType.Priest, PromoteType.Ranger, PromoteType.Sentinel,
PromoteType.Warrior), PromoteType.Warrior),
EnumSet.of(MonsterType.Centaur)), EnumSet.of(MonsterType.Centaur),
EnumSet.allOf(SexType.class)),
KHREE("Aracoix Kh'ree", new String[][]{ KHREE("Aracoix Kh'ree", new String[][]{
{"Duriacor"}, {"Duriacor"},
{"Exarch"}, {"Exarch"},
@ -2581,23 +2600,24 @@ public class Enum {
EnumSet.of(PromoteType.Assassin, PromoteType.Barbarian, PromoteType.Bard, PromoteType.Huntress, EnumSet.of(PromoteType.Assassin, PromoteType.Barbarian, PromoteType.Bard, PromoteType.Huntress,
PromoteType.Priest, PromoteType.Ranger, PromoteType.Scout, PromoteType.Thief, PromoteType.Priest, PromoteType.Ranger, PromoteType.Scout, PromoteType.Thief,
PromoteType.Warlock, PromoteType.Warrior), PromoteType.Warlock, PromoteType.Warrior),
EnumSet.of(MonsterType.Aracoix)); EnumSet.of(MonsterType.Aracoix),
EnumSet.allOf(SexType.class));
private final String name; private final String name;
private final String[][] ranks; //Stored Rank#->Gender(M,F) private final String[][] ranks; //Stored Rank#->Gender(M,F)
private final String[] leadershipTypes; private final String[] leadershipTypes;
public final EnumSet<PromoteType> requiredClasses; public final EnumSet<PromoteType> requiredClasses;
public final EnumSet<MonsterType> requiredRaces; public final EnumSet<MonsterType> requiredRaces;
public final SexType sexRequired; public final EnumSet<SexType> sexRequired;
GuildCharterType(String name, String[][] ranks, String[] leadershipTypes, EnumSet<PromoteType> requiredClasses, GuildCharterType(String name, String[][] ranks, String[] leadershipTypes, EnumSet<PromoteType> requiredClasses,
EnumSet<MonsterType> requiredRaces) { EnumSet<MonsterType> requiredRaces, EnumSet<SexType> sexRequired) {
this.name = name; this.name = name;
this.ranks = ranks; this.ranks = ranks;
this.leadershipTypes = leadershipTypes; this.leadershipTypes = leadershipTypes;
this.requiredClasses = requiredClasses; this.requiredClasses = requiredClasses;
this.requiredRaces = requiredRaces; this.requiredRaces = requiredRaces;
this.sexRequired = DbManager.GuildQueries.LOAD_CHARTER_SEX_RESTRICTIONS(this.name); this.sexRequired = sexRequired;
} }
public static GuildCharterType getGuildTypeFromCharter(ItemBase itemBase) { public static GuildCharterType getGuildTypeFromCharter(ItemBase itemBase) {

Loading…
Cancel
Save