forked from MagicBane/Server
charter sex requirements added
This commit is contained in:
+45
-25
@@ -10,7 +10,6 @@ package engine;
|
||||
|
||||
import ch.claude_martin.enumbitset.EnumBitSetHelper;
|
||||
import engine.gameManager.ConfigManager;
|
||||
import engine.gameManager.DbManager;
|
||||
import engine.gameManager.PowersManager;
|
||||
import engine.gameManager.ZoneManager;
|
||||
import engine.math.Vector2f;
|
||||
@@ -2321,7 +2320,8 @@ public class Enum {
|
||||
public enum GuildCharterType {
|
||||
NONE("None", new String[][]{{"None"}}, new String[]{"Thearchy", "Common Rule", "Theocracy", "Republic Rule"},
|
||||
EnumSet.noneOf(PromoteType.class),
|
||||
EnumSet.noneOf(MonsterType.class)),
|
||||
EnumSet.noneOf(MonsterType.class),
|
||||
EnumSet.noneOf(SexType.class)),
|
||||
|
||||
CATHEDRAL("Church of the All-Father", new String[][]{
|
||||
{"Acolyte", "Acolyte"},
|
||||
@@ -2336,7 +2336,8 @@ public class Enum {
|
||||
EnumSet.of(PromoteType.Bard, PromoteType.Channeler, PromoteType.Crusader, PromoteType.Nightstalker,
|
||||
PromoteType.Prelate, PromoteType.Priest, PromoteType.Sentinel, PromoteType.Scout),
|
||||
EnumSet.of(MonsterType.Aelfborn, MonsterType.Centaur, MonsterType.Elf, MonsterType.HalfGiant,
|
||||
MonsterType.Human)),
|
||||
MonsterType.Human),
|
||||
EnumSet.allOf(SexType.class)),
|
||||
MILITARY("Military", new String[][]{
|
||||
{"Recruit"},
|
||||
{"Footman"},
|
||||
@@ -2349,7 +2350,8 @@ public class Enum {
|
||||
new String[]{"Autocracy", "Common Rule", "Council Rule", "Militocracy"},
|
||||
EnumSet.of(PromoteType.Bard, PromoteType.Priest, PromoteType.Scout, PromoteType.Warlock,
|
||||
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[][]{
|
||||
{"Aspirant"},
|
||||
{"Novice"},
|
||||
@@ -2363,7 +2365,8 @@ public class Enum {
|
||||
new String[]{"Despot Rule", "Common Rule", "Protectorship", "Republic Rule"},
|
||||
EnumSet.of(PromoteType.Assassin, PromoteType.Bard, PromoteType.Channeler, PromoteType.Confessor,
|
||||
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"},
|
||||
{"Skald"},
|
||||
@@ -2375,7 +2378,8 @@ public class Enum {
|
||||
new String[]{"Chiefdom", "Common Rule", "Council Rule", "Republic Rule"},
|
||||
EnumSet.of(PromoteType.Barbarian, PromoteType.Bard, PromoteType.Doomsayer, PromoteType.Fury,
|
||||
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[][]{
|
||||
{"Yeoman"},
|
||||
{"Pathfinder"},
|
||||
@@ -2387,7 +2391,8 @@ public class Enum {
|
||||
new String[]{"Despot Rule", "Collectivism", "Council Rule", "Republic Rule"},
|
||||
EnumSet.of(PromoteType.Bard, PromoteType.Channeler, PromoteType.Druid, PromoteType.Priest,
|
||||
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 Thrall", "Amazon"},
|
||||
{"Amazon Slave", "Amazon Warrior"},
|
||||
@@ -2398,7 +2403,8 @@ public class Enum {
|
||||
new String[]{"Despot Rule", "Common Rule", "Gynarchy", "Gynocracy"},
|
||||
EnumSet.of(PromoteType.Bard, PromoteType.Druid, PromoteType.Fury, PromoteType.Huntress,
|
||||
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[][]{
|
||||
{"Serf"},
|
||||
{"Vassal"},
|
||||
@@ -2412,7 +2418,8 @@ public class Enum {
|
||||
new String[]{"Monarchy", "Common Rule", "Feodality", "Republic"},
|
||||
EnumSet.of(PromoteType.Assassin, PromoteType.Bard, PromoteType.Channeler, PromoteType.Priest,
|
||||
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[][]{
|
||||
{"Apprentice"},
|
||||
{"Neophyte"},
|
||||
@@ -2424,7 +2431,8 @@ public class Enum {
|
||||
new String[]{"Despot Rule", "Common Rule", "Council Rule", "Magocracy"},
|
||||
EnumSet.of(PromoteType.Assassin, PromoteType.Bard, PromoteType.Channeler, PromoteType.Doomsayer,
|
||||
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[][]{
|
||||
{"Soldier"},
|
||||
{"Man-at-Arms"},
|
||||
@@ -2437,7 +2445,8 @@ public class Enum {
|
||||
new String[]{"Magistrature", "Mob Law", "Council Rule", "Republic Rule"},
|
||||
EnumSet.of(PromoteType.Assassin, PromoteType.Bard, PromoteType.Priest, PromoteType.Scout,
|
||||
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[][]{
|
||||
{"Urchin"},
|
||||
{"Footpad"},
|
||||
@@ -2452,7 +2461,8 @@ public class Enum {
|
||||
EnumSet.of(PromoteType.Assassin, PromoteType.Barbarian, PromoteType.Bard, PromoteType.Priest,
|
||||
PromoteType.Scout, PromoteType.Thief, PromoteType.Wizard),
|
||||
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[][]{
|
||||
{"Citizen"},
|
||||
{"Master"},
|
||||
@@ -2463,7 +2473,8 @@ public class Enum {
|
||||
new String[]{"Despot Rule", "Common Rule", "Council Rule", "Republic Rule"},
|
||||
EnumSet.of(PromoteType.Crusader, PromoteType.Prelate, PromoteType.Priest, PromoteType.Sentinel,
|
||||
PromoteType.Warrior),
|
||||
EnumSet.of(MonsterType.Dwarf)),
|
||||
EnumSet.of(MonsterType.Dwarf),
|
||||
EnumSet.allOf(SexType.class)),
|
||||
HIGHCOURT("High Court", new String[][]{
|
||||
{"Eccekebe"},
|
||||
{"Saedulor"},
|
||||
@@ -2478,7 +2489,8 @@ public class Enum {
|
||||
EnumSet.of(PromoteType.Assassin, PromoteType.Bard, PromoteType.Channeler, PromoteType.Druid,
|
||||
PromoteType.Necromancer, PromoteType.Priest, PromoteType.Ranger, PromoteType.Scout,
|
||||
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[][]{
|
||||
{"Jov'uus"},
|
||||
{"Urikhan"},
|
||||
@@ -2492,7 +2504,8 @@ public class Enum {
|
||||
EnumSet.of(PromoteType.Assassin, PromoteType.Bard, PromoteType.Channeler, PromoteType.Fury,
|
||||
PromoteType.Huntress, PromoteType.Nightstalker, PromoteType.Priest, PromoteType.Ranger,
|
||||
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
|
||||
{"Devotee"},
|
||||
{"Initiated"},
|
||||
@@ -2504,7 +2517,8 @@ public class Enum {
|
||||
{"Witch King", "Witch Queen"}},
|
||||
new String[]{"Despot Rule", "Common Rule", "Council Rule", "Republic Rule"},
|
||||
EnumSet.allOf(PromoteType.class),
|
||||
EnumSet.allOf(MonsterType.class)),
|
||||
EnumSet.allOf(MonsterType.class),
|
||||
EnumSet.allOf(SexType.class)),
|
||||
|
||||
UNHOLY("Unholy Legion", new String[][]{ // Unknown Rank names
|
||||
{"Footman"},
|
||||
@@ -2519,7 +2533,8 @@ public class Enum {
|
||||
EnumSet.of(PromoteType.Assassin, PromoteType.Channeler, PromoteType.Necromancer, PromoteType.Priest,
|
||||
PromoteType.Scout, PromoteType.Thief, PromoteType.Warlock, PromoteType.Warrior,
|
||||
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[][]{
|
||||
{"Thrall"},
|
||||
{"Mudir"},
|
||||
@@ -2529,7 +2544,8 @@ public class Enum {
|
||||
new String[]{"Despot Rule", "Common Rule", "Council Rule", "Republic Rule"},
|
||||
EnumSet.of(PromoteType.Bard, PromoteType.Channeler, PromoteType.Doomsayer, PromoteType.Priest,
|
||||
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[][]{
|
||||
{"Midshipman", "Midshipwoman"},
|
||||
{"Sailor"},
|
||||
@@ -2539,7 +2555,8 @@ public class Enum {
|
||||
{"Captain"}},
|
||||
new String[]{"Despot Rule", "Common Rule", "Council Rule", "Republic Rule"},
|
||||
EnumSet.allOf(PromoteType.class),
|
||||
EnumSet.allOf(MonsterType.class)),
|
||||
EnumSet.allOf(MonsterType.class),
|
||||
EnumSet.allOf(SexType.class)),
|
||||
HERALD("Academy of Heralds", new String[][]{
|
||||
{"Pupil"},
|
||||
{"Scribe"},
|
||||
@@ -2551,7 +2568,8 @@ public class Enum {
|
||||
{"Loremaster"}},
|
||||
new String[]{"Despot Rule", "Common Rule", "Council Rule", "Republic Rule"},
|
||||
EnumSet.allOf(PromoteType.class),
|
||||
EnumSet.allOf(MonsterType.class)),
|
||||
EnumSet.allOf(MonsterType.class),
|
||||
EnumSet.allOf(SexType.class)),
|
||||
CENTAUR("Centaur Cohort", new String[][]{
|
||||
{"Hoplite"},
|
||||
{"Peltast"},
|
||||
@@ -2565,7 +2583,8 @@ public class Enum {
|
||||
EnumSet.of(PromoteType.Barbarian, PromoteType.Crusader, PromoteType.Druid, PromoteType.Huntress,
|
||||
PromoteType.Prelate, PromoteType.Priest, PromoteType.Ranger, PromoteType.Sentinel,
|
||||
PromoteType.Warrior),
|
||||
EnumSet.of(MonsterType.Centaur)),
|
||||
EnumSet.of(MonsterType.Centaur),
|
||||
EnumSet.allOf(SexType.class)),
|
||||
KHREE("Aracoix Kh'ree", new String[][]{
|
||||
{"Duriacor"},
|
||||
{"Exarch"},
|
||||
@@ -2581,23 +2600,24 @@ public class Enum {
|
||||
EnumSet.of(PromoteType.Assassin, PromoteType.Barbarian, PromoteType.Bard, PromoteType.Huntress,
|
||||
PromoteType.Priest, PromoteType.Ranger, PromoteType.Scout, PromoteType.Thief,
|
||||
PromoteType.Warlock, PromoteType.Warrior),
|
||||
EnumSet.of(MonsterType.Aracoix));
|
||||
EnumSet.of(MonsterType.Aracoix),
|
||||
EnumSet.allOf(SexType.class));
|
||||
|
||||
private final String name;
|
||||
private final String[][] ranks; //Stored Rank#->Gender(M,F)
|
||||
private final String[] leadershipTypes;
|
||||
public final EnumSet<PromoteType> requiredClasses;
|
||||
public final EnumSet<MonsterType> requiredRaces;
|
||||
public final SexType sexRequired;
|
||||
public final EnumSet<SexType> sexRequired;
|
||||
|
||||
GuildCharterType(String name, String[][] ranks, String[] leadershipTypes, EnumSet<PromoteType> requiredClasses,
|
||||
EnumSet<MonsterType> requiredRaces) {
|
||||
EnumSet<MonsterType> requiredRaces, EnumSet<SexType> sexRequired) {
|
||||
this.name = name;
|
||||
this.ranks = ranks;
|
||||
this.leadershipTypes = leadershipTypes;
|
||||
this.requiredClasses = requiredClasses;
|
||||
this.requiredRaces = requiredRaces;
|
||||
this.sexRequired = DbManager.GuildQueries.LOAD_CHARTER_SEX_RESTRICTIONS(this.name);
|
||||
this.sexRequired = sexRequired;
|
||||
}
|
||||
|
||||
public static GuildCharterType getGuildTypeFromCharter(ItemBase itemBase) {
|
||||
|
||||
Reference in New Issue
Block a user