diff --git a/build.gradle.kts b/build.gradle.kts index 0e7f329..4f63638 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -26,6 +26,8 @@ repositories { dependencies { implementation("org.springframework.boot:spring-boot-starter-web") + implementation("org.springframework.boot:spring-boot-starter-webflux") + implementation("org.jsonschema2pojo:jsonschema2pojo-core:1.1.1") testImplementation("junit:junit:4.13.1") compileOnly("org.projectlombok:lombok") annotationProcessor("org.projectlombok:lombok") diff --git a/settings.gradle.kts b/settings.gradle.kts index 3269c94..9fd56d0 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -1,4 +1,5 @@ rootProject.name = "kessel-run" + pluginManagement { repositories { maven("https://nexus.misoenergy.org/repository/public/") diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/config/StarWarsApiConfig.java b/src/main/java/org/misoenergy/hackday/kessel_run/config/StarWarsApiConfig.java new file mode 100644 index 0000000..c798e7d --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/config/StarWarsApiConfig.java @@ -0,0 +1,20 @@ +package org.misoenergy.hackday.kessel_run.config; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.web.client.RestTemplate; +import org.springframework.web.reactive.function.client.WebClient; + +@Configuration +public class StarWarsApiConfig { + + @Bean + public RestTemplate restTemplate() { + return new RestTemplate(); + } + + @Bean + public WebClient.Builder webClient() { + return WebClient.builder(); + } +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/controller/StarWarsApiController.java b/src/main/java/org/misoenergy/hackday/kessel_run/controller/StarWarsApiController.java new file mode 100644 index 0000000..719b565 --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/controller/StarWarsApiController.java @@ -0,0 +1,32 @@ +package org.misoenergy.hackday.kessel_run.controller; + +import org.misoenergy.hackday.kessel_run.model.StarWarsPojo; +import org.misoenergy.hackday.kessel_run.service.StarWarsApiService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +@RestController +public class StarWarsApiController { + + @Autowired + StarWarsApiService starWarsApiService; + + @GetMapping("/class-data") + public List fetchClassData(){ + + List starWarsPojoList = starWarsApiService.getClassData(); + return starWarsPojoList; + + } + + @GetMapping("/generate-data") + public ResponseEntity generatePojoFromJSON () { + starWarsApiService.generatePojoFromJSON(); + + return ResponseEntity.ok().body("Json Generated Successfully"); + } +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/model/LevelChanges.java b/src/main/java/org/misoenergy/hackday/kessel_run/model/LevelChanges.java new file mode 100644 index 0000000..992ceeb --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/model/LevelChanges.java @@ -0,0 +1,533 @@ + +package org.misoenergy.hackday.kessel_run.model; + +import java.util.HashMap; +import java.util.Map; +import javax.annotation.processing.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "10", + "11", + "12", + "13", + "14", + "15", + "16", + "17", + "18", + "19", + "20" +}) +@Generated("jsonschema2pojo") +public class LevelChanges { + + @JsonProperty("1") + private org.misoenergy.hackday.kessel_run.model._1 _1; + @JsonProperty("2") + private org.misoenergy.hackday.kessel_run.model._2 _2; + @JsonProperty("3") + private org.misoenergy.hackday.kessel_run.model._3 _3; + @JsonProperty("4") + private org.misoenergy.hackday.kessel_run.model._4 _4; + @JsonProperty("5") + private org.misoenergy.hackday.kessel_run.model._5 _5; + @JsonProperty("6") + private org.misoenergy.hackday.kessel_run.model._6 _6; + @JsonProperty("7") + private org.misoenergy.hackday.kessel_run.model._7 _7; + @JsonProperty("8") + private org.misoenergy.hackday.kessel_run.model._8 _8; + @JsonProperty("9") + private org.misoenergy.hackday.kessel_run.model._9 _9; + @JsonProperty("10") + private org.misoenergy.hackday.kessel_run.model._10 _10; + @JsonProperty("11") + private org.misoenergy.hackday.kessel_run.model._11 _11; + @JsonProperty("12") + private org.misoenergy.hackday.kessel_run.model._12 _12; + @JsonProperty("13") + private org.misoenergy.hackday.kessel_run.model._13 _13; + @JsonProperty("14") + private org.misoenergy.hackday.kessel_run.model._14 _14; + @JsonProperty("15") + private org.misoenergy.hackday.kessel_run.model._15 _15; + @JsonProperty("16") + private org.misoenergy.hackday.kessel_run.model._16 _16; + @JsonProperty("17") + private org.misoenergy.hackday.kessel_run.model._17 _17; + @JsonProperty("18") + private org.misoenergy.hackday.kessel_run.model._18 _18; + @JsonProperty("19") + private org.misoenergy.hackday.kessel_run.model._19 _19; + @JsonProperty("20") + private org.misoenergy.hackday.kessel_run.model._20 _20; + @JsonIgnore + private Map additionalProperties = new HashMap(); + + @JsonProperty("1") + public org.misoenergy.hackday.kessel_run.model._1 get1() { + return _1; + } + + @JsonProperty("1") + public void set1(org.misoenergy.hackday.kessel_run.model._1 _1) { + this._1 = _1; + } + + public LevelChanges with1(org.misoenergy.hackday.kessel_run.model._1 _1) { + this._1 = _1; + return this; + } + + @JsonProperty("2") + public org.misoenergy.hackday.kessel_run.model._2 get2() { + return _2; + } + + @JsonProperty("2") + public void set2(org.misoenergy.hackday.kessel_run.model._2 _2) { + this._2 = _2; + } + + public LevelChanges with2(org.misoenergy.hackday.kessel_run.model._2 _2) { + this._2 = _2; + return this; + } + + @JsonProperty("3") + public org.misoenergy.hackday.kessel_run.model._3 get3() { + return _3; + } + + @JsonProperty("3") + public void set3(org.misoenergy.hackday.kessel_run.model._3 _3) { + this._3 = _3; + } + + public LevelChanges with3(org.misoenergy.hackday.kessel_run.model._3 _3) { + this._3 = _3; + return this; + } + + @JsonProperty("4") + public org.misoenergy.hackday.kessel_run.model._4 get4() { + return _4; + } + + @JsonProperty("4") + public void set4(org.misoenergy.hackday.kessel_run.model._4 _4) { + this._4 = _4; + } + + public LevelChanges with4(org.misoenergy.hackday.kessel_run.model._4 _4) { + this._4 = _4; + return this; + } + + @JsonProperty("5") + public org.misoenergy.hackday.kessel_run.model._5 get5() { + return _5; + } + + @JsonProperty("5") + public void set5(org.misoenergy.hackday.kessel_run.model._5 _5) { + this._5 = _5; + } + + public LevelChanges with5(org.misoenergy.hackday.kessel_run.model._5 _5) { + this._5 = _5; + return this; + } + + @JsonProperty("6") + public org.misoenergy.hackday.kessel_run.model._6 get6() { + return _6; + } + + @JsonProperty("6") + public void set6(org.misoenergy.hackday.kessel_run.model._6 _6) { + this._6 = _6; + } + + public LevelChanges with6(org.misoenergy.hackday.kessel_run.model._6 _6) { + this._6 = _6; + return this; + } + + @JsonProperty("7") + public org.misoenergy.hackday.kessel_run.model._7 get7() { + return _7; + } + + @JsonProperty("7") + public void set7(org.misoenergy.hackday.kessel_run.model._7 _7) { + this._7 = _7; + } + + public LevelChanges with7(org.misoenergy.hackday.kessel_run.model._7 _7) { + this._7 = _7; + return this; + } + + @JsonProperty("8") + public org.misoenergy.hackday.kessel_run.model._8 get8() { + return _8; + } + + @JsonProperty("8") + public void set8(org.misoenergy.hackday.kessel_run.model._8 _8) { + this._8 = _8; + } + + public LevelChanges with8(org.misoenergy.hackday.kessel_run.model._8 _8) { + this._8 = _8; + return this; + } + + @JsonProperty("9") + public org.misoenergy.hackday.kessel_run.model._9 get9() { + return _9; + } + + @JsonProperty("9") + public void set9(org.misoenergy.hackday.kessel_run.model._9 _9) { + this._9 = _9; + } + + public LevelChanges with9(org.misoenergy.hackday.kessel_run.model._9 _9) { + this._9 = _9; + return this; + } + + @JsonProperty("10") + public org.misoenergy.hackday.kessel_run.model._10 get10() { + return _10; + } + + @JsonProperty("10") + public void set10(org.misoenergy.hackday.kessel_run.model._10 _10) { + this._10 = _10; + } + + public LevelChanges with10(org.misoenergy.hackday.kessel_run.model._10 _10) { + this._10 = _10; + return this; + } + + @JsonProperty("11") + public org.misoenergy.hackday.kessel_run.model._11 get11() { + return _11; + } + + @JsonProperty("11") + public void set11(org.misoenergy.hackday.kessel_run.model._11 _11) { + this._11 = _11; + } + + public LevelChanges with11(org.misoenergy.hackday.kessel_run.model._11 _11) { + this._11 = _11; + return this; + } + + @JsonProperty("12") + public org.misoenergy.hackday.kessel_run.model._12 get12() { + return _12; + } + + @JsonProperty("12") + public void set12(org.misoenergy.hackday.kessel_run.model._12 _12) { + this._12 = _12; + } + + public LevelChanges with12(org.misoenergy.hackday.kessel_run.model._12 _12) { + this._12 = _12; + return this; + } + + @JsonProperty("13") + public org.misoenergy.hackday.kessel_run.model._13 get13() { + return _13; + } + + @JsonProperty("13") + public void set13(org.misoenergy.hackday.kessel_run.model._13 _13) { + this._13 = _13; + } + + public LevelChanges with13(org.misoenergy.hackday.kessel_run.model._13 _13) { + this._13 = _13; + return this; + } + + @JsonProperty("14") + public org.misoenergy.hackday.kessel_run.model._14 get14() { + return _14; + } + + @JsonProperty("14") + public void set14(org.misoenergy.hackday.kessel_run.model._14 _14) { + this._14 = _14; + } + + public LevelChanges with14(org.misoenergy.hackday.kessel_run.model._14 _14) { + this._14 = _14; + return this; + } + + @JsonProperty("15") + public org.misoenergy.hackday.kessel_run.model._15 get15() { + return _15; + } + + @JsonProperty("15") + public void set15(org.misoenergy.hackday.kessel_run.model._15 _15) { + this._15 = _15; + } + + public LevelChanges with15(org.misoenergy.hackday.kessel_run.model._15 _15) { + this._15 = _15; + return this; + } + + @JsonProperty("16") + public org.misoenergy.hackday.kessel_run.model._16 get16() { + return _16; + } + + @JsonProperty("16") + public void set16(org.misoenergy.hackday.kessel_run.model._16 _16) { + this._16 = _16; + } + + public LevelChanges with16(org.misoenergy.hackday.kessel_run.model._16 _16) { + this._16 = _16; + return this; + } + + @JsonProperty("17") + public org.misoenergy.hackday.kessel_run.model._17 get17() { + return _17; + } + + @JsonProperty("17") + public void set17(org.misoenergy.hackday.kessel_run.model._17 _17) { + this._17 = _17; + } + + public LevelChanges with17(org.misoenergy.hackday.kessel_run.model._17 _17) { + this._17 = _17; + return this; + } + + @JsonProperty("18") + public org.misoenergy.hackday.kessel_run.model._18 get18() { + return _18; + } + + @JsonProperty("18") + public void set18(org.misoenergy.hackday.kessel_run.model._18 _18) { + this._18 = _18; + } + + public LevelChanges with18(org.misoenergy.hackday.kessel_run.model._18 _18) { + this._18 = _18; + return this; + } + + @JsonProperty("19") + public org.misoenergy.hackday.kessel_run.model._19 get19() { + return _19; + } + + @JsonProperty("19") + public void set19(org.misoenergy.hackday.kessel_run.model._19 _19) { + this._19 = _19; + } + + public LevelChanges with19(org.misoenergy.hackday.kessel_run.model._19 _19) { + this._19 = _19; + return this; + } + + @JsonProperty("20") + public org.misoenergy.hackday.kessel_run.model._20 get20() { + return _20; + } + + @JsonProperty("20") + public void set20(org.misoenergy.hackday.kessel_run.model._20 _20) { + this._20 = _20; + } + + public LevelChanges with20(org.misoenergy.hackday.kessel_run.model._20 _20) { + this._20 = _20; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public LevelChanges withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(LevelChanges.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("_1"); + sb.append('='); + sb.append(((this._1 == null)?"":this._1)); + sb.append(','); + sb.append("_2"); + sb.append('='); + sb.append(((this._2 == null)?"":this._2)); + sb.append(','); + sb.append("_3"); + sb.append('='); + sb.append(((this._3 == null)?"":this._3)); + sb.append(','); + sb.append("_4"); + sb.append('='); + sb.append(((this._4 == null)?"":this._4)); + sb.append(','); + sb.append("_5"); + sb.append('='); + sb.append(((this._5 == null)?"":this._5)); + sb.append(','); + sb.append("_6"); + sb.append('='); + sb.append(((this._6 == null)?"":this._6)); + sb.append(','); + sb.append("_7"); + sb.append('='); + sb.append(((this._7 == null)?"":this._7)); + sb.append(','); + sb.append("_8"); + sb.append('='); + sb.append(((this._8 == null)?"":this._8)); + sb.append(','); + sb.append("_9"); + sb.append('='); + sb.append(((this._9 == null)?"":this._9)); + sb.append(','); + sb.append("_10"); + sb.append('='); + sb.append(((this._10 == null)?"":this._10)); + sb.append(','); + sb.append("_11"); + sb.append('='); + sb.append(((this._11 == null)?"":this._11)); + sb.append(','); + sb.append("_12"); + sb.append('='); + sb.append(((this._12 == null)?"":this._12)); + sb.append(','); + sb.append("_13"); + sb.append('='); + sb.append(((this._13 == null)?"":this._13)); + sb.append(','); + sb.append("_14"); + sb.append('='); + sb.append(((this._14 == null)?"":this._14)); + sb.append(','); + sb.append("_15"); + sb.append('='); + sb.append(((this._15 == null)?"":this._15)); + sb.append(','); + sb.append("_16"); + sb.append('='); + sb.append(((this._16 == null)?"":this._16)); + sb.append(','); + sb.append("_17"); + sb.append('='); + sb.append(((this._17 == null)?"":this._17)); + sb.append(','); + sb.append("_18"); + sb.append('='); + sb.append(((this._18 == null)?"":this._18)); + sb.append(','); + sb.append("_19"); + sb.append('='); + sb.append(((this._19 == null)?"":this._19)); + sb.append(','); + sb.append("_20"); + sb.append('='); + sb.append(((this._20 == null)?"":this._20)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this._13 == null)? 0 :this._13 .hashCode())); + result = ((result* 31)+((this._12 == null)? 0 :this._12 .hashCode())); + result = ((result* 31)+((this._15 == null)? 0 :this._15 .hashCode())); + result = ((result* 31)+((this._14 == null)? 0 :this._14 .hashCode())); + result = ((result* 31)+((this._17 == null)? 0 :this._17 .hashCode())); + result = ((result* 31)+((this._16 == null)? 0 :this._16 .hashCode())); + result = ((result* 31)+((this._19 == null)? 0 :this._19 .hashCode())); + result = ((result* 31)+((this._18 == null)? 0 :this._18 .hashCode())); + result = ((result* 31)+((this._1 == null)? 0 :this._1 .hashCode())); + result = ((result* 31)+((this._2 == null)? 0 :this._2 .hashCode())); + result = ((result* 31)+((this._3 == null)? 0 :this._3 .hashCode())); + result = ((result* 31)+((this._4 == null)? 0 :this._4 .hashCode())); + result = ((result* 31)+((this._5 == null)? 0 :this._5 .hashCode())); + result = ((result* 31)+((this._6 == null)? 0 :this._6 .hashCode())); + result = ((result* 31)+((this._7 == null)? 0 :this._7 .hashCode())); + result = ((result* 31)+((this._8 == null)? 0 :this._8 .hashCode())); + result = ((result* 31)+((this._9 == null)? 0 :this._9 .hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this._20 == null)? 0 :this._20 .hashCode())); + result = ((result* 31)+((this._11 == null)? 0 :this._11 .hashCode())); + result = ((result* 31)+((this._10 == null)? 0 :this._10 .hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof LevelChanges) == false) { + return false; + } + LevelChanges rhs = ((LevelChanges) other); + return ((((((((((((((((((((((this._13 == rhs._13)||((this._13 != null)&&this._13 .equals(rhs._13)))&&((this._12 == rhs._12)||((this._12 != null)&&this._12 .equals(rhs._12))))&&((this._15 == rhs._15)||((this._15 != null)&&this._15 .equals(rhs._15))))&&((this._14 == rhs._14)||((this._14 != null)&&this._14 .equals(rhs._14))))&&((this._17 == rhs._17)||((this._17 != null)&&this._17 .equals(rhs._17))))&&((this._16 == rhs._16)||((this._16 != null)&&this._16 .equals(rhs._16))))&&((this._19 == rhs._19)||((this._19 != null)&&this._19 .equals(rhs._19))))&&((this._18 == rhs._18)||((this._18 != null)&&this._18 .equals(rhs._18))))&&((this._1 == rhs._1)||((this._1 != null)&&this._1 .equals(rhs._1))))&&((this._2 == rhs._2)||((this._2 != null)&&this._2 .equals(rhs._2))))&&((this._3 == rhs._3)||((this._3 != null)&&this._3 .equals(rhs._3))))&&((this._4 == rhs._4)||((this._4 != null)&&this._4 .equals(rhs._4))))&&((this._5 == rhs._5)||((this._5 != null)&&this._5 .equals(rhs._5))))&&((this._6 == rhs._6)||((this._6 != null)&&this._6 .equals(rhs._6))))&&((this._7 == rhs._7)||((this._7 != null)&&this._7 .equals(rhs._7))))&&((this._8 == rhs._8)||((this._8 != null)&&this._8 .equals(rhs._8))))&&((this._9 == rhs._9)||((this._9 != null)&&this._9 .equals(rhs._9))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this._20 == rhs._20)||((this._20 != null)&&this._20 .equals(rhs._20))))&&((this._11 == rhs._11)||((this._11 != null)&&this._11 .equals(rhs._11))))&&((this._10 == rhs._10)||((this._10 != null)&&this._10 .equals(rhs._10)))); + } + +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/model/StarWarsPojo.java b/src/main/java/org/misoenergy/hackday/kessel_run/model/StarWarsPojo.java new file mode 100644 index 0000000..3d624f3 --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/model/StarWarsPojo.java @@ -0,0 +1,1337 @@ + +package org.misoenergy.hackday.kessel_run.model; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import javax.annotation.processing.Generated; + +import com.fasterxml.jackson.annotation.*; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "name", + "summary", + "primaryAbility", + "flavorText", + "creatingText", + "quickBuildText", + "levelChangeHeadersJson", + "levelChanges", + "levelChangesJson", + "hitDiceDieTypeEnum", + "hitDiceDieType", + "hitPointsAtFirstLevel", + "hitPointsAtHigherLevels", + "hitPointsAtFirstLevelNumber", + "hitPointsAtHigherLevelsNumber", + "armorProficiencies", + "armorProficienciesJson", + "weaponProficiencies", + "weaponProficienciesJson", + "toolProficiencies", + "toolProficienciesJson", + "toolProficienciesList", + "toolProficienciesListJson", + "savingThrows", + "savingThrowsJson", + "skillChoices", + "numSkillChoices", + "skillChoicesList", + "skillChoicesListJson", + "equipmentLines", + "equipmentLinesJson", + "startingWealthVariant", + "classFeatureText", + "classFeatureText2", + "archetypeFlavorText", + "archetypeFlavorName", + "archetypes", + "imageUrls", + "imageUrlsJson", + "casterRatio", + "casterTypeEnum", + "casterType", + "multiClassProficiencies", + "multiClassProficienciesJson", + "features", + "featureRowKeys", + "featureRowKeysJson", + "contentTypeEnum", + "contentType", + "contentSourceEnum", + "contentSource", + "partitionKey", + "rowKey", + "timestamp", + "eTag" +}) +@Generated("jsonschema2pojo") +@JsonIgnoreProperties(ignoreUnknown = true) +public class StarWarsPojo { + + @JsonProperty("name") + private String name; + @JsonProperty("summary") + private String summary; + @JsonProperty("primaryAbility") + private String primaryAbility; + @JsonProperty("flavorText") + private String flavorText; + @JsonProperty("creatingText") + private String creatingText; + @JsonProperty("quickBuildText") + private String quickBuildText; + @JsonProperty("levelChangeHeadersJson") + private String levelChangeHeadersJson; + @JsonProperty("levelChanges") + private LevelChanges levelChanges; + @JsonProperty("levelChangesJson") + private String levelChangesJson; + @JsonProperty("hitDiceDieTypeEnum") + private Integer hitDiceDieTypeEnum; + @JsonProperty("hitDiceDieType") + private Integer hitDiceDieType; + @JsonProperty("hitPointsAtFirstLevel") + private String hitPointsAtFirstLevel; + @JsonProperty("hitPointsAtHigherLevels") + private String hitPointsAtHigherLevels; + @JsonProperty("hitPointsAtFirstLevelNumber") + private Integer hitPointsAtFirstLevelNumber; + @JsonProperty("hitPointsAtHigherLevelsNumber") + private Integer hitPointsAtHigherLevelsNumber; + @JsonProperty("armorProficiencies") + private List armorProficiencies = new ArrayList(); + @JsonProperty("armorProficienciesJson") + private String armorProficienciesJson; + @JsonProperty("weaponProficiencies") + private List weaponProficiencies = new ArrayList(); + @JsonProperty("weaponProficienciesJson") + private String weaponProficienciesJson; + @JsonProperty("toolProficiencies") + private List toolProficiencies = new ArrayList(); + @JsonProperty("toolProficienciesJson") + private String toolProficienciesJson; + @JsonProperty("toolProficienciesList") + private List toolProficienciesList = new ArrayList(); + @JsonProperty("toolProficienciesListJson") + private String toolProficienciesListJson; + @JsonProperty("savingThrows") + private List savingThrows = new ArrayList(); + @JsonProperty("savingThrowsJson") + private String savingThrowsJson; + @JsonProperty("skillChoices") + private String skillChoices; + @JsonProperty("numSkillChoices") + private Integer numSkillChoices; + @JsonProperty("skillChoicesList") + private List skillChoicesList = new ArrayList(); + @JsonProperty("skillChoicesListJson") + private String skillChoicesListJson; + @JsonProperty("equipmentLines") + private List equipmentLines = new ArrayList(); + @JsonProperty("equipmentLinesJson") + private String equipmentLinesJson; + @JsonProperty("startingWealthVariant") + private String startingWealthVariant; + @JsonProperty("classFeatureText") + private String classFeatureText; + @JsonProperty("classFeatureText2") + private Object classFeatureText2; + @JsonProperty("archetypeFlavorText") + private String archetypeFlavorText; + @JsonProperty("archetypeFlavorName") + private String archetypeFlavorName; + @JsonProperty("archetypes") + private Object archetypes; + @JsonProperty("imageUrls") + private List imageUrls = new ArrayList(); + @JsonProperty("imageUrlsJson") + private String imageUrlsJson; + @JsonProperty("casterRatio") + private Double casterRatio; + @JsonProperty("casterTypeEnum") + private Integer casterTypeEnum; + @JsonProperty("casterType") + private String casterType; + @JsonProperty("multiClassProficiencies") + private List multiClassProficiencies = new ArrayList(); + @JsonProperty("multiClassProficienciesJson") + private String multiClassProficienciesJson; + @JsonProperty("features") + private Object features; + @JsonProperty("featureRowKeys") + private Object featureRowKeys; + @JsonProperty("featureRowKeysJson") + private String featureRowKeysJson; + @JsonProperty("contentTypeEnum") + private Integer contentTypeEnum; + @JsonProperty("contentType") + private String contentType; + @JsonProperty("contentSourceEnum") + private Integer contentSourceEnum; + @JsonProperty("contentSource") + private String contentSource; + @JsonProperty("partitionKey") + private String partitionKey; + @JsonProperty("rowKey") + private String rowKey; + @JsonProperty("timestamp") + private String timestamp; + @JsonProperty("eTag") + private String eTag; + @JsonIgnore + private Map additionalProperties = new HashMap(); + + @JsonProperty("name") + public String getName() { + return name; + } + + @JsonProperty("name") + public void setName(String name) { + this.name = name; + } + + public StarWarsPojo withName(String name) { + this.name = name; + return this; + } + + @JsonProperty("summary") + public String getSummary() { + return summary; + } + + @JsonProperty("summary") + public void setSummary(String summary) { + this.summary = summary; + } + + public StarWarsPojo withSummary(String summary) { + this.summary = summary; + return this; + } + + @JsonProperty("primaryAbility") + public String getPrimaryAbility() { + return primaryAbility; + } + + @JsonProperty("primaryAbility") + public void setPrimaryAbility(String primaryAbility) { + this.primaryAbility = primaryAbility; + } + + public StarWarsPojo withPrimaryAbility(String primaryAbility) { + this.primaryAbility = primaryAbility; + return this; + } + + @JsonProperty("flavorText") + public String getFlavorText() { + return flavorText; + } + + @JsonProperty("flavorText") + public void setFlavorText(String flavorText) { + this.flavorText = flavorText; + } + + public StarWarsPojo withFlavorText(String flavorText) { + this.flavorText = flavorText; + return this; + } + + @JsonProperty("creatingText") + public String getCreatingText() { + return creatingText; + } + + @JsonProperty("creatingText") + public void setCreatingText(String creatingText) { + this.creatingText = creatingText; + } + + public StarWarsPojo withCreatingText(String creatingText) { + this.creatingText = creatingText; + return this; + } + + @JsonProperty("quickBuildText") + public String getQuickBuildText() { + return quickBuildText; + } + + @JsonProperty("quickBuildText") + public void setQuickBuildText(String quickBuildText) { + this.quickBuildText = quickBuildText; + } + + public StarWarsPojo withQuickBuildText(String quickBuildText) { + this.quickBuildText = quickBuildText; + return this; + } + + @JsonProperty("levelChangeHeadersJson") + public String getLevelChangeHeadersJson() { + return levelChangeHeadersJson; + } + + @JsonProperty("levelChangeHeadersJson") + public void setLevelChangeHeadersJson(String levelChangeHeadersJson) { + this.levelChangeHeadersJson = levelChangeHeadersJson; + } + + public StarWarsPojo withLevelChangeHeadersJson(String levelChangeHeadersJson) { + this.levelChangeHeadersJson = levelChangeHeadersJson; + return this; + } + + @JsonProperty("levelChanges") + public LevelChanges getLevelChanges() { + return levelChanges; + } + + @JsonProperty("levelChanges") + public void setLevelChanges(LevelChanges levelChanges) { + this.levelChanges = levelChanges; + } + + public StarWarsPojo withLevelChanges(LevelChanges levelChanges) { + this.levelChanges = levelChanges; + return this; + } + + @JsonProperty("levelChangesJson") + public String getLevelChangesJson() { + return levelChangesJson; + } + + @JsonProperty("levelChangesJson") + public void setLevelChangesJson(String levelChangesJson) { + this.levelChangesJson = levelChangesJson; + } + + public StarWarsPojo withLevelChangesJson(String levelChangesJson) { + this.levelChangesJson = levelChangesJson; + return this; + } + + @JsonProperty("hitDiceDieTypeEnum") + public Integer getHitDiceDieTypeEnum() { + return hitDiceDieTypeEnum; + } + + @JsonProperty("hitDiceDieTypeEnum") + public void setHitDiceDieTypeEnum(Integer hitDiceDieTypeEnum) { + this.hitDiceDieTypeEnum = hitDiceDieTypeEnum; + } + + public StarWarsPojo withHitDiceDieTypeEnum(Integer hitDiceDieTypeEnum) { + this.hitDiceDieTypeEnum = hitDiceDieTypeEnum; + return this; + } + + @JsonProperty("hitDiceDieType") + public Integer getHitDiceDieType() { + return hitDiceDieType; + } + + @JsonProperty("hitDiceDieType") + public void setHitDiceDieType(Integer hitDiceDieType) { + this.hitDiceDieType = hitDiceDieType; + } + + public StarWarsPojo withHitDiceDieType(Integer hitDiceDieType) { + this.hitDiceDieType = hitDiceDieType; + return this; + } + + @JsonProperty("hitPointsAtFirstLevel") + public String getHitPointsAtFirstLevel() { + return hitPointsAtFirstLevel; + } + + @JsonProperty("hitPointsAtFirstLevel") + public void setHitPointsAtFirstLevel(String hitPointsAtFirstLevel) { + this.hitPointsAtFirstLevel = hitPointsAtFirstLevel; + } + + public StarWarsPojo withHitPointsAtFirstLevel(String hitPointsAtFirstLevel) { + this.hitPointsAtFirstLevel = hitPointsAtFirstLevel; + return this; + } + + @JsonProperty("hitPointsAtHigherLevels") + public String getHitPointsAtHigherLevels() { + return hitPointsAtHigherLevels; + } + + @JsonProperty("hitPointsAtHigherLevels") + public void setHitPointsAtHigherLevels(String hitPointsAtHigherLevels) { + this.hitPointsAtHigherLevels = hitPointsAtHigherLevels; + } + + public StarWarsPojo withHitPointsAtHigherLevels(String hitPointsAtHigherLevels) { + this.hitPointsAtHigherLevels = hitPointsAtHigherLevels; + return this; + } + + @JsonProperty("hitPointsAtFirstLevelNumber") + public Integer getHitPointsAtFirstLevelNumber() { + return hitPointsAtFirstLevelNumber; + } + + @JsonProperty("hitPointsAtFirstLevelNumber") + public void setHitPointsAtFirstLevelNumber(Integer hitPointsAtFirstLevelNumber) { + this.hitPointsAtFirstLevelNumber = hitPointsAtFirstLevelNumber; + } + + public StarWarsPojo withHitPointsAtFirstLevelNumber(Integer hitPointsAtFirstLevelNumber) { + this.hitPointsAtFirstLevelNumber = hitPointsAtFirstLevelNumber; + return this; + } + + @JsonProperty("hitPointsAtHigherLevelsNumber") + public Integer getHitPointsAtHigherLevelsNumber() { + return hitPointsAtHigherLevelsNumber; + } + + @JsonProperty("hitPointsAtHigherLevelsNumber") + public void setHitPointsAtHigherLevelsNumber(Integer hitPointsAtHigherLevelsNumber) { + this.hitPointsAtHigherLevelsNumber = hitPointsAtHigherLevelsNumber; + } + + public StarWarsPojo withHitPointsAtHigherLevelsNumber(Integer hitPointsAtHigherLevelsNumber) { + this.hitPointsAtHigherLevelsNumber = hitPointsAtHigherLevelsNumber; + return this; + } + + @JsonProperty("armorProficiencies") + public List getArmorProficiencies() { + return armorProficiencies; + } + + @JsonProperty("armorProficiencies") + public void setArmorProficiencies(List armorProficiencies) { + this.armorProficiencies = armorProficiencies; + } + + public StarWarsPojo withArmorProficiencies(List armorProficiencies) { + this.armorProficiencies = armorProficiencies; + return this; + } + + @JsonProperty("armorProficienciesJson") + public String getArmorProficienciesJson() { + return armorProficienciesJson; + } + + @JsonProperty("armorProficienciesJson") + public void setArmorProficienciesJson(String armorProficienciesJson) { + this.armorProficienciesJson = armorProficienciesJson; + } + + public StarWarsPojo withArmorProficienciesJson(String armorProficienciesJson) { + this.armorProficienciesJson = armorProficienciesJson; + return this; + } + + @JsonProperty("weaponProficiencies") + public List getWeaponProficiencies() { + return weaponProficiencies; + } + + @JsonProperty("weaponProficiencies") + public void setWeaponProficiencies(List weaponProficiencies) { + this.weaponProficiencies = weaponProficiencies; + } + + public StarWarsPojo withWeaponProficiencies(List weaponProficiencies) { + this.weaponProficiencies = weaponProficiencies; + return this; + } + + @JsonProperty("weaponProficienciesJson") + public String getWeaponProficienciesJson() { + return weaponProficienciesJson; + } + + @JsonProperty("weaponProficienciesJson") + public void setWeaponProficienciesJson(String weaponProficienciesJson) { + this.weaponProficienciesJson = weaponProficienciesJson; + } + + public StarWarsPojo withWeaponProficienciesJson(String weaponProficienciesJson) { + this.weaponProficienciesJson = weaponProficienciesJson; + return this; + } + + @JsonProperty("toolProficiencies") + public List getToolProficiencies() { + return toolProficiencies; + } + + @JsonProperty("toolProficiencies") + public void setToolProficiencies(List toolProficiencies) { + this.toolProficiencies = toolProficiencies; + } + + public StarWarsPojo withToolProficiencies(List toolProficiencies) { + this.toolProficiencies = toolProficiencies; + return this; + } + + @JsonProperty("toolProficienciesJson") + public String getToolProficienciesJson() { + return toolProficienciesJson; + } + + @JsonProperty("toolProficienciesJson") + public void setToolProficienciesJson(String toolProficienciesJson) { + this.toolProficienciesJson = toolProficienciesJson; + } + + public StarWarsPojo withToolProficienciesJson(String toolProficienciesJson) { + this.toolProficienciesJson = toolProficienciesJson; + return this; + } + + @JsonProperty("toolProficienciesList") + public List getToolProficienciesList() { + return toolProficienciesList; + } + + @JsonProperty("toolProficienciesList") + public void setToolProficienciesList(List toolProficienciesList) { + this.toolProficienciesList = toolProficienciesList; + } + + public StarWarsPojo withToolProficienciesList(List toolProficienciesList) { + this.toolProficienciesList = toolProficienciesList; + return this; + } + + @JsonProperty("toolProficienciesListJson") + public String getToolProficienciesListJson() { + return toolProficienciesListJson; + } + + @JsonProperty("toolProficienciesListJson") + public void setToolProficienciesListJson(String toolProficienciesListJson) { + this.toolProficienciesListJson = toolProficienciesListJson; + } + + public StarWarsPojo withToolProficienciesListJson(String toolProficienciesListJson) { + this.toolProficienciesListJson = toolProficienciesListJson; + return this; + } + + @JsonProperty("savingThrows") + public List getSavingThrows() { + return savingThrows; + } + + @JsonProperty("savingThrows") + public void setSavingThrows(List savingThrows) { + this.savingThrows = savingThrows; + } + + public StarWarsPojo withSavingThrows(List savingThrows) { + this.savingThrows = savingThrows; + return this; + } + + @JsonProperty("savingThrowsJson") + public String getSavingThrowsJson() { + return savingThrowsJson; + } + + @JsonProperty("savingThrowsJson") + public void setSavingThrowsJson(String savingThrowsJson) { + this.savingThrowsJson = savingThrowsJson; + } + + public StarWarsPojo withSavingThrowsJson(String savingThrowsJson) { + this.savingThrowsJson = savingThrowsJson; + return this; + } + + @JsonProperty("skillChoices") + public String getSkillChoices() { + return skillChoices; + } + + @JsonProperty("skillChoices") + public void setSkillChoices(String skillChoices) { + this.skillChoices = skillChoices; + } + + public StarWarsPojo withSkillChoices(String skillChoices) { + this.skillChoices = skillChoices; + return this; + } + + @JsonProperty("numSkillChoices") + public Integer getNumSkillChoices() { + return numSkillChoices; + } + + @JsonProperty("numSkillChoices") + public void setNumSkillChoices(Integer numSkillChoices) { + this.numSkillChoices = numSkillChoices; + } + + public StarWarsPojo withNumSkillChoices(Integer numSkillChoices) { + this.numSkillChoices = numSkillChoices; + return this; + } + + @JsonProperty("skillChoicesList") + public List getSkillChoicesList() { + return skillChoicesList; + } + + @JsonProperty("skillChoicesList") + public void setSkillChoicesList(List skillChoicesList) { + this.skillChoicesList = skillChoicesList; + } + + public StarWarsPojo withSkillChoicesList(List skillChoicesList) { + this.skillChoicesList = skillChoicesList; + return this; + } + + @JsonProperty("skillChoicesListJson") + public String getSkillChoicesListJson() { + return skillChoicesListJson; + } + + @JsonProperty("skillChoicesListJson") + public void setSkillChoicesListJson(String skillChoicesListJson) { + this.skillChoicesListJson = skillChoicesListJson; + } + + public StarWarsPojo withSkillChoicesListJson(String skillChoicesListJson) { + this.skillChoicesListJson = skillChoicesListJson; + return this; + } + + @JsonProperty("equipmentLines") + public List getEquipmentLines() { + return equipmentLines; + } + + @JsonProperty("equipmentLines") + public void setEquipmentLines(List equipmentLines) { + this.equipmentLines = equipmentLines; + } + + public StarWarsPojo withEquipmentLines(List equipmentLines) { + this.equipmentLines = equipmentLines; + return this; + } + + @JsonProperty("equipmentLinesJson") + public String getEquipmentLinesJson() { + return equipmentLinesJson; + } + + @JsonProperty("equipmentLinesJson") + public void setEquipmentLinesJson(String equipmentLinesJson) { + this.equipmentLinesJson = equipmentLinesJson; + } + + public StarWarsPojo withEquipmentLinesJson(String equipmentLinesJson) { + this.equipmentLinesJson = equipmentLinesJson; + return this; + } + + @JsonProperty("startingWealthVariant") + public String getStartingWealthVariant() { + return startingWealthVariant; + } + + @JsonProperty("startingWealthVariant") + public void setStartingWealthVariant(String startingWealthVariant) { + this.startingWealthVariant = startingWealthVariant; + } + + public StarWarsPojo withStartingWealthVariant(String startingWealthVariant) { + this.startingWealthVariant = startingWealthVariant; + return this; + } + + @JsonProperty("classFeatureText") + public String getClassFeatureText() { + return classFeatureText; + } + + @JsonProperty("classFeatureText") + public void setClassFeatureText(String classFeatureText) { + this.classFeatureText = classFeatureText; + } + + public StarWarsPojo withClassFeatureText(String classFeatureText) { + this.classFeatureText = classFeatureText; + return this; + } + + @JsonProperty("classFeatureText2") + public Object getClassFeatureText2() { + return classFeatureText2; + } + + @JsonProperty("classFeatureText2") + public void setClassFeatureText2(Object classFeatureText2) { + this.classFeatureText2 = classFeatureText2; + } + + public StarWarsPojo withClassFeatureText2(Object classFeatureText2) { + this.classFeatureText2 = classFeatureText2; + return this; + } + + @JsonProperty("archetypeFlavorText") + public String getArchetypeFlavorText() { + return archetypeFlavorText; + } + + @JsonProperty("archetypeFlavorText") + public void setArchetypeFlavorText(String archetypeFlavorText) { + this.archetypeFlavorText = archetypeFlavorText; + } + + public StarWarsPojo withArchetypeFlavorText(String archetypeFlavorText) { + this.archetypeFlavorText = archetypeFlavorText; + return this; + } + + @JsonProperty("archetypeFlavorName") + public String getArchetypeFlavorName() { + return archetypeFlavorName; + } + + @JsonProperty("archetypeFlavorName") + public void setArchetypeFlavorName(String archetypeFlavorName) { + this.archetypeFlavorName = archetypeFlavorName; + } + + public StarWarsPojo withArchetypeFlavorName(String archetypeFlavorName) { + this.archetypeFlavorName = archetypeFlavorName; + return this; + } + + @JsonProperty("archetypes") + public Object getArchetypes() { + return archetypes; + } + + @JsonProperty("archetypes") + public void setArchetypes(Object archetypes) { + this.archetypes = archetypes; + } + + public StarWarsPojo withArchetypes(Object archetypes) { + this.archetypes = archetypes; + return this; + } + + @JsonProperty("imageUrls") + public List getImageUrls() { + return imageUrls; + } + + @JsonProperty("imageUrls") + public void setImageUrls(List imageUrls) { + this.imageUrls = imageUrls; + } + + public StarWarsPojo withImageUrls(List imageUrls) { + this.imageUrls = imageUrls; + return this; + } + + @JsonProperty("imageUrlsJson") + public String getImageUrlsJson() { + return imageUrlsJson; + } + + @JsonProperty("imageUrlsJson") + public void setImageUrlsJson(String imageUrlsJson) { + this.imageUrlsJson = imageUrlsJson; + } + + public StarWarsPojo withImageUrlsJson(String imageUrlsJson) { + this.imageUrlsJson = imageUrlsJson; + return this; + } + + @JsonProperty("casterRatio") + public Double getCasterRatio() { + return casterRatio; + } + + @JsonProperty("casterRatio") + public void setCasterRatio(Double casterRatio) { + this.casterRatio = casterRatio; + } + + public StarWarsPojo withCasterRatio(Double casterRatio) { + this.casterRatio = casterRatio; + return this; + } + + @JsonProperty("casterTypeEnum") + public Integer getCasterTypeEnum() { + return casterTypeEnum; + } + + @JsonProperty("casterTypeEnum") + public void setCasterTypeEnum(Integer casterTypeEnum) { + this.casterTypeEnum = casterTypeEnum; + } + + public StarWarsPojo withCasterTypeEnum(Integer casterTypeEnum) { + this.casterTypeEnum = casterTypeEnum; + return this; + } + + @JsonProperty("casterType") + public String getCasterType() { + return casterType; + } + + @JsonProperty("casterType") + public void setCasterType(String casterType) { + this.casterType = casterType; + } + + public StarWarsPojo withCasterType(String casterType) { + this.casterType = casterType; + return this; + } + + @JsonProperty("multiClassProficiencies") + public List getMultiClassProficiencies() { + return multiClassProficiencies; + } + + @JsonProperty("multiClassProficiencies") + public void setMultiClassProficiencies(List multiClassProficiencies) { + this.multiClassProficiencies = multiClassProficiencies; + } + + public StarWarsPojo withMultiClassProficiencies(List multiClassProficiencies) { + this.multiClassProficiencies = multiClassProficiencies; + return this; + } + + @JsonProperty("multiClassProficienciesJson") + public String getMultiClassProficienciesJson() { + return multiClassProficienciesJson; + } + + @JsonProperty("multiClassProficienciesJson") + public void setMultiClassProficienciesJson(String multiClassProficienciesJson) { + this.multiClassProficienciesJson = multiClassProficienciesJson; + } + + public StarWarsPojo withMultiClassProficienciesJson(String multiClassProficienciesJson) { + this.multiClassProficienciesJson = multiClassProficienciesJson; + return this; + } + + @JsonProperty("features") + public Object getFeatures() { + return features; + } + + @JsonProperty("features") + public void setFeatures(Object features) { + this.features = features; + } + + public StarWarsPojo withFeatures(Object features) { + this.features = features; + return this; + } + + @JsonProperty("featureRowKeys") + public Object getFeatureRowKeys() { + return featureRowKeys; + } + + @JsonProperty("featureRowKeys") + public void setFeatureRowKeys(Object featureRowKeys) { + this.featureRowKeys = featureRowKeys; + } + + public StarWarsPojo withFeatureRowKeys(Object featureRowKeys) { + this.featureRowKeys = featureRowKeys; + return this; + } + + @JsonProperty("featureRowKeysJson") + public String getFeatureRowKeysJson() { + return featureRowKeysJson; + } + + @JsonProperty("featureRowKeysJson") + public void setFeatureRowKeysJson(String featureRowKeysJson) { + this.featureRowKeysJson = featureRowKeysJson; + } + + public StarWarsPojo withFeatureRowKeysJson(String featureRowKeysJson) { + this.featureRowKeysJson = featureRowKeysJson; + return this; + } + + @JsonProperty("contentTypeEnum") + public Integer getContentTypeEnum() { + return contentTypeEnum; + } + + @JsonProperty("contentTypeEnum") + public void setContentTypeEnum(Integer contentTypeEnum) { + this.contentTypeEnum = contentTypeEnum; + } + + public StarWarsPojo withContentTypeEnum(Integer contentTypeEnum) { + this.contentTypeEnum = contentTypeEnum; + return this; + } + + @JsonProperty("contentType") + public String getContentType() { + return contentType; + } + + @JsonProperty("contentType") + public void setContentType(String contentType) { + this.contentType = contentType; + } + + public StarWarsPojo withContentType(String contentType) { + this.contentType = contentType; + return this; + } + + @JsonProperty("contentSourceEnum") + public Integer getContentSourceEnum() { + return contentSourceEnum; + } + + @JsonProperty("contentSourceEnum") + public void setContentSourceEnum(Integer contentSourceEnum) { + this.contentSourceEnum = contentSourceEnum; + } + + public StarWarsPojo withContentSourceEnum(Integer contentSourceEnum) { + this.contentSourceEnum = contentSourceEnum; + return this; + } + + @JsonProperty("contentSource") + public String getContentSource() { + return contentSource; + } + + @JsonProperty("contentSource") + public void setContentSource(String contentSource) { + this.contentSource = contentSource; + } + + public StarWarsPojo withContentSource(String contentSource) { + this.contentSource = contentSource; + return this; + } + + @JsonProperty("partitionKey") + public String getPartitionKey() { + return partitionKey; + } + + @JsonProperty("partitionKey") + public void setPartitionKey(String partitionKey) { + this.partitionKey = partitionKey; + } + + public StarWarsPojo withPartitionKey(String partitionKey) { + this.partitionKey = partitionKey; + return this; + } + + @JsonProperty("rowKey") + public String getRowKey() { + return rowKey; + } + + @JsonProperty("rowKey") + public void setRowKey(String rowKey) { + this.rowKey = rowKey; + } + + public StarWarsPojo withRowKey(String rowKey) { + this.rowKey = rowKey; + return this; + } + + @JsonProperty("timestamp") + public String getTimestamp() { + return timestamp; + } + + @JsonProperty("timestamp") + public void setTimestamp(String timestamp) { + this.timestamp = timestamp; + } + + public StarWarsPojo withTimestamp(String timestamp) { + this.timestamp = timestamp; + return this; + } + + @JsonProperty("eTag") + public String geteTag() { + return eTag; + } + + @JsonProperty("eTag") + public void seteTag(String eTag) { + this.eTag = eTag; + } + + public StarWarsPojo witheTag(String eTag) { + this.eTag = eTag; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public StarWarsPojo withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(StarWarsPojo.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("name"); + sb.append('='); + sb.append(((this.name == null)?"":this.name)); + sb.append(','); + sb.append("summary"); + sb.append('='); + sb.append(((this.summary == null)?"":this.summary)); + sb.append(','); + sb.append("primaryAbility"); + sb.append('='); + sb.append(((this.primaryAbility == null)?"":this.primaryAbility)); + sb.append(','); + sb.append("flavorText"); + sb.append('='); + sb.append(((this.flavorText == null)?"":this.flavorText)); + sb.append(','); + sb.append("creatingText"); + sb.append('='); + sb.append(((this.creatingText == null)?"":this.creatingText)); + sb.append(','); + sb.append("quickBuildText"); + sb.append('='); + sb.append(((this.quickBuildText == null)?"":this.quickBuildText)); + sb.append(','); + sb.append("levelChangeHeadersJson"); + sb.append('='); + sb.append(((this.levelChangeHeadersJson == null)?"":this.levelChangeHeadersJson)); + sb.append(','); + sb.append("levelChanges"); + sb.append('='); + sb.append(((this.levelChanges == null)?"":this.levelChanges)); + sb.append(','); + sb.append("levelChangesJson"); + sb.append('='); + sb.append(((this.levelChangesJson == null)?"":this.levelChangesJson)); + sb.append(','); + sb.append("hitDiceDieTypeEnum"); + sb.append('='); + sb.append(((this.hitDiceDieTypeEnum == null)?"":this.hitDiceDieTypeEnum)); + sb.append(','); + sb.append("hitDiceDieType"); + sb.append('='); + sb.append(((this.hitDiceDieType == null)?"":this.hitDiceDieType)); + sb.append(','); + sb.append("hitPointsAtFirstLevel"); + sb.append('='); + sb.append(((this.hitPointsAtFirstLevel == null)?"":this.hitPointsAtFirstLevel)); + sb.append(','); + sb.append("hitPointsAtHigherLevels"); + sb.append('='); + sb.append(((this.hitPointsAtHigherLevels == null)?"":this.hitPointsAtHigherLevels)); + sb.append(','); + sb.append("hitPointsAtFirstLevelNumber"); + sb.append('='); + sb.append(((this.hitPointsAtFirstLevelNumber == null)?"":this.hitPointsAtFirstLevelNumber)); + sb.append(','); + sb.append("hitPointsAtHigherLevelsNumber"); + sb.append('='); + sb.append(((this.hitPointsAtHigherLevelsNumber == null)?"":this.hitPointsAtHigherLevelsNumber)); + sb.append(','); + sb.append("armorProficiencies"); + sb.append('='); + sb.append(((this.armorProficiencies == null)?"":this.armorProficiencies)); + sb.append(','); + sb.append("armorProficienciesJson"); + sb.append('='); + sb.append(((this.armorProficienciesJson == null)?"":this.armorProficienciesJson)); + sb.append(','); + sb.append("weaponProficiencies"); + sb.append('='); + sb.append(((this.weaponProficiencies == null)?"":this.weaponProficiencies)); + sb.append(','); + sb.append("weaponProficienciesJson"); + sb.append('='); + sb.append(((this.weaponProficienciesJson == null)?"":this.weaponProficienciesJson)); + sb.append(','); + sb.append("toolProficiencies"); + sb.append('='); + sb.append(((this.toolProficiencies == null)?"":this.toolProficiencies)); + sb.append(','); + sb.append("toolProficienciesJson"); + sb.append('='); + sb.append(((this.toolProficienciesJson == null)?"":this.toolProficienciesJson)); + sb.append(','); + sb.append("toolProficienciesList"); + sb.append('='); + sb.append(((this.toolProficienciesList == null)?"":this.toolProficienciesList)); + sb.append(','); + sb.append("toolProficienciesListJson"); + sb.append('='); + sb.append(((this.toolProficienciesListJson == null)?"":this.toolProficienciesListJson)); + sb.append(','); + sb.append("savingThrows"); + sb.append('='); + sb.append(((this.savingThrows == null)?"":this.savingThrows)); + sb.append(','); + sb.append("savingThrowsJson"); + sb.append('='); + sb.append(((this.savingThrowsJson == null)?"":this.savingThrowsJson)); + sb.append(','); + sb.append("skillChoices"); + sb.append('='); + sb.append(((this.skillChoices == null)?"":this.skillChoices)); + sb.append(','); + sb.append("numSkillChoices"); + sb.append('='); + sb.append(((this.numSkillChoices == null)?"":this.numSkillChoices)); + sb.append(','); + sb.append("skillChoicesList"); + sb.append('='); + sb.append(((this.skillChoicesList == null)?"":this.skillChoicesList)); + sb.append(','); + sb.append("skillChoicesListJson"); + sb.append('='); + sb.append(((this.skillChoicesListJson == null)?"":this.skillChoicesListJson)); + sb.append(','); + sb.append("equipmentLines"); + sb.append('='); + sb.append(((this.equipmentLines == null)?"":this.equipmentLines)); + sb.append(','); + sb.append("equipmentLinesJson"); + sb.append('='); + sb.append(((this.equipmentLinesJson == null)?"":this.equipmentLinesJson)); + sb.append(','); + sb.append("startingWealthVariant"); + sb.append('='); + sb.append(((this.startingWealthVariant == null)?"":this.startingWealthVariant)); + sb.append(','); + sb.append("classFeatureText"); + sb.append('='); + sb.append(((this.classFeatureText == null)?"":this.classFeatureText)); + sb.append(','); + sb.append("classFeatureText2"); + sb.append('='); + sb.append(((this.classFeatureText2 == null)?"":this.classFeatureText2)); + sb.append(','); + sb.append("archetypeFlavorText"); + sb.append('='); + sb.append(((this.archetypeFlavorText == null)?"":this.archetypeFlavorText)); + sb.append(','); + sb.append("archetypeFlavorName"); + sb.append('='); + sb.append(((this.archetypeFlavorName == null)?"":this.archetypeFlavorName)); + sb.append(','); + sb.append("archetypes"); + sb.append('='); + sb.append(((this.archetypes == null)?"":this.archetypes)); + sb.append(','); + sb.append("imageUrls"); + sb.append('='); + sb.append(((this.imageUrls == null)?"":this.imageUrls)); + sb.append(','); + sb.append("imageUrlsJson"); + sb.append('='); + sb.append(((this.imageUrlsJson == null)?"":this.imageUrlsJson)); + sb.append(','); + sb.append("casterRatio"); + sb.append('='); + sb.append(((this.casterRatio == null)?"":this.casterRatio)); + sb.append(','); + sb.append("casterTypeEnum"); + sb.append('='); + sb.append(((this.casterTypeEnum == null)?"":this.casterTypeEnum)); + sb.append(','); + sb.append("casterType"); + sb.append('='); + sb.append(((this.casterType == null)?"":this.casterType)); + sb.append(','); + sb.append("multiClassProficiencies"); + sb.append('='); + sb.append(((this.multiClassProficiencies == null)?"":this.multiClassProficiencies)); + sb.append(','); + sb.append("multiClassProficienciesJson"); + sb.append('='); + sb.append(((this.multiClassProficienciesJson == null)?"":this.multiClassProficienciesJson)); + sb.append(','); + sb.append("features"); + sb.append('='); + sb.append(((this.features == null)?"":this.features)); + sb.append(','); + sb.append("featureRowKeys"); + sb.append('='); + sb.append(((this.featureRowKeys == null)?"":this.featureRowKeys)); + sb.append(','); + sb.append("featureRowKeysJson"); + sb.append('='); + sb.append(((this.featureRowKeysJson == null)?"":this.featureRowKeysJson)); + sb.append(','); + sb.append("contentTypeEnum"); + sb.append('='); + sb.append(((this.contentTypeEnum == null)?"":this.contentTypeEnum)); + sb.append(','); + sb.append("contentType"); + sb.append('='); + sb.append(((this.contentType == null)?"":this.contentType)); + sb.append(','); + sb.append("contentSourceEnum"); + sb.append('='); + sb.append(((this.contentSourceEnum == null)?"":this.contentSourceEnum)); + sb.append(','); + sb.append("contentSource"); + sb.append('='); + sb.append(((this.contentSource == null)?"":this.contentSource)); + sb.append(','); + sb.append("partitionKey"); + sb.append('='); + sb.append(((this.partitionKey == null)?"":this.partitionKey)); + sb.append(','); + sb.append("rowKey"); + sb.append('='); + sb.append(((this.rowKey == null)?"":this.rowKey)); + sb.append(','); + sb.append("timestamp"); + sb.append('='); + sb.append(((this.timestamp == null)?"":this.timestamp)); + sb.append(','); + sb.append("eTag"); + sb.append('='); + sb.append(((this.eTag == null)?"":this.eTag)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.flavorText == null)? 0 :this.flavorText.hashCode())); + result = ((result* 31)+((this.levelChangeHeadersJson == null)? 0 :this.levelChangeHeadersJson.hashCode())); + result = ((result* 31)+((this.equipmentLinesJson == null)? 0 :this.equipmentLinesJson.hashCode())); + result = ((result* 31)+((this.skillChoices == null)? 0 :this.skillChoices.hashCode())); + result = ((result* 31)+((this.toolProficiencies == null)? 0 :this.toolProficiencies.hashCode())); + result = ((result* 31)+((this.casterType == null)? 0 :this.casterType.hashCode())); + result = ((result* 31)+((this.features == null)? 0 :this.features.hashCode())); + result = ((result* 31)+((this.weaponProficiencies == null)? 0 :this.weaponProficiencies.hashCode())); + result = ((result* 31)+((this.archetypeFlavorName == null)? 0 :this.archetypeFlavorName.hashCode())); + result = ((result* 31)+((this.contentType == null)? 0 :this.contentType.hashCode())); + result = ((result* 31)+((this.toolProficienciesListJson == null)? 0 :this.toolProficienciesListJson.hashCode())); + result = ((result* 31)+((this.hitPointsAtHigherLevelsNumber == null)? 0 :this.hitPointsAtHigherLevelsNumber.hashCode())); + result = ((result* 31)+((this.featureRowKeys == null)? 0 :this.featureRowKeys.hashCode())); + result = ((result* 31)+((this.casterRatio == null)? 0 :this.casterRatio.hashCode())); + result = ((result* 31)+((this.numSkillChoices == null)? 0 :this.numSkillChoices.hashCode())); + result = ((result* 31)+((this.hitDiceDieTypeEnum == null)? 0 :this.hitDiceDieTypeEnum.hashCode())); + result = ((result* 31)+((this.hitDiceDieType == null)? 0 :this.hitDiceDieType.hashCode())); + result = ((result* 31)+((this.contentSource == null)? 0 :this.contentSource.hashCode())); + result = ((result* 31)+((this.classFeatureText == null)? 0 :this.classFeatureText.hashCode())); + result = ((result* 31)+((this.name == null)? 0 :this.name.hashCode())); + result = ((result* 31)+((this.hitPointsAtHigherLevels == null)? 0 :this.hitPointsAtHigherLevels.hashCode())); + result = ((result* 31)+((this.multiClassProficiencies == null)? 0 :this.multiClassProficiencies.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.weaponProficienciesJson == null)? 0 :this.weaponProficienciesJson.hashCode())); + result = ((result* 31)+((this.equipmentLines == null)? 0 :this.equipmentLines.hashCode())); + result = ((result* 31)+((this.toolProficienciesList == null)? 0 :this.toolProficienciesList.hashCode())); + result = ((result* 31)+((this.imageUrlsJson == null)? 0 :this.imageUrlsJson.hashCode())); + result = ((result* 31)+((this.armorProficiencies == null)? 0 :this.armorProficiencies.hashCode())); + result = ((result* 31)+((this.toolProficienciesJson == null)? 0 :this.toolProficienciesJson.hashCode())); + result = ((result* 31)+((this.primaryAbility == null)? 0 :this.primaryAbility.hashCode())); + result = ((result* 31)+((this.startingWealthVariant == null)? 0 :this.startingWealthVariant.hashCode())); + result = ((result* 31)+((this.archetypes == null)? 0 :this.archetypes.hashCode())); + result = ((result* 31)+((this.partitionKey == null)? 0 :this.partitionKey.hashCode())); + result = ((result* 31)+((this.levelChanges == null)? 0 :this.levelChanges.hashCode())); + result = ((result* 31)+((this.eTag == null)? 0 :this.eTag.hashCode())); + result = ((result* 31)+((this.armorProficienciesJson == null)? 0 :this.armorProficienciesJson.hashCode())); + result = ((result* 31)+((this.timestamp == null)? 0 :this.timestamp.hashCode())); + result = ((result* 31)+((this.summary == null)? 0 :this.summary.hashCode())); + result = ((result* 31)+((this.skillChoicesList == null)? 0 :this.skillChoicesList.hashCode())); + result = ((result* 31)+((this.hitPointsAtFirstLevelNumber == null)? 0 :this.hitPointsAtFirstLevelNumber.hashCode())); + result = ((result* 31)+((this.casterTypeEnum == null)? 0 :this.casterTypeEnum.hashCode())); + result = ((result* 31)+((this.featureRowKeysJson == null)? 0 :this.featureRowKeysJson.hashCode())); + result = ((result* 31)+((this.levelChangesJson == null)? 0 :this.levelChangesJson.hashCode())); + result = ((result* 31)+((this.savingThrowsJson == null)? 0 :this.savingThrowsJson.hashCode())); + result = ((result* 31)+((this.contentTypeEnum == null)? 0 :this.contentTypeEnum.hashCode())); + result = ((result* 31)+((this.hitPointsAtFirstLevel == null)? 0 :this.hitPointsAtFirstLevel.hashCode())); + result = ((result* 31)+((this.savingThrows == null)? 0 :this.savingThrows.hashCode())); + result = ((result* 31)+((this.classFeatureText2 == null)? 0 :this.classFeatureText2 .hashCode())); + result = ((result* 31)+((this.archetypeFlavorText == null)? 0 :this.archetypeFlavorText.hashCode())); + result = ((result* 31)+((this.multiClassProficienciesJson == null)? 0 :this.multiClassProficienciesJson.hashCode())); + result = ((result* 31)+((this.quickBuildText == null)? 0 :this.quickBuildText.hashCode())); + result = ((result* 31)+((this.creatingText == null)? 0 :this.creatingText.hashCode())); + result = ((result* 31)+((this.imageUrls == null)? 0 :this.imageUrls.hashCode())); + result = ((result* 31)+((this.skillChoicesListJson == null)? 0 :this.skillChoicesListJson.hashCode())); + result = ((result* 31)+((this.rowKey == null)? 0 :this.rowKey.hashCode())); + result = ((result* 31)+((this.contentSourceEnum == null)? 0 :this.contentSourceEnum.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof StarWarsPojo) == false) { + return false; + } + StarWarsPojo rhs = ((StarWarsPojo) other); + return (((((((((((((((((((((((((((((((((((((((((((((((((((((((((this.flavorText == rhs.flavorText)||((this.flavorText!= null)&&this.flavorText.equals(rhs.flavorText)))&&((this.levelChangeHeadersJson == rhs.levelChangeHeadersJson)||((this.levelChangeHeadersJson!= null)&&this.levelChangeHeadersJson.equals(rhs.levelChangeHeadersJson))))&&((this.equipmentLinesJson == rhs.equipmentLinesJson)||((this.equipmentLinesJson!= null)&&this.equipmentLinesJson.equals(rhs.equipmentLinesJson))))&&((this.skillChoices == rhs.skillChoices)||((this.skillChoices!= null)&&this.skillChoices.equals(rhs.skillChoices))))&&((this.toolProficiencies == rhs.toolProficiencies)||((this.toolProficiencies!= null)&&this.toolProficiencies.equals(rhs.toolProficiencies))))&&((this.casterType == rhs.casterType)||((this.casterType!= null)&&this.casterType.equals(rhs.casterType))))&&((this.features == rhs.features)||((this.features!= null)&&this.features.equals(rhs.features))))&&((this.weaponProficiencies == rhs.weaponProficiencies)||((this.weaponProficiencies!= null)&&this.weaponProficiencies.equals(rhs.weaponProficiencies))))&&((this.archetypeFlavorName == rhs.archetypeFlavorName)||((this.archetypeFlavorName!= null)&&this.archetypeFlavorName.equals(rhs.archetypeFlavorName))))&&((this.contentType == rhs.contentType)||((this.contentType!= null)&&this.contentType.equals(rhs.contentType))))&&((this.toolProficienciesListJson == rhs.toolProficienciesListJson)||((this.toolProficienciesListJson!= null)&&this.toolProficienciesListJson.equals(rhs.toolProficienciesListJson))))&&((this.hitPointsAtHigherLevelsNumber == rhs.hitPointsAtHigherLevelsNumber)||((this.hitPointsAtHigherLevelsNumber!= null)&&this.hitPointsAtHigherLevelsNumber.equals(rhs.hitPointsAtHigherLevelsNumber))))&&((this.featureRowKeys == rhs.featureRowKeys)||((this.featureRowKeys!= null)&&this.featureRowKeys.equals(rhs.featureRowKeys))))&&((this.casterRatio == rhs.casterRatio)||((this.casterRatio!= null)&&this.casterRatio.equals(rhs.casterRatio))))&&((this.numSkillChoices == rhs.numSkillChoices)||((this.numSkillChoices!= null)&&this.numSkillChoices.equals(rhs.numSkillChoices))))&&((this.hitDiceDieTypeEnum == rhs.hitDiceDieTypeEnum)||((this.hitDiceDieTypeEnum!= null)&&this.hitDiceDieTypeEnum.equals(rhs.hitDiceDieTypeEnum))))&&((this.hitDiceDieType == rhs.hitDiceDieType)||((this.hitDiceDieType!= null)&&this.hitDiceDieType.equals(rhs.hitDiceDieType))))&&((this.contentSource == rhs.contentSource)||((this.contentSource!= null)&&this.contentSource.equals(rhs.contentSource))))&&((this.classFeatureText == rhs.classFeatureText)||((this.classFeatureText!= null)&&this.classFeatureText.equals(rhs.classFeatureText))))&&((this.name == rhs.name)||((this.name!= null)&&this.name.equals(rhs.name))))&&((this.hitPointsAtHigherLevels == rhs.hitPointsAtHigherLevels)||((this.hitPointsAtHigherLevels!= null)&&this.hitPointsAtHigherLevels.equals(rhs.hitPointsAtHigherLevels))))&&((this.multiClassProficiencies == rhs.multiClassProficiencies)||((this.multiClassProficiencies!= null)&&this.multiClassProficiencies.equals(rhs.multiClassProficiencies))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.weaponProficienciesJson == rhs.weaponProficienciesJson)||((this.weaponProficienciesJson!= null)&&this.weaponProficienciesJson.equals(rhs.weaponProficienciesJson))))&&((this.equipmentLines == rhs.equipmentLines)||((this.equipmentLines!= null)&&this.equipmentLines.equals(rhs.equipmentLines))))&&((this.toolProficienciesList == rhs.toolProficienciesList)||((this.toolProficienciesList!= null)&&this.toolProficienciesList.equals(rhs.toolProficienciesList))))&&((this.imageUrlsJson == rhs.imageUrlsJson)||((this.imageUrlsJson!= null)&&this.imageUrlsJson.equals(rhs.imageUrlsJson))))&&((this.armorProficiencies == rhs.armorProficiencies)||((this.armorProficiencies!= null)&&this.armorProficiencies.equals(rhs.armorProficiencies))))&&((this.toolProficienciesJson == rhs.toolProficienciesJson)||((this.toolProficienciesJson!= null)&&this.toolProficienciesJson.equals(rhs.toolProficienciesJson))))&&((this.primaryAbility == rhs.primaryAbility)||((this.primaryAbility!= null)&&this.primaryAbility.equals(rhs.primaryAbility))))&&((this.startingWealthVariant == rhs.startingWealthVariant)||((this.startingWealthVariant!= null)&&this.startingWealthVariant.equals(rhs.startingWealthVariant))))&&((this.archetypes == rhs.archetypes)||((this.archetypes!= null)&&this.archetypes.equals(rhs.archetypes))))&&((this.partitionKey == rhs.partitionKey)||((this.partitionKey!= null)&&this.partitionKey.equals(rhs.partitionKey))))&&((this.levelChanges == rhs.levelChanges)||((this.levelChanges!= null)&&this.levelChanges.equals(rhs.levelChanges))))&&((this.eTag == rhs.eTag)||((this.eTag!= null)&&this.eTag.equals(rhs.eTag))))&&((this.armorProficienciesJson == rhs.armorProficienciesJson)||((this.armorProficienciesJson!= null)&&this.armorProficienciesJson.equals(rhs.armorProficienciesJson))))&&((this.timestamp == rhs.timestamp)||((this.timestamp!= null)&&this.timestamp.equals(rhs.timestamp))))&&((this.summary == rhs.summary)||((this.summary!= null)&&this.summary.equals(rhs.summary))))&&((this.skillChoicesList == rhs.skillChoicesList)||((this.skillChoicesList!= null)&&this.skillChoicesList.equals(rhs.skillChoicesList))))&&((this.hitPointsAtFirstLevelNumber == rhs.hitPointsAtFirstLevelNumber)||((this.hitPointsAtFirstLevelNumber!= null)&&this.hitPointsAtFirstLevelNumber.equals(rhs.hitPointsAtFirstLevelNumber))))&&((this.casterTypeEnum == rhs.casterTypeEnum)||((this.casterTypeEnum!= null)&&this.casterTypeEnum.equals(rhs.casterTypeEnum))))&&((this.featureRowKeysJson == rhs.featureRowKeysJson)||((this.featureRowKeysJson!= null)&&this.featureRowKeysJson.equals(rhs.featureRowKeysJson))))&&((this.levelChangesJson == rhs.levelChangesJson)||((this.levelChangesJson!= null)&&this.levelChangesJson.equals(rhs.levelChangesJson))))&&((this.savingThrowsJson == rhs.savingThrowsJson)||((this.savingThrowsJson!= null)&&this.savingThrowsJson.equals(rhs.savingThrowsJson))))&&((this.contentTypeEnum == rhs.contentTypeEnum)||((this.contentTypeEnum!= null)&&this.contentTypeEnum.equals(rhs.contentTypeEnum))))&&((this.hitPointsAtFirstLevel == rhs.hitPointsAtFirstLevel)||((this.hitPointsAtFirstLevel!= null)&&this.hitPointsAtFirstLevel.equals(rhs.hitPointsAtFirstLevel))))&&((this.savingThrows == rhs.savingThrows)||((this.savingThrows!= null)&&this.savingThrows.equals(rhs.savingThrows))))&&((this.classFeatureText2 == rhs.classFeatureText2)||((this.classFeatureText2 != null)&&this.classFeatureText2 .equals(rhs.classFeatureText2))))&&((this.archetypeFlavorText == rhs.archetypeFlavorText)||((this.archetypeFlavorText!= null)&&this.archetypeFlavorText.equals(rhs.archetypeFlavorText))))&&((this.multiClassProficienciesJson == rhs.multiClassProficienciesJson)||((this.multiClassProficienciesJson!= null)&&this.multiClassProficienciesJson.equals(rhs.multiClassProficienciesJson))))&&((this.quickBuildText == rhs.quickBuildText)||((this.quickBuildText!= null)&&this.quickBuildText.equals(rhs.quickBuildText))))&&((this.creatingText == rhs.creatingText)||((this.creatingText!= null)&&this.creatingText.equals(rhs.creatingText))))&&((this.imageUrls == rhs.imageUrls)||((this.imageUrls!= null)&&this.imageUrls.equals(rhs.imageUrls))))&&((this.skillChoicesListJson == rhs.skillChoicesListJson)||((this.skillChoicesListJson!= null)&&this.skillChoicesListJson.equals(rhs.skillChoicesListJson))))&&((this.rowKey == rhs.rowKey)||((this.rowKey!= null)&&this.rowKey.equals(rhs.rowKey))))&&((this.contentSourceEnum == rhs.contentSourceEnum)||((this.contentSourceEnum!= null)&&this.contentSourceEnum.equals(rhs.contentSourceEnum)))); + } + +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/model/_1.java b/src/main/java/org/misoenergy/hackday/kessel_run/model/_1.java new file mode 100644 index 0000000..32327b0 --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/model/_1.java @@ -0,0 +1,855 @@ + +package org.misoenergy.hackday.kessel_run.model; + +import java.util.HashMap; +import java.util.Map; +import javax.annotation.processing.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "Level", + "Proficiency Bonus", + "Features", + "Rages", + "Rage Damage", + "Berserker Instincts", + "Force Powers Known", + "Force Points", + "Max Power Level", + "Force-Empowered Casting Options", + "Tech Powers Known", + "Tech Points", + "Potent Aptitude", + "Modification Slots", + "Maneuvers Known", + "Superiority Dice Quantity", + "Superiority Dice Size", + "Strategies Known", + "Focused Strikes", + "Auras Known", + "Aura Radius", + "Martial Arts", + "Focus Points", + "Monastic Vows", + "Unarmored Movement", + "Sneak Attack", + "Operative Exploits", + "Discoveries", + "Ranger's Quarry", + "Routines Known", + "Routine Radius", + "Kinetic Combat", + "Ideals Known", + "Ideal Manifests" +}) +@Generated("jsonschema2pojo") +public class _1 { + + @JsonProperty("Level") + private String level; + @JsonProperty("Proficiency Bonus") + private String proficiencyBonus; + @JsonProperty("Features") + private String features; + @JsonProperty("Rages") + private String rages; + @JsonProperty("Rage Damage") + private String rageDamage; + @JsonProperty("Berserker Instincts") + private String berserkerInstincts; + @JsonProperty("Force Powers Known") + private String forcePowersKnown; + @JsonProperty("Force Points") + private String forcePoints; + @JsonProperty("Max Power Level") + private String maxPowerLevel; + @JsonProperty("Force-Empowered Casting Options") + private String forceEmpoweredCastingOptions; + @JsonProperty("Tech Powers Known") + private String techPowersKnown; + @JsonProperty("Tech Points") + private String techPoints; + @JsonProperty("Potent Aptitude") + private String potentAptitude; + @JsonProperty("Modification Slots") + private String modificationSlots; + @JsonProperty("Maneuvers Known") + private String maneuversKnown; + @JsonProperty("Superiority Dice Quantity") + private String superiorityDiceQuantity; + @JsonProperty("Superiority Dice Size") + private String superiorityDiceSize; + @JsonProperty("Strategies Known") + private String strategiesKnown; + @JsonProperty("Focused Strikes") + private String focusedStrikes; + @JsonProperty("Auras Known") + private String aurasKnown; + @JsonProperty("Aura Radius") + private String auraRadius; + @JsonProperty("Martial Arts") + private String martialArts; + @JsonProperty("Focus Points") + private String focusPoints; + @JsonProperty("Monastic Vows") + private String monasticVows; + @JsonProperty("Unarmored Movement") + private String unarmoredMovement; + @JsonProperty("Sneak Attack") + private String sneakAttack; + @JsonProperty("Operative Exploits") + private String operativeExploits; + @JsonProperty("Discoveries") + private String discoveries; + @JsonProperty("Ranger's Quarry") + private String rangerSQuarry; + @JsonProperty("Routines Known") + private String routinesKnown; + @JsonProperty("Routine Radius") + private String routineRadius; + @JsonProperty("Kinetic Combat") + private String kineticCombat; + @JsonProperty("Ideals Known") + private String idealsKnown; + @JsonProperty("Ideal Manifests") + private String idealManifests; + @JsonIgnore + private Map additionalProperties = new HashMap(); + + @JsonProperty("Level") + public String getLevel() { + return level; + } + + @JsonProperty("Level") + public void setLevel(String level) { + this.level = level; + } + + public _1 withLevel(String level) { + this.level = level; + return this; + } + + @JsonProperty("Proficiency Bonus") + public String getProficiencyBonus() { + return proficiencyBonus; + } + + @JsonProperty("Proficiency Bonus") + public void setProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + } + + public _1 withProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + return this; + } + + @JsonProperty("Features") + public String getFeatures() { + return features; + } + + @JsonProperty("Features") + public void setFeatures(String features) { + this.features = features; + } + + public _1 withFeatures(String features) { + this.features = features; + return this; + } + + @JsonProperty("Rages") + public String getRages() { + return rages; + } + + @JsonProperty("Rages") + public void setRages(String rages) { + this.rages = rages; + } + + public _1 withRages(String rages) { + this.rages = rages; + return this; + } + + @JsonProperty("Rage Damage") + public String getRageDamage() { + return rageDamage; + } + + @JsonProperty("Rage Damage") + public void setRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + } + + public _1 withRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + return this; + } + + @JsonProperty("Berserker Instincts") + public String getBerserkerInstincts() { + return berserkerInstincts; + } + + @JsonProperty("Berserker Instincts") + public void setBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + } + + public _1 withBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + return this; + } + + @JsonProperty("Force Powers Known") + public String getForcePowersKnown() { + return forcePowersKnown; + } + + @JsonProperty("Force Powers Known") + public void setForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + } + + public _1 withForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + return this; + } + + @JsonProperty("Force Points") + public String getForcePoints() { + return forcePoints; + } + + @JsonProperty("Force Points") + public void setForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + } + + public _1 withForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + return this; + } + + @JsonProperty("Max Power Level") + public String getMaxPowerLevel() { + return maxPowerLevel; + } + + @JsonProperty("Max Power Level") + public void setMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + } + + public _1 withMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + return this; + } + + @JsonProperty("Force-Empowered Casting Options") + public String getForceEmpoweredCastingOptions() { + return forceEmpoweredCastingOptions; + } + + @JsonProperty("Force-Empowered Casting Options") + public void setForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + } + + public _1 withForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + return this; + } + + @JsonProperty("Tech Powers Known") + public String getTechPowersKnown() { + return techPowersKnown; + } + + @JsonProperty("Tech Powers Known") + public void setTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + } + + public _1 withTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + return this; + } + + @JsonProperty("Tech Points") + public String getTechPoints() { + return techPoints; + } + + @JsonProperty("Tech Points") + public void setTechPoints(String techPoints) { + this.techPoints = techPoints; + } + + public _1 withTechPoints(String techPoints) { + this.techPoints = techPoints; + return this; + } + + @JsonProperty("Potent Aptitude") + public String getPotentAptitude() { + return potentAptitude; + } + + @JsonProperty("Potent Aptitude") + public void setPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + } + + public _1 withPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + return this; + } + + @JsonProperty("Modification Slots") + public String getModificationSlots() { + return modificationSlots; + } + + @JsonProperty("Modification Slots") + public void setModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + } + + public _1 withModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + return this; + } + + @JsonProperty("Maneuvers Known") + public String getManeuversKnown() { + return maneuversKnown; + } + + @JsonProperty("Maneuvers Known") + public void setManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + } + + public _1 withManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + return this; + } + + @JsonProperty("Superiority Dice Quantity") + public String getSuperiorityDiceQuantity() { + return superiorityDiceQuantity; + } + + @JsonProperty("Superiority Dice Quantity") + public void setSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + } + + public _1 withSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + return this; + } + + @JsonProperty("Superiority Dice Size") + public String getSuperiorityDiceSize() { + return superiorityDiceSize; + } + + @JsonProperty("Superiority Dice Size") + public void setSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + } + + public _1 withSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + return this; + } + + @JsonProperty("Strategies Known") + public String getStrategiesKnown() { + return strategiesKnown; + } + + @JsonProperty("Strategies Known") + public void setStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + } + + public _1 withStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + return this; + } + + @JsonProperty("Focused Strikes") + public String getFocusedStrikes() { + return focusedStrikes; + } + + @JsonProperty("Focused Strikes") + public void setFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + } + + public _1 withFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + return this; + } + + @JsonProperty("Auras Known") + public String getAurasKnown() { + return aurasKnown; + } + + @JsonProperty("Auras Known") + public void setAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + } + + public _1 withAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + return this; + } + + @JsonProperty("Aura Radius") + public String getAuraRadius() { + return auraRadius; + } + + @JsonProperty("Aura Radius") + public void setAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + } + + public _1 withAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + return this; + } + + @JsonProperty("Martial Arts") + public String getMartialArts() { + return martialArts; + } + + @JsonProperty("Martial Arts") + public void setMartialArts(String martialArts) { + this.martialArts = martialArts; + } + + public _1 withMartialArts(String martialArts) { + this.martialArts = martialArts; + return this; + } + + @JsonProperty("Focus Points") + public String getFocusPoints() { + return focusPoints; + } + + @JsonProperty("Focus Points") + public void setFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + } + + public _1 withFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + return this; + } + + @JsonProperty("Monastic Vows") + public String getMonasticVows() { + return monasticVows; + } + + @JsonProperty("Monastic Vows") + public void setMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + } + + public _1 withMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + return this; + } + + @JsonProperty("Unarmored Movement") + public String getUnarmoredMovement() { + return unarmoredMovement; + } + + @JsonProperty("Unarmored Movement") + public void setUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + } + + public _1 withUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + return this; + } + + @JsonProperty("Sneak Attack") + public String getSneakAttack() { + return sneakAttack; + } + + @JsonProperty("Sneak Attack") + public void setSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + } + + public _1 withSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + return this; + } + + @JsonProperty("Operative Exploits") + public String getOperativeExploits() { + return operativeExploits; + } + + @JsonProperty("Operative Exploits") + public void setOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + } + + public _1 withOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + return this; + } + + @JsonProperty("Discoveries") + public String getDiscoveries() { + return discoveries; + } + + @JsonProperty("Discoveries") + public void setDiscoveries(String discoveries) { + this.discoveries = discoveries; + } + + public _1 withDiscoveries(String discoveries) { + this.discoveries = discoveries; + return this; + } + + @JsonProperty("Ranger's Quarry") + public String getRangerSQuarry() { + return rangerSQuarry; + } + + @JsonProperty("Ranger's Quarry") + public void setRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + } + + public _1 withRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + return this; + } + + @JsonProperty("Routines Known") + public String getRoutinesKnown() { + return routinesKnown; + } + + @JsonProperty("Routines Known") + public void setRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + } + + public _1 withRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + return this; + } + + @JsonProperty("Routine Radius") + public String getRoutineRadius() { + return routineRadius; + } + + @JsonProperty("Routine Radius") + public void setRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + } + + public _1 withRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + return this; + } + + @JsonProperty("Kinetic Combat") + public String getKineticCombat() { + return kineticCombat; + } + + @JsonProperty("Kinetic Combat") + public void setKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + } + + public _1 withKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + return this; + } + + @JsonProperty("Ideals Known") + public String getIdealsKnown() { + return idealsKnown; + } + + @JsonProperty("Ideals Known") + public void setIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + } + + public _1 withIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + return this; + } + + @JsonProperty("Ideal Manifests") + public String getIdealManifests() { + return idealManifests; + } + + @JsonProperty("Ideal Manifests") + public void setIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + } + + public _1 withIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public _1 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(_1 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("level"); + sb.append('='); + sb.append(((this.level == null)?"":this.level)); + sb.append(','); + sb.append("proficiencyBonus"); + sb.append('='); + sb.append(((this.proficiencyBonus == null)?"":this.proficiencyBonus)); + sb.append(','); + sb.append("features"); + sb.append('='); + sb.append(((this.features == null)?"":this.features)); + sb.append(','); + sb.append("rages"); + sb.append('='); + sb.append(((this.rages == null)?"":this.rages)); + sb.append(','); + sb.append("rageDamage"); + sb.append('='); + sb.append(((this.rageDamage == null)?"":this.rageDamage)); + sb.append(','); + sb.append("berserkerInstincts"); + sb.append('='); + sb.append(((this.berserkerInstincts == null)?"":this.berserkerInstincts)); + sb.append(','); + sb.append("forcePowersKnown"); + sb.append('='); + sb.append(((this.forcePowersKnown == null)?"":this.forcePowersKnown)); + sb.append(','); + sb.append("forcePoints"); + sb.append('='); + sb.append(((this.forcePoints == null)?"":this.forcePoints)); + sb.append(','); + sb.append("maxPowerLevel"); + sb.append('='); + sb.append(((this.maxPowerLevel == null)?"":this.maxPowerLevel)); + sb.append(','); + sb.append("forceEmpoweredCastingOptions"); + sb.append('='); + sb.append(((this.forceEmpoweredCastingOptions == null)?"":this.forceEmpoweredCastingOptions)); + sb.append(','); + sb.append("techPowersKnown"); + sb.append('='); + sb.append(((this.techPowersKnown == null)?"":this.techPowersKnown)); + sb.append(','); + sb.append("techPoints"); + sb.append('='); + sb.append(((this.techPoints == null)?"":this.techPoints)); + sb.append(','); + sb.append("potentAptitude"); + sb.append('='); + sb.append(((this.potentAptitude == null)?"":this.potentAptitude)); + sb.append(','); + sb.append("modificationSlots"); + sb.append('='); + sb.append(((this.modificationSlots == null)?"":this.modificationSlots)); + sb.append(','); + sb.append("maneuversKnown"); + sb.append('='); + sb.append(((this.maneuversKnown == null)?"":this.maneuversKnown)); + sb.append(','); + sb.append("superiorityDiceQuantity"); + sb.append('='); + sb.append(((this.superiorityDiceQuantity == null)?"":this.superiorityDiceQuantity)); + sb.append(','); + sb.append("superiorityDiceSize"); + sb.append('='); + sb.append(((this.superiorityDiceSize == null)?"":this.superiorityDiceSize)); + sb.append(','); + sb.append("strategiesKnown"); + sb.append('='); + sb.append(((this.strategiesKnown == null)?"":this.strategiesKnown)); + sb.append(','); + sb.append("focusedStrikes"); + sb.append('='); + sb.append(((this.focusedStrikes == null)?"":this.focusedStrikes)); + sb.append(','); + sb.append("aurasKnown"); + sb.append('='); + sb.append(((this.aurasKnown == null)?"":this.aurasKnown)); + sb.append(','); + sb.append("auraRadius"); + sb.append('='); + sb.append(((this.auraRadius == null)?"":this.auraRadius)); + sb.append(','); + sb.append("martialArts"); + sb.append('='); + sb.append(((this.martialArts == null)?"":this.martialArts)); + sb.append(','); + sb.append("focusPoints"); + sb.append('='); + sb.append(((this.focusPoints == null)?"":this.focusPoints)); + sb.append(','); + sb.append("monasticVows"); + sb.append('='); + sb.append(((this.monasticVows == null)?"":this.monasticVows)); + sb.append(','); + sb.append("unarmoredMovement"); + sb.append('='); + sb.append(((this.unarmoredMovement == null)?"":this.unarmoredMovement)); + sb.append(','); + sb.append("sneakAttack"); + sb.append('='); + sb.append(((this.sneakAttack == null)?"":this.sneakAttack)); + sb.append(','); + sb.append("operativeExploits"); + sb.append('='); + sb.append(((this.operativeExploits == null)?"":this.operativeExploits)); + sb.append(','); + sb.append("discoveries"); + sb.append('='); + sb.append(((this.discoveries == null)?"":this.discoveries)); + sb.append(','); + sb.append("rangerSQuarry"); + sb.append('='); + sb.append(((this.rangerSQuarry == null)?"":this.rangerSQuarry)); + sb.append(','); + sb.append("routinesKnown"); + sb.append('='); + sb.append(((this.routinesKnown == null)?"":this.routinesKnown)); + sb.append(','); + sb.append("routineRadius"); + sb.append('='); + sb.append(((this.routineRadius == null)?"":this.routineRadius)); + sb.append(','); + sb.append("kineticCombat"); + sb.append('='); + sb.append(((this.kineticCombat == null)?"":this.kineticCombat)); + sb.append(','); + sb.append("idealsKnown"); + sb.append('='); + sb.append(((this.idealsKnown == null)?"":this.idealsKnown)); + sb.append(','); + sb.append("idealManifests"); + sb.append('='); + sb.append(((this.idealManifests == null)?"":this.idealManifests)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.superiorityDiceQuantity == null)? 0 :this.superiorityDiceQuantity.hashCode())); + result = ((result* 31)+((this.forceEmpoweredCastingOptions == null)? 0 :this.forceEmpoweredCastingOptions.hashCode())); + result = ((result* 31)+((this.kineticCombat == null)? 0 :this.kineticCombat.hashCode())); + result = ((result* 31)+((this.forcePoints == null)? 0 :this.forcePoints.hashCode())); + result = ((result* 31)+((this.potentAptitude == null)? 0 :this.potentAptitude.hashCode())); + result = ((result* 31)+((this.auraRadius == null)? 0 :this.auraRadius.hashCode())); + result = ((result* 31)+((this.proficiencyBonus == null)? 0 :this.proficiencyBonus.hashCode())); + result = ((result* 31)+((this.maneuversKnown == null)? 0 :this.maneuversKnown.hashCode())); + result = ((result* 31)+((this.monasticVows == null)? 0 :this.monasticVows.hashCode())); + result = ((result* 31)+((this.techPowersKnown == null)? 0 :this.techPowersKnown.hashCode())); + result = ((result* 31)+((this.focusPoints == null)? 0 :this.focusPoints.hashCode())); + result = ((result* 31)+((this.features == null)? 0 :this.features.hashCode())); + result = ((result* 31)+((this.maxPowerLevel == null)? 0 :this.maxPowerLevel.hashCode())); + result = ((result* 31)+((this.berserkerInstincts == null)? 0 :this.berserkerInstincts.hashCode())); + result = ((result* 31)+((this.aurasKnown == null)? 0 :this.aurasKnown.hashCode())); + result = ((result* 31)+((this.rangerSQuarry == null)? 0 :this.rangerSQuarry.hashCode())); + result = ((result* 31)+((this.idealManifests == null)? 0 :this.idealManifests.hashCode())); + result = ((result* 31)+((this.focusedStrikes == null)? 0 :this.focusedStrikes.hashCode())); + result = ((result* 31)+((this.level == null)? 0 :this.level.hashCode())); + result = ((result* 31)+((this.operativeExploits == null)? 0 :this.operativeExploits.hashCode())); + result = ((result* 31)+((this.sneakAttack == null)? 0 :this.sneakAttack.hashCode())); + result = ((result* 31)+((this.idealsKnown == null)? 0 :this.idealsKnown.hashCode())); + result = ((result* 31)+((this.strategiesKnown == null)? 0 :this.strategiesKnown.hashCode())); + result = ((result* 31)+((this.techPoints == null)? 0 :this.techPoints.hashCode())); + result = ((result* 31)+((this.rages == null)? 0 :this.rages.hashCode())); + result = ((result* 31)+((this.routinesKnown == null)? 0 :this.routinesKnown.hashCode())); + result = ((result* 31)+((this.unarmoredMovement == null)? 0 :this.unarmoredMovement.hashCode())); + result = ((result* 31)+((this.martialArts == null)? 0 :this.martialArts.hashCode())); + result = ((result* 31)+((this.discoveries == null)? 0 :this.discoveries.hashCode())); + result = ((result* 31)+((this.rageDamage == null)? 0 :this.rageDamage.hashCode())); + result = ((result* 31)+((this.modificationSlots == null)? 0 :this.modificationSlots.hashCode())); + result = ((result* 31)+((this.superiorityDiceSize == null)? 0 :this.superiorityDiceSize.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.routineRadius == null)? 0 :this.routineRadius.hashCode())); + result = ((result* 31)+((this.forcePowersKnown == null)? 0 :this.forcePowersKnown.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof _1) == false) { + return false; + } + _1 rhs = ((_1) other); + return ((((((((((((((((((((((((((((((((((((this.superiorityDiceQuantity == rhs.superiorityDiceQuantity)||((this.superiorityDiceQuantity!= null)&&this.superiorityDiceQuantity.equals(rhs.superiorityDiceQuantity)))&&((this.forceEmpoweredCastingOptions == rhs.forceEmpoweredCastingOptions)||((this.forceEmpoweredCastingOptions!= null)&&this.forceEmpoweredCastingOptions.equals(rhs.forceEmpoweredCastingOptions))))&&((this.kineticCombat == rhs.kineticCombat)||((this.kineticCombat!= null)&&this.kineticCombat.equals(rhs.kineticCombat))))&&((this.forcePoints == rhs.forcePoints)||((this.forcePoints!= null)&&this.forcePoints.equals(rhs.forcePoints))))&&((this.potentAptitude == rhs.potentAptitude)||((this.potentAptitude!= null)&&this.potentAptitude.equals(rhs.potentAptitude))))&&((this.auraRadius == rhs.auraRadius)||((this.auraRadius!= null)&&this.auraRadius.equals(rhs.auraRadius))))&&((this.proficiencyBonus == rhs.proficiencyBonus)||((this.proficiencyBonus!= null)&&this.proficiencyBonus.equals(rhs.proficiencyBonus))))&&((this.maneuversKnown == rhs.maneuversKnown)||((this.maneuversKnown!= null)&&this.maneuversKnown.equals(rhs.maneuversKnown))))&&((this.monasticVows == rhs.monasticVows)||((this.monasticVows!= null)&&this.monasticVows.equals(rhs.monasticVows))))&&((this.techPowersKnown == rhs.techPowersKnown)||((this.techPowersKnown!= null)&&this.techPowersKnown.equals(rhs.techPowersKnown))))&&((this.focusPoints == rhs.focusPoints)||((this.focusPoints!= null)&&this.focusPoints.equals(rhs.focusPoints))))&&((this.features == rhs.features)||((this.features!= null)&&this.features.equals(rhs.features))))&&((this.maxPowerLevel == rhs.maxPowerLevel)||((this.maxPowerLevel!= null)&&this.maxPowerLevel.equals(rhs.maxPowerLevel))))&&((this.berserkerInstincts == rhs.berserkerInstincts)||((this.berserkerInstincts!= null)&&this.berserkerInstincts.equals(rhs.berserkerInstincts))))&&((this.aurasKnown == rhs.aurasKnown)||((this.aurasKnown!= null)&&this.aurasKnown.equals(rhs.aurasKnown))))&&((this.rangerSQuarry == rhs.rangerSQuarry)||((this.rangerSQuarry!= null)&&this.rangerSQuarry.equals(rhs.rangerSQuarry))))&&((this.idealManifests == rhs.idealManifests)||((this.idealManifests!= null)&&this.idealManifests.equals(rhs.idealManifests))))&&((this.focusedStrikes == rhs.focusedStrikes)||((this.focusedStrikes!= null)&&this.focusedStrikes.equals(rhs.focusedStrikes))))&&((this.level == rhs.level)||((this.level!= null)&&this.level.equals(rhs.level))))&&((this.operativeExploits == rhs.operativeExploits)||((this.operativeExploits!= null)&&this.operativeExploits.equals(rhs.operativeExploits))))&&((this.sneakAttack == rhs.sneakAttack)||((this.sneakAttack!= null)&&this.sneakAttack.equals(rhs.sneakAttack))))&&((this.idealsKnown == rhs.idealsKnown)||((this.idealsKnown!= null)&&this.idealsKnown.equals(rhs.idealsKnown))))&&((this.strategiesKnown == rhs.strategiesKnown)||((this.strategiesKnown!= null)&&this.strategiesKnown.equals(rhs.strategiesKnown))))&&((this.techPoints == rhs.techPoints)||((this.techPoints!= null)&&this.techPoints.equals(rhs.techPoints))))&&((this.rages == rhs.rages)||((this.rages!= null)&&this.rages.equals(rhs.rages))))&&((this.routinesKnown == rhs.routinesKnown)||((this.routinesKnown!= null)&&this.routinesKnown.equals(rhs.routinesKnown))))&&((this.unarmoredMovement == rhs.unarmoredMovement)||((this.unarmoredMovement!= null)&&this.unarmoredMovement.equals(rhs.unarmoredMovement))))&&((this.martialArts == rhs.martialArts)||((this.martialArts!= null)&&this.martialArts.equals(rhs.martialArts))))&&((this.discoveries == rhs.discoveries)||((this.discoveries!= null)&&this.discoveries.equals(rhs.discoveries))))&&((this.rageDamage == rhs.rageDamage)||((this.rageDamage!= null)&&this.rageDamage.equals(rhs.rageDamage))))&&((this.modificationSlots == rhs.modificationSlots)||((this.modificationSlots!= null)&&this.modificationSlots.equals(rhs.modificationSlots))))&&((this.superiorityDiceSize == rhs.superiorityDiceSize)||((this.superiorityDiceSize!= null)&&this.superiorityDiceSize.equals(rhs.superiorityDiceSize))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.routineRadius == rhs.routineRadius)||((this.routineRadius!= null)&&this.routineRadius.equals(rhs.routineRadius))))&&((this.forcePowersKnown == rhs.forcePowersKnown)||((this.forcePowersKnown!= null)&&this.forcePowersKnown.equals(rhs.forcePowersKnown)))); + } + +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/model/_10.java b/src/main/java/org/misoenergy/hackday/kessel_run/model/_10.java new file mode 100644 index 0000000..b6e3d2c --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/model/_10.java @@ -0,0 +1,855 @@ + +package org.misoenergy.hackday.kessel_run.model; + +import java.util.HashMap; +import java.util.Map; +import javax.annotation.processing.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "Level", + "Proficiency Bonus", + "Features", + "Rages", + "Rage Damage", + "Berserker Instincts", + "Force Powers Known", + "Force Points", + "Max Power Level", + "Force-Empowered Casting Options", + "Tech Powers Known", + "Tech Points", + "Potent Aptitude", + "Modification Slots", + "Maneuvers Known", + "Superiority Dice Quantity", + "Superiority Dice Size", + "Strategies Known", + "Focused Strikes", + "Auras Known", + "Aura Radius", + "Martial Arts", + "Focus Points", + "Monastic Vows", + "Unarmored Movement", + "Sneak Attack", + "Operative Exploits", + "Discoveries", + "Ranger's Quarry", + "Routines Known", + "Routine Radius", + "Kinetic Combat", + "Ideals Known", + "Ideal Manifests" +}) +@Generated("jsonschema2pojo") +public class _10 { + + @JsonProperty("Level") + private String level; + @JsonProperty("Proficiency Bonus") + private String proficiencyBonus; + @JsonProperty("Features") + private String features; + @JsonProperty("Rages") + private String rages; + @JsonProperty("Rage Damage") + private String rageDamage; + @JsonProperty("Berserker Instincts") + private String berserkerInstincts; + @JsonProperty("Force Powers Known") + private String forcePowersKnown; + @JsonProperty("Force Points") + private String forcePoints; + @JsonProperty("Max Power Level") + private String maxPowerLevel; + @JsonProperty("Force-Empowered Casting Options") + private String forceEmpoweredCastingOptions; + @JsonProperty("Tech Powers Known") + private String techPowersKnown; + @JsonProperty("Tech Points") + private String techPoints; + @JsonProperty("Potent Aptitude") + private String potentAptitude; + @JsonProperty("Modification Slots") + private String modificationSlots; + @JsonProperty("Maneuvers Known") + private String maneuversKnown; + @JsonProperty("Superiority Dice Quantity") + private String superiorityDiceQuantity; + @JsonProperty("Superiority Dice Size") + private String superiorityDiceSize; + @JsonProperty("Strategies Known") + private String strategiesKnown; + @JsonProperty("Focused Strikes") + private String focusedStrikes; + @JsonProperty("Auras Known") + private String aurasKnown; + @JsonProperty("Aura Radius") + private String auraRadius; + @JsonProperty("Martial Arts") + private String martialArts; + @JsonProperty("Focus Points") + private String focusPoints; + @JsonProperty("Monastic Vows") + private String monasticVows; + @JsonProperty("Unarmored Movement") + private String unarmoredMovement; + @JsonProperty("Sneak Attack") + private String sneakAttack; + @JsonProperty("Operative Exploits") + private String operativeExploits; + @JsonProperty("Discoveries") + private String discoveries; + @JsonProperty("Ranger's Quarry") + private String rangerSQuarry; + @JsonProperty("Routines Known") + private String routinesKnown; + @JsonProperty("Routine Radius") + private String routineRadius; + @JsonProperty("Kinetic Combat") + private String kineticCombat; + @JsonProperty("Ideals Known") + private String idealsKnown; + @JsonProperty("Ideal Manifests") + private String idealManifests; + @JsonIgnore + private Map additionalProperties = new HashMap(); + + @JsonProperty("Level") + public String getLevel() { + return level; + } + + @JsonProperty("Level") + public void setLevel(String level) { + this.level = level; + } + + public _10 withLevel(String level) { + this.level = level; + return this; + } + + @JsonProperty("Proficiency Bonus") + public String getProficiencyBonus() { + return proficiencyBonus; + } + + @JsonProperty("Proficiency Bonus") + public void setProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + } + + public _10 withProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + return this; + } + + @JsonProperty("Features") + public String getFeatures() { + return features; + } + + @JsonProperty("Features") + public void setFeatures(String features) { + this.features = features; + } + + public _10 withFeatures(String features) { + this.features = features; + return this; + } + + @JsonProperty("Rages") + public String getRages() { + return rages; + } + + @JsonProperty("Rages") + public void setRages(String rages) { + this.rages = rages; + } + + public _10 withRages(String rages) { + this.rages = rages; + return this; + } + + @JsonProperty("Rage Damage") + public String getRageDamage() { + return rageDamage; + } + + @JsonProperty("Rage Damage") + public void setRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + } + + public _10 withRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + return this; + } + + @JsonProperty("Berserker Instincts") + public String getBerserkerInstincts() { + return berserkerInstincts; + } + + @JsonProperty("Berserker Instincts") + public void setBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + } + + public _10 withBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + return this; + } + + @JsonProperty("Force Powers Known") + public String getForcePowersKnown() { + return forcePowersKnown; + } + + @JsonProperty("Force Powers Known") + public void setForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + } + + public _10 withForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + return this; + } + + @JsonProperty("Force Points") + public String getForcePoints() { + return forcePoints; + } + + @JsonProperty("Force Points") + public void setForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + } + + public _10 withForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + return this; + } + + @JsonProperty("Max Power Level") + public String getMaxPowerLevel() { + return maxPowerLevel; + } + + @JsonProperty("Max Power Level") + public void setMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + } + + public _10 withMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + return this; + } + + @JsonProperty("Force-Empowered Casting Options") + public String getForceEmpoweredCastingOptions() { + return forceEmpoweredCastingOptions; + } + + @JsonProperty("Force-Empowered Casting Options") + public void setForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + } + + public _10 withForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + return this; + } + + @JsonProperty("Tech Powers Known") + public String getTechPowersKnown() { + return techPowersKnown; + } + + @JsonProperty("Tech Powers Known") + public void setTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + } + + public _10 withTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + return this; + } + + @JsonProperty("Tech Points") + public String getTechPoints() { + return techPoints; + } + + @JsonProperty("Tech Points") + public void setTechPoints(String techPoints) { + this.techPoints = techPoints; + } + + public _10 withTechPoints(String techPoints) { + this.techPoints = techPoints; + return this; + } + + @JsonProperty("Potent Aptitude") + public String getPotentAptitude() { + return potentAptitude; + } + + @JsonProperty("Potent Aptitude") + public void setPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + } + + public _10 withPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + return this; + } + + @JsonProperty("Modification Slots") + public String getModificationSlots() { + return modificationSlots; + } + + @JsonProperty("Modification Slots") + public void setModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + } + + public _10 withModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + return this; + } + + @JsonProperty("Maneuvers Known") + public String getManeuversKnown() { + return maneuversKnown; + } + + @JsonProperty("Maneuvers Known") + public void setManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + } + + public _10 withManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + return this; + } + + @JsonProperty("Superiority Dice Quantity") + public String getSuperiorityDiceQuantity() { + return superiorityDiceQuantity; + } + + @JsonProperty("Superiority Dice Quantity") + public void setSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + } + + public _10 withSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + return this; + } + + @JsonProperty("Superiority Dice Size") + public String getSuperiorityDiceSize() { + return superiorityDiceSize; + } + + @JsonProperty("Superiority Dice Size") + public void setSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + } + + public _10 withSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + return this; + } + + @JsonProperty("Strategies Known") + public String getStrategiesKnown() { + return strategiesKnown; + } + + @JsonProperty("Strategies Known") + public void setStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + } + + public _10 withStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + return this; + } + + @JsonProperty("Focused Strikes") + public String getFocusedStrikes() { + return focusedStrikes; + } + + @JsonProperty("Focused Strikes") + public void setFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + } + + public _10 withFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + return this; + } + + @JsonProperty("Auras Known") + public String getAurasKnown() { + return aurasKnown; + } + + @JsonProperty("Auras Known") + public void setAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + } + + public _10 withAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + return this; + } + + @JsonProperty("Aura Radius") + public String getAuraRadius() { + return auraRadius; + } + + @JsonProperty("Aura Radius") + public void setAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + } + + public _10 withAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + return this; + } + + @JsonProperty("Martial Arts") + public String getMartialArts() { + return martialArts; + } + + @JsonProperty("Martial Arts") + public void setMartialArts(String martialArts) { + this.martialArts = martialArts; + } + + public _10 withMartialArts(String martialArts) { + this.martialArts = martialArts; + return this; + } + + @JsonProperty("Focus Points") + public String getFocusPoints() { + return focusPoints; + } + + @JsonProperty("Focus Points") + public void setFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + } + + public _10 withFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + return this; + } + + @JsonProperty("Monastic Vows") + public String getMonasticVows() { + return monasticVows; + } + + @JsonProperty("Monastic Vows") + public void setMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + } + + public _10 withMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + return this; + } + + @JsonProperty("Unarmored Movement") + public String getUnarmoredMovement() { + return unarmoredMovement; + } + + @JsonProperty("Unarmored Movement") + public void setUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + } + + public _10 withUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + return this; + } + + @JsonProperty("Sneak Attack") + public String getSneakAttack() { + return sneakAttack; + } + + @JsonProperty("Sneak Attack") + public void setSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + } + + public _10 withSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + return this; + } + + @JsonProperty("Operative Exploits") + public String getOperativeExploits() { + return operativeExploits; + } + + @JsonProperty("Operative Exploits") + public void setOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + } + + public _10 withOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + return this; + } + + @JsonProperty("Discoveries") + public String getDiscoveries() { + return discoveries; + } + + @JsonProperty("Discoveries") + public void setDiscoveries(String discoveries) { + this.discoveries = discoveries; + } + + public _10 withDiscoveries(String discoveries) { + this.discoveries = discoveries; + return this; + } + + @JsonProperty("Ranger's Quarry") + public String getRangerSQuarry() { + return rangerSQuarry; + } + + @JsonProperty("Ranger's Quarry") + public void setRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + } + + public _10 withRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + return this; + } + + @JsonProperty("Routines Known") + public String getRoutinesKnown() { + return routinesKnown; + } + + @JsonProperty("Routines Known") + public void setRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + } + + public _10 withRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + return this; + } + + @JsonProperty("Routine Radius") + public String getRoutineRadius() { + return routineRadius; + } + + @JsonProperty("Routine Radius") + public void setRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + } + + public _10 withRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + return this; + } + + @JsonProperty("Kinetic Combat") + public String getKineticCombat() { + return kineticCombat; + } + + @JsonProperty("Kinetic Combat") + public void setKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + } + + public _10 withKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + return this; + } + + @JsonProperty("Ideals Known") + public String getIdealsKnown() { + return idealsKnown; + } + + @JsonProperty("Ideals Known") + public void setIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + } + + public _10 withIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + return this; + } + + @JsonProperty("Ideal Manifests") + public String getIdealManifests() { + return idealManifests; + } + + @JsonProperty("Ideal Manifests") + public void setIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + } + + public _10 withIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public _10 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(_10 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("level"); + sb.append('='); + sb.append(((this.level == null)?"":this.level)); + sb.append(','); + sb.append("proficiencyBonus"); + sb.append('='); + sb.append(((this.proficiencyBonus == null)?"":this.proficiencyBonus)); + sb.append(','); + sb.append("features"); + sb.append('='); + sb.append(((this.features == null)?"":this.features)); + sb.append(','); + sb.append("rages"); + sb.append('='); + sb.append(((this.rages == null)?"":this.rages)); + sb.append(','); + sb.append("rageDamage"); + sb.append('='); + sb.append(((this.rageDamage == null)?"":this.rageDamage)); + sb.append(','); + sb.append("berserkerInstincts"); + sb.append('='); + sb.append(((this.berserkerInstincts == null)?"":this.berserkerInstincts)); + sb.append(','); + sb.append("forcePowersKnown"); + sb.append('='); + sb.append(((this.forcePowersKnown == null)?"":this.forcePowersKnown)); + sb.append(','); + sb.append("forcePoints"); + sb.append('='); + sb.append(((this.forcePoints == null)?"":this.forcePoints)); + sb.append(','); + sb.append("maxPowerLevel"); + sb.append('='); + sb.append(((this.maxPowerLevel == null)?"":this.maxPowerLevel)); + sb.append(','); + sb.append("forceEmpoweredCastingOptions"); + sb.append('='); + sb.append(((this.forceEmpoweredCastingOptions == null)?"":this.forceEmpoweredCastingOptions)); + sb.append(','); + sb.append("techPowersKnown"); + sb.append('='); + sb.append(((this.techPowersKnown == null)?"":this.techPowersKnown)); + sb.append(','); + sb.append("techPoints"); + sb.append('='); + sb.append(((this.techPoints == null)?"":this.techPoints)); + sb.append(','); + sb.append("potentAptitude"); + sb.append('='); + sb.append(((this.potentAptitude == null)?"":this.potentAptitude)); + sb.append(','); + sb.append("modificationSlots"); + sb.append('='); + sb.append(((this.modificationSlots == null)?"":this.modificationSlots)); + sb.append(','); + sb.append("maneuversKnown"); + sb.append('='); + sb.append(((this.maneuversKnown == null)?"":this.maneuversKnown)); + sb.append(','); + sb.append("superiorityDiceQuantity"); + sb.append('='); + sb.append(((this.superiorityDiceQuantity == null)?"":this.superiorityDiceQuantity)); + sb.append(','); + sb.append("superiorityDiceSize"); + sb.append('='); + sb.append(((this.superiorityDiceSize == null)?"":this.superiorityDiceSize)); + sb.append(','); + sb.append("strategiesKnown"); + sb.append('='); + sb.append(((this.strategiesKnown == null)?"":this.strategiesKnown)); + sb.append(','); + sb.append("focusedStrikes"); + sb.append('='); + sb.append(((this.focusedStrikes == null)?"":this.focusedStrikes)); + sb.append(','); + sb.append("aurasKnown"); + sb.append('='); + sb.append(((this.aurasKnown == null)?"":this.aurasKnown)); + sb.append(','); + sb.append("auraRadius"); + sb.append('='); + sb.append(((this.auraRadius == null)?"":this.auraRadius)); + sb.append(','); + sb.append("martialArts"); + sb.append('='); + sb.append(((this.martialArts == null)?"":this.martialArts)); + sb.append(','); + sb.append("focusPoints"); + sb.append('='); + sb.append(((this.focusPoints == null)?"":this.focusPoints)); + sb.append(','); + sb.append("monasticVows"); + sb.append('='); + sb.append(((this.monasticVows == null)?"":this.monasticVows)); + sb.append(','); + sb.append("unarmoredMovement"); + sb.append('='); + sb.append(((this.unarmoredMovement == null)?"":this.unarmoredMovement)); + sb.append(','); + sb.append("sneakAttack"); + sb.append('='); + sb.append(((this.sneakAttack == null)?"":this.sneakAttack)); + sb.append(','); + sb.append("operativeExploits"); + sb.append('='); + sb.append(((this.operativeExploits == null)?"":this.operativeExploits)); + sb.append(','); + sb.append("discoveries"); + sb.append('='); + sb.append(((this.discoveries == null)?"":this.discoveries)); + sb.append(','); + sb.append("rangerSQuarry"); + sb.append('='); + sb.append(((this.rangerSQuarry == null)?"":this.rangerSQuarry)); + sb.append(','); + sb.append("routinesKnown"); + sb.append('='); + sb.append(((this.routinesKnown == null)?"":this.routinesKnown)); + sb.append(','); + sb.append("routineRadius"); + sb.append('='); + sb.append(((this.routineRadius == null)?"":this.routineRadius)); + sb.append(','); + sb.append("kineticCombat"); + sb.append('='); + sb.append(((this.kineticCombat == null)?"":this.kineticCombat)); + sb.append(','); + sb.append("idealsKnown"); + sb.append('='); + sb.append(((this.idealsKnown == null)?"":this.idealsKnown)); + sb.append(','); + sb.append("idealManifests"); + sb.append('='); + sb.append(((this.idealManifests == null)?"":this.idealManifests)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.superiorityDiceQuantity == null)? 0 :this.superiorityDiceQuantity.hashCode())); + result = ((result* 31)+((this.forceEmpoweredCastingOptions == null)? 0 :this.forceEmpoweredCastingOptions.hashCode())); + result = ((result* 31)+((this.kineticCombat == null)? 0 :this.kineticCombat.hashCode())); + result = ((result* 31)+((this.forcePoints == null)? 0 :this.forcePoints.hashCode())); + result = ((result* 31)+((this.potentAptitude == null)? 0 :this.potentAptitude.hashCode())); + result = ((result* 31)+((this.auraRadius == null)? 0 :this.auraRadius.hashCode())); + result = ((result* 31)+((this.proficiencyBonus == null)? 0 :this.proficiencyBonus.hashCode())); + result = ((result* 31)+((this.maneuversKnown == null)? 0 :this.maneuversKnown.hashCode())); + result = ((result* 31)+((this.monasticVows == null)? 0 :this.monasticVows.hashCode())); + result = ((result* 31)+((this.techPowersKnown == null)? 0 :this.techPowersKnown.hashCode())); + result = ((result* 31)+((this.focusPoints == null)? 0 :this.focusPoints.hashCode())); + result = ((result* 31)+((this.features == null)? 0 :this.features.hashCode())); + result = ((result* 31)+((this.maxPowerLevel == null)? 0 :this.maxPowerLevel.hashCode())); + result = ((result* 31)+((this.berserkerInstincts == null)? 0 :this.berserkerInstincts.hashCode())); + result = ((result* 31)+((this.aurasKnown == null)? 0 :this.aurasKnown.hashCode())); + result = ((result* 31)+((this.rangerSQuarry == null)? 0 :this.rangerSQuarry.hashCode())); + result = ((result* 31)+((this.idealManifests == null)? 0 :this.idealManifests.hashCode())); + result = ((result* 31)+((this.focusedStrikes == null)? 0 :this.focusedStrikes.hashCode())); + result = ((result* 31)+((this.level == null)? 0 :this.level.hashCode())); + result = ((result* 31)+((this.operativeExploits == null)? 0 :this.operativeExploits.hashCode())); + result = ((result* 31)+((this.sneakAttack == null)? 0 :this.sneakAttack.hashCode())); + result = ((result* 31)+((this.idealsKnown == null)? 0 :this.idealsKnown.hashCode())); + result = ((result* 31)+((this.strategiesKnown == null)? 0 :this.strategiesKnown.hashCode())); + result = ((result* 31)+((this.techPoints == null)? 0 :this.techPoints.hashCode())); + result = ((result* 31)+((this.rages == null)? 0 :this.rages.hashCode())); + result = ((result* 31)+((this.routinesKnown == null)? 0 :this.routinesKnown.hashCode())); + result = ((result* 31)+((this.unarmoredMovement == null)? 0 :this.unarmoredMovement.hashCode())); + result = ((result* 31)+((this.martialArts == null)? 0 :this.martialArts.hashCode())); + result = ((result* 31)+((this.discoveries == null)? 0 :this.discoveries.hashCode())); + result = ((result* 31)+((this.rageDamage == null)? 0 :this.rageDamage.hashCode())); + result = ((result* 31)+((this.modificationSlots == null)? 0 :this.modificationSlots.hashCode())); + result = ((result* 31)+((this.superiorityDiceSize == null)? 0 :this.superiorityDiceSize.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.routineRadius == null)? 0 :this.routineRadius.hashCode())); + result = ((result* 31)+((this.forcePowersKnown == null)? 0 :this.forcePowersKnown.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof _10) == false) { + return false; + } + _10 rhs = ((_10) other); + return ((((((((((((((((((((((((((((((((((((this.superiorityDiceQuantity == rhs.superiorityDiceQuantity)||((this.superiorityDiceQuantity!= null)&&this.superiorityDiceQuantity.equals(rhs.superiorityDiceQuantity)))&&((this.forceEmpoweredCastingOptions == rhs.forceEmpoweredCastingOptions)||((this.forceEmpoweredCastingOptions!= null)&&this.forceEmpoweredCastingOptions.equals(rhs.forceEmpoweredCastingOptions))))&&((this.kineticCombat == rhs.kineticCombat)||((this.kineticCombat!= null)&&this.kineticCombat.equals(rhs.kineticCombat))))&&((this.forcePoints == rhs.forcePoints)||((this.forcePoints!= null)&&this.forcePoints.equals(rhs.forcePoints))))&&((this.potentAptitude == rhs.potentAptitude)||((this.potentAptitude!= null)&&this.potentAptitude.equals(rhs.potentAptitude))))&&((this.auraRadius == rhs.auraRadius)||((this.auraRadius!= null)&&this.auraRadius.equals(rhs.auraRadius))))&&((this.proficiencyBonus == rhs.proficiencyBonus)||((this.proficiencyBonus!= null)&&this.proficiencyBonus.equals(rhs.proficiencyBonus))))&&((this.maneuversKnown == rhs.maneuversKnown)||((this.maneuversKnown!= null)&&this.maneuversKnown.equals(rhs.maneuversKnown))))&&((this.monasticVows == rhs.monasticVows)||((this.monasticVows!= null)&&this.monasticVows.equals(rhs.monasticVows))))&&((this.techPowersKnown == rhs.techPowersKnown)||((this.techPowersKnown!= null)&&this.techPowersKnown.equals(rhs.techPowersKnown))))&&((this.focusPoints == rhs.focusPoints)||((this.focusPoints!= null)&&this.focusPoints.equals(rhs.focusPoints))))&&((this.features == rhs.features)||((this.features!= null)&&this.features.equals(rhs.features))))&&((this.maxPowerLevel == rhs.maxPowerLevel)||((this.maxPowerLevel!= null)&&this.maxPowerLevel.equals(rhs.maxPowerLevel))))&&((this.berserkerInstincts == rhs.berserkerInstincts)||((this.berserkerInstincts!= null)&&this.berserkerInstincts.equals(rhs.berserkerInstincts))))&&((this.aurasKnown == rhs.aurasKnown)||((this.aurasKnown!= null)&&this.aurasKnown.equals(rhs.aurasKnown))))&&((this.rangerSQuarry == rhs.rangerSQuarry)||((this.rangerSQuarry!= null)&&this.rangerSQuarry.equals(rhs.rangerSQuarry))))&&((this.idealManifests == rhs.idealManifests)||((this.idealManifests!= null)&&this.idealManifests.equals(rhs.idealManifests))))&&((this.focusedStrikes == rhs.focusedStrikes)||((this.focusedStrikes!= null)&&this.focusedStrikes.equals(rhs.focusedStrikes))))&&((this.level == rhs.level)||((this.level!= null)&&this.level.equals(rhs.level))))&&((this.operativeExploits == rhs.operativeExploits)||((this.operativeExploits!= null)&&this.operativeExploits.equals(rhs.operativeExploits))))&&((this.sneakAttack == rhs.sneakAttack)||((this.sneakAttack!= null)&&this.sneakAttack.equals(rhs.sneakAttack))))&&((this.idealsKnown == rhs.idealsKnown)||((this.idealsKnown!= null)&&this.idealsKnown.equals(rhs.idealsKnown))))&&((this.strategiesKnown == rhs.strategiesKnown)||((this.strategiesKnown!= null)&&this.strategiesKnown.equals(rhs.strategiesKnown))))&&((this.techPoints == rhs.techPoints)||((this.techPoints!= null)&&this.techPoints.equals(rhs.techPoints))))&&((this.rages == rhs.rages)||((this.rages!= null)&&this.rages.equals(rhs.rages))))&&((this.routinesKnown == rhs.routinesKnown)||((this.routinesKnown!= null)&&this.routinesKnown.equals(rhs.routinesKnown))))&&((this.unarmoredMovement == rhs.unarmoredMovement)||((this.unarmoredMovement!= null)&&this.unarmoredMovement.equals(rhs.unarmoredMovement))))&&((this.martialArts == rhs.martialArts)||((this.martialArts!= null)&&this.martialArts.equals(rhs.martialArts))))&&((this.discoveries == rhs.discoveries)||((this.discoveries!= null)&&this.discoveries.equals(rhs.discoveries))))&&((this.rageDamage == rhs.rageDamage)||((this.rageDamage!= null)&&this.rageDamage.equals(rhs.rageDamage))))&&((this.modificationSlots == rhs.modificationSlots)||((this.modificationSlots!= null)&&this.modificationSlots.equals(rhs.modificationSlots))))&&((this.superiorityDiceSize == rhs.superiorityDiceSize)||((this.superiorityDiceSize!= null)&&this.superiorityDiceSize.equals(rhs.superiorityDiceSize))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.routineRadius == rhs.routineRadius)||((this.routineRadius!= null)&&this.routineRadius.equals(rhs.routineRadius))))&&((this.forcePowersKnown == rhs.forcePowersKnown)||((this.forcePowersKnown!= null)&&this.forcePowersKnown.equals(rhs.forcePowersKnown)))); + } + +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/model/_11.java b/src/main/java/org/misoenergy/hackday/kessel_run/model/_11.java new file mode 100644 index 0000000..f2879f5 --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/model/_11.java @@ -0,0 +1,855 @@ + +package org.misoenergy.hackday.kessel_run.model; + +import java.util.HashMap; +import java.util.Map; +import javax.annotation.processing.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "Level", + "Proficiency Bonus", + "Features", + "Rages", + "Rage Damage", + "Berserker Instincts", + "Force Powers Known", + "Force Points", + "Max Power Level", + "Force-Empowered Casting Options", + "Tech Powers Known", + "Tech Points", + "Potent Aptitude", + "Modification Slots", + "Maneuvers Known", + "Superiority Dice Quantity", + "Superiority Dice Size", + "Strategies Known", + "Focused Strikes", + "Auras Known", + "Aura Radius", + "Martial Arts", + "Focus Points", + "Monastic Vows", + "Unarmored Movement", + "Sneak Attack", + "Operative Exploits", + "Discoveries", + "Ranger's Quarry", + "Routines Known", + "Routine Radius", + "Kinetic Combat", + "Ideals Known", + "Ideal Manifests" +}) +@Generated("jsonschema2pojo") +public class _11 { + + @JsonProperty("Level") + private String level; + @JsonProperty("Proficiency Bonus") + private String proficiencyBonus; + @JsonProperty("Features") + private String features; + @JsonProperty("Rages") + private String rages; + @JsonProperty("Rage Damage") + private String rageDamage; + @JsonProperty("Berserker Instincts") + private String berserkerInstincts; + @JsonProperty("Force Powers Known") + private String forcePowersKnown; + @JsonProperty("Force Points") + private String forcePoints; + @JsonProperty("Max Power Level") + private String maxPowerLevel; + @JsonProperty("Force-Empowered Casting Options") + private String forceEmpoweredCastingOptions; + @JsonProperty("Tech Powers Known") + private String techPowersKnown; + @JsonProperty("Tech Points") + private String techPoints; + @JsonProperty("Potent Aptitude") + private String potentAptitude; + @JsonProperty("Modification Slots") + private String modificationSlots; + @JsonProperty("Maneuvers Known") + private String maneuversKnown; + @JsonProperty("Superiority Dice Quantity") + private String superiorityDiceQuantity; + @JsonProperty("Superiority Dice Size") + private String superiorityDiceSize; + @JsonProperty("Strategies Known") + private String strategiesKnown; + @JsonProperty("Focused Strikes") + private String focusedStrikes; + @JsonProperty("Auras Known") + private String aurasKnown; + @JsonProperty("Aura Radius") + private String auraRadius; + @JsonProperty("Martial Arts") + private String martialArts; + @JsonProperty("Focus Points") + private String focusPoints; + @JsonProperty("Monastic Vows") + private String monasticVows; + @JsonProperty("Unarmored Movement") + private String unarmoredMovement; + @JsonProperty("Sneak Attack") + private String sneakAttack; + @JsonProperty("Operative Exploits") + private String operativeExploits; + @JsonProperty("Discoveries") + private String discoveries; + @JsonProperty("Ranger's Quarry") + private String rangerSQuarry; + @JsonProperty("Routines Known") + private String routinesKnown; + @JsonProperty("Routine Radius") + private String routineRadius; + @JsonProperty("Kinetic Combat") + private String kineticCombat; + @JsonProperty("Ideals Known") + private String idealsKnown; + @JsonProperty("Ideal Manifests") + private String idealManifests; + @JsonIgnore + private Map additionalProperties = new HashMap(); + + @JsonProperty("Level") + public String getLevel() { + return level; + } + + @JsonProperty("Level") + public void setLevel(String level) { + this.level = level; + } + + public _11 withLevel(String level) { + this.level = level; + return this; + } + + @JsonProperty("Proficiency Bonus") + public String getProficiencyBonus() { + return proficiencyBonus; + } + + @JsonProperty("Proficiency Bonus") + public void setProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + } + + public _11 withProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + return this; + } + + @JsonProperty("Features") + public String getFeatures() { + return features; + } + + @JsonProperty("Features") + public void setFeatures(String features) { + this.features = features; + } + + public _11 withFeatures(String features) { + this.features = features; + return this; + } + + @JsonProperty("Rages") + public String getRages() { + return rages; + } + + @JsonProperty("Rages") + public void setRages(String rages) { + this.rages = rages; + } + + public _11 withRages(String rages) { + this.rages = rages; + return this; + } + + @JsonProperty("Rage Damage") + public String getRageDamage() { + return rageDamage; + } + + @JsonProperty("Rage Damage") + public void setRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + } + + public _11 withRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + return this; + } + + @JsonProperty("Berserker Instincts") + public String getBerserkerInstincts() { + return berserkerInstincts; + } + + @JsonProperty("Berserker Instincts") + public void setBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + } + + public _11 withBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + return this; + } + + @JsonProperty("Force Powers Known") + public String getForcePowersKnown() { + return forcePowersKnown; + } + + @JsonProperty("Force Powers Known") + public void setForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + } + + public _11 withForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + return this; + } + + @JsonProperty("Force Points") + public String getForcePoints() { + return forcePoints; + } + + @JsonProperty("Force Points") + public void setForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + } + + public _11 withForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + return this; + } + + @JsonProperty("Max Power Level") + public String getMaxPowerLevel() { + return maxPowerLevel; + } + + @JsonProperty("Max Power Level") + public void setMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + } + + public _11 withMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + return this; + } + + @JsonProperty("Force-Empowered Casting Options") + public String getForceEmpoweredCastingOptions() { + return forceEmpoweredCastingOptions; + } + + @JsonProperty("Force-Empowered Casting Options") + public void setForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + } + + public _11 withForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + return this; + } + + @JsonProperty("Tech Powers Known") + public String getTechPowersKnown() { + return techPowersKnown; + } + + @JsonProperty("Tech Powers Known") + public void setTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + } + + public _11 withTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + return this; + } + + @JsonProperty("Tech Points") + public String getTechPoints() { + return techPoints; + } + + @JsonProperty("Tech Points") + public void setTechPoints(String techPoints) { + this.techPoints = techPoints; + } + + public _11 withTechPoints(String techPoints) { + this.techPoints = techPoints; + return this; + } + + @JsonProperty("Potent Aptitude") + public String getPotentAptitude() { + return potentAptitude; + } + + @JsonProperty("Potent Aptitude") + public void setPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + } + + public _11 withPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + return this; + } + + @JsonProperty("Modification Slots") + public String getModificationSlots() { + return modificationSlots; + } + + @JsonProperty("Modification Slots") + public void setModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + } + + public _11 withModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + return this; + } + + @JsonProperty("Maneuvers Known") + public String getManeuversKnown() { + return maneuversKnown; + } + + @JsonProperty("Maneuvers Known") + public void setManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + } + + public _11 withManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + return this; + } + + @JsonProperty("Superiority Dice Quantity") + public String getSuperiorityDiceQuantity() { + return superiorityDiceQuantity; + } + + @JsonProperty("Superiority Dice Quantity") + public void setSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + } + + public _11 withSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + return this; + } + + @JsonProperty("Superiority Dice Size") + public String getSuperiorityDiceSize() { + return superiorityDiceSize; + } + + @JsonProperty("Superiority Dice Size") + public void setSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + } + + public _11 withSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + return this; + } + + @JsonProperty("Strategies Known") + public String getStrategiesKnown() { + return strategiesKnown; + } + + @JsonProperty("Strategies Known") + public void setStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + } + + public _11 withStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + return this; + } + + @JsonProperty("Focused Strikes") + public String getFocusedStrikes() { + return focusedStrikes; + } + + @JsonProperty("Focused Strikes") + public void setFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + } + + public _11 withFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + return this; + } + + @JsonProperty("Auras Known") + public String getAurasKnown() { + return aurasKnown; + } + + @JsonProperty("Auras Known") + public void setAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + } + + public _11 withAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + return this; + } + + @JsonProperty("Aura Radius") + public String getAuraRadius() { + return auraRadius; + } + + @JsonProperty("Aura Radius") + public void setAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + } + + public _11 withAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + return this; + } + + @JsonProperty("Martial Arts") + public String getMartialArts() { + return martialArts; + } + + @JsonProperty("Martial Arts") + public void setMartialArts(String martialArts) { + this.martialArts = martialArts; + } + + public _11 withMartialArts(String martialArts) { + this.martialArts = martialArts; + return this; + } + + @JsonProperty("Focus Points") + public String getFocusPoints() { + return focusPoints; + } + + @JsonProperty("Focus Points") + public void setFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + } + + public _11 withFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + return this; + } + + @JsonProperty("Monastic Vows") + public String getMonasticVows() { + return monasticVows; + } + + @JsonProperty("Monastic Vows") + public void setMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + } + + public _11 withMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + return this; + } + + @JsonProperty("Unarmored Movement") + public String getUnarmoredMovement() { + return unarmoredMovement; + } + + @JsonProperty("Unarmored Movement") + public void setUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + } + + public _11 withUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + return this; + } + + @JsonProperty("Sneak Attack") + public String getSneakAttack() { + return sneakAttack; + } + + @JsonProperty("Sneak Attack") + public void setSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + } + + public _11 withSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + return this; + } + + @JsonProperty("Operative Exploits") + public String getOperativeExploits() { + return operativeExploits; + } + + @JsonProperty("Operative Exploits") + public void setOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + } + + public _11 withOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + return this; + } + + @JsonProperty("Discoveries") + public String getDiscoveries() { + return discoveries; + } + + @JsonProperty("Discoveries") + public void setDiscoveries(String discoveries) { + this.discoveries = discoveries; + } + + public _11 withDiscoveries(String discoveries) { + this.discoveries = discoveries; + return this; + } + + @JsonProperty("Ranger's Quarry") + public String getRangerSQuarry() { + return rangerSQuarry; + } + + @JsonProperty("Ranger's Quarry") + public void setRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + } + + public _11 withRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + return this; + } + + @JsonProperty("Routines Known") + public String getRoutinesKnown() { + return routinesKnown; + } + + @JsonProperty("Routines Known") + public void setRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + } + + public _11 withRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + return this; + } + + @JsonProperty("Routine Radius") + public String getRoutineRadius() { + return routineRadius; + } + + @JsonProperty("Routine Radius") + public void setRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + } + + public _11 withRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + return this; + } + + @JsonProperty("Kinetic Combat") + public String getKineticCombat() { + return kineticCombat; + } + + @JsonProperty("Kinetic Combat") + public void setKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + } + + public _11 withKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + return this; + } + + @JsonProperty("Ideals Known") + public String getIdealsKnown() { + return idealsKnown; + } + + @JsonProperty("Ideals Known") + public void setIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + } + + public _11 withIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + return this; + } + + @JsonProperty("Ideal Manifests") + public String getIdealManifests() { + return idealManifests; + } + + @JsonProperty("Ideal Manifests") + public void setIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + } + + public _11 withIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public _11 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(_11 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("level"); + sb.append('='); + sb.append(((this.level == null)?"":this.level)); + sb.append(','); + sb.append("proficiencyBonus"); + sb.append('='); + sb.append(((this.proficiencyBonus == null)?"":this.proficiencyBonus)); + sb.append(','); + sb.append("features"); + sb.append('='); + sb.append(((this.features == null)?"":this.features)); + sb.append(','); + sb.append("rages"); + sb.append('='); + sb.append(((this.rages == null)?"":this.rages)); + sb.append(','); + sb.append("rageDamage"); + sb.append('='); + sb.append(((this.rageDamage == null)?"":this.rageDamage)); + sb.append(','); + sb.append("berserkerInstincts"); + sb.append('='); + sb.append(((this.berserkerInstincts == null)?"":this.berserkerInstincts)); + sb.append(','); + sb.append("forcePowersKnown"); + sb.append('='); + sb.append(((this.forcePowersKnown == null)?"":this.forcePowersKnown)); + sb.append(','); + sb.append("forcePoints"); + sb.append('='); + sb.append(((this.forcePoints == null)?"":this.forcePoints)); + sb.append(','); + sb.append("maxPowerLevel"); + sb.append('='); + sb.append(((this.maxPowerLevel == null)?"":this.maxPowerLevel)); + sb.append(','); + sb.append("forceEmpoweredCastingOptions"); + sb.append('='); + sb.append(((this.forceEmpoweredCastingOptions == null)?"":this.forceEmpoweredCastingOptions)); + sb.append(','); + sb.append("techPowersKnown"); + sb.append('='); + sb.append(((this.techPowersKnown == null)?"":this.techPowersKnown)); + sb.append(','); + sb.append("techPoints"); + sb.append('='); + sb.append(((this.techPoints == null)?"":this.techPoints)); + sb.append(','); + sb.append("potentAptitude"); + sb.append('='); + sb.append(((this.potentAptitude == null)?"":this.potentAptitude)); + sb.append(','); + sb.append("modificationSlots"); + sb.append('='); + sb.append(((this.modificationSlots == null)?"":this.modificationSlots)); + sb.append(','); + sb.append("maneuversKnown"); + sb.append('='); + sb.append(((this.maneuversKnown == null)?"":this.maneuversKnown)); + sb.append(','); + sb.append("superiorityDiceQuantity"); + sb.append('='); + sb.append(((this.superiorityDiceQuantity == null)?"":this.superiorityDiceQuantity)); + sb.append(','); + sb.append("superiorityDiceSize"); + sb.append('='); + sb.append(((this.superiorityDiceSize == null)?"":this.superiorityDiceSize)); + sb.append(','); + sb.append("strategiesKnown"); + sb.append('='); + sb.append(((this.strategiesKnown == null)?"":this.strategiesKnown)); + sb.append(','); + sb.append("focusedStrikes"); + sb.append('='); + sb.append(((this.focusedStrikes == null)?"":this.focusedStrikes)); + sb.append(','); + sb.append("aurasKnown"); + sb.append('='); + sb.append(((this.aurasKnown == null)?"":this.aurasKnown)); + sb.append(','); + sb.append("auraRadius"); + sb.append('='); + sb.append(((this.auraRadius == null)?"":this.auraRadius)); + sb.append(','); + sb.append("martialArts"); + sb.append('='); + sb.append(((this.martialArts == null)?"":this.martialArts)); + sb.append(','); + sb.append("focusPoints"); + sb.append('='); + sb.append(((this.focusPoints == null)?"":this.focusPoints)); + sb.append(','); + sb.append("monasticVows"); + sb.append('='); + sb.append(((this.monasticVows == null)?"":this.monasticVows)); + sb.append(','); + sb.append("unarmoredMovement"); + sb.append('='); + sb.append(((this.unarmoredMovement == null)?"":this.unarmoredMovement)); + sb.append(','); + sb.append("sneakAttack"); + sb.append('='); + sb.append(((this.sneakAttack == null)?"":this.sneakAttack)); + sb.append(','); + sb.append("operativeExploits"); + sb.append('='); + sb.append(((this.operativeExploits == null)?"":this.operativeExploits)); + sb.append(','); + sb.append("discoveries"); + sb.append('='); + sb.append(((this.discoveries == null)?"":this.discoveries)); + sb.append(','); + sb.append("rangerSQuarry"); + sb.append('='); + sb.append(((this.rangerSQuarry == null)?"":this.rangerSQuarry)); + sb.append(','); + sb.append("routinesKnown"); + sb.append('='); + sb.append(((this.routinesKnown == null)?"":this.routinesKnown)); + sb.append(','); + sb.append("routineRadius"); + sb.append('='); + sb.append(((this.routineRadius == null)?"":this.routineRadius)); + sb.append(','); + sb.append("kineticCombat"); + sb.append('='); + sb.append(((this.kineticCombat == null)?"":this.kineticCombat)); + sb.append(','); + sb.append("idealsKnown"); + sb.append('='); + sb.append(((this.idealsKnown == null)?"":this.idealsKnown)); + sb.append(','); + sb.append("idealManifests"); + sb.append('='); + sb.append(((this.idealManifests == null)?"":this.idealManifests)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.superiorityDiceQuantity == null)? 0 :this.superiorityDiceQuantity.hashCode())); + result = ((result* 31)+((this.forceEmpoweredCastingOptions == null)? 0 :this.forceEmpoweredCastingOptions.hashCode())); + result = ((result* 31)+((this.kineticCombat == null)? 0 :this.kineticCombat.hashCode())); + result = ((result* 31)+((this.forcePoints == null)? 0 :this.forcePoints.hashCode())); + result = ((result* 31)+((this.potentAptitude == null)? 0 :this.potentAptitude.hashCode())); + result = ((result* 31)+((this.auraRadius == null)? 0 :this.auraRadius.hashCode())); + result = ((result* 31)+((this.proficiencyBonus == null)? 0 :this.proficiencyBonus.hashCode())); + result = ((result* 31)+((this.maneuversKnown == null)? 0 :this.maneuversKnown.hashCode())); + result = ((result* 31)+((this.monasticVows == null)? 0 :this.monasticVows.hashCode())); + result = ((result* 31)+((this.techPowersKnown == null)? 0 :this.techPowersKnown.hashCode())); + result = ((result* 31)+((this.focusPoints == null)? 0 :this.focusPoints.hashCode())); + result = ((result* 31)+((this.features == null)? 0 :this.features.hashCode())); + result = ((result* 31)+((this.maxPowerLevel == null)? 0 :this.maxPowerLevel.hashCode())); + result = ((result* 31)+((this.berserkerInstincts == null)? 0 :this.berserkerInstincts.hashCode())); + result = ((result* 31)+((this.aurasKnown == null)? 0 :this.aurasKnown.hashCode())); + result = ((result* 31)+((this.rangerSQuarry == null)? 0 :this.rangerSQuarry.hashCode())); + result = ((result* 31)+((this.idealManifests == null)? 0 :this.idealManifests.hashCode())); + result = ((result* 31)+((this.focusedStrikes == null)? 0 :this.focusedStrikes.hashCode())); + result = ((result* 31)+((this.level == null)? 0 :this.level.hashCode())); + result = ((result* 31)+((this.operativeExploits == null)? 0 :this.operativeExploits.hashCode())); + result = ((result* 31)+((this.sneakAttack == null)? 0 :this.sneakAttack.hashCode())); + result = ((result* 31)+((this.idealsKnown == null)? 0 :this.idealsKnown.hashCode())); + result = ((result* 31)+((this.strategiesKnown == null)? 0 :this.strategiesKnown.hashCode())); + result = ((result* 31)+((this.techPoints == null)? 0 :this.techPoints.hashCode())); + result = ((result* 31)+((this.rages == null)? 0 :this.rages.hashCode())); + result = ((result* 31)+((this.routinesKnown == null)? 0 :this.routinesKnown.hashCode())); + result = ((result* 31)+((this.unarmoredMovement == null)? 0 :this.unarmoredMovement.hashCode())); + result = ((result* 31)+((this.martialArts == null)? 0 :this.martialArts.hashCode())); + result = ((result* 31)+((this.discoveries == null)? 0 :this.discoveries.hashCode())); + result = ((result* 31)+((this.rageDamage == null)? 0 :this.rageDamage.hashCode())); + result = ((result* 31)+((this.modificationSlots == null)? 0 :this.modificationSlots.hashCode())); + result = ((result* 31)+((this.superiorityDiceSize == null)? 0 :this.superiorityDiceSize.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.routineRadius == null)? 0 :this.routineRadius.hashCode())); + result = ((result* 31)+((this.forcePowersKnown == null)? 0 :this.forcePowersKnown.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof _11) == false) { + return false; + } + _11 rhs = ((_11) other); + return ((((((((((((((((((((((((((((((((((((this.superiorityDiceQuantity == rhs.superiorityDiceQuantity)||((this.superiorityDiceQuantity!= null)&&this.superiorityDiceQuantity.equals(rhs.superiorityDiceQuantity)))&&((this.forceEmpoweredCastingOptions == rhs.forceEmpoweredCastingOptions)||((this.forceEmpoweredCastingOptions!= null)&&this.forceEmpoweredCastingOptions.equals(rhs.forceEmpoweredCastingOptions))))&&((this.kineticCombat == rhs.kineticCombat)||((this.kineticCombat!= null)&&this.kineticCombat.equals(rhs.kineticCombat))))&&((this.forcePoints == rhs.forcePoints)||((this.forcePoints!= null)&&this.forcePoints.equals(rhs.forcePoints))))&&((this.potentAptitude == rhs.potentAptitude)||((this.potentAptitude!= null)&&this.potentAptitude.equals(rhs.potentAptitude))))&&((this.auraRadius == rhs.auraRadius)||((this.auraRadius!= null)&&this.auraRadius.equals(rhs.auraRadius))))&&((this.proficiencyBonus == rhs.proficiencyBonus)||((this.proficiencyBonus!= null)&&this.proficiencyBonus.equals(rhs.proficiencyBonus))))&&((this.maneuversKnown == rhs.maneuversKnown)||((this.maneuversKnown!= null)&&this.maneuversKnown.equals(rhs.maneuversKnown))))&&((this.monasticVows == rhs.monasticVows)||((this.monasticVows!= null)&&this.monasticVows.equals(rhs.monasticVows))))&&((this.techPowersKnown == rhs.techPowersKnown)||((this.techPowersKnown!= null)&&this.techPowersKnown.equals(rhs.techPowersKnown))))&&((this.focusPoints == rhs.focusPoints)||((this.focusPoints!= null)&&this.focusPoints.equals(rhs.focusPoints))))&&((this.features == rhs.features)||((this.features!= null)&&this.features.equals(rhs.features))))&&((this.maxPowerLevel == rhs.maxPowerLevel)||((this.maxPowerLevel!= null)&&this.maxPowerLevel.equals(rhs.maxPowerLevel))))&&((this.berserkerInstincts == rhs.berserkerInstincts)||((this.berserkerInstincts!= null)&&this.berserkerInstincts.equals(rhs.berserkerInstincts))))&&((this.aurasKnown == rhs.aurasKnown)||((this.aurasKnown!= null)&&this.aurasKnown.equals(rhs.aurasKnown))))&&((this.rangerSQuarry == rhs.rangerSQuarry)||((this.rangerSQuarry!= null)&&this.rangerSQuarry.equals(rhs.rangerSQuarry))))&&((this.idealManifests == rhs.idealManifests)||((this.idealManifests!= null)&&this.idealManifests.equals(rhs.idealManifests))))&&((this.focusedStrikes == rhs.focusedStrikes)||((this.focusedStrikes!= null)&&this.focusedStrikes.equals(rhs.focusedStrikes))))&&((this.level == rhs.level)||((this.level!= null)&&this.level.equals(rhs.level))))&&((this.operativeExploits == rhs.operativeExploits)||((this.operativeExploits!= null)&&this.operativeExploits.equals(rhs.operativeExploits))))&&((this.sneakAttack == rhs.sneakAttack)||((this.sneakAttack!= null)&&this.sneakAttack.equals(rhs.sneakAttack))))&&((this.idealsKnown == rhs.idealsKnown)||((this.idealsKnown!= null)&&this.idealsKnown.equals(rhs.idealsKnown))))&&((this.strategiesKnown == rhs.strategiesKnown)||((this.strategiesKnown!= null)&&this.strategiesKnown.equals(rhs.strategiesKnown))))&&((this.techPoints == rhs.techPoints)||((this.techPoints!= null)&&this.techPoints.equals(rhs.techPoints))))&&((this.rages == rhs.rages)||((this.rages!= null)&&this.rages.equals(rhs.rages))))&&((this.routinesKnown == rhs.routinesKnown)||((this.routinesKnown!= null)&&this.routinesKnown.equals(rhs.routinesKnown))))&&((this.unarmoredMovement == rhs.unarmoredMovement)||((this.unarmoredMovement!= null)&&this.unarmoredMovement.equals(rhs.unarmoredMovement))))&&((this.martialArts == rhs.martialArts)||((this.martialArts!= null)&&this.martialArts.equals(rhs.martialArts))))&&((this.discoveries == rhs.discoveries)||((this.discoveries!= null)&&this.discoveries.equals(rhs.discoveries))))&&((this.rageDamage == rhs.rageDamage)||((this.rageDamage!= null)&&this.rageDamage.equals(rhs.rageDamage))))&&((this.modificationSlots == rhs.modificationSlots)||((this.modificationSlots!= null)&&this.modificationSlots.equals(rhs.modificationSlots))))&&((this.superiorityDiceSize == rhs.superiorityDiceSize)||((this.superiorityDiceSize!= null)&&this.superiorityDiceSize.equals(rhs.superiorityDiceSize))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.routineRadius == rhs.routineRadius)||((this.routineRadius!= null)&&this.routineRadius.equals(rhs.routineRadius))))&&((this.forcePowersKnown == rhs.forcePowersKnown)||((this.forcePowersKnown!= null)&&this.forcePowersKnown.equals(rhs.forcePowersKnown)))); + } + +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/model/_12.java b/src/main/java/org/misoenergy/hackday/kessel_run/model/_12.java new file mode 100644 index 0000000..bd03f0c --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/model/_12.java @@ -0,0 +1,855 @@ + +package org.misoenergy.hackday.kessel_run.model; + +import java.util.HashMap; +import java.util.Map; +import javax.annotation.processing.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "Level", + "Proficiency Bonus", + "Features", + "Rages", + "Rage Damage", + "Berserker Instincts", + "Force Powers Known", + "Force Points", + "Max Power Level", + "Force-Empowered Casting Options", + "Tech Powers Known", + "Tech Points", + "Potent Aptitude", + "Modification Slots", + "Maneuvers Known", + "Superiority Dice Quantity", + "Superiority Dice Size", + "Strategies Known", + "Focused Strikes", + "Auras Known", + "Aura Radius", + "Martial Arts", + "Focus Points", + "Monastic Vows", + "Unarmored Movement", + "Sneak Attack", + "Operative Exploits", + "Discoveries", + "Ranger's Quarry", + "Routines Known", + "Routine Radius", + "Kinetic Combat", + "Ideals Known", + "Ideal Manifests" +}) +@Generated("jsonschema2pojo") +public class _12 { + + @JsonProperty("Level") + private String level; + @JsonProperty("Proficiency Bonus") + private String proficiencyBonus; + @JsonProperty("Features") + private String features; + @JsonProperty("Rages") + private String rages; + @JsonProperty("Rage Damage") + private String rageDamage; + @JsonProperty("Berserker Instincts") + private String berserkerInstincts; + @JsonProperty("Force Powers Known") + private String forcePowersKnown; + @JsonProperty("Force Points") + private String forcePoints; + @JsonProperty("Max Power Level") + private String maxPowerLevel; + @JsonProperty("Force-Empowered Casting Options") + private String forceEmpoweredCastingOptions; + @JsonProperty("Tech Powers Known") + private String techPowersKnown; + @JsonProperty("Tech Points") + private String techPoints; + @JsonProperty("Potent Aptitude") + private String potentAptitude; + @JsonProperty("Modification Slots") + private String modificationSlots; + @JsonProperty("Maneuvers Known") + private String maneuversKnown; + @JsonProperty("Superiority Dice Quantity") + private String superiorityDiceQuantity; + @JsonProperty("Superiority Dice Size") + private String superiorityDiceSize; + @JsonProperty("Strategies Known") + private String strategiesKnown; + @JsonProperty("Focused Strikes") + private String focusedStrikes; + @JsonProperty("Auras Known") + private String aurasKnown; + @JsonProperty("Aura Radius") + private String auraRadius; + @JsonProperty("Martial Arts") + private String martialArts; + @JsonProperty("Focus Points") + private String focusPoints; + @JsonProperty("Monastic Vows") + private String monasticVows; + @JsonProperty("Unarmored Movement") + private String unarmoredMovement; + @JsonProperty("Sneak Attack") + private String sneakAttack; + @JsonProperty("Operative Exploits") + private String operativeExploits; + @JsonProperty("Discoveries") + private String discoveries; + @JsonProperty("Ranger's Quarry") + private String rangerSQuarry; + @JsonProperty("Routines Known") + private String routinesKnown; + @JsonProperty("Routine Radius") + private String routineRadius; + @JsonProperty("Kinetic Combat") + private String kineticCombat; + @JsonProperty("Ideals Known") + private String idealsKnown; + @JsonProperty("Ideal Manifests") + private String idealManifests; + @JsonIgnore + private Map additionalProperties = new HashMap(); + + @JsonProperty("Level") + public String getLevel() { + return level; + } + + @JsonProperty("Level") + public void setLevel(String level) { + this.level = level; + } + + public _12 withLevel(String level) { + this.level = level; + return this; + } + + @JsonProperty("Proficiency Bonus") + public String getProficiencyBonus() { + return proficiencyBonus; + } + + @JsonProperty("Proficiency Bonus") + public void setProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + } + + public _12 withProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + return this; + } + + @JsonProperty("Features") + public String getFeatures() { + return features; + } + + @JsonProperty("Features") + public void setFeatures(String features) { + this.features = features; + } + + public _12 withFeatures(String features) { + this.features = features; + return this; + } + + @JsonProperty("Rages") + public String getRages() { + return rages; + } + + @JsonProperty("Rages") + public void setRages(String rages) { + this.rages = rages; + } + + public _12 withRages(String rages) { + this.rages = rages; + return this; + } + + @JsonProperty("Rage Damage") + public String getRageDamage() { + return rageDamage; + } + + @JsonProperty("Rage Damage") + public void setRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + } + + public _12 withRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + return this; + } + + @JsonProperty("Berserker Instincts") + public String getBerserkerInstincts() { + return berserkerInstincts; + } + + @JsonProperty("Berserker Instincts") + public void setBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + } + + public _12 withBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + return this; + } + + @JsonProperty("Force Powers Known") + public String getForcePowersKnown() { + return forcePowersKnown; + } + + @JsonProperty("Force Powers Known") + public void setForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + } + + public _12 withForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + return this; + } + + @JsonProperty("Force Points") + public String getForcePoints() { + return forcePoints; + } + + @JsonProperty("Force Points") + public void setForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + } + + public _12 withForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + return this; + } + + @JsonProperty("Max Power Level") + public String getMaxPowerLevel() { + return maxPowerLevel; + } + + @JsonProperty("Max Power Level") + public void setMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + } + + public _12 withMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + return this; + } + + @JsonProperty("Force-Empowered Casting Options") + public String getForceEmpoweredCastingOptions() { + return forceEmpoweredCastingOptions; + } + + @JsonProperty("Force-Empowered Casting Options") + public void setForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + } + + public _12 withForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + return this; + } + + @JsonProperty("Tech Powers Known") + public String getTechPowersKnown() { + return techPowersKnown; + } + + @JsonProperty("Tech Powers Known") + public void setTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + } + + public _12 withTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + return this; + } + + @JsonProperty("Tech Points") + public String getTechPoints() { + return techPoints; + } + + @JsonProperty("Tech Points") + public void setTechPoints(String techPoints) { + this.techPoints = techPoints; + } + + public _12 withTechPoints(String techPoints) { + this.techPoints = techPoints; + return this; + } + + @JsonProperty("Potent Aptitude") + public String getPotentAptitude() { + return potentAptitude; + } + + @JsonProperty("Potent Aptitude") + public void setPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + } + + public _12 withPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + return this; + } + + @JsonProperty("Modification Slots") + public String getModificationSlots() { + return modificationSlots; + } + + @JsonProperty("Modification Slots") + public void setModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + } + + public _12 withModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + return this; + } + + @JsonProperty("Maneuvers Known") + public String getManeuversKnown() { + return maneuversKnown; + } + + @JsonProperty("Maneuvers Known") + public void setManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + } + + public _12 withManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + return this; + } + + @JsonProperty("Superiority Dice Quantity") + public String getSuperiorityDiceQuantity() { + return superiorityDiceQuantity; + } + + @JsonProperty("Superiority Dice Quantity") + public void setSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + } + + public _12 withSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + return this; + } + + @JsonProperty("Superiority Dice Size") + public String getSuperiorityDiceSize() { + return superiorityDiceSize; + } + + @JsonProperty("Superiority Dice Size") + public void setSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + } + + public _12 withSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + return this; + } + + @JsonProperty("Strategies Known") + public String getStrategiesKnown() { + return strategiesKnown; + } + + @JsonProperty("Strategies Known") + public void setStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + } + + public _12 withStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + return this; + } + + @JsonProperty("Focused Strikes") + public String getFocusedStrikes() { + return focusedStrikes; + } + + @JsonProperty("Focused Strikes") + public void setFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + } + + public _12 withFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + return this; + } + + @JsonProperty("Auras Known") + public String getAurasKnown() { + return aurasKnown; + } + + @JsonProperty("Auras Known") + public void setAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + } + + public _12 withAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + return this; + } + + @JsonProperty("Aura Radius") + public String getAuraRadius() { + return auraRadius; + } + + @JsonProperty("Aura Radius") + public void setAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + } + + public _12 withAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + return this; + } + + @JsonProperty("Martial Arts") + public String getMartialArts() { + return martialArts; + } + + @JsonProperty("Martial Arts") + public void setMartialArts(String martialArts) { + this.martialArts = martialArts; + } + + public _12 withMartialArts(String martialArts) { + this.martialArts = martialArts; + return this; + } + + @JsonProperty("Focus Points") + public String getFocusPoints() { + return focusPoints; + } + + @JsonProperty("Focus Points") + public void setFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + } + + public _12 withFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + return this; + } + + @JsonProperty("Monastic Vows") + public String getMonasticVows() { + return monasticVows; + } + + @JsonProperty("Monastic Vows") + public void setMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + } + + public _12 withMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + return this; + } + + @JsonProperty("Unarmored Movement") + public String getUnarmoredMovement() { + return unarmoredMovement; + } + + @JsonProperty("Unarmored Movement") + public void setUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + } + + public _12 withUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + return this; + } + + @JsonProperty("Sneak Attack") + public String getSneakAttack() { + return sneakAttack; + } + + @JsonProperty("Sneak Attack") + public void setSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + } + + public _12 withSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + return this; + } + + @JsonProperty("Operative Exploits") + public String getOperativeExploits() { + return operativeExploits; + } + + @JsonProperty("Operative Exploits") + public void setOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + } + + public _12 withOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + return this; + } + + @JsonProperty("Discoveries") + public String getDiscoveries() { + return discoveries; + } + + @JsonProperty("Discoveries") + public void setDiscoveries(String discoveries) { + this.discoveries = discoveries; + } + + public _12 withDiscoveries(String discoveries) { + this.discoveries = discoveries; + return this; + } + + @JsonProperty("Ranger's Quarry") + public String getRangerSQuarry() { + return rangerSQuarry; + } + + @JsonProperty("Ranger's Quarry") + public void setRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + } + + public _12 withRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + return this; + } + + @JsonProperty("Routines Known") + public String getRoutinesKnown() { + return routinesKnown; + } + + @JsonProperty("Routines Known") + public void setRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + } + + public _12 withRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + return this; + } + + @JsonProperty("Routine Radius") + public String getRoutineRadius() { + return routineRadius; + } + + @JsonProperty("Routine Radius") + public void setRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + } + + public _12 withRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + return this; + } + + @JsonProperty("Kinetic Combat") + public String getKineticCombat() { + return kineticCombat; + } + + @JsonProperty("Kinetic Combat") + public void setKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + } + + public _12 withKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + return this; + } + + @JsonProperty("Ideals Known") + public String getIdealsKnown() { + return idealsKnown; + } + + @JsonProperty("Ideals Known") + public void setIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + } + + public _12 withIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + return this; + } + + @JsonProperty("Ideal Manifests") + public String getIdealManifests() { + return idealManifests; + } + + @JsonProperty("Ideal Manifests") + public void setIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + } + + public _12 withIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public _12 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(_12 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("level"); + sb.append('='); + sb.append(((this.level == null)?"":this.level)); + sb.append(','); + sb.append("proficiencyBonus"); + sb.append('='); + sb.append(((this.proficiencyBonus == null)?"":this.proficiencyBonus)); + sb.append(','); + sb.append("features"); + sb.append('='); + sb.append(((this.features == null)?"":this.features)); + sb.append(','); + sb.append("rages"); + sb.append('='); + sb.append(((this.rages == null)?"":this.rages)); + sb.append(','); + sb.append("rageDamage"); + sb.append('='); + sb.append(((this.rageDamage == null)?"":this.rageDamage)); + sb.append(','); + sb.append("berserkerInstincts"); + sb.append('='); + sb.append(((this.berserkerInstincts == null)?"":this.berserkerInstincts)); + sb.append(','); + sb.append("forcePowersKnown"); + sb.append('='); + sb.append(((this.forcePowersKnown == null)?"":this.forcePowersKnown)); + sb.append(','); + sb.append("forcePoints"); + sb.append('='); + sb.append(((this.forcePoints == null)?"":this.forcePoints)); + sb.append(','); + sb.append("maxPowerLevel"); + sb.append('='); + sb.append(((this.maxPowerLevel == null)?"":this.maxPowerLevel)); + sb.append(','); + sb.append("forceEmpoweredCastingOptions"); + sb.append('='); + sb.append(((this.forceEmpoweredCastingOptions == null)?"":this.forceEmpoweredCastingOptions)); + sb.append(','); + sb.append("techPowersKnown"); + sb.append('='); + sb.append(((this.techPowersKnown == null)?"":this.techPowersKnown)); + sb.append(','); + sb.append("techPoints"); + sb.append('='); + sb.append(((this.techPoints == null)?"":this.techPoints)); + sb.append(','); + sb.append("potentAptitude"); + sb.append('='); + sb.append(((this.potentAptitude == null)?"":this.potentAptitude)); + sb.append(','); + sb.append("modificationSlots"); + sb.append('='); + sb.append(((this.modificationSlots == null)?"":this.modificationSlots)); + sb.append(','); + sb.append("maneuversKnown"); + sb.append('='); + sb.append(((this.maneuversKnown == null)?"":this.maneuversKnown)); + sb.append(','); + sb.append("superiorityDiceQuantity"); + sb.append('='); + sb.append(((this.superiorityDiceQuantity == null)?"":this.superiorityDiceQuantity)); + sb.append(','); + sb.append("superiorityDiceSize"); + sb.append('='); + sb.append(((this.superiorityDiceSize == null)?"":this.superiorityDiceSize)); + sb.append(','); + sb.append("strategiesKnown"); + sb.append('='); + sb.append(((this.strategiesKnown == null)?"":this.strategiesKnown)); + sb.append(','); + sb.append("focusedStrikes"); + sb.append('='); + sb.append(((this.focusedStrikes == null)?"":this.focusedStrikes)); + sb.append(','); + sb.append("aurasKnown"); + sb.append('='); + sb.append(((this.aurasKnown == null)?"":this.aurasKnown)); + sb.append(','); + sb.append("auraRadius"); + sb.append('='); + sb.append(((this.auraRadius == null)?"":this.auraRadius)); + sb.append(','); + sb.append("martialArts"); + sb.append('='); + sb.append(((this.martialArts == null)?"":this.martialArts)); + sb.append(','); + sb.append("focusPoints"); + sb.append('='); + sb.append(((this.focusPoints == null)?"":this.focusPoints)); + sb.append(','); + sb.append("monasticVows"); + sb.append('='); + sb.append(((this.monasticVows == null)?"":this.monasticVows)); + sb.append(','); + sb.append("unarmoredMovement"); + sb.append('='); + sb.append(((this.unarmoredMovement == null)?"":this.unarmoredMovement)); + sb.append(','); + sb.append("sneakAttack"); + sb.append('='); + sb.append(((this.sneakAttack == null)?"":this.sneakAttack)); + sb.append(','); + sb.append("operativeExploits"); + sb.append('='); + sb.append(((this.operativeExploits == null)?"":this.operativeExploits)); + sb.append(','); + sb.append("discoveries"); + sb.append('='); + sb.append(((this.discoveries == null)?"":this.discoveries)); + sb.append(','); + sb.append("rangerSQuarry"); + sb.append('='); + sb.append(((this.rangerSQuarry == null)?"":this.rangerSQuarry)); + sb.append(','); + sb.append("routinesKnown"); + sb.append('='); + sb.append(((this.routinesKnown == null)?"":this.routinesKnown)); + sb.append(','); + sb.append("routineRadius"); + sb.append('='); + sb.append(((this.routineRadius == null)?"":this.routineRadius)); + sb.append(','); + sb.append("kineticCombat"); + sb.append('='); + sb.append(((this.kineticCombat == null)?"":this.kineticCombat)); + sb.append(','); + sb.append("idealsKnown"); + sb.append('='); + sb.append(((this.idealsKnown == null)?"":this.idealsKnown)); + sb.append(','); + sb.append("idealManifests"); + sb.append('='); + sb.append(((this.idealManifests == null)?"":this.idealManifests)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.superiorityDiceQuantity == null)? 0 :this.superiorityDiceQuantity.hashCode())); + result = ((result* 31)+((this.forceEmpoweredCastingOptions == null)? 0 :this.forceEmpoweredCastingOptions.hashCode())); + result = ((result* 31)+((this.kineticCombat == null)? 0 :this.kineticCombat.hashCode())); + result = ((result* 31)+((this.forcePoints == null)? 0 :this.forcePoints.hashCode())); + result = ((result* 31)+((this.potentAptitude == null)? 0 :this.potentAptitude.hashCode())); + result = ((result* 31)+((this.auraRadius == null)? 0 :this.auraRadius.hashCode())); + result = ((result* 31)+((this.proficiencyBonus == null)? 0 :this.proficiencyBonus.hashCode())); + result = ((result* 31)+((this.maneuversKnown == null)? 0 :this.maneuversKnown.hashCode())); + result = ((result* 31)+((this.monasticVows == null)? 0 :this.monasticVows.hashCode())); + result = ((result* 31)+((this.techPowersKnown == null)? 0 :this.techPowersKnown.hashCode())); + result = ((result* 31)+((this.focusPoints == null)? 0 :this.focusPoints.hashCode())); + result = ((result* 31)+((this.features == null)? 0 :this.features.hashCode())); + result = ((result* 31)+((this.maxPowerLevel == null)? 0 :this.maxPowerLevel.hashCode())); + result = ((result* 31)+((this.berserkerInstincts == null)? 0 :this.berserkerInstincts.hashCode())); + result = ((result* 31)+((this.aurasKnown == null)? 0 :this.aurasKnown.hashCode())); + result = ((result* 31)+((this.rangerSQuarry == null)? 0 :this.rangerSQuarry.hashCode())); + result = ((result* 31)+((this.idealManifests == null)? 0 :this.idealManifests.hashCode())); + result = ((result* 31)+((this.focusedStrikes == null)? 0 :this.focusedStrikes.hashCode())); + result = ((result* 31)+((this.level == null)? 0 :this.level.hashCode())); + result = ((result* 31)+((this.operativeExploits == null)? 0 :this.operativeExploits.hashCode())); + result = ((result* 31)+((this.sneakAttack == null)? 0 :this.sneakAttack.hashCode())); + result = ((result* 31)+((this.idealsKnown == null)? 0 :this.idealsKnown.hashCode())); + result = ((result* 31)+((this.strategiesKnown == null)? 0 :this.strategiesKnown.hashCode())); + result = ((result* 31)+((this.techPoints == null)? 0 :this.techPoints.hashCode())); + result = ((result* 31)+((this.rages == null)? 0 :this.rages.hashCode())); + result = ((result* 31)+((this.routinesKnown == null)? 0 :this.routinesKnown.hashCode())); + result = ((result* 31)+((this.unarmoredMovement == null)? 0 :this.unarmoredMovement.hashCode())); + result = ((result* 31)+((this.martialArts == null)? 0 :this.martialArts.hashCode())); + result = ((result* 31)+((this.discoveries == null)? 0 :this.discoveries.hashCode())); + result = ((result* 31)+((this.rageDamage == null)? 0 :this.rageDamage.hashCode())); + result = ((result* 31)+((this.modificationSlots == null)? 0 :this.modificationSlots.hashCode())); + result = ((result* 31)+((this.superiorityDiceSize == null)? 0 :this.superiorityDiceSize.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.routineRadius == null)? 0 :this.routineRadius.hashCode())); + result = ((result* 31)+((this.forcePowersKnown == null)? 0 :this.forcePowersKnown.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof _12) == false) { + return false; + } + _12 rhs = ((_12) other); + return ((((((((((((((((((((((((((((((((((((this.superiorityDiceQuantity == rhs.superiorityDiceQuantity)||((this.superiorityDiceQuantity!= null)&&this.superiorityDiceQuantity.equals(rhs.superiorityDiceQuantity)))&&((this.forceEmpoweredCastingOptions == rhs.forceEmpoweredCastingOptions)||((this.forceEmpoweredCastingOptions!= null)&&this.forceEmpoweredCastingOptions.equals(rhs.forceEmpoweredCastingOptions))))&&((this.kineticCombat == rhs.kineticCombat)||((this.kineticCombat!= null)&&this.kineticCombat.equals(rhs.kineticCombat))))&&((this.forcePoints == rhs.forcePoints)||((this.forcePoints!= null)&&this.forcePoints.equals(rhs.forcePoints))))&&((this.potentAptitude == rhs.potentAptitude)||((this.potentAptitude!= null)&&this.potentAptitude.equals(rhs.potentAptitude))))&&((this.auraRadius == rhs.auraRadius)||((this.auraRadius!= null)&&this.auraRadius.equals(rhs.auraRadius))))&&((this.proficiencyBonus == rhs.proficiencyBonus)||((this.proficiencyBonus!= null)&&this.proficiencyBonus.equals(rhs.proficiencyBonus))))&&((this.maneuversKnown == rhs.maneuversKnown)||((this.maneuversKnown!= null)&&this.maneuversKnown.equals(rhs.maneuversKnown))))&&((this.monasticVows == rhs.monasticVows)||((this.monasticVows!= null)&&this.monasticVows.equals(rhs.monasticVows))))&&((this.techPowersKnown == rhs.techPowersKnown)||((this.techPowersKnown!= null)&&this.techPowersKnown.equals(rhs.techPowersKnown))))&&((this.focusPoints == rhs.focusPoints)||((this.focusPoints!= null)&&this.focusPoints.equals(rhs.focusPoints))))&&((this.features == rhs.features)||((this.features!= null)&&this.features.equals(rhs.features))))&&((this.maxPowerLevel == rhs.maxPowerLevel)||((this.maxPowerLevel!= null)&&this.maxPowerLevel.equals(rhs.maxPowerLevel))))&&((this.berserkerInstincts == rhs.berserkerInstincts)||((this.berserkerInstincts!= null)&&this.berserkerInstincts.equals(rhs.berserkerInstincts))))&&((this.aurasKnown == rhs.aurasKnown)||((this.aurasKnown!= null)&&this.aurasKnown.equals(rhs.aurasKnown))))&&((this.rangerSQuarry == rhs.rangerSQuarry)||((this.rangerSQuarry!= null)&&this.rangerSQuarry.equals(rhs.rangerSQuarry))))&&((this.idealManifests == rhs.idealManifests)||((this.idealManifests!= null)&&this.idealManifests.equals(rhs.idealManifests))))&&((this.focusedStrikes == rhs.focusedStrikes)||((this.focusedStrikes!= null)&&this.focusedStrikes.equals(rhs.focusedStrikes))))&&((this.level == rhs.level)||((this.level!= null)&&this.level.equals(rhs.level))))&&((this.operativeExploits == rhs.operativeExploits)||((this.operativeExploits!= null)&&this.operativeExploits.equals(rhs.operativeExploits))))&&((this.sneakAttack == rhs.sneakAttack)||((this.sneakAttack!= null)&&this.sneakAttack.equals(rhs.sneakAttack))))&&((this.idealsKnown == rhs.idealsKnown)||((this.idealsKnown!= null)&&this.idealsKnown.equals(rhs.idealsKnown))))&&((this.strategiesKnown == rhs.strategiesKnown)||((this.strategiesKnown!= null)&&this.strategiesKnown.equals(rhs.strategiesKnown))))&&((this.techPoints == rhs.techPoints)||((this.techPoints!= null)&&this.techPoints.equals(rhs.techPoints))))&&((this.rages == rhs.rages)||((this.rages!= null)&&this.rages.equals(rhs.rages))))&&((this.routinesKnown == rhs.routinesKnown)||((this.routinesKnown!= null)&&this.routinesKnown.equals(rhs.routinesKnown))))&&((this.unarmoredMovement == rhs.unarmoredMovement)||((this.unarmoredMovement!= null)&&this.unarmoredMovement.equals(rhs.unarmoredMovement))))&&((this.martialArts == rhs.martialArts)||((this.martialArts!= null)&&this.martialArts.equals(rhs.martialArts))))&&((this.discoveries == rhs.discoveries)||((this.discoveries!= null)&&this.discoveries.equals(rhs.discoveries))))&&((this.rageDamage == rhs.rageDamage)||((this.rageDamage!= null)&&this.rageDamage.equals(rhs.rageDamage))))&&((this.modificationSlots == rhs.modificationSlots)||((this.modificationSlots!= null)&&this.modificationSlots.equals(rhs.modificationSlots))))&&((this.superiorityDiceSize == rhs.superiorityDiceSize)||((this.superiorityDiceSize!= null)&&this.superiorityDiceSize.equals(rhs.superiorityDiceSize))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.routineRadius == rhs.routineRadius)||((this.routineRadius!= null)&&this.routineRadius.equals(rhs.routineRadius))))&&((this.forcePowersKnown == rhs.forcePowersKnown)||((this.forcePowersKnown!= null)&&this.forcePowersKnown.equals(rhs.forcePowersKnown)))); + } + +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/model/_13.java b/src/main/java/org/misoenergy/hackday/kessel_run/model/_13.java new file mode 100644 index 0000000..cd39e68 --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/model/_13.java @@ -0,0 +1,855 @@ + +package org.misoenergy.hackday.kessel_run.model; + +import java.util.HashMap; +import java.util.Map; +import javax.annotation.processing.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "Level", + "Proficiency Bonus", + "Features", + "Rages", + "Rage Damage", + "Berserker Instincts", + "Force Powers Known", + "Force Points", + "Max Power Level", + "Force-Empowered Casting Options", + "Tech Powers Known", + "Tech Points", + "Potent Aptitude", + "Modification Slots", + "Maneuvers Known", + "Superiority Dice Quantity", + "Superiority Dice Size", + "Strategies Known", + "Focused Strikes", + "Auras Known", + "Aura Radius", + "Martial Arts", + "Focus Points", + "Monastic Vows", + "Unarmored Movement", + "Sneak Attack", + "Operative Exploits", + "Discoveries", + "Ranger's Quarry", + "Routines Known", + "Routine Radius", + "Kinetic Combat", + "Ideals Known", + "Ideal Manifests" +}) +@Generated("jsonschema2pojo") +public class _13 { + + @JsonProperty("Level") + private String level; + @JsonProperty("Proficiency Bonus") + private String proficiencyBonus; + @JsonProperty("Features") + private String features; + @JsonProperty("Rages") + private String rages; + @JsonProperty("Rage Damage") + private String rageDamage; + @JsonProperty("Berserker Instincts") + private String berserkerInstincts; + @JsonProperty("Force Powers Known") + private String forcePowersKnown; + @JsonProperty("Force Points") + private String forcePoints; + @JsonProperty("Max Power Level") + private String maxPowerLevel; + @JsonProperty("Force-Empowered Casting Options") + private String forceEmpoweredCastingOptions; + @JsonProperty("Tech Powers Known") + private String techPowersKnown; + @JsonProperty("Tech Points") + private String techPoints; + @JsonProperty("Potent Aptitude") + private String potentAptitude; + @JsonProperty("Modification Slots") + private String modificationSlots; + @JsonProperty("Maneuvers Known") + private String maneuversKnown; + @JsonProperty("Superiority Dice Quantity") + private String superiorityDiceQuantity; + @JsonProperty("Superiority Dice Size") + private String superiorityDiceSize; + @JsonProperty("Strategies Known") + private String strategiesKnown; + @JsonProperty("Focused Strikes") + private String focusedStrikes; + @JsonProperty("Auras Known") + private String aurasKnown; + @JsonProperty("Aura Radius") + private String auraRadius; + @JsonProperty("Martial Arts") + private String martialArts; + @JsonProperty("Focus Points") + private String focusPoints; + @JsonProperty("Monastic Vows") + private String monasticVows; + @JsonProperty("Unarmored Movement") + private String unarmoredMovement; + @JsonProperty("Sneak Attack") + private String sneakAttack; + @JsonProperty("Operative Exploits") + private String operativeExploits; + @JsonProperty("Discoveries") + private String discoveries; + @JsonProperty("Ranger's Quarry") + private String rangerSQuarry; + @JsonProperty("Routines Known") + private String routinesKnown; + @JsonProperty("Routine Radius") + private String routineRadius; + @JsonProperty("Kinetic Combat") + private String kineticCombat; + @JsonProperty("Ideals Known") + private String idealsKnown; + @JsonProperty("Ideal Manifests") + private String idealManifests; + @JsonIgnore + private Map additionalProperties = new HashMap(); + + @JsonProperty("Level") + public String getLevel() { + return level; + } + + @JsonProperty("Level") + public void setLevel(String level) { + this.level = level; + } + + public _13 withLevel(String level) { + this.level = level; + return this; + } + + @JsonProperty("Proficiency Bonus") + public String getProficiencyBonus() { + return proficiencyBonus; + } + + @JsonProperty("Proficiency Bonus") + public void setProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + } + + public _13 withProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + return this; + } + + @JsonProperty("Features") + public String getFeatures() { + return features; + } + + @JsonProperty("Features") + public void setFeatures(String features) { + this.features = features; + } + + public _13 withFeatures(String features) { + this.features = features; + return this; + } + + @JsonProperty("Rages") + public String getRages() { + return rages; + } + + @JsonProperty("Rages") + public void setRages(String rages) { + this.rages = rages; + } + + public _13 withRages(String rages) { + this.rages = rages; + return this; + } + + @JsonProperty("Rage Damage") + public String getRageDamage() { + return rageDamage; + } + + @JsonProperty("Rage Damage") + public void setRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + } + + public _13 withRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + return this; + } + + @JsonProperty("Berserker Instincts") + public String getBerserkerInstincts() { + return berserkerInstincts; + } + + @JsonProperty("Berserker Instincts") + public void setBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + } + + public _13 withBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + return this; + } + + @JsonProperty("Force Powers Known") + public String getForcePowersKnown() { + return forcePowersKnown; + } + + @JsonProperty("Force Powers Known") + public void setForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + } + + public _13 withForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + return this; + } + + @JsonProperty("Force Points") + public String getForcePoints() { + return forcePoints; + } + + @JsonProperty("Force Points") + public void setForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + } + + public _13 withForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + return this; + } + + @JsonProperty("Max Power Level") + public String getMaxPowerLevel() { + return maxPowerLevel; + } + + @JsonProperty("Max Power Level") + public void setMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + } + + public _13 withMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + return this; + } + + @JsonProperty("Force-Empowered Casting Options") + public String getForceEmpoweredCastingOptions() { + return forceEmpoweredCastingOptions; + } + + @JsonProperty("Force-Empowered Casting Options") + public void setForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + } + + public _13 withForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + return this; + } + + @JsonProperty("Tech Powers Known") + public String getTechPowersKnown() { + return techPowersKnown; + } + + @JsonProperty("Tech Powers Known") + public void setTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + } + + public _13 withTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + return this; + } + + @JsonProperty("Tech Points") + public String getTechPoints() { + return techPoints; + } + + @JsonProperty("Tech Points") + public void setTechPoints(String techPoints) { + this.techPoints = techPoints; + } + + public _13 withTechPoints(String techPoints) { + this.techPoints = techPoints; + return this; + } + + @JsonProperty("Potent Aptitude") + public String getPotentAptitude() { + return potentAptitude; + } + + @JsonProperty("Potent Aptitude") + public void setPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + } + + public _13 withPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + return this; + } + + @JsonProperty("Modification Slots") + public String getModificationSlots() { + return modificationSlots; + } + + @JsonProperty("Modification Slots") + public void setModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + } + + public _13 withModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + return this; + } + + @JsonProperty("Maneuvers Known") + public String getManeuversKnown() { + return maneuversKnown; + } + + @JsonProperty("Maneuvers Known") + public void setManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + } + + public _13 withManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + return this; + } + + @JsonProperty("Superiority Dice Quantity") + public String getSuperiorityDiceQuantity() { + return superiorityDiceQuantity; + } + + @JsonProperty("Superiority Dice Quantity") + public void setSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + } + + public _13 withSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + return this; + } + + @JsonProperty("Superiority Dice Size") + public String getSuperiorityDiceSize() { + return superiorityDiceSize; + } + + @JsonProperty("Superiority Dice Size") + public void setSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + } + + public _13 withSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + return this; + } + + @JsonProperty("Strategies Known") + public String getStrategiesKnown() { + return strategiesKnown; + } + + @JsonProperty("Strategies Known") + public void setStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + } + + public _13 withStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + return this; + } + + @JsonProperty("Focused Strikes") + public String getFocusedStrikes() { + return focusedStrikes; + } + + @JsonProperty("Focused Strikes") + public void setFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + } + + public _13 withFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + return this; + } + + @JsonProperty("Auras Known") + public String getAurasKnown() { + return aurasKnown; + } + + @JsonProperty("Auras Known") + public void setAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + } + + public _13 withAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + return this; + } + + @JsonProperty("Aura Radius") + public String getAuraRadius() { + return auraRadius; + } + + @JsonProperty("Aura Radius") + public void setAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + } + + public _13 withAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + return this; + } + + @JsonProperty("Martial Arts") + public String getMartialArts() { + return martialArts; + } + + @JsonProperty("Martial Arts") + public void setMartialArts(String martialArts) { + this.martialArts = martialArts; + } + + public _13 withMartialArts(String martialArts) { + this.martialArts = martialArts; + return this; + } + + @JsonProperty("Focus Points") + public String getFocusPoints() { + return focusPoints; + } + + @JsonProperty("Focus Points") + public void setFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + } + + public _13 withFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + return this; + } + + @JsonProperty("Monastic Vows") + public String getMonasticVows() { + return monasticVows; + } + + @JsonProperty("Monastic Vows") + public void setMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + } + + public _13 withMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + return this; + } + + @JsonProperty("Unarmored Movement") + public String getUnarmoredMovement() { + return unarmoredMovement; + } + + @JsonProperty("Unarmored Movement") + public void setUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + } + + public _13 withUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + return this; + } + + @JsonProperty("Sneak Attack") + public String getSneakAttack() { + return sneakAttack; + } + + @JsonProperty("Sneak Attack") + public void setSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + } + + public _13 withSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + return this; + } + + @JsonProperty("Operative Exploits") + public String getOperativeExploits() { + return operativeExploits; + } + + @JsonProperty("Operative Exploits") + public void setOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + } + + public _13 withOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + return this; + } + + @JsonProperty("Discoveries") + public String getDiscoveries() { + return discoveries; + } + + @JsonProperty("Discoveries") + public void setDiscoveries(String discoveries) { + this.discoveries = discoveries; + } + + public _13 withDiscoveries(String discoveries) { + this.discoveries = discoveries; + return this; + } + + @JsonProperty("Ranger's Quarry") + public String getRangerSQuarry() { + return rangerSQuarry; + } + + @JsonProperty("Ranger's Quarry") + public void setRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + } + + public _13 withRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + return this; + } + + @JsonProperty("Routines Known") + public String getRoutinesKnown() { + return routinesKnown; + } + + @JsonProperty("Routines Known") + public void setRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + } + + public _13 withRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + return this; + } + + @JsonProperty("Routine Radius") + public String getRoutineRadius() { + return routineRadius; + } + + @JsonProperty("Routine Radius") + public void setRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + } + + public _13 withRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + return this; + } + + @JsonProperty("Kinetic Combat") + public String getKineticCombat() { + return kineticCombat; + } + + @JsonProperty("Kinetic Combat") + public void setKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + } + + public _13 withKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + return this; + } + + @JsonProperty("Ideals Known") + public String getIdealsKnown() { + return idealsKnown; + } + + @JsonProperty("Ideals Known") + public void setIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + } + + public _13 withIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + return this; + } + + @JsonProperty("Ideal Manifests") + public String getIdealManifests() { + return idealManifests; + } + + @JsonProperty("Ideal Manifests") + public void setIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + } + + public _13 withIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public _13 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(_13 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("level"); + sb.append('='); + sb.append(((this.level == null)?"":this.level)); + sb.append(','); + sb.append("proficiencyBonus"); + sb.append('='); + sb.append(((this.proficiencyBonus == null)?"":this.proficiencyBonus)); + sb.append(','); + sb.append("features"); + sb.append('='); + sb.append(((this.features == null)?"":this.features)); + sb.append(','); + sb.append("rages"); + sb.append('='); + sb.append(((this.rages == null)?"":this.rages)); + sb.append(','); + sb.append("rageDamage"); + sb.append('='); + sb.append(((this.rageDamage == null)?"":this.rageDamage)); + sb.append(','); + sb.append("berserkerInstincts"); + sb.append('='); + sb.append(((this.berserkerInstincts == null)?"":this.berserkerInstincts)); + sb.append(','); + sb.append("forcePowersKnown"); + sb.append('='); + sb.append(((this.forcePowersKnown == null)?"":this.forcePowersKnown)); + sb.append(','); + sb.append("forcePoints"); + sb.append('='); + sb.append(((this.forcePoints == null)?"":this.forcePoints)); + sb.append(','); + sb.append("maxPowerLevel"); + sb.append('='); + sb.append(((this.maxPowerLevel == null)?"":this.maxPowerLevel)); + sb.append(','); + sb.append("forceEmpoweredCastingOptions"); + sb.append('='); + sb.append(((this.forceEmpoweredCastingOptions == null)?"":this.forceEmpoweredCastingOptions)); + sb.append(','); + sb.append("techPowersKnown"); + sb.append('='); + sb.append(((this.techPowersKnown == null)?"":this.techPowersKnown)); + sb.append(','); + sb.append("techPoints"); + sb.append('='); + sb.append(((this.techPoints == null)?"":this.techPoints)); + sb.append(','); + sb.append("potentAptitude"); + sb.append('='); + sb.append(((this.potentAptitude == null)?"":this.potentAptitude)); + sb.append(','); + sb.append("modificationSlots"); + sb.append('='); + sb.append(((this.modificationSlots == null)?"":this.modificationSlots)); + sb.append(','); + sb.append("maneuversKnown"); + sb.append('='); + sb.append(((this.maneuversKnown == null)?"":this.maneuversKnown)); + sb.append(','); + sb.append("superiorityDiceQuantity"); + sb.append('='); + sb.append(((this.superiorityDiceQuantity == null)?"":this.superiorityDiceQuantity)); + sb.append(','); + sb.append("superiorityDiceSize"); + sb.append('='); + sb.append(((this.superiorityDiceSize == null)?"":this.superiorityDiceSize)); + sb.append(','); + sb.append("strategiesKnown"); + sb.append('='); + sb.append(((this.strategiesKnown == null)?"":this.strategiesKnown)); + sb.append(','); + sb.append("focusedStrikes"); + sb.append('='); + sb.append(((this.focusedStrikes == null)?"":this.focusedStrikes)); + sb.append(','); + sb.append("aurasKnown"); + sb.append('='); + sb.append(((this.aurasKnown == null)?"":this.aurasKnown)); + sb.append(','); + sb.append("auraRadius"); + sb.append('='); + sb.append(((this.auraRadius == null)?"":this.auraRadius)); + sb.append(','); + sb.append("martialArts"); + sb.append('='); + sb.append(((this.martialArts == null)?"":this.martialArts)); + sb.append(','); + sb.append("focusPoints"); + sb.append('='); + sb.append(((this.focusPoints == null)?"":this.focusPoints)); + sb.append(','); + sb.append("monasticVows"); + sb.append('='); + sb.append(((this.monasticVows == null)?"":this.monasticVows)); + sb.append(','); + sb.append("unarmoredMovement"); + sb.append('='); + sb.append(((this.unarmoredMovement == null)?"":this.unarmoredMovement)); + sb.append(','); + sb.append("sneakAttack"); + sb.append('='); + sb.append(((this.sneakAttack == null)?"":this.sneakAttack)); + sb.append(','); + sb.append("operativeExploits"); + sb.append('='); + sb.append(((this.operativeExploits == null)?"":this.operativeExploits)); + sb.append(','); + sb.append("discoveries"); + sb.append('='); + sb.append(((this.discoveries == null)?"":this.discoveries)); + sb.append(','); + sb.append("rangerSQuarry"); + sb.append('='); + sb.append(((this.rangerSQuarry == null)?"":this.rangerSQuarry)); + sb.append(','); + sb.append("routinesKnown"); + sb.append('='); + sb.append(((this.routinesKnown == null)?"":this.routinesKnown)); + sb.append(','); + sb.append("routineRadius"); + sb.append('='); + sb.append(((this.routineRadius == null)?"":this.routineRadius)); + sb.append(','); + sb.append("kineticCombat"); + sb.append('='); + sb.append(((this.kineticCombat == null)?"":this.kineticCombat)); + sb.append(','); + sb.append("idealsKnown"); + sb.append('='); + sb.append(((this.idealsKnown == null)?"":this.idealsKnown)); + sb.append(','); + sb.append("idealManifests"); + sb.append('='); + sb.append(((this.idealManifests == null)?"":this.idealManifests)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.superiorityDiceQuantity == null)? 0 :this.superiorityDiceQuantity.hashCode())); + result = ((result* 31)+((this.forceEmpoweredCastingOptions == null)? 0 :this.forceEmpoweredCastingOptions.hashCode())); + result = ((result* 31)+((this.kineticCombat == null)? 0 :this.kineticCombat.hashCode())); + result = ((result* 31)+((this.forcePoints == null)? 0 :this.forcePoints.hashCode())); + result = ((result* 31)+((this.potentAptitude == null)? 0 :this.potentAptitude.hashCode())); + result = ((result* 31)+((this.auraRadius == null)? 0 :this.auraRadius.hashCode())); + result = ((result* 31)+((this.proficiencyBonus == null)? 0 :this.proficiencyBonus.hashCode())); + result = ((result* 31)+((this.maneuversKnown == null)? 0 :this.maneuversKnown.hashCode())); + result = ((result* 31)+((this.monasticVows == null)? 0 :this.monasticVows.hashCode())); + result = ((result* 31)+((this.techPowersKnown == null)? 0 :this.techPowersKnown.hashCode())); + result = ((result* 31)+((this.focusPoints == null)? 0 :this.focusPoints.hashCode())); + result = ((result* 31)+((this.features == null)? 0 :this.features.hashCode())); + result = ((result* 31)+((this.maxPowerLevel == null)? 0 :this.maxPowerLevel.hashCode())); + result = ((result* 31)+((this.berserkerInstincts == null)? 0 :this.berserkerInstincts.hashCode())); + result = ((result* 31)+((this.aurasKnown == null)? 0 :this.aurasKnown.hashCode())); + result = ((result* 31)+((this.rangerSQuarry == null)? 0 :this.rangerSQuarry.hashCode())); + result = ((result* 31)+((this.idealManifests == null)? 0 :this.idealManifests.hashCode())); + result = ((result* 31)+((this.focusedStrikes == null)? 0 :this.focusedStrikes.hashCode())); + result = ((result* 31)+((this.level == null)? 0 :this.level.hashCode())); + result = ((result* 31)+((this.operativeExploits == null)? 0 :this.operativeExploits.hashCode())); + result = ((result* 31)+((this.sneakAttack == null)? 0 :this.sneakAttack.hashCode())); + result = ((result* 31)+((this.idealsKnown == null)? 0 :this.idealsKnown.hashCode())); + result = ((result* 31)+((this.strategiesKnown == null)? 0 :this.strategiesKnown.hashCode())); + result = ((result* 31)+((this.techPoints == null)? 0 :this.techPoints.hashCode())); + result = ((result* 31)+((this.rages == null)? 0 :this.rages.hashCode())); + result = ((result* 31)+((this.routinesKnown == null)? 0 :this.routinesKnown.hashCode())); + result = ((result* 31)+((this.unarmoredMovement == null)? 0 :this.unarmoredMovement.hashCode())); + result = ((result* 31)+((this.martialArts == null)? 0 :this.martialArts.hashCode())); + result = ((result* 31)+((this.discoveries == null)? 0 :this.discoveries.hashCode())); + result = ((result* 31)+((this.rageDamage == null)? 0 :this.rageDamage.hashCode())); + result = ((result* 31)+((this.modificationSlots == null)? 0 :this.modificationSlots.hashCode())); + result = ((result* 31)+((this.superiorityDiceSize == null)? 0 :this.superiorityDiceSize.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.routineRadius == null)? 0 :this.routineRadius.hashCode())); + result = ((result* 31)+((this.forcePowersKnown == null)? 0 :this.forcePowersKnown.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof _13) == false) { + return false; + } + _13 rhs = ((_13) other); + return ((((((((((((((((((((((((((((((((((((this.superiorityDiceQuantity == rhs.superiorityDiceQuantity)||((this.superiorityDiceQuantity!= null)&&this.superiorityDiceQuantity.equals(rhs.superiorityDiceQuantity)))&&((this.forceEmpoweredCastingOptions == rhs.forceEmpoweredCastingOptions)||((this.forceEmpoweredCastingOptions!= null)&&this.forceEmpoweredCastingOptions.equals(rhs.forceEmpoweredCastingOptions))))&&((this.kineticCombat == rhs.kineticCombat)||((this.kineticCombat!= null)&&this.kineticCombat.equals(rhs.kineticCombat))))&&((this.forcePoints == rhs.forcePoints)||((this.forcePoints!= null)&&this.forcePoints.equals(rhs.forcePoints))))&&((this.potentAptitude == rhs.potentAptitude)||((this.potentAptitude!= null)&&this.potentAptitude.equals(rhs.potentAptitude))))&&((this.auraRadius == rhs.auraRadius)||((this.auraRadius!= null)&&this.auraRadius.equals(rhs.auraRadius))))&&((this.proficiencyBonus == rhs.proficiencyBonus)||((this.proficiencyBonus!= null)&&this.proficiencyBonus.equals(rhs.proficiencyBonus))))&&((this.maneuversKnown == rhs.maneuversKnown)||((this.maneuversKnown!= null)&&this.maneuversKnown.equals(rhs.maneuversKnown))))&&((this.monasticVows == rhs.monasticVows)||((this.monasticVows!= null)&&this.monasticVows.equals(rhs.monasticVows))))&&((this.techPowersKnown == rhs.techPowersKnown)||((this.techPowersKnown!= null)&&this.techPowersKnown.equals(rhs.techPowersKnown))))&&((this.focusPoints == rhs.focusPoints)||((this.focusPoints!= null)&&this.focusPoints.equals(rhs.focusPoints))))&&((this.features == rhs.features)||((this.features!= null)&&this.features.equals(rhs.features))))&&((this.maxPowerLevel == rhs.maxPowerLevel)||((this.maxPowerLevel!= null)&&this.maxPowerLevel.equals(rhs.maxPowerLevel))))&&((this.berserkerInstincts == rhs.berserkerInstincts)||((this.berserkerInstincts!= null)&&this.berserkerInstincts.equals(rhs.berserkerInstincts))))&&((this.aurasKnown == rhs.aurasKnown)||((this.aurasKnown!= null)&&this.aurasKnown.equals(rhs.aurasKnown))))&&((this.rangerSQuarry == rhs.rangerSQuarry)||((this.rangerSQuarry!= null)&&this.rangerSQuarry.equals(rhs.rangerSQuarry))))&&((this.idealManifests == rhs.idealManifests)||((this.idealManifests!= null)&&this.idealManifests.equals(rhs.idealManifests))))&&((this.focusedStrikes == rhs.focusedStrikes)||((this.focusedStrikes!= null)&&this.focusedStrikes.equals(rhs.focusedStrikes))))&&((this.level == rhs.level)||((this.level!= null)&&this.level.equals(rhs.level))))&&((this.operativeExploits == rhs.operativeExploits)||((this.operativeExploits!= null)&&this.operativeExploits.equals(rhs.operativeExploits))))&&((this.sneakAttack == rhs.sneakAttack)||((this.sneakAttack!= null)&&this.sneakAttack.equals(rhs.sneakAttack))))&&((this.idealsKnown == rhs.idealsKnown)||((this.idealsKnown!= null)&&this.idealsKnown.equals(rhs.idealsKnown))))&&((this.strategiesKnown == rhs.strategiesKnown)||((this.strategiesKnown!= null)&&this.strategiesKnown.equals(rhs.strategiesKnown))))&&((this.techPoints == rhs.techPoints)||((this.techPoints!= null)&&this.techPoints.equals(rhs.techPoints))))&&((this.rages == rhs.rages)||((this.rages!= null)&&this.rages.equals(rhs.rages))))&&((this.routinesKnown == rhs.routinesKnown)||((this.routinesKnown!= null)&&this.routinesKnown.equals(rhs.routinesKnown))))&&((this.unarmoredMovement == rhs.unarmoredMovement)||((this.unarmoredMovement!= null)&&this.unarmoredMovement.equals(rhs.unarmoredMovement))))&&((this.martialArts == rhs.martialArts)||((this.martialArts!= null)&&this.martialArts.equals(rhs.martialArts))))&&((this.discoveries == rhs.discoveries)||((this.discoveries!= null)&&this.discoveries.equals(rhs.discoveries))))&&((this.rageDamage == rhs.rageDamage)||((this.rageDamage!= null)&&this.rageDamage.equals(rhs.rageDamage))))&&((this.modificationSlots == rhs.modificationSlots)||((this.modificationSlots!= null)&&this.modificationSlots.equals(rhs.modificationSlots))))&&((this.superiorityDiceSize == rhs.superiorityDiceSize)||((this.superiorityDiceSize!= null)&&this.superiorityDiceSize.equals(rhs.superiorityDiceSize))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.routineRadius == rhs.routineRadius)||((this.routineRadius!= null)&&this.routineRadius.equals(rhs.routineRadius))))&&((this.forcePowersKnown == rhs.forcePowersKnown)||((this.forcePowersKnown!= null)&&this.forcePowersKnown.equals(rhs.forcePowersKnown)))); + } + +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/model/_14.java b/src/main/java/org/misoenergy/hackday/kessel_run/model/_14.java new file mode 100644 index 0000000..b33e7e2 --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/model/_14.java @@ -0,0 +1,855 @@ + +package org.misoenergy.hackday.kessel_run.model; + +import java.util.HashMap; +import java.util.Map; +import javax.annotation.processing.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "Level", + "Proficiency Bonus", + "Features", + "Rages", + "Rage Damage", + "Berserker Instincts", + "Force Powers Known", + "Force Points", + "Max Power Level", + "Force-Empowered Casting Options", + "Tech Powers Known", + "Tech Points", + "Potent Aptitude", + "Modification Slots", + "Maneuvers Known", + "Superiority Dice Quantity", + "Superiority Dice Size", + "Strategies Known", + "Focused Strikes", + "Auras Known", + "Aura Radius", + "Martial Arts", + "Focus Points", + "Monastic Vows", + "Unarmored Movement", + "Sneak Attack", + "Operative Exploits", + "Discoveries", + "Ranger's Quarry", + "Routines Known", + "Routine Radius", + "Kinetic Combat", + "Ideals Known", + "Ideal Manifests" +}) +@Generated("jsonschema2pojo") +public class _14 { + + @JsonProperty("Level") + private String level; + @JsonProperty("Proficiency Bonus") + private String proficiencyBonus; + @JsonProperty("Features") + private String features; + @JsonProperty("Rages") + private String rages; + @JsonProperty("Rage Damage") + private String rageDamage; + @JsonProperty("Berserker Instincts") + private String berserkerInstincts; + @JsonProperty("Force Powers Known") + private String forcePowersKnown; + @JsonProperty("Force Points") + private String forcePoints; + @JsonProperty("Max Power Level") + private String maxPowerLevel; + @JsonProperty("Force-Empowered Casting Options") + private String forceEmpoweredCastingOptions; + @JsonProperty("Tech Powers Known") + private String techPowersKnown; + @JsonProperty("Tech Points") + private String techPoints; + @JsonProperty("Potent Aptitude") + private String potentAptitude; + @JsonProperty("Modification Slots") + private String modificationSlots; + @JsonProperty("Maneuvers Known") + private String maneuversKnown; + @JsonProperty("Superiority Dice Quantity") + private String superiorityDiceQuantity; + @JsonProperty("Superiority Dice Size") + private String superiorityDiceSize; + @JsonProperty("Strategies Known") + private String strategiesKnown; + @JsonProperty("Focused Strikes") + private String focusedStrikes; + @JsonProperty("Auras Known") + private String aurasKnown; + @JsonProperty("Aura Radius") + private String auraRadius; + @JsonProperty("Martial Arts") + private String martialArts; + @JsonProperty("Focus Points") + private String focusPoints; + @JsonProperty("Monastic Vows") + private String monasticVows; + @JsonProperty("Unarmored Movement") + private String unarmoredMovement; + @JsonProperty("Sneak Attack") + private String sneakAttack; + @JsonProperty("Operative Exploits") + private String operativeExploits; + @JsonProperty("Discoveries") + private String discoveries; + @JsonProperty("Ranger's Quarry") + private String rangerSQuarry; + @JsonProperty("Routines Known") + private String routinesKnown; + @JsonProperty("Routine Radius") + private String routineRadius; + @JsonProperty("Kinetic Combat") + private String kineticCombat; + @JsonProperty("Ideals Known") + private String idealsKnown; + @JsonProperty("Ideal Manifests") + private String idealManifests; + @JsonIgnore + private Map additionalProperties = new HashMap(); + + @JsonProperty("Level") + public String getLevel() { + return level; + } + + @JsonProperty("Level") + public void setLevel(String level) { + this.level = level; + } + + public _14 withLevel(String level) { + this.level = level; + return this; + } + + @JsonProperty("Proficiency Bonus") + public String getProficiencyBonus() { + return proficiencyBonus; + } + + @JsonProperty("Proficiency Bonus") + public void setProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + } + + public _14 withProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + return this; + } + + @JsonProperty("Features") + public String getFeatures() { + return features; + } + + @JsonProperty("Features") + public void setFeatures(String features) { + this.features = features; + } + + public _14 withFeatures(String features) { + this.features = features; + return this; + } + + @JsonProperty("Rages") + public String getRages() { + return rages; + } + + @JsonProperty("Rages") + public void setRages(String rages) { + this.rages = rages; + } + + public _14 withRages(String rages) { + this.rages = rages; + return this; + } + + @JsonProperty("Rage Damage") + public String getRageDamage() { + return rageDamage; + } + + @JsonProperty("Rage Damage") + public void setRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + } + + public _14 withRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + return this; + } + + @JsonProperty("Berserker Instincts") + public String getBerserkerInstincts() { + return berserkerInstincts; + } + + @JsonProperty("Berserker Instincts") + public void setBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + } + + public _14 withBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + return this; + } + + @JsonProperty("Force Powers Known") + public String getForcePowersKnown() { + return forcePowersKnown; + } + + @JsonProperty("Force Powers Known") + public void setForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + } + + public _14 withForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + return this; + } + + @JsonProperty("Force Points") + public String getForcePoints() { + return forcePoints; + } + + @JsonProperty("Force Points") + public void setForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + } + + public _14 withForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + return this; + } + + @JsonProperty("Max Power Level") + public String getMaxPowerLevel() { + return maxPowerLevel; + } + + @JsonProperty("Max Power Level") + public void setMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + } + + public _14 withMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + return this; + } + + @JsonProperty("Force-Empowered Casting Options") + public String getForceEmpoweredCastingOptions() { + return forceEmpoweredCastingOptions; + } + + @JsonProperty("Force-Empowered Casting Options") + public void setForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + } + + public _14 withForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + return this; + } + + @JsonProperty("Tech Powers Known") + public String getTechPowersKnown() { + return techPowersKnown; + } + + @JsonProperty("Tech Powers Known") + public void setTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + } + + public _14 withTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + return this; + } + + @JsonProperty("Tech Points") + public String getTechPoints() { + return techPoints; + } + + @JsonProperty("Tech Points") + public void setTechPoints(String techPoints) { + this.techPoints = techPoints; + } + + public _14 withTechPoints(String techPoints) { + this.techPoints = techPoints; + return this; + } + + @JsonProperty("Potent Aptitude") + public String getPotentAptitude() { + return potentAptitude; + } + + @JsonProperty("Potent Aptitude") + public void setPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + } + + public _14 withPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + return this; + } + + @JsonProperty("Modification Slots") + public String getModificationSlots() { + return modificationSlots; + } + + @JsonProperty("Modification Slots") + public void setModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + } + + public _14 withModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + return this; + } + + @JsonProperty("Maneuvers Known") + public String getManeuversKnown() { + return maneuversKnown; + } + + @JsonProperty("Maneuvers Known") + public void setManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + } + + public _14 withManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + return this; + } + + @JsonProperty("Superiority Dice Quantity") + public String getSuperiorityDiceQuantity() { + return superiorityDiceQuantity; + } + + @JsonProperty("Superiority Dice Quantity") + public void setSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + } + + public _14 withSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + return this; + } + + @JsonProperty("Superiority Dice Size") + public String getSuperiorityDiceSize() { + return superiorityDiceSize; + } + + @JsonProperty("Superiority Dice Size") + public void setSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + } + + public _14 withSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + return this; + } + + @JsonProperty("Strategies Known") + public String getStrategiesKnown() { + return strategiesKnown; + } + + @JsonProperty("Strategies Known") + public void setStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + } + + public _14 withStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + return this; + } + + @JsonProperty("Focused Strikes") + public String getFocusedStrikes() { + return focusedStrikes; + } + + @JsonProperty("Focused Strikes") + public void setFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + } + + public _14 withFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + return this; + } + + @JsonProperty("Auras Known") + public String getAurasKnown() { + return aurasKnown; + } + + @JsonProperty("Auras Known") + public void setAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + } + + public _14 withAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + return this; + } + + @JsonProperty("Aura Radius") + public String getAuraRadius() { + return auraRadius; + } + + @JsonProperty("Aura Radius") + public void setAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + } + + public _14 withAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + return this; + } + + @JsonProperty("Martial Arts") + public String getMartialArts() { + return martialArts; + } + + @JsonProperty("Martial Arts") + public void setMartialArts(String martialArts) { + this.martialArts = martialArts; + } + + public _14 withMartialArts(String martialArts) { + this.martialArts = martialArts; + return this; + } + + @JsonProperty("Focus Points") + public String getFocusPoints() { + return focusPoints; + } + + @JsonProperty("Focus Points") + public void setFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + } + + public _14 withFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + return this; + } + + @JsonProperty("Monastic Vows") + public String getMonasticVows() { + return monasticVows; + } + + @JsonProperty("Monastic Vows") + public void setMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + } + + public _14 withMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + return this; + } + + @JsonProperty("Unarmored Movement") + public String getUnarmoredMovement() { + return unarmoredMovement; + } + + @JsonProperty("Unarmored Movement") + public void setUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + } + + public _14 withUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + return this; + } + + @JsonProperty("Sneak Attack") + public String getSneakAttack() { + return sneakAttack; + } + + @JsonProperty("Sneak Attack") + public void setSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + } + + public _14 withSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + return this; + } + + @JsonProperty("Operative Exploits") + public String getOperativeExploits() { + return operativeExploits; + } + + @JsonProperty("Operative Exploits") + public void setOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + } + + public _14 withOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + return this; + } + + @JsonProperty("Discoveries") + public String getDiscoveries() { + return discoveries; + } + + @JsonProperty("Discoveries") + public void setDiscoveries(String discoveries) { + this.discoveries = discoveries; + } + + public _14 withDiscoveries(String discoveries) { + this.discoveries = discoveries; + return this; + } + + @JsonProperty("Ranger's Quarry") + public String getRangerSQuarry() { + return rangerSQuarry; + } + + @JsonProperty("Ranger's Quarry") + public void setRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + } + + public _14 withRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + return this; + } + + @JsonProperty("Routines Known") + public String getRoutinesKnown() { + return routinesKnown; + } + + @JsonProperty("Routines Known") + public void setRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + } + + public _14 withRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + return this; + } + + @JsonProperty("Routine Radius") + public String getRoutineRadius() { + return routineRadius; + } + + @JsonProperty("Routine Radius") + public void setRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + } + + public _14 withRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + return this; + } + + @JsonProperty("Kinetic Combat") + public String getKineticCombat() { + return kineticCombat; + } + + @JsonProperty("Kinetic Combat") + public void setKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + } + + public _14 withKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + return this; + } + + @JsonProperty("Ideals Known") + public String getIdealsKnown() { + return idealsKnown; + } + + @JsonProperty("Ideals Known") + public void setIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + } + + public _14 withIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + return this; + } + + @JsonProperty("Ideal Manifests") + public String getIdealManifests() { + return idealManifests; + } + + @JsonProperty("Ideal Manifests") + public void setIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + } + + public _14 withIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public _14 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(_14 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("level"); + sb.append('='); + sb.append(((this.level == null)?"":this.level)); + sb.append(','); + sb.append("proficiencyBonus"); + sb.append('='); + sb.append(((this.proficiencyBonus == null)?"":this.proficiencyBonus)); + sb.append(','); + sb.append("features"); + sb.append('='); + sb.append(((this.features == null)?"":this.features)); + sb.append(','); + sb.append("rages"); + sb.append('='); + sb.append(((this.rages == null)?"":this.rages)); + sb.append(','); + sb.append("rageDamage"); + sb.append('='); + sb.append(((this.rageDamage == null)?"":this.rageDamage)); + sb.append(','); + sb.append("berserkerInstincts"); + sb.append('='); + sb.append(((this.berserkerInstincts == null)?"":this.berserkerInstincts)); + sb.append(','); + sb.append("forcePowersKnown"); + sb.append('='); + sb.append(((this.forcePowersKnown == null)?"":this.forcePowersKnown)); + sb.append(','); + sb.append("forcePoints"); + sb.append('='); + sb.append(((this.forcePoints == null)?"":this.forcePoints)); + sb.append(','); + sb.append("maxPowerLevel"); + sb.append('='); + sb.append(((this.maxPowerLevel == null)?"":this.maxPowerLevel)); + sb.append(','); + sb.append("forceEmpoweredCastingOptions"); + sb.append('='); + sb.append(((this.forceEmpoweredCastingOptions == null)?"":this.forceEmpoweredCastingOptions)); + sb.append(','); + sb.append("techPowersKnown"); + sb.append('='); + sb.append(((this.techPowersKnown == null)?"":this.techPowersKnown)); + sb.append(','); + sb.append("techPoints"); + sb.append('='); + sb.append(((this.techPoints == null)?"":this.techPoints)); + sb.append(','); + sb.append("potentAptitude"); + sb.append('='); + sb.append(((this.potentAptitude == null)?"":this.potentAptitude)); + sb.append(','); + sb.append("modificationSlots"); + sb.append('='); + sb.append(((this.modificationSlots == null)?"":this.modificationSlots)); + sb.append(','); + sb.append("maneuversKnown"); + sb.append('='); + sb.append(((this.maneuversKnown == null)?"":this.maneuversKnown)); + sb.append(','); + sb.append("superiorityDiceQuantity"); + sb.append('='); + sb.append(((this.superiorityDiceQuantity == null)?"":this.superiorityDiceQuantity)); + sb.append(','); + sb.append("superiorityDiceSize"); + sb.append('='); + sb.append(((this.superiorityDiceSize == null)?"":this.superiorityDiceSize)); + sb.append(','); + sb.append("strategiesKnown"); + sb.append('='); + sb.append(((this.strategiesKnown == null)?"":this.strategiesKnown)); + sb.append(','); + sb.append("focusedStrikes"); + sb.append('='); + sb.append(((this.focusedStrikes == null)?"":this.focusedStrikes)); + sb.append(','); + sb.append("aurasKnown"); + sb.append('='); + sb.append(((this.aurasKnown == null)?"":this.aurasKnown)); + sb.append(','); + sb.append("auraRadius"); + sb.append('='); + sb.append(((this.auraRadius == null)?"":this.auraRadius)); + sb.append(','); + sb.append("martialArts"); + sb.append('='); + sb.append(((this.martialArts == null)?"":this.martialArts)); + sb.append(','); + sb.append("focusPoints"); + sb.append('='); + sb.append(((this.focusPoints == null)?"":this.focusPoints)); + sb.append(','); + sb.append("monasticVows"); + sb.append('='); + sb.append(((this.monasticVows == null)?"":this.monasticVows)); + sb.append(','); + sb.append("unarmoredMovement"); + sb.append('='); + sb.append(((this.unarmoredMovement == null)?"":this.unarmoredMovement)); + sb.append(','); + sb.append("sneakAttack"); + sb.append('='); + sb.append(((this.sneakAttack == null)?"":this.sneakAttack)); + sb.append(','); + sb.append("operativeExploits"); + sb.append('='); + sb.append(((this.operativeExploits == null)?"":this.operativeExploits)); + sb.append(','); + sb.append("discoveries"); + sb.append('='); + sb.append(((this.discoveries == null)?"":this.discoveries)); + sb.append(','); + sb.append("rangerSQuarry"); + sb.append('='); + sb.append(((this.rangerSQuarry == null)?"":this.rangerSQuarry)); + sb.append(','); + sb.append("routinesKnown"); + sb.append('='); + sb.append(((this.routinesKnown == null)?"":this.routinesKnown)); + sb.append(','); + sb.append("routineRadius"); + sb.append('='); + sb.append(((this.routineRadius == null)?"":this.routineRadius)); + sb.append(','); + sb.append("kineticCombat"); + sb.append('='); + sb.append(((this.kineticCombat == null)?"":this.kineticCombat)); + sb.append(','); + sb.append("idealsKnown"); + sb.append('='); + sb.append(((this.idealsKnown == null)?"":this.idealsKnown)); + sb.append(','); + sb.append("idealManifests"); + sb.append('='); + sb.append(((this.idealManifests == null)?"":this.idealManifests)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.superiorityDiceQuantity == null)? 0 :this.superiorityDiceQuantity.hashCode())); + result = ((result* 31)+((this.forceEmpoweredCastingOptions == null)? 0 :this.forceEmpoweredCastingOptions.hashCode())); + result = ((result* 31)+((this.kineticCombat == null)? 0 :this.kineticCombat.hashCode())); + result = ((result* 31)+((this.forcePoints == null)? 0 :this.forcePoints.hashCode())); + result = ((result* 31)+((this.potentAptitude == null)? 0 :this.potentAptitude.hashCode())); + result = ((result* 31)+((this.auraRadius == null)? 0 :this.auraRadius.hashCode())); + result = ((result* 31)+((this.proficiencyBonus == null)? 0 :this.proficiencyBonus.hashCode())); + result = ((result* 31)+((this.maneuversKnown == null)? 0 :this.maneuversKnown.hashCode())); + result = ((result* 31)+((this.monasticVows == null)? 0 :this.monasticVows.hashCode())); + result = ((result* 31)+((this.techPowersKnown == null)? 0 :this.techPowersKnown.hashCode())); + result = ((result* 31)+((this.focusPoints == null)? 0 :this.focusPoints.hashCode())); + result = ((result* 31)+((this.features == null)? 0 :this.features.hashCode())); + result = ((result* 31)+((this.maxPowerLevel == null)? 0 :this.maxPowerLevel.hashCode())); + result = ((result* 31)+((this.berserkerInstincts == null)? 0 :this.berserkerInstincts.hashCode())); + result = ((result* 31)+((this.aurasKnown == null)? 0 :this.aurasKnown.hashCode())); + result = ((result* 31)+((this.rangerSQuarry == null)? 0 :this.rangerSQuarry.hashCode())); + result = ((result* 31)+((this.idealManifests == null)? 0 :this.idealManifests.hashCode())); + result = ((result* 31)+((this.focusedStrikes == null)? 0 :this.focusedStrikes.hashCode())); + result = ((result* 31)+((this.level == null)? 0 :this.level.hashCode())); + result = ((result* 31)+((this.operativeExploits == null)? 0 :this.operativeExploits.hashCode())); + result = ((result* 31)+((this.sneakAttack == null)? 0 :this.sneakAttack.hashCode())); + result = ((result* 31)+((this.idealsKnown == null)? 0 :this.idealsKnown.hashCode())); + result = ((result* 31)+((this.strategiesKnown == null)? 0 :this.strategiesKnown.hashCode())); + result = ((result* 31)+((this.techPoints == null)? 0 :this.techPoints.hashCode())); + result = ((result* 31)+((this.rages == null)? 0 :this.rages.hashCode())); + result = ((result* 31)+((this.routinesKnown == null)? 0 :this.routinesKnown.hashCode())); + result = ((result* 31)+((this.unarmoredMovement == null)? 0 :this.unarmoredMovement.hashCode())); + result = ((result* 31)+((this.martialArts == null)? 0 :this.martialArts.hashCode())); + result = ((result* 31)+((this.discoveries == null)? 0 :this.discoveries.hashCode())); + result = ((result* 31)+((this.rageDamage == null)? 0 :this.rageDamage.hashCode())); + result = ((result* 31)+((this.modificationSlots == null)? 0 :this.modificationSlots.hashCode())); + result = ((result* 31)+((this.superiorityDiceSize == null)? 0 :this.superiorityDiceSize.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.routineRadius == null)? 0 :this.routineRadius.hashCode())); + result = ((result* 31)+((this.forcePowersKnown == null)? 0 :this.forcePowersKnown.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof _14) == false) { + return false; + } + _14 rhs = ((_14) other); + return ((((((((((((((((((((((((((((((((((((this.superiorityDiceQuantity == rhs.superiorityDiceQuantity)||((this.superiorityDiceQuantity!= null)&&this.superiorityDiceQuantity.equals(rhs.superiorityDiceQuantity)))&&((this.forceEmpoweredCastingOptions == rhs.forceEmpoweredCastingOptions)||((this.forceEmpoweredCastingOptions!= null)&&this.forceEmpoweredCastingOptions.equals(rhs.forceEmpoweredCastingOptions))))&&((this.kineticCombat == rhs.kineticCombat)||((this.kineticCombat!= null)&&this.kineticCombat.equals(rhs.kineticCombat))))&&((this.forcePoints == rhs.forcePoints)||((this.forcePoints!= null)&&this.forcePoints.equals(rhs.forcePoints))))&&((this.potentAptitude == rhs.potentAptitude)||((this.potentAptitude!= null)&&this.potentAptitude.equals(rhs.potentAptitude))))&&((this.auraRadius == rhs.auraRadius)||((this.auraRadius!= null)&&this.auraRadius.equals(rhs.auraRadius))))&&((this.proficiencyBonus == rhs.proficiencyBonus)||((this.proficiencyBonus!= null)&&this.proficiencyBonus.equals(rhs.proficiencyBonus))))&&((this.maneuversKnown == rhs.maneuversKnown)||((this.maneuversKnown!= null)&&this.maneuversKnown.equals(rhs.maneuversKnown))))&&((this.monasticVows == rhs.monasticVows)||((this.monasticVows!= null)&&this.monasticVows.equals(rhs.monasticVows))))&&((this.techPowersKnown == rhs.techPowersKnown)||((this.techPowersKnown!= null)&&this.techPowersKnown.equals(rhs.techPowersKnown))))&&((this.focusPoints == rhs.focusPoints)||((this.focusPoints!= null)&&this.focusPoints.equals(rhs.focusPoints))))&&((this.features == rhs.features)||((this.features!= null)&&this.features.equals(rhs.features))))&&((this.maxPowerLevel == rhs.maxPowerLevel)||((this.maxPowerLevel!= null)&&this.maxPowerLevel.equals(rhs.maxPowerLevel))))&&((this.berserkerInstincts == rhs.berserkerInstincts)||((this.berserkerInstincts!= null)&&this.berserkerInstincts.equals(rhs.berserkerInstincts))))&&((this.aurasKnown == rhs.aurasKnown)||((this.aurasKnown!= null)&&this.aurasKnown.equals(rhs.aurasKnown))))&&((this.rangerSQuarry == rhs.rangerSQuarry)||((this.rangerSQuarry!= null)&&this.rangerSQuarry.equals(rhs.rangerSQuarry))))&&((this.idealManifests == rhs.idealManifests)||((this.idealManifests!= null)&&this.idealManifests.equals(rhs.idealManifests))))&&((this.focusedStrikes == rhs.focusedStrikes)||((this.focusedStrikes!= null)&&this.focusedStrikes.equals(rhs.focusedStrikes))))&&((this.level == rhs.level)||((this.level!= null)&&this.level.equals(rhs.level))))&&((this.operativeExploits == rhs.operativeExploits)||((this.operativeExploits!= null)&&this.operativeExploits.equals(rhs.operativeExploits))))&&((this.sneakAttack == rhs.sneakAttack)||((this.sneakAttack!= null)&&this.sneakAttack.equals(rhs.sneakAttack))))&&((this.idealsKnown == rhs.idealsKnown)||((this.idealsKnown!= null)&&this.idealsKnown.equals(rhs.idealsKnown))))&&((this.strategiesKnown == rhs.strategiesKnown)||((this.strategiesKnown!= null)&&this.strategiesKnown.equals(rhs.strategiesKnown))))&&((this.techPoints == rhs.techPoints)||((this.techPoints!= null)&&this.techPoints.equals(rhs.techPoints))))&&((this.rages == rhs.rages)||((this.rages!= null)&&this.rages.equals(rhs.rages))))&&((this.routinesKnown == rhs.routinesKnown)||((this.routinesKnown!= null)&&this.routinesKnown.equals(rhs.routinesKnown))))&&((this.unarmoredMovement == rhs.unarmoredMovement)||((this.unarmoredMovement!= null)&&this.unarmoredMovement.equals(rhs.unarmoredMovement))))&&((this.martialArts == rhs.martialArts)||((this.martialArts!= null)&&this.martialArts.equals(rhs.martialArts))))&&((this.discoveries == rhs.discoveries)||((this.discoveries!= null)&&this.discoveries.equals(rhs.discoveries))))&&((this.rageDamage == rhs.rageDamage)||((this.rageDamage!= null)&&this.rageDamage.equals(rhs.rageDamage))))&&((this.modificationSlots == rhs.modificationSlots)||((this.modificationSlots!= null)&&this.modificationSlots.equals(rhs.modificationSlots))))&&((this.superiorityDiceSize == rhs.superiorityDiceSize)||((this.superiorityDiceSize!= null)&&this.superiorityDiceSize.equals(rhs.superiorityDiceSize))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.routineRadius == rhs.routineRadius)||((this.routineRadius!= null)&&this.routineRadius.equals(rhs.routineRadius))))&&((this.forcePowersKnown == rhs.forcePowersKnown)||((this.forcePowersKnown!= null)&&this.forcePowersKnown.equals(rhs.forcePowersKnown)))); + } + +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/model/_15.java b/src/main/java/org/misoenergy/hackday/kessel_run/model/_15.java new file mode 100644 index 0000000..7816244 --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/model/_15.java @@ -0,0 +1,855 @@ + +package org.misoenergy.hackday.kessel_run.model; + +import java.util.HashMap; +import java.util.Map; +import javax.annotation.processing.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "Level", + "Proficiency Bonus", + "Features", + "Rages", + "Rage Damage", + "Berserker Instincts", + "Force Powers Known", + "Force Points", + "Max Power Level", + "Force-Empowered Casting Options", + "Tech Powers Known", + "Tech Points", + "Potent Aptitude", + "Modification Slots", + "Maneuvers Known", + "Superiority Dice Quantity", + "Superiority Dice Size", + "Strategies Known", + "Focused Strikes", + "Auras Known", + "Aura Radius", + "Martial Arts", + "Focus Points", + "Monastic Vows", + "Unarmored Movement", + "Sneak Attack", + "Operative Exploits", + "Discoveries", + "Ranger's Quarry", + "Routines Known", + "Routine Radius", + "Kinetic Combat", + "Ideals Known", + "Ideal Manifests" +}) +@Generated("jsonschema2pojo") +public class _15 { + + @JsonProperty("Level") + private String level; + @JsonProperty("Proficiency Bonus") + private String proficiencyBonus; + @JsonProperty("Features") + private String features; + @JsonProperty("Rages") + private String rages; + @JsonProperty("Rage Damage") + private String rageDamage; + @JsonProperty("Berserker Instincts") + private String berserkerInstincts; + @JsonProperty("Force Powers Known") + private String forcePowersKnown; + @JsonProperty("Force Points") + private String forcePoints; + @JsonProperty("Max Power Level") + private String maxPowerLevel; + @JsonProperty("Force-Empowered Casting Options") + private String forceEmpoweredCastingOptions; + @JsonProperty("Tech Powers Known") + private String techPowersKnown; + @JsonProperty("Tech Points") + private String techPoints; + @JsonProperty("Potent Aptitude") + private String potentAptitude; + @JsonProperty("Modification Slots") + private String modificationSlots; + @JsonProperty("Maneuvers Known") + private String maneuversKnown; + @JsonProperty("Superiority Dice Quantity") + private String superiorityDiceQuantity; + @JsonProperty("Superiority Dice Size") + private String superiorityDiceSize; + @JsonProperty("Strategies Known") + private String strategiesKnown; + @JsonProperty("Focused Strikes") + private String focusedStrikes; + @JsonProperty("Auras Known") + private String aurasKnown; + @JsonProperty("Aura Radius") + private String auraRadius; + @JsonProperty("Martial Arts") + private String martialArts; + @JsonProperty("Focus Points") + private String focusPoints; + @JsonProperty("Monastic Vows") + private String monasticVows; + @JsonProperty("Unarmored Movement") + private String unarmoredMovement; + @JsonProperty("Sneak Attack") + private String sneakAttack; + @JsonProperty("Operative Exploits") + private String operativeExploits; + @JsonProperty("Discoveries") + private String discoveries; + @JsonProperty("Ranger's Quarry") + private String rangerSQuarry; + @JsonProperty("Routines Known") + private String routinesKnown; + @JsonProperty("Routine Radius") + private String routineRadius; + @JsonProperty("Kinetic Combat") + private String kineticCombat; + @JsonProperty("Ideals Known") + private String idealsKnown; + @JsonProperty("Ideal Manifests") + private String idealManifests; + @JsonIgnore + private Map additionalProperties = new HashMap(); + + @JsonProperty("Level") + public String getLevel() { + return level; + } + + @JsonProperty("Level") + public void setLevel(String level) { + this.level = level; + } + + public _15 withLevel(String level) { + this.level = level; + return this; + } + + @JsonProperty("Proficiency Bonus") + public String getProficiencyBonus() { + return proficiencyBonus; + } + + @JsonProperty("Proficiency Bonus") + public void setProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + } + + public _15 withProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + return this; + } + + @JsonProperty("Features") + public String getFeatures() { + return features; + } + + @JsonProperty("Features") + public void setFeatures(String features) { + this.features = features; + } + + public _15 withFeatures(String features) { + this.features = features; + return this; + } + + @JsonProperty("Rages") + public String getRages() { + return rages; + } + + @JsonProperty("Rages") + public void setRages(String rages) { + this.rages = rages; + } + + public _15 withRages(String rages) { + this.rages = rages; + return this; + } + + @JsonProperty("Rage Damage") + public String getRageDamage() { + return rageDamage; + } + + @JsonProperty("Rage Damage") + public void setRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + } + + public _15 withRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + return this; + } + + @JsonProperty("Berserker Instincts") + public String getBerserkerInstincts() { + return berserkerInstincts; + } + + @JsonProperty("Berserker Instincts") + public void setBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + } + + public _15 withBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + return this; + } + + @JsonProperty("Force Powers Known") + public String getForcePowersKnown() { + return forcePowersKnown; + } + + @JsonProperty("Force Powers Known") + public void setForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + } + + public _15 withForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + return this; + } + + @JsonProperty("Force Points") + public String getForcePoints() { + return forcePoints; + } + + @JsonProperty("Force Points") + public void setForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + } + + public _15 withForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + return this; + } + + @JsonProperty("Max Power Level") + public String getMaxPowerLevel() { + return maxPowerLevel; + } + + @JsonProperty("Max Power Level") + public void setMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + } + + public _15 withMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + return this; + } + + @JsonProperty("Force-Empowered Casting Options") + public String getForceEmpoweredCastingOptions() { + return forceEmpoweredCastingOptions; + } + + @JsonProperty("Force-Empowered Casting Options") + public void setForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + } + + public _15 withForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + return this; + } + + @JsonProperty("Tech Powers Known") + public String getTechPowersKnown() { + return techPowersKnown; + } + + @JsonProperty("Tech Powers Known") + public void setTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + } + + public _15 withTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + return this; + } + + @JsonProperty("Tech Points") + public String getTechPoints() { + return techPoints; + } + + @JsonProperty("Tech Points") + public void setTechPoints(String techPoints) { + this.techPoints = techPoints; + } + + public _15 withTechPoints(String techPoints) { + this.techPoints = techPoints; + return this; + } + + @JsonProperty("Potent Aptitude") + public String getPotentAptitude() { + return potentAptitude; + } + + @JsonProperty("Potent Aptitude") + public void setPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + } + + public _15 withPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + return this; + } + + @JsonProperty("Modification Slots") + public String getModificationSlots() { + return modificationSlots; + } + + @JsonProperty("Modification Slots") + public void setModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + } + + public _15 withModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + return this; + } + + @JsonProperty("Maneuvers Known") + public String getManeuversKnown() { + return maneuversKnown; + } + + @JsonProperty("Maneuvers Known") + public void setManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + } + + public _15 withManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + return this; + } + + @JsonProperty("Superiority Dice Quantity") + public String getSuperiorityDiceQuantity() { + return superiorityDiceQuantity; + } + + @JsonProperty("Superiority Dice Quantity") + public void setSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + } + + public _15 withSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + return this; + } + + @JsonProperty("Superiority Dice Size") + public String getSuperiorityDiceSize() { + return superiorityDiceSize; + } + + @JsonProperty("Superiority Dice Size") + public void setSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + } + + public _15 withSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + return this; + } + + @JsonProperty("Strategies Known") + public String getStrategiesKnown() { + return strategiesKnown; + } + + @JsonProperty("Strategies Known") + public void setStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + } + + public _15 withStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + return this; + } + + @JsonProperty("Focused Strikes") + public String getFocusedStrikes() { + return focusedStrikes; + } + + @JsonProperty("Focused Strikes") + public void setFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + } + + public _15 withFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + return this; + } + + @JsonProperty("Auras Known") + public String getAurasKnown() { + return aurasKnown; + } + + @JsonProperty("Auras Known") + public void setAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + } + + public _15 withAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + return this; + } + + @JsonProperty("Aura Radius") + public String getAuraRadius() { + return auraRadius; + } + + @JsonProperty("Aura Radius") + public void setAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + } + + public _15 withAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + return this; + } + + @JsonProperty("Martial Arts") + public String getMartialArts() { + return martialArts; + } + + @JsonProperty("Martial Arts") + public void setMartialArts(String martialArts) { + this.martialArts = martialArts; + } + + public _15 withMartialArts(String martialArts) { + this.martialArts = martialArts; + return this; + } + + @JsonProperty("Focus Points") + public String getFocusPoints() { + return focusPoints; + } + + @JsonProperty("Focus Points") + public void setFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + } + + public _15 withFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + return this; + } + + @JsonProperty("Monastic Vows") + public String getMonasticVows() { + return monasticVows; + } + + @JsonProperty("Monastic Vows") + public void setMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + } + + public _15 withMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + return this; + } + + @JsonProperty("Unarmored Movement") + public String getUnarmoredMovement() { + return unarmoredMovement; + } + + @JsonProperty("Unarmored Movement") + public void setUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + } + + public _15 withUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + return this; + } + + @JsonProperty("Sneak Attack") + public String getSneakAttack() { + return sneakAttack; + } + + @JsonProperty("Sneak Attack") + public void setSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + } + + public _15 withSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + return this; + } + + @JsonProperty("Operative Exploits") + public String getOperativeExploits() { + return operativeExploits; + } + + @JsonProperty("Operative Exploits") + public void setOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + } + + public _15 withOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + return this; + } + + @JsonProperty("Discoveries") + public String getDiscoveries() { + return discoveries; + } + + @JsonProperty("Discoveries") + public void setDiscoveries(String discoveries) { + this.discoveries = discoveries; + } + + public _15 withDiscoveries(String discoveries) { + this.discoveries = discoveries; + return this; + } + + @JsonProperty("Ranger's Quarry") + public String getRangerSQuarry() { + return rangerSQuarry; + } + + @JsonProperty("Ranger's Quarry") + public void setRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + } + + public _15 withRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + return this; + } + + @JsonProperty("Routines Known") + public String getRoutinesKnown() { + return routinesKnown; + } + + @JsonProperty("Routines Known") + public void setRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + } + + public _15 withRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + return this; + } + + @JsonProperty("Routine Radius") + public String getRoutineRadius() { + return routineRadius; + } + + @JsonProperty("Routine Radius") + public void setRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + } + + public _15 withRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + return this; + } + + @JsonProperty("Kinetic Combat") + public String getKineticCombat() { + return kineticCombat; + } + + @JsonProperty("Kinetic Combat") + public void setKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + } + + public _15 withKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + return this; + } + + @JsonProperty("Ideals Known") + public String getIdealsKnown() { + return idealsKnown; + } + + @JsonProperty("Ideals Known") + public void setIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + } + + public _15 withIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + return this; + } + + @JsonProperty("Ideal Manifests") + public String getIdealManifests() { + return idealManifests; + } + + @JsonProperty("Ideal Manifests") + public void setIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + } + + public _15 withIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public _15 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(_15 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("level"); + sb.append('='); + sb.append(((this.level == null)?"":this.level)); + sb.append(','); + sb.append("proficiencyBonus"); + sb.append('='); + sb.append(((this.proficiencyBonus == null)?"":this.proficiencyBonus)); + sb.append(','); + sb.append("features"); + sb.append('='); + sb.append(((this.features == null)?"":this.features)); + sb.append(','); + sb.append("rages"); + sb.append('='); + sb.append(((this.rages == null)?"":this.rages)); + sb.append(','); + sb.append("rageDamage"); + sb.append('='); + sb.append(((this.rageDamage == null)?"":this.rageDamage)); + sb.append(','); + sb.append("berserkerInstincts"); + sb.append('='); + sb.append(((this.berserkerInstincts == null)?"":this.berserkerInstincts)); + sb.append(','); + sb.append("forcePowersKnown"); + sb.append('='); + sb.append(((this.forcePowersKnown == null)?"":this.forcePowersKnown)); + sb.append(','); + sb.append("forcePoints"); + sb.append('='); + sb.append(((this.forcePoints == null)?"":this.forcePoints)); + sb.append(','); + sb.append("maxPowerLevel"); + sb.append('='); + sb.append(((this.maxPowerLevel == null)?"":this.maxPowerLevel)); + sb.append(','); + sb.append("forceEmpoweredCastingOptions"); + sb.append('='); + sb.append(((this.forceEmpoweredCastingOptions == null)?"":this.forceEmpoweredCastingOptions)); + sb.append(','); + sb.append("techPowersKnown"); + sb.append('='); + sb.append(((this.techPowersKnown == null)?"":this.techPowersKnown)); + sb.append(','); + sb.append("techPoints"); + sb.append('='); + sb.append(((this.techPoints == null)?"":this.techPoints)); + sb.append(','); + sb.append("potentAptitude"); + sb.append('='); + sb.append(((this.potentAptitude == null)?"":this.potentAptitude)); + sb.append(','); + sb.append("modificationSlots"); + sb.append('='); + sb.append(((this.modificationSlots == null)?"":this.modificationSlots)); + sb.append(','); + sb.append("maneuversKnown"); + sb.append('='); + sb.append(((this.maneuversKnown == null)?"":this.maneuversKnown)); + sb.append(','); + sb.append("superiorityDiceQuantity"); + sb.append('='); + sb.append(((this.superiorityDiceQuantity == null)?"":this.superiorityDiceQuantity)); + sb.append(','); + sb.append("superiorityDiceSize"); + sb.append('='); + sb.append(((this.superiorityDiceSize == null)?"":this.superiorityDiceSize)); + sb.append(','); + sb.append("strategiesKnown"); + sb.append('='); + sb.append(((this.strategiesKnown == null)?"":this.strategiesKnown)); + sb.append(','); + sb.append("focusedStrikes"); + sb.append('='); + sb.append(((this.focusedStrikes == null)?"":this.focusedStrikes)); + sb.append(','); + sb.append("aurasKnown"); + sb.append('='); + sb.append(((this.aurasKnown == null)?"":this.aurasKnown)); + sb.append(','); + sb.append("auraRadius"); + sb.append('='); + sb.append(((this.auraRadius == null)?"":this.auraRadius)); + sb.append(','); + sb.append("martialArts"); + sb.append('='); + sb.append(((this.martialArts == null)?"":this.martialArts)); + sb.append(','); + sb.append("focusPoints"); + sb.append('='); + sb.append(((this.focusPoints == null)?"":this.focusPoints)); + sb.append(','); + sb.append("monasticVows"); + sb.append('='); + sb.append(((this.monasticVows == null)?"":this.monasticVows)); + sb.append(','); + sb.append("unarmoredMovement"); + sb.append('='); + sb.append(((this.unarmoredMovement == null)?"":this.unarmoredMovement)); + sb.append(','); + sb.append("sneakAttack"); + sb.append('='); + sb.append(((this.sneakAttack == null)?"":this.sneakAttack)); + sb.append(','); + sb.append("operativeExploits"); + sb.append('='); + sb.append(((this.operativeExploits == null)?"":this.operativeExploits)); + sb.append(','); + sb.append("discoveries"); + sb.append('='); + sb.append(((this.discoveries == null)?"":this.discoveries)); + sb.append(','); + sb.append("rangerSQuarry"); + sb.append('='); + sb.append(((this.rangerSQuarry == null)?"":this.rangerSQuarry)); + sb.append(','); + sb.append("routinesKnown"); + sb.append('='); + sb.append(((this.routinesKnown == null)?"":this.routinesKnown)); + sb.append(','); + sb.append("routineRadius"); + sb.append('='); + sb.append(((this.routineRadius == null)?"":this.routineRadius)); + sb.append(','); + sb.append("kineticCombat"); + sb.append('='); + sb.append(((this.kineticCombat == null)?"":this.kineticCombat)); + sb.append(','); + sb.append("idealsKnown"); + sb.append('='); + sb.append(((this.idealsKnown == null)?"":this.idealsKnown)); + sb.append(','); + sb.append("idealManifests"); + sb.append('='); + sb.append(((this.idealManifests == null)?"":this.idealManifests)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.superiorityDiceQuantity == null)? 0 :this.superiorityDiceQuantity.hashCode())); + result = ((result* 31)+((this.forceEmpoweredCastingOptions == null)? 0 :this.forceEmpoweredCastingOptions.hashCode())); + result = ((result* 31)+((this.kineticCombat == null)? 0 :this.kineticCombat.hashCode())); + result = ((result* 31)+((this.forcePoints == null)? 0 :this.forcePoints.hashCode())); + result = ((result* 31)+((this.potentAptitude == null)? 0 :this.potentAptitude.hashCode())); + result = ((result* 31)+((this.auraRadius == null)? 0 :this.auraRadius.hashCode())); + result = ((result* 31)+((this.proficiencyBonus == null)? 0 :this.proficiencyBonus.hashCode())); + result = ((result* 31)+((this.maneuversKnown == null)? 0 :this.maneuversKnown.hashCode())); + result = ((result* 31)+((this.monasticVows == null)? 0 :this.monasticVows.hashCode())); + result = ((result* 31)+((this.techPowersKnown == null)? 0 :this.techPowersKnown.hashCode())); + result = ((result* 31)+((this.focusPoints == null)? 0 :this.focusPoints.hashCode())); + result = ((result* 31)+((this.features == null)? 0 :this.features.hashCode())); + result = ((result* 31)+((this.maxPowerLevel == null)? 0 :this.maxPowerLevel.hashCode())); + result = ((result* 31)+((this.berserkerInstincts == null)? 0 :this.berserkerInstincts.hashCode())); + result = ((result* 31)+((this.aurasKnown == null)? 0 :this.aurasKnown.hashCode())); + result = ((result* 31)+((this.rangerSQuarry == null)? 0 :this.rangerSQuarry.hashCode())); + result = ((result* 31)+((this.idealManifests == null)? 0 :this.idealManifests.hashCode())); + result = ((result* 31)+((this.focusedStrikes == null)? 0 :this.focusedStrikes.hashCode())); + result = ((result* 31)+((this.level == null)? 0 :this.level.hashCode())); + result = ((result* 31)+((this.operativeExploits == null)? 0 :this.operativeExploits.hashCode())); + result = ((result* 31)+((this.sneakAttack == null)? 0 :this.sneakAttack.hashCode())); + result = ((result* 31)+((this.idealsKnown == null)? 0 :this.idealsKnown.hashCode())); + result = ((result* 31)+((this.strategiesKnown == null)? 0 :this.strategiesKnown.hashCode())); + result = ((result* 31)+((this.techPoints == null)? 0 :this.techPoints.hashCode())); + result = ((result* 31)+((this.rages == null)? 0 :this.rages.hashCode())); + result = ((result* 31)+((this.routinesKnown == null)? 0 :this.routinesKnown.hashCode())); + result = ((result* 31)+((this.unarmoredMovement == null)? 0 :this.unarmoredMovement.hashCode())); + result = ((result* 31)+((this.martialArts == null)? 0 :this.martialArts.hashCode())); + result = ((result* 31)+((this.discoveries == null)? 0 :this.discoveries.hashCode())); + result = ((result* 31)+((this.rageDamage == null)? 0 :this.rageDamage.hashCode())); + result = ((result* 31)+((this.modificationSlots == null)? 0 :this.modificationSlots.hashCode())); + result = ((result* 31)+((this.superiorityDiceSize == null)? 0 :this.superiorityDiceSize.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.routineRadius == null)? 0 :this.routineRadius.hashCode())); + result = ((result* 31)+((this.forcePowersKnown == null)? 0 :this.forcePowersKnown.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof _15) == false) { + return false; + } + _15 rhs = ((_15) other); + return ((((((((((((((((((((((((((((((((((((this.superiorityDiceQuantity == rhs.superiorityDiceQuantity)||((this.superiorityDiceQuantity!= null)&&this.superiorityDiceQuantity.equals(rhs.superiorityDiceQuantity)))&&((this.forceEmpoweredCastingOptions == rhs.forceEmpoweredCastingOptions)||((this.forceEmpoweredCastingOptions!= null)&&this.forceEmpoweredCastingOptions.equals(rhs.forceEmpoweredCastingOptions))))&&((this.kineticCombat == rhs.kineticCombat)||((this.kineticCombat!= null)&&this.kineticCombat.equals(rhs.kineticCombat))))&&((this.forcePoints == rhs.forcePoints)||((this.forcePoints!= null)&&this.forcePoints.equals(rhs.forcePoints))))&&((this.potentAptitude == rhs.potentAptitude)||((this.potentAptitude!= null)&&this.potentAptitude.equals(rhs.potentAptitude))))&&((this.auraRadius == rhs.auraRadius)||((this.auraRadius!= null)&&this.auraRadius.equals(rhs.auraRadius))))&&((this.proficiencyBonus == rhs.proficiencyBonus)||((this.proficiencyBonus!= null)&&this.proficiencyBonus.equals(rhs.proficiencyBonus))))&&((this.maneuversKnown == rhs.maneuversKnown)||((this.maneuversKnown!= null)&&this.maneuversKnown.equals(rhs.maneuversKnown))))&&((this.monasticVows == rhs.monasticVows)||((this.monasticVows!= null)&&this.monasticVows.equals(rhs.monasticVows))))&&((this.techPowersKnown == rhs.techPowersKnown)||((this.techPowersKnown!= null)&&this.techPowersKnown.equals(rhs.techPowersKnown))))&&((this.focusPoints == rhs.focusPoints)||((this.focusPoints!= null)&&this.focusPoints.equals(rhs.focusPoints))))&&((this.features == rhs.features)||((this.features!= null)&&this.features.equals(rhs.features))))&&((this.maxPowerLevel == rhs.maxPowerLevel)||((this.maxPowerLevel!= null)&&this.maxPowerLevel.equals(rhs.maxPowerLevel))))&&((this.berserkerInstincts == rhs.berserkerInstincts)||((this.berserkerInstincts!= null)&&this.berserkerInstincts.equals(rhs.berserkerInstincts))))&&((this.aurasKnown == rhs.aurasKnown)||((this.aurasKnown!= null)&&this.aurasKnown.equals(rhs.aurasKnown))))&&((this.rangerSQuarry == rhs.rangerSQuarry)||((this.rangerSQuarry!= null)&&this.rangerSQuarry.equals(rhs.rangerSQuarry))))&&((this.idealManifests == rhs.idealManifests)||((this.idealManifests!= null)&&this.idealManifests.equals(rhs.idealManifests))))&&((this.focusedStrikes == rhs.focusedStrikes)||((this.focusedStrikes!= null)&&this.focusedStrikes.equals(rhs.focusedStrikes))))&&((this.level == rhs.level)||((this.level!= null)&&this.level.equals(rhs.level))))&&((this.operativeExploits == rhs.operativeExploits)||((this.operativeExploits!= null)&&this.operativeExploits.equals(rhs.operativeExploits))))&&((this.sneakAttack == rhs.sneakAttack)||((this.sneakAttack!= null)&&this.sneakAttack.equals(rhs.sneakAttack))))&&((this.idealsKnown == rhs.idealsKnown)||((this.idealsKnown!= null)&&this.idealsKnown.equals(rhs.idealsKnown))))&&((this.strategiesKnown == rhs.strategiesKnown)||((this.strategiesKnown!= null)&&this.strategiesKnown.equals(rhs.strategiesKnown))))&&((this.techPoints == rhs.techPoints)||((this.techPoints!= null)&&this.techPoints.equals(rhs.techPoints))))&&((this.rages == rhs.rages)||((this.rages!= null)&&this.rages.equals(rhs.rages))))&&((this.routinesKnown == rhs.routinesKnown)||((this.routinesKnown!= null)&&this.routinesKnown.equals(rhs.routinesKnown))))&&((this.unarmoredMovement == rhs.unarmoredMovement)||((this.unarmoredMovement!= null)&&this.unarmoredMovement.equals(rhs.unarmoredMovement))))&&((this.martialArts == rhs.martialArts)||((this.martialArts!= null)&&this.martialArts.equals(rhs.martialArts))))&&((this.discoveries == rhs.discoveries)||((this.discoveries!= null)&&this.discoveries.equals(rhs.discoveries))))&&((this.rageDamage == rhs.rageDamage)||((this.rageDamage!= null)&&this.rageDamage.equals(rhs.rageDamage))))&&((this.modificationSlots == rhs.modificationSlots)||((this.modificationSlots!= null)&&this.modificationSlots.equals(rhs.modificationSlots))))&&((this.superiorityDiceSize == rhs.superiorityDiceSize)||((this.superiorityDiceSize!= null)&&this.superiorityDiceSize.equals(rhs.superiorityDiceSize))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.routineRadius == rhs.routineRadius)||((this.routineRadius!= null)&&this.routineRadius.equals(rhs.routineRadius))))&&((this.forcePowersKnown == rhs.forcePowersKnown)||((this.forcePowersKnown!= null)&&this.forcePowersKnown.equals(rhs.forcePowersKnown)))); + } + +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/model/_16.java b/src/main/java/org/misoenergy/hackday/kessel_run/model/_16.java new file mode 100644 index 0000000..c543195 --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/model/_16.java @@ -0,0 +1,855 @@ + +package org.misoenergy.hackday.kessel_run.model; + +import java.util.HashMap; +import java.util.Map; +import javax.annotation.processing.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "Level", + "Proficiency Bonus", + "Features", + "Rages", + "Rage Damage", + "Berserker Instincts", + "Force Powers Known", + "Force Points", + "Max Power Level", + "Force-Empowered Casting Options", + "Tech Powers Known", + "Tech Points", + "Potent Aptitude", + "Modification Slots", + "Maneuvers Known", + "Superiority Dice Quantity", + "Superiority Dice Size", + "Strategies Known", + "Focused Strikes", + "Auras Known", + "Aura Radius", + "Martial Arts", + "Focus Points", + "Monastic Vows", + "Unarmored Movement", + "Sneak Attack", + "Operative Exploits", + "Discoveries", + "Ranger's Quarry", + "Routines Known", + "Routine Radius", + "Kinetic Combat", + "Ideals Known", + "Ideal Manifests" +}) +@Generated("jsonschema2pojo") +public class _16 { + + @JsonProperty("Level") + private String level; + @JsonProperty("Proficiency Bonus") + private String proficiencyBonus; + @JsonProperty("Features") + private String features; + @JsonProperty("Rages") + private String rages; + @JsonProperty("Rage Damage") + private String rageDamage; + @JsonProperty("Berserker Instincts") + private String berserkerInstincts; + @JsonProperty("Force Powers Known") + private String forcePowersKnown; + @JsonProperty("Force Points") + private String forcePoints; + @JsonProperty("Max Power Level") + private String maxPowerLevel; + @JsonProperty("Force-Empowered Casting Options") + private String forceEmpoweredCastingOptions; + @JsonProperty("Tech Powers Known") + private String techPowersKnown; + @JsonProperty("Tech Points") + private String techPoints; + @JsonProperty("Potent Aptitude") + private String potentAptitude; + @JsonProperty("Modification Slots") + private String modificationSlots; + @JsonProperty("Maneuvers Known") + private String maneuversKnown; + @JsonProperty("Superiority Dice Quantity") + private String superiorityDiceQuantity; + @JsonProperty("Superiority Dice Size") + private String superiorityDiceSize; + @JsonProperty("Strategies Known") + private String strategiesKnown; + @JsonProperty("Focused Strikes") + private String focusedStrikes; + @JsonProperty("Auras Known") + private String aurasKnown; + @JsonProperty("Aura Radius") + private String auraRadius; + @JsonProperty("Martial Arts") + private String martialArts; + @JsonProperty("Focus Points") + private String focusPoints; + @JsonProperty("Monastic Vows") + private String monasticVows; + @JsonProperty("Unarmored Movement") + private String unarmoredMovement; + @JsonProperty("Sneak Attack") + private String sneakAttack; + @JsonProperty("Operative Exploits") + private String operativeExploits; + @JsonProperty("Discoveries") + private String discoveries; + @JsonProperty("Ranger's Quarry") + private String rangerSQuarry; + @JsonProperty("Routines Known") + private String routinesKnown; + @JsonProperty("Routine Radius") + private String routineRadius; + @JsonProperty("Kinetic Combat") + private String kineticCombat; + @JsonProperty("Ideals Known") + private String idealsKnown; + @JsonProperty("Ideal Manifests") + private String idealManifests; + @JsonIgnore + private Map additionalProperties = new HashMap(); + + @JsonProperty("Level") + public String getLevel() { + return level; + } + + @JsonProperty("Level") + public void setLevel(String level) { + this.level = level; + } + + public _16 withLevel(String level) { + this.level = level; + return this; + } + + @JsonProperty("Proficiency Bonus") + public String getProficiencyBonus() { + return proficiencyBonus; + } + + @JsonProperty("Proficiency Bonus") + public void setProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + } + + public _16 withProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + return this; + } + + @JsonProperty("Features") + public String getFeatures() { + return features; + } + + @JsonProperty("Features") + public void setFeatures(String features) { + this.features = features; + } + + public _16 withFeatures(String features) { + this.features = features; + return this; + } + + @JsonProperty("Rages") + public String getRages() { + return rages; + } + + @JsonProperty("Rages") + public void setRages(String rages) { + this.rages = rages; + } + + public _16 withRages(String rages) { + this.rages = rages; + return this; + } + + @JsonProperty("Rage Damage") + public String getRageDamage() { + return rageDamage; + } + + @JsonProperty("Rage Damage") + public void setRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + } + + public _16 withRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + return this; + } + + @JsonProperty("Berserker Instincts") + public String getBerserkerInstincts() { + return berserkerInstincts; + } + + @JsonProperty("Berserker Instincts") + public void setBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + } + + public _16 withBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + return this; + } + + @JsonProperty("Force Powers Known") + public String getForcePowersKnown() { + return forcePowersKnown; + } + + @JsonProperty("Force Powers Known") + public void setForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + } + + public _16 withForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + return this; + } + + @JsonProperty("Force Points") + public String getForcePoints() { + return forcePoints; + } + + @JsonProperty("Force Points") + public void setForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + } + + public _16 withForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + return this; + } + + @JsonProperty("Max Power Level") + public String getMaxPowerLevel() { + return maxPowerLevel; + } + + @JsonProperty("Max Power Level") + public void setMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + } + + public _16 withMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + return this; + } + + @JsonProperty("Force-Empowered Casting Options") + public String getForceEmpoweredCastingOptions() { + return forceEmpoweredCastingOptions; + } + + @JsonProperty("Force-Empowered Casting Options") + public void setForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + } + + public _16 withForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + return this; + } + + @JsonProperty("Tech Powers Known") + public String getTechPowersKnown() { + return techPowersKnown; + } + + @JsonProperty("Tech Powers Known") + public void setTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + } + + public _16 withTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + return this; + } + + @JsonProperty("Tech Points") + public String getTechPoints() { + return techPoints; + } + + @JsonProperty("Tech Points") + public void setTechPoints(String techPoints) { + this.techPoints = techPoints; + } + + public _16 withTechPoints(String techPoints) { + this.techPoints = techPoints; + return this; + } + + @JsonProperty("Potent Aptitude") + public String getPotentAptitude() { + return potentAptitude; + } + + @JsonProperty("Potent Aptitude") + public void setPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + } + + public _16 withPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + return this; + } + + @JsonProperty("Modification Slots") + public String getModificationSlots() { + return modificationSlots; + } + + @JsonProperty("Modification Slots") + public void setModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + } + + public _16 withModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + return this; + } + + @JsonProperty("Maneuvers Known") + public String getManeuversKnown() { + return maneuversKnown; + } + + @JsonProperty("Maneuvers Known") + public void setManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + } + + public _16 withManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + return this; + } + + @JsonProperty("Superiority Dice Quantity") + public String getSuperiorityDiceQuantity() { + return superiorityDiceQuantity; + } + + @JsonProperty("Superiority Dice Quantity") + public void setSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + } + + public _16 withSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + return this; + } + + @JsonProperty("Superiority Dice Size") + public String getSuperiorityDiceSize() { + return superiorityDiceSize; + } + + @JsonProperty("Superiority Dice Size") + public void setSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + } + + public _16 withSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + return this; + } + + @JsonProperty("Strategies Known") + public String getStrategiesKnown() { + return strategiesKnown; + } + + @JsonProperty("Strategies Known") + public void setStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + } + + public _16 withStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + return this; + } + + @JsonProperty("Focused Strikes") + public String getFocusedStrikes() { + return focusedStrikes; + } + + @JsonProperty("Focused Strikes") + public void setFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + } + + public _16 withFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + return this; + } + + @JsonProperty("Auras Known") + public String getAurasKnown() { + return aurasKnown; + } + + @JsonProperty("Auras Known") + public void setAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + } + + public _16 withAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + return this; + } + + @JsonProperty("Aura Radius") + public String getAuraRadius() { + return auraRadius; + } + + @JsonProperty("Aura Radius") + public void setAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + } + + public _16 withAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + return this; + } + + @JsonProperty("Martial Arts") + public String getMartialArts() { + return martialArts; + } + + @JsonProperty("Martial Arts") + public void setMartialArts(String martialArts) { + this.martialArts = martialArts; + } + + public _16 withMartialArts(String martialArts) { + this.martialArts = martialArts; + return this; + } + + @JsonProperty("Focus Points") + public String getFocusPoints() { + return focusPoints; + } + + @JsonProperty("Focus Points") + public void setFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + } + + public _16 withFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + return this; + } + + @JsonProperty("Monastic Vows") + public String getMonasticVows() { + return monasticVows; + } + + @JsonProperty("Monastic Vows") + public void setMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + } + + public _16 withMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + return this; + } + + @JsonProperty("Unarmored Movement") + public String getUnarmoredMovement() { + return unarmoredMovement; + } + + @JsonProperty("Unarmored Movement") + public void setUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + } + + public _16 withUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + return this; + } + + @JsonProperty("Sneak Attack") + public String getSneakAttack() { + return sneakAttack; + } + + @JsonProperty("Sneak Attack") + public void setSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + } + + public _16 withSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + return this; + } + + @JsonProperty("Operative Exploits") + public String getOperativeExploits() { + return operativeExploits; + } + + @JsonProperty("Operative Exploits") + public void setOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + } + + public _16 withOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + return this; + } + + @JsonProperty("Discoveries") + public String getDiscoveries() { + return discoveries; + } + + @JsonProperty("Discoveries") + public void setDiscoveries(String discoveries) { + this.discoveries = discoveries; + } + + public _16 withDiscoveries(String discoveries) { + this.discoveries = discoveries; + return this; + } + + @JsonProperty("Ranger's Quarry") + public String getRangerSQuarry() { + return rangerSQuarry; + } + + @JsonProperty("Ranger's Quarry") + public void setRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + } + + public _16 withRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + return this; + } + + @JsonProperty("Routines Known") + public String getRoutinesKnown() { + return routinesKnown; + } + + @JsonProperty("Routines Known") + public void setRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + } + + public _16 withRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + return this; + } + + @JsonProperty("Routine Radius") + public String getRoutineRadius() { + return routineRadius; + } + + @JsonProperty("Routine Radius") + public void setRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + } + + public _16 withRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + return this; + } + + @JsonProperty("Kinetic Combat") + public String getKineticCombat() { + return kineticCombat; + } + + @JsonProperty("Kinetic Combat") + public void setKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + } + + public _16 withKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + return this; + } + + @JsonProperty("Ideals Known") + public String getIdealsKnown() { + return idealsKnown; + } + + @JsonProperty("Ideals Known") + public void setIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + } + + public _16 withIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + return this; + } + + @JsonProperty("Ideal Manifests") + public String getIdealManifests() { + return idealManifests; + } + + @JsonProperty("Ideal Manifests") + public void setIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + } + + public _16 withIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public _16 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(_16 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("level"); + sb.append('='); + sb.append(((this.level == null)?"":this.level)); + sb.append(','); + sb.append("proficiencyBonus"); + sb.append('='); + sb.append(((this.proficiencyBonus == null)?"":this.proficiencyBonus)); + sb.append(','); + sb.append("features"); + sb.append('='); + sb.append(((this.features == null)?"":this.features)); + sb.append(','); + sb.append("rages"); + sb.append('='); + sb.append(((this.rages == null)?"":this.rages)); + sb.append(','); + sb.append("rageDamage"); + sb.append('='); + sb.append(((this.rageDamage == null)?"":this.rageDamage)); + sb.append(','); + sb.append("berserkerInstincts"); + sb.append('='); + sb.append(((this.berserkerInstincts == null)?"":this.berserkerInstincts)); + sb.append(','); + sb.append("forcePowersKnown"); + sb.append('='); + sb.append(((this.forcePowersKnown == null)?"":this.forcePowersKnown)); + sb.append(','); + sb.append("forcePoints"); + sb.append('='); + sb.append(((this.forcePoints == null)?"":this.forcePoints)); + sb.append(','); + sb.append("maxPowerLevel"); + sb.append('='); + sb.append(((this.maxPowerLevel == null)?"":this.maxPowerLevel)); + sb.append(','); + sb.append("forceEmpoweredCastingOptions"); + sb.append('='); + sb.append(((this.forceEmpoweredCastingOptions == null)?"":this.forceEmpoweredCastingOptions)); + sb.append(','); + sb.append("techPowersKnown"); + sb.append('='); + sb.append(((this.techPowersKnown == null)?"":this.techPowersKnown)); + sb.append(','); + sb.append("techPoints"); + sb.append('='); + sb.append(((this.techPoints == null)?"":this.techPoints)); + sb.append(','); + sb.append("potentAptitude"); + sb.append('='); + sb.append(((this.potentAptitude == null)?"":this.potentAptitude)); + sb.append(','); + sb.append("modificationSlots"); + sb.append('='); + sb.append(((this.modificationSlots == null)?"":this.modificationSlots)); + sb.append(','); + sb.append("maneuversKnown"); + sb.append('='); + sb.append(((this.maneuversKnown == null)?"":this.maneuversKnown)); + sb.append(','); + sb.append("superiorityDiceQuantity"); + sb.append('='); + sb.append(((this.superiorityDiceQuantity == null)?"":this.superiorityDiceQuantity)); + sb.append(','); + sb.append("superiorityDiceSize"); + sb.append('='); + sb.append(((this.superiorityDiceSize == null)?"":this.superiorityDiceSize)); + sb.append(','); + sb.append("strategiesKnown"); + sb.append('='); + sb.append(((this.strategiesKnown == null)?"":this.strategiesKnown)); + sb.append(','); + sb.append("focusedStrikes"); + sb.append('='); + sb.append(((this.focusedStrikes == null)?"":this.focusedStrikes)); + sb.append(','); + sb.append("aurasKnown"); + sb.append('='); + sb.append(((this.aurasKnown == null)?"":this.aurasKnown)); + sb.append(','); + sb.append("auraRadius"); + sb.append('='); + sb.append(((this.auraRadius == null)?"":this.auraRadius)); + sb.append(','); + sb.append("martialArts"); + sb.append('='); + sb.append(((this.martialArts == null)?"":this.martialArts)); + sb.append(','); + sb.append("focusPoints"); + sb.append('='); + sb.append(((this.focusPoints == null)?"":this.focusPoints)); + sb.append(','); + sb.append("monasticVows"); + sb.append('='); + sb.append(((this.monasticVows == null)?"":this.monasticVows)); + sb.append(','); + sb.append("unarmoredMovement"); + sb.append('='); + sb.append(((this.unarmoredMovement == null)?"":this.unarmoredMovement)); + sb.append(','); + sb.append("sneakAttack"); + sb.append('='); + sb.append(((this.sneakAttack == null)?"":this.sneakAttack)); + sb.append(','); + sb.append("operativeExploits"); + sb.append('='); + sb.append(((this.operativeExploits == null)?"":this.operativeExploits)); + sb.append(','); + sb.append("discoveries"); + sb.append('='); + sb.append(((this.discoveries == null)?"":this.discoveries)); + sb.append(','); + sb.append("rangerSQuarry"); + sb.append('='); + sb.append(((this.rangerSQuarry == null)?"":this.rangerSQuarry)); + sb.append(','); + sb.append("routinesKnown"); + sb.append('='); + sb.append(((this.routinesKnown == null)?"":this.routinesKnown)); + sb.append(','); + sb.append("routineRadius"); + sb.append('='); + sb.append(((this.routineRadius == null)?"":this.routineRadius)); + sb.append(','); + sb.append("kineticCombat"); + sb.append('='); + sb.append(((this.kineticCombat == null)?"":this.kineticCombat)); + sb.append(','); + sb.append("idealsKnown"); + sb.append('='); + sb.append(((this.idealsKnown == null)?"":this.idealsKnown)); + sb.append(','); + sb.append("idealManifests"); + sb.append('='); + sb.append(((this.idealManifests == null)?"":this.idealManifests)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.superiorityDiceQuantity == null)? 0 :this.superiorityDiceQuantity.hashCode())); + result = ((result* 31)+((this.forceEmpoweredCastingOptions == null)? 0 :this.forceEmpoweredCastingOptions.hashCode())); + result = ((result* 31)+((this.kineticCombat == null)? 0 :this.kineticCombat.hashCode())); + result = ((result* 31)+((this.forcePoints == null)? 0 :this.forcePoints.hashCode())); + result = ((result* 31)+((this.potentAptitude == null)? 0 :this.potentAptitude.hashCode())); + result = ((result* 31)+((this.auraRadius == null)? 0 :this.auraRadius.hashCode())); + result = ((result* 31)+((this.proficiencyBonus == null)? 0 :this.proficiencyBonus.hashCode())); + result = ((result* 31)+((this.maneuversKnown == null)? 0 :this.maneuversKnown.hashCode())); + result = ((result* 31)+((this.monasticVows == null)? 0 :this.monasticVows.hashCode())); + result = ((result* 31)+((this.techPowersKnown == null)? 0 :this.techPowersKnown.hashCode())); + result = ((result* 31)+((this.focusPoints == null)? 0 :this.focusPoints.hashCode())); + result = ((result* 31)+((this.features == null)? 0 :this.features.hashCode())); + result = ((result* 31)+((this.maxPowerLevel == null)? 0 :this.maxPowerLevel.hashCode())); + result = ((result* 31)+((this.berserkerInstincts == null)? 0 :this.berserkerInstincts.hashCode())); + result = ((result* 31)+((this.aurasKnown == null)? 0 :this.aurasKnown.hashCode())); + result = ((result* 31)+((this.rangerSQuarry == null)? 0 :this.rangerSQuarry.hashCode())); + result = ((result* 31)+((this.idealManifests == null)? 0 :this.idealManifests.hashCode())); + result = ((result* 31)+((this.focusedStrikes == null)? 0 :this.focusedStrikes.hashCode())); + result = ((result* 31)+((this.level == null)? 0 :this.level.hashCode())); + result = ((result* 31)+((this.operativeExploits == null)? 0 :this.operativeExploits.hashCode())); + result = ((result* 31)+((this.sneakAttack == null)? 0 :this.sneakAttack.hashCode())); + result = ((result* 31)+((this.idealsKnown == null)? 0 :this.idealsKnown.hashCode())); + result = ((result* 31)+((this.strategiesKnown == null)? 0 :this.strategiesKnown.hashCode())); + result = ((result* 31)+((this.techPoints == null)? 0 :this.techPoints.hashCode())); + result = ((result* 31)+((this.rages == null)? 0 :this.rages.hashCode())); + result = ((result* 31)+((this.routinesKnown == null)? 0 :this.routinesKnown.hashCode())); + result = ((result* 31)+((this.unarmoredMovement == null)? 0 :this.unarmoredMovement.hashCode())); + result = ((result* 31)+((this.martialArts == null)? 0 :this.martialArts.hashCode())); + result = ((result* 31)+((this.discoveries == null)? 0 :this.discoveries.hashCode())); + result = ((result* 31)+((this.rageDamage == null)? 0 :this.rageDamage.hashCode())); + result = ((result* 31)+((this.modificationSlots == null)? 0 :this.modificationSlots.hashCode())); + result = ((result* 31)+((this.superiorityDiceSize == null)? 0 :this.superiorityDiceSize.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.routineRadius == null)? 0 :this.routineRadius.hashCode())); + result = ((result* 31)+((this.forcePowersKnown == null)? 0 :this.forcePowersKnown.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof _16) == false) { + return false; + } + _16 rhs = ((_16) other); + return ((((((((((((((((((((((((((((((((((((this.superiorityDiceQuantity == rhs.superiorityDiceQuantity)||((this.superiorityDiceQuantity!= null)&&this.superiorityDiceQuantity.equals(rhs.superiorityDiceQuantity)))&&((this.forceEmpoweredCastingOptions == rhs.forceEmpoweredCastingOptions)||((this.forceEmpoweredCastingOptions!= null)&&this.forceEmpoweredCastingOptions.equals(rhs.forceEmpoweredCastingOptions))))&&((this.kineticCombat == rhs.kineticCombat)||((this.kineticCombat!= null)&&this.kineticCombat.equals(rhs.kineticCombat))))&&((this.forcePoints == rhs.forcePoints)||((this.forcePoints!= null)&&this.forcePoints.equals(rhs.forcePoints))))&&((this.potentAptitude == rhs.potentAptitude)||((this.potentAptitude!= null)&&this.potentAptitude.equals(rhs.potentAptitude))))&&((this.auraRadius == rhs.auraRadius)||((this.auraRadius!= null)&&this.auraRadius.equals(rhs.auraRadius))))&&((this.proficiencyBonus == rhs.proficiencyBonus)||((this.proficiencyBonus!= null)&&this.proficiencyBonus.equals(rhs.proficiencyBonus))))&&((this.maneuversKnown == rhs.maneuversKnown)||((this.maneuversKnown!= null)&&this.maneuversKnown.equals(rhs.maneuversKnown))))&&((this.monasticVows == rhs.monasticVows)||((this.monasticVows!= null)&&this.monasticVows.equals(rhs.monasticVows))))&&((this.techPowersKnown == rhs.techPowersKnown)||((this.techPowersKnown!= null)&&this.techPowersKnown.equals(rhs.techPowersKnown))))&&((this.focusPoints == rhs.focusPoints)||((this.focusPoints!= null)&&this.focusPoints.equals(rhs.focusPoints))))&&((this.features == rhs.features)||((this.features!= null)&&this.features.equals(rhs.features))))&&((this.maxPowerLevel == rhs.maxPowerLevel)||((this.maxPowerLevel!= null)&&this.maxPowerLevel.equals(rhs.maxPowerLevel))))&&((this.berserkerInstincts == rhs.berserkerInstincts)||((this.berserkerInstincts!= null)&&this.berserkerInstincts.equals(rhs.berserkerInstincts))))&&((this.aurasKnown == rhs.aurasKnown)||((this.aurasKnown!= null)&&this.aurasKnown.equals(rhs.aurasKnown))))&&((this.rangerSQuarry == rhs.rangerSQuarry)||((this.rangerSQuarry!= null)&&this.rangerSQuarry.equals(rhs.rangerSQuarry))))&&((this.idealManifests == rhs.idealManifests)||((this.idealManifests!= null)&&this.idealManifests.equals(rhs.idealManifests))))&&((this.focusedStrikes == rhs.focusedStrikes)||((this.focusedStrikes!= null)&&this.focusedStrikes.equals(rhs.focusedStrikes))))&&((this.level == rhs.level)||((this.level!= null)&&this.level.equals(rhs.level))))&&((this.operativeExploits == rhs.operativeExploits)||((this.operativeExploits!= null)&&this.operativeExploits.equals(rhs.operativeExploits))))&&((this.sneakAttack == rhs.sneakAttack)||((this.sneakAttack!= null)&&this.sneakAttack.equals(rhs.sneakAttack))))&&((this.idealsKnown == rhs.idealsKnown)||((this.idealsKnown!= null)&&this.idealsKnown.equals(rhs.idealsKnown))))&&((this.strategiesKnown == rhs.strategiesKnown)||((this.strategiesKnown!= null)&&this.strategiesKnown.equals(rhs.strategiesKnown))))&&((this.techPoints == rhs.techPoints)||((this.techPoints!= null)&&this.techPoints.equals(rhs.techPoints))))&&((this.rages == rhs.rages)||((this.rages!= null)&&this.rages.equals(rhs.rages))))&&((this.routinesKnown == rhs.routinesKnown)||((this.routinesKnown!= null)&&this.routinesKnown.equals(rhs.routinesKnown))))&&((this.unarmoredMovement == rhs.unarmoredMovement)||((this.unarmoredMovement!= null)&&this.unarmoredMovement.equals(rhs.unarmoredMovement))))&&((this.martialArts == rhs.martialArts)||((this.martialArts!= null)&&this.martialArts.equals(rhs.martialArts))))&&((this.discoveries == rhs.discoveries)||((this.discoveries!= null)&&this.discoveries.equals(rhs.discoveries))))&&((this.rageDamage == rhs.rageDamage)||((this.rageDamage!= null)&&this.rageDamage.equals(rhs.rageDamage))))&&((this.modificationSlots == rhs.modificationSlots)||((this.modificationSlots!= null)&&this.modificationSlots.equals(rhs.modificationSlots))))&&((this.superiorityDiceSize == rhs.superiorityDiceSize)||((this.superiorityDiceSize!= null)&&this.superiorityDiceSize.equals(rhs.superiorityDiceSize))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.routineRadius == rhs.routineRadius)||((this.routineRadius!= null)&&this.routineRadius.equals(rhs.routineRadius))))&&((this.forcePowersKnown == rhs.forcePowersKnown)||((this.forcePowersKnown!= null)&&this.forcePowersKnown.equals(rhs.forcePowersKnown)))); + } + +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/model/_17.java b/src/main/java/org/misoenergy/hackday/kessel_run/model/_17.java new file mode 100644 index 0000000..59a1377 --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/model/_17.java @@ -0,0 +1,855 @@ + +package org.misoenergy.hackday.kessel_run.model; + +import java.util.HashMap; +import java.util.Map; +import javax.annotation.processing.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "Level", + "Proficiency Bonus", + "Features", + "Rages", + "Rage Damage", + "Berserker Instincts", + "Force Powers Known", + "Force Points", + "Max Power Level", + "Force-Empowered Casting Options", + "Tech Powers Known", + "Tech Points", + "Potent Aptitude", + "Modification Slots", + "Maneuvers Known", + "Superiority Dice Quantity", + "Superiority Dice Size", + "Strategies Known", + "Focused Strikes", + "Auras Known", + "Aura Radius", + "Martial Arts", + "Focus Points", + "Monastic Vows", + "Unarmored Movement", + "Sneak Attack", + "Operative Exploits", + "Discoveries", + "Ranger's Quarry", + "Routines Known", + "Routine Radius", + "Kinetic Combat", + "Ideals Known", + "Ideal Manifests" +}) +@Generated("jsonschema2pojo") +public class _17 { + + @JsonProperty("Level") + private String level; + @JsonProperty("Proficiency Bonus") + private String proficiencyBonus; + @JsonProperty("Features") + private String features; + @JsonProperty("Rages") + private String rages; + @JsonProperty("Rage Damage") + private String rageDamage; + @JsonProperty("Berserker Instincts") + private String berserkerInstincts; + @JsonProperty("Force Powers Known") + private String forcePowersKnown; + @JsonProperty("Force Points") + private String forcePoints; + @JsonProperty("Max Power Level") + private String maxPowerLevel; + @JsonProperty("Force-Empowered Casting Options") + private String forceEmpoweredCastingOptions; + @JsonProperty("Tech Powers Known") + private String techPowersKnown; + @JsonProperty("Tech Points") + private String techPoints; + @JsonProperty("Potent Aptitude") + private String potentAptitude; + @JsonProperty("Modification Slots") + private String modificationSlots; + @JsonProperty("Maneuvers Known") + private String maneuversKnown; + @JsonProperty("Superiority Dice Quantity") + private String superiorityDiceQuantity; + @JsonProperty("Superiority Dice Size") + private String superiorityDiceSize; + @JsonProperty("Strategies Known") + private String strategiesKnown; + @JsonProperty("Focused Strikes") + private String focusedStrikes; + @JsonProperty("Auras Known") + private String aurasKnown; + @JsonProperty("Aura Radius") + private String auraRadius; + @JsonProperty("Martial Arts") + private String martialArts; + @JsonProperty("Focus Points") + private String focusPoints; + @JsonProperty("Monastic Vows") + private String monasticVows; + @JsonProperty("Unarmored Movement") + private String unarmoredMovement; + @JsonProperty("Sneak Attack") + private String sneakAttack; + @JsonProperty("Operative Exploits") + private String operativeExploits; + @JsonProperty("Discoveries") + private String discoveries; + @JsonProperty("Ranger's Quarry") + private String rangerSQuarry; + @JsonProperty("Routines Known") + private String routinesKnown; + @JsonProperty("Routine Radius") + private String routineRadius; + @JsonProperty("Kinetic Combat") + private String kineticCombat; + @JsonProperty("Ideals Known") + private String idealsKnown; + @JsonProperty("Ideal Manifests") + private String idealManifests; + @JsonIgnore + private Map additionalProperties = new HashMap(); + + @JsonProperty("Level") + public String getLevel() { + return level; + } + + @JsonProperty("Level") + public void setLevel(String level) { + this.level = level; + } + + public _17 withLevel(String level) { + this.level = level; + return this; + } + + @JsonProperty("Proficiency Bonus") + public String getProficiencyBonus() { + return proficiencyBonus; + } + + @JsonProperty("Proficiency Bonus") + public void setProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + } + + public _17 withProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + return this; + } + + @JsonProperty("Features") + public String getFeatures() { + return features; + } + + @JsonProperty("Features") + public void setFeatures(String features) { + this.features = features; + } + + public _17 withFeatures(String features) { + this.features = features; + return this; + } + + @JsonProperty("Rages") + public String getRages() { + return rages; + } + + @JsonProperty("Rages") + public void setRages(String rages) { + this.rages = rages; + } + + public _17 withRages(String rages) { + this.rages = rages; + return this; + } + + @JsonProperty("Rage Damage") + public String getRageDamage() { + return rageDamage; + } + + @JsonProperty("Rage Damage") + public void setRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + } + + public _17 withRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + return this; + } + + @JsonProperty("Berserker Instincts") + public String getBerserkerInstincts() { + return berserkerInstincts; + } + + @JsonProperty("Berserker Instincts") + public void setBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + } + + public _17 withBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + return this; + } + + @JsonProperty("Force Powers Known") + public String getForcePowersKnown() { + return forcePowersKnown; + } + + @JsonProperty("Force Powers Known") + public void setForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + } + + public _17 withForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + return this; + } + + @JsonProperty("Force Points") + public String getForcePoints() { + return forcePoints; + } + + @JsonProperty("Force Points") + public void setForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + } + + public _17 withForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + return this; + } + + @JsonProperty("Max Power Level") + public String getMaxPowerLevel() { + return maxPowerLevel; + } + + @JsonProperty("Max Power Level") + public void setMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + } + + public _17 withMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + return this; + } + + @JsonProperty("Force-Empowered Casting Options") + public String getForceEmpoweredCastingOptions() { + return forceEmpoweredCastingOptions; + } + + @JsonProperty("Force-Empowered Casting Options") + public void setForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + } + + public _17 withForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + return this; + } + + @JsonProperty("Tech Powers Known") + public String getTechPowersKnown() { + return techPowersKnown; + } + + @JsonProperty("Tech Powers Known") + public void setTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + } + + public _17 withTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + return this; + } + + @JsonProperty("Tech Points") + public String getTechPoints() { + return techPoints; + } + + @JsonProperty("Tech Points") + public void setTechPoints(String techPoints) { + this.techPoints = techPoints; + } + + public _17 withTechPoints(String techPoints) { + this.techPoints = techPoints; + return this; + } + + @JsonProperty("Potent Aptitude") + public String getPotentAptitude() { + return potentAptitude; + } + + @JsonProperty("Potent Aptitude") + public void setPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + } + + public _17 withPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + return this; + } + + @JsonProperty("Modification Slots") + public String getModificationSlots() { + return modificationSlots; + } + + @JsonProperty("Modification Slots") + public void setModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + } + + public _17 withModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + return this; + } + + @JsonProperty("Maneuvers Known") + public String getManeuversKnown() { + return maneuversKnown; + } + + @JsonProperty("Maneuvers Known") + public void setManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + } + + public _17 withManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + return this; + } + + @JsonProperty("Superiority Dice Quantity") + public String getSuperiorityDiceQuantity() { + return superiorityDiceQuantity; + } + + @JsonProperty("Superiority Dice Quantity") + public void setSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + } + + public _17 withSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + return this; + } + + @JsonProperty("Superiority Dice Size") + public String getSuperiorityDiceSize() { + return superiorityDiceSize; + } + + @JsonProperty("Superiority Dice Size") + public void setSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + } + + public _17 withSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + return this; + } + + @JsonProperty("Strategies Known") + public String getStrategiesKnown() { + return strategiesKnown; + } + + @JsonProperty("Strategies Known") + public void setStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + } + + public _17 withStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + return this; + } + + @JsonProperty("Focused Strikes") + public String getFocusedStrikes() { + return focusedStrikes; + } + + @JsonProperty("Focused Strikes") + public void setFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + } + + public _17 withFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + return this; + } + + @JsonProperty("Auras Known") + public String getAurasKnown() { + return aurasKnown; + } + + @JsonProperty("Auras Known") + public void setAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + } + + public _17 withAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + return this; + } + + @JsonProperty("Aura Radius") + public String getAuraRadius() { + return auraRadius; + } + + @JsonProperty("Aura Radius") + public void setAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + } + + public _17 withAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + return this; + } + + @JsonProperty("Martial Arts") + public String getMartialArts() { + return martialArts; + } + + @JsonProperty("Martial Arts") + public void setMartialArts(String martialArts) { + this.martialArts = martialArts; + } + + public _17 withMartialArts(String martialArts) { + this.martialArts = martialArts; + return this; + } + + @JsonProperty("Focus Points") + public String getFocusPoints() { + return focusPoints; + } + + @JsonProperty("Focus Points") + public void setFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + } + + public _17 withFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + return this; + } + + @JsonProperty("Monastic Vows") + public String getMonasticVows() { + return monasticVows; + } + + @JsonProperty("Monastic Vows") + public void setMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + } + + public _17 withMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + return this; + } + + @JsonProperty("Unarmored Movement") + public String getUnarmoredMovement() { + return unarmoredMovement; + } + + @JsonProperty("Unarmored Movement") + public void setUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + } + + public _17 withUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + return this; + } + + @JsonProperty("Sneak Attack") + public String getSneakAttack() { + return sneakAttack; + } + + @JsonProperty("Sneak Attack") + public void setSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + } + + public _17 withSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + return this; + } + + @JsonProperty("Operative Exploits") + public String getOperativeExploits() { + return operativeExploits; + } + + @JsonProperty("Operative Exploits") + public void setOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + } + + public _17 withOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + return this; + } + + @JsonProperty("Discoveries") + public String getDiscoveries() { + return discoveries; + } + + @JsonProperty("Discoveries") + public void setDiscoveries(String discoveries) { + this.discoveries = discoveries; + } + + public _17 withDiscoveries(String discoveries) { + this.discoveries = discoveries; + return this; + } + + @JsonProperty("Ranger's Quarry") + public String getRangerSQuarry() { + return rangerSQuarry; + } + + @JsonProperty("Ranger's Quarry") + public void setRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + } + + public _17 withRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + return this; + } + + @JsonProperty("Routines Known") + public String getRoutinesKnown() { + return routinesKnown; + } + + @JsonProperty("Routines Known") + public void setRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + } + + public _17 withRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + return this; + } + + @JsonProperty("Routine Radius") + public String getRoutineRadius() { + return routineRadius; + } + + @JsonProperty("Routine Radius") + public void setRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + } + + public _17 withRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + return this; + } + + @JsonProperty("Kinetic Combat") + public String getKineticCombat() { + return kineticCombat; + } + + @JsonProperty("Kinetic Combat") + public void setKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + } + + public _17 withKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + return this; + } + + @JsonProperty("Ideals Known") + public String getIdealsKnown() { + return idealsKnown; + } + + @JsonProperty("Ideals Known") + public void setIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + } + + public _17 withIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + return this; + } + + @JsonProperty("Ideal Manifests") + public String getIdealManifests() { + return idealManifests; + } + + @JsonProperty("Ideal Manifests") + public void setIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + } + + public _17 withIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public _17 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(_17 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("level"); + sb.append('='); + sb.append(((this.level == null)?"":this.level)); + sb.append(','); + sb.append("proficiencyBonus"); + sb.append('='); + sb.append(((this.proficiencyBonus == null)?"":this.proficiencyBonus)); + sb.append(','); + sb.append("features"); + sb.append('='); + sb.append(((this.features == null)?"":this.features)); + sb.append(','); + sb.append("rages"); + sb.append('='); + sb.append(((this.rages == null)?"":this.rages)); + sb.append(','); + sb.append("rageDamage"); + sb.append('='); + sb.append(((this.rageDamage == null)?"":this.rageDamage)); + sb.append(','); + sb.append("berserkerInstincts"); + sb.append('='); + sb.append(((this.berserkerInstincts == null)?"":this.berserkerInstincts)); + sb.append(','); + sb.append("forcePowersKnown"); + sb.append('='); + sb.append(((this.forcePowersKnown == null)?"":this.forcePowersKnown)); + sb.append(','); + sb.append("forcePoints"); + sb.append('='); + sb.append(((this.forcePoints == null)?"":this.forcePoints)); + sb.append(','); + sb.append("maxPowerLevel"); + sb.append('='); + sb.append(((this.maxPowerLevel == null)?"":this.maxPowerLevel)); + sb.append(','); + sb.append("forceEmpoweredCastingOptions"); + sb.append('='); + sb.append(((this.forceEmpoweredCastingOptions == null)?"":this.forceEmpoweredCastingOptions)); + sb.append(','); + sb.append("techPowersKnown"); + sb.append('='); + sb.append(((this.techPowersKnown == null)?"":this.techPowersKnown)); + sb.append(','); + sb.append("techPoints"); + sb.append('='); + sb.append(((this.techPoints == null)?"":this.techPoints)); + sb.append(','); + sb.append("potentAptitude"); + sb.append('='); + sb.append(((this.potentAptitude == null)?"":this.potentAptitude)); + sb.append(','); + sb.append("modificationSlots"); + sb.append('='); + sb.append(((this.modificationSlots == null)?"":this.modificationSlots)); + sb.append(','); + sb.append("maneuversKnown"); + sb.append('='); + sb.append(((this.maneuversKnown == null)?"":this.maneuversKnown)); + sb.append(','); + sb.append("superiorityDiceQuantity"); + sb.append('='); + sb.append(((this.superiorityDiceQuantity == null)?"":this.superiorityDiceQuantity)); + sb.append(','); + sb.append("superiorityDiceSize"); + sb.append('='); + sb.append(((this.superiorityDiceSize == null)?"":this.superiorityDiceSize)); + sb.append(','); + sb.append("strategiesKnown"); + sb.append('='); + sb.append(((this.strategiesKnown == null)?"":this.strategiesKnown)); + sb.append(','); + sb.append("focusedStrikes"); + sb.append('='); + sb.append(((this.focusedStrikes == null)?"":this.focusedStrikes)); + sb.append(','); + sb.append("aurasKnown"); + sb.append('='); + sb.append(((this.aurasKnown == null)?"":this.aurasKnown)); + sb.append(','); + sb.append("auraRadius"); + sb.append('='); + sb.append(((this.auraRadius == null)?"":this.auraRadius)); + sb.append(','); + sb.append("martialArts"); + sb.append('='); + sb.append(((this.martialArts == null)?"":this.martialArts)); + sb.append(','); + sb.append("focusPoints"); + sb.append('='); + sb.append(((this.focusPoints == null)?"":this.focusPoints)); + sb.append(','); + sb.append("monasticVows"); + sb.append('='); + sb.append(((this.monasticVows == null)?"":this.monasticVows)); + sb.append(','); + sb.append("unarmoredMovement"); + sb.append('='); + sb.append(((this.unarmoredMovement == null)?"":this.unarmoredMovement)); + sb.append(','); + sb.append("sneakAttack"); + sb.append('='); + sb.append(((this.sneakAttack == null)?"":this.sneakAttack)); + sb.append(','); + sb.append("operativeExploits"); + sb.append('='); + sb.append(((this.operativeExploits == null)?"":this.operativeExploits)); + sb.append(','); + sb.append("discoveries"); + sb.append('='); + sb.append(((this.discoveries == null)?"":this.discoveries)); + sb.append(','); + sb.append("rangerSQuarry"); + sb.append('='); + sb.append(((this.rangerSQuarry == null)?"":this.rangerSQuarry)); + sb.append(','); + sb.append("routinesKnown"); + sb.append('='); + sb.append(((this.routinesKnown == null)?"":this.routinesKnown)); + sb.append(','); + sb.append("routineRadius"); + sb.append('='); + sb.append(((this.routineRadius == null)?"":this.routineRadius)); + sb.append(','); + sb.append("kineticCombat"); + sb.append('='); + sb.append(((this.kineticCombat == null)?"":this.kineticCombat)); + sb.append(','); + sb.append("idealsKnown"); + sb.append('='); + sb.append(((this.idealsKnown == null)?"":this.idealsKnown)); + sb.append(','); + sb.append("idealManifests"); + sb.append('='); + sb.append(((this.idealManifests == null)?"":this.idealManifests)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.superiorityDiceQuantity == null)? 0 :this.superiorityDiceQuantity.hashCode())); + result = ((result* 31)+((this.forceEmpoweredCastingOptions == null)? 0 :this.forceEmpoweredCastingOptions.hashCode())); + result = ((result* 31)+((this.kineticCombat == null)? 0 :this.kineticCombat.hashCode())); + result = ((result* 31)+((this.forcePoints == null)? 0 :this.forcePoints.hashCode())); + result = ((result* 31)+((this.potentAptitude == null)? 0 :this.potentAptitude.hashCode())); + result = ((result* 31)+((this.auraRadius == null)? 0 :this.auraRadius.hashCode())); + result = ((result* 31)+((this.proficiencyBonus == null)? 0 :this.proficiencyBonus.hashCode())); + result = ((result* 31)+((this.maneuversKnown == null)? 0 :this.maneuversKnown.hashCode())); + result = ((result* 31)+((this.monasticVows == null)? 0 :this.monasticVows.hashCode())); + result = ((result* 31)+((this.techPowersKnown == null)? 0 :this.techPowersKnown.hashCode())); + result = ((result* 31)+((this.focusPoints == null)? 0 :this.focusPoints.hashCode())); + result = ((result* 31)+((this.features == null)? 0 :this.features.hashCode())); + result = ((result* 31)+((this.maxPowerLevel == null)? 0 :this.maxPowerLevel.hashCode())); + result = ((result* 31)+((this.berserkerInstincts == null)? 0 :this.berserkerInstincts.hashCode())); + result = ((result* 31)+((this.aurasKnown == null)? 0 :this.aurasKnown.hashCode())); + result = ((result* 31)+((this.rangerSQuarry == null)? 0 :this.rangerSQuarry.hashCode())); + result = ((result* 31)+((this.idealManifests == null)? 0 :this.idealManifests.hashCode())); + result = ((result* 31)+((this.focusedStrikes == null)? 0 :this.focusedStrikes.hashCode())); + result = ((result* 31)+((this.level == null)? 0 :this.level.hashCode())); + result = ((result* 31)+((this.operativeExploits == null)? 0 :this.operativeExploits.hashCode())); + result = ((result* 31)+((this.sneakAttack == null)? 0 :this.sneakAttack.hashCode())); + result = ((result* 31)+((this.idealsKnown == null)? 0 :this.idealsKnown.hashCode())); + result = ((result* 31)+((this.strategiesKnown == null)? 0 :this.strategiesKnown.hashCode())); + result = ((result* 31)+((this.techPoints == null)? 0 :this.techPoints.hashCode())); + result = ((result* 31)+((this.rages == null)? 0 :this.rages.hashCode())); + result = ((result* 31)+((this.routinesKnown == null)? 0 :this.routinesKnown.hashCode())); + result = ((result* 31)+((this.unarmoredMovement == null)? 0 :this.unarmoredMovement.hashCode())); + result = ((result* 31)+((this.martialArts == null)? 0 :this.martialArts.hashCode())); + result = ((result* 31)+((this.discoveries == null)? 0 :this.discoveries.hashCode())); + result = ((result* 31)+((this.rageDamage == null)? 0 :this.rageDamage.hashCode())); + result = ((result* 31)+((this.modificationSlots == null)? 0 :this.modificationSlots.hashCode())); + result = ((result* 31)+((this.superiorityDiceSize == null)? 0 :this.superiorityDiceSize.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.routineRadius == null)? 0 :this.routineRadius.hashCode())); + result = ((result* 31)+((this.forcePowersKnown == null)? 0 :this.forcePowersKnown.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof _17) == false) { + return false; + } + _17 rhs = ((_17) other); + return ((((((((((((((((((((((((((((((((((((this.superiorityDiceQuantity == rhs.superiorityDiceQuantity)||((this.superiorityDiceQuantity!= null)&&this.superiorityDiceQuantity.equals(rhs.superiorityDiceQuantity)))&&((this.forceEmpoweredCastingOptions == rhs.forceEmpoweredCastingOptions)||((this.forceEmpoweredCastingOptions!= null)&&this.forceEmpoweredCastingOptions.equals(rhs.forceEmpoweredCastingOptions))))&&((this.kineticCombat == rhs.kineticCombat)||((this.kineticCombat!= null)&&this.kineticCombat.equals(rhs.kineticCombat))))&&((this.forcePoints == rhs.forcePoints)||((this.forcePoints!= null)&&this.forcePoints.equals(rhs.forcePoints))))&&((this.potentAptitude == rhs.potentAptitude)||((this.potentAptitude!= null)&&this.potentAptitude.equals(rhs.potentAptitude))))&&((this.auraRadius == rhs.auraRadius)||((this.auraRadius!= null)&&this.auraRadius.equals(rhs.auraRadius))))&&((this.proficiencyBonus == rhs.proficiencyBonus)||((this.proficiencyBonus!= null)&&this.proficiencyBonus.equals(rhs.proficiencyBonus))))&&((this.maneuversKnown == rhs.maneuversKnown)||((this.maneuversKnown!= null)&&this.maneuversKnown.equals(rhs.maneuversKnown))))&&((this.monasticVows == rhs.monasticVows)||((this.monasticVows!= null)&&this.monasticVows.equals(rhs.monasticVows))))&&((this.techPowersKnown == rhs.techPowersKnown)||((this.techPowersKnown!= null)&&this.techPowersKnown.equals(rhs.techPowersKnown))))&&((this.focusPoints == rhs.focusPoints)||((this.focusPoints!= null)&&this.focusPoints.equals(rhs.focusPoints))))&&((this.features == rhs.features)||((this.features!= null)&&this.features.equals(rhs.features))))&&((this.maxPowerLevel == rhs.maxPowerLevel)||((this.maxPowerLevel!= null)&&this.maxPowerLevel.equals(rhs.maxPowerLevel))))&&((this.berserkerInstincts == rhs.berserkerInstincts)||((this.berserkerInstincts!= null)&&this.berserkerInstincts.equals(rhs.berserkerInstincts))))&&((this.aurasKnown == rhs.aurasKnown)||((this.aurasKnown!= null)&&this.aurasKnown.equals(rhs.aurasKnown))))&&((this.rangerSQuarry == rhs.rangerSQuarry)||((this.rangerSQuarry!= null)&&this.rangerSQuarry.equals(rhs.rangerSQuarry))))&&((this.idealManifests == rhs.idealManifests)||((this.idealManifests!= null)&&this.idealManifests.equals(rhs.idealManifests))))&&((this.focusedStrikes == rhs.focusedStrikes)||((this.focusedStrikes!= null)&&this.focusedStrikes.equals(rhs.focusedStrikes))))&&((this.level == rhs.level)||((this.level!= null)&&this.level.equals(rhs.level))))&&((this.operativeExploits == rhs.operativeExploits)||((this.operativeExploits!= null)&&this.operativeExploits.equals(rhs.operativeExploits))))&&((this.sneakAttack == rhs.sneakAttack)||((this.sneakAttack!= null)&&this.sneakAttack.equals(rhs.sneakAttack))))&&((this.idealsKnown == rhs.idealsKnown)||((this.idealsKnown!= null)&&this.idealsKnown.equals(rhs.idealsKnown))))&&((this.strategiesKnown == rhs.strategiesKnown)||((this.strategiesKnown!= null)&&this.strategiesKnown.equals(rhs.strategiesKnown))))&&((this.techPoints == rhs.techPoints)||((this.techPoints!= null)&&this.techPoints.equals(rhs.techPoints))))&&((this.rages == rhs.rages)||((this.rages!= null)&&this.rages.equals(rhs.rages))))&&((this.routinesKnown == rhs.routinesKnown)||((this.routinesKnown!= null)&&this.routinesKnown.equals(rhs.routinesKnown))))&&((this.unarmoredMovement == rhs.unarmoredMovement)||((this.unarmoredMovement!= null)&&this.unarmoredMovement.equals(rhs.unarmoredMovement))))&&((this.martialArts == rhs.martialArts)||((this.martialArts!= null)&&this.martialArts.equals(rhs.martialArts))))&&((this.discoveries == rhs.discoveries)||((this.discoveries!= null)&&this.discoveries.equals(rhs.discoveries))))&&((this.rageDamage == rhs.rageDamage)||((this.rageDamage!= null)&&this.rageDamage.equals(rhs.rageDamage))))&&((this.modificationSlots == rhs.modificationSlots)||((this.modificationSlots!= null)&&this.modificationSlots.equals(rhs.modificationSlots))))&&((this.superiorityDiceSize == rhs.superiorityDiceSize)||((this.superiorityDiceSize!= null)&&this.superiorityDiceSize.equals(rhs.superiorityDiceSize))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.routineRadius == rhs.routineRadius)||((this.routineRadius!= null)&&this.routineRadius.equals(rhs.routineRadius))))&&((this.forcePowersKnown == rhs.forcePowersKnown)||((this.forcePowersKnown!= null)&&this.forcePowersKnown.equals(rhs.forcePowersKnown)))); + } + +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/model/_18.java b/src/main/java/org/misoenergy/hackday/kessel_run/model/_18.java new file mode 100644 index 0000000..a9d6449 --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/model/_18.java @@ -0,0 +1,855 @@ + +package org.misoenergy.hackday.kessel_run.model; + +import java.util.HashMap; +import java.util.Map; +import javax.annotation.processing.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "Level", + "Proficiency Bonus", + "Features", + "Rages", + "Rage Damage", + "Berserker Instincts", + "Force Powers Known", + "Force Points", + "Max Power Level", + "Force-Empowered Casting Options", + "Tech Powers Known", + "Tech Points", + "Potent Aptitude", + "Modification Slots", + "Maneuvers Known", + "Superiority Dice Quantity", + "Superiority Dice Size", + "Strategies Known", + "Focused Strikes", + "Auras Known", + "Aura Radius", + "Martial Arts", + "Focus Points", + "Monastic Vows", + "Unarmored Movement", + "Sneak Attack", + "Operative Exploits", + "Discoveries", + "Ranger's Quarry", + "Routines Known", + "Routine Radius", + "Kinetic Combat", + "Ideals Known", + "Ideal Manifests" +}) +@Generated("jsonschema2pojo") +public class _18 { + + @JsonProperty("Level") + private String level; + @JsonProperty("Proficiency Bonus") + private String proficiencyBonus; + @JsonProperty("Features") + private String features; + @JsonProperty("Rages") + private String rages; + @JsonProperty("Rage Damage") + private String rageDamage; + @JsonProperty("Berserker Instincts") + private String berserkerInstincts; + @JsonProperty("Force Powers Known") + private String forcePowersKnown; + @JsonProperty("Force Points") + private String forcePoints; + @JsonProperty("Max Power Level") + private String maxPowerLevel; + @JsonProperty("Force-Empowered Casting Options") + private String forceEmpoweredCastingOptions; + @JsonProperty("Tech Powers Known") + private String techPowersKnown; + @JsonProperty("Tech Points") + private String techPoints; + @JsonProperty("Potent Aptitude") + private String potentAptitude; + @JsonProperty("Modification Slots") + private String modificationSlots; + @JsonProperty("Maneuvers Known") + private String maneuversKnown; + @JsonProperty("Superiority Dice Quantity") + private String superiorityDiceQuantity; + @JsonProperty("Superiority Dice Size") + private String superiorityDiceSize; + @JsonProperty("Strategies Known") + private String strategiesKnown; + @JsonProperty("Focused Strikes") + private String focusedStrikes; + @JsonProperty("Auras Known") + private String aurasKnown; + @JsonProperty("Aura Radius") + private String auraRadius; + @JsonProperty("Martial Arts") + private String martialArts; + @JsonProperty("Focus Points") + private String focusPoints; + @JsonProperty("Monastic Vows") + private String monasticVows; + @JsonProperty("Unarmored Movement") + private String unarmoredMovement; + @JsonProperty("Sneak Attack") + private String sneakAttack; + @JsonProperty("Operative Exploits") + private String operativeExploits; + @JsonProperty("Discoveries") + private String discoveries; + @JsonProperty("Ranger's Quarry") + private String rangerSQuarry; + @JsonProperty("Routines Known") + private String routinesKnown; + @JsonProperty("Routine Radius") + private String routineRadius; + @JsonProperty("Kinetic Combat") + private String kineticCombat; + @JsonProperty("Ideals Known") + private String idealsKnown; + @JsonProperty("Ideal Manifests") + private String idealManifests; + @JsonIgnore + private Map additionalProperties = new HashMap(); + + @JsonProperty("Level") + public String getLevel() { + return level; + } + + @JsonProperty("Level") + public void setLevel(String level) { + this.level = level; + } + + public _18 withLevel(String level) { + this.level = level; + return this; + } + + @JsonProperty("Proficiency Bonus") + public String getProficiencyBonus() { + return proficiencyBonus; + } + + @JsonProperty("Proficiency Bonus") + public void setProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + } + + public _18 withProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + return this; + } + + @JsonProperty("Features") + public String getFeatures() { + return features; + } + + @JsonProperty("Features") + public void setFeatures(String features) { + this.features = features; + } + + public _18 withFeatures(String features) { + this.features = features; + return this; + } + + @JsonProperty("Rages") + public String getRages() { + return rages; + } + + @JsonProperty("Rages") + public void setRages(String rages) { + this.rages = rages; + } + + public _18 withRages(String rages) { + this.rages = rages; + return this; + } + + @JsonProperty("Rage Damage") + public String getRageDamage() { + return rageDamage; + } + + @JsonProperty("Rage Damage") + public void setRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + } + + public _18 withRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + return this; + } + + @JsonProperty("Berserker Instincts") + public String getBerserkerInstincts() { + return berserkerInstincts; + } + + @JsonProperty("Berserker Instincts") + public void setBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + } + + public _18 withBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + return this; + } + + @JsonProperty("Force Powers Known") + public String getForcePowersKnown() { + return forcePowersKnown; + } + + @JsonProperty("Force Powers Known") + public void setForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + } + + public _18 withForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + return this; + } + + @JsonProperty("Force Points") + public String getForcePoints() { + return forcePoints; + } + + @JsonProperty("Force Points") + public void setForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + } + + public _18 withForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + return this; + } + + @JsonProperty("Max Power Level") + public String getMaxPowerLevel() { + return maxPowerLevel; + } + + @JsonProperty("Max Power Level") + public void setMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + } + + public _18 withMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + return this; + } + + @JsonProperty("Force-Empowered Casting Options") + public String getForceEmpoweredCastingOptions() { + return forceEmpoweredCastingOptions; + } + + @JsonProperty("Force-Empowered Casting Options") + public void setForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + } + + public _18 withForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + return this; + } + + @JsonProperty("Tech Powers Known") + public String getTechPowersKnown() { + return techPowersKnown; + } + + @JsonProperty("Tech Powers Known") + public void setTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + } + + public _18 withTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + return this; + } + + @JsonProperty("Tech Points") + public String getTechPoints() { + return techPoints; + } + + @JsonProperty("Tech Points") + public void setTechPoints(String techPoints) { + this.techPoints = techPoints; + } + + public _18 withTechPoints(String techPoints) { + this.techPoints = techPoints; + return this; + } + + @JsonProperty("Potent Aptitude") + public String getPotentAptitude() { + return potentAptitude; + } + + @JsonProperty("Potent Aptitude") + public void setPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + } + + public _18 withPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + return this; + } + + @JsonProperty("Modification Slots") + public String getModificationSlots() { + return modificationSlots; + } + + @JsonProperty("Modification Slots") + public void setModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + } + + public _18 withModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + return this; + } + + @JsonProperty("Maneuvers Known") + public String getManeuversKnown() { + return maneuversKnown; + } + + @JsonProperty("Maneuvers Known") + public void setManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + } + + public _18 withManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + return this; + } + + @JsonProperty("Superiority Dice Quantity") + public String getSuperiorityDiceQuantity() { + return superiorityDiceQuantity; + } + + @JsonProperty("Superiority Dice Quantity") + public void setSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + } + + public _18 withSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + return this; + } + + @JsonProperty("Superiority Dice Size") + public String getSuperiorityDiceSize() { + return superiorityDiceSize; + } + + @JsonProperty("Superiority Dice Size") + public void setSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + } + + public _18 withSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + return this; + } + + @JsonProperty("Strategies Known") + public String getStrategiesKnown() { + return strategiesKnown; + } + + @JsonProperty("Strategies Known") + public void setStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + } + + public _18 withStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + return this; + } + + @JsonProperty("Focused Strikes") + public String getFocusedStrikes() { + return focusedStrikes; + } + + @JsonProperty("Focused Strikes") + public void setFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + } + + public _18 withFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + return this; + } + + @JsonProperty("Auras Known") + public String getAurasKnown() { + return aurasKnown; + } + + @JsonProperty("Auras Known") + public void setAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + } + + public _18 withAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + return this; + } + + @JsonProperty("Aura Radius") + public String getAuraRadius() { + return auraRadius; + } + + @JsonProperty("Aura Radius") + public void setAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + } + + public _18 withAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + return this; + } + + @JsonProperty("Martial Arts") + public String getMartialArts() { + return martialArts; + } + + @JsonProperty("Martial Arts") + public void setMartialArts(String martialArts) { + this.martialArts = martialArts; + } + + public _18 withMartialArts(String martialArts) { + this.martialArts = martialArts; + return this; + } + + @JsonProperty("Focus Points") + public String getFocusPoints() { + return focusPoints; + } + + @JsonProperty("Focus Points") + public void setFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + } + + public _18 withFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + return this; + } + + @JsonProperty("Monastic Vows") + public String getMonasticVows() { + return monasticVows; + } + + @JsonProperty("Monastic Vows") + public void setMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + } + + public _18 withMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + return this; + } + + @JsonProperty("Unarmored Movement") + public String getUnarmoredMovement() { + return unarmoredMovement; + } + + @JsonProperty("Unarmored Movement") + public void setUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + } + + public _18 withUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + return this; + } + + @JsonProperty("Sneak Attack") + public String getSneakAttack() { + return sneakAttack; + } + + @JsonProperty("Sneak Attack") + public void setSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + } + + public _18 withSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + return this; + } + + @JsonProperty("Operative Exploits") + public String getOperativeExploits() { + return operativeExploits; + } + + @JsonProperty("Operative Exploits") + public void setOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + } + + public _18 withOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + return this; + } + + @JsonProperty("Discoveries") + public String getDiscoveries() { + return discoveries; + } + + @JsonProperty("Discoveries") + public void setDiscoveries(String discoveries) { + this.discoveries = discoveries; + } + + public _18 withDiscoveries(String discoveries) { + this.discoveries = discoveries; + return this; + } + + @JsonProperty("Ranger's Quarry") + public String getRangerSQuarry() { + return rangerSQuarry; + } + + @JsonProperty("Ranger's Quarry") + public void setRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + } + + public _18 withRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + return this; + } + + @JsonProperty("Routines Known") + public String getRoutinesKnown() { + return routinesKnown; + } + + @JsonProperty("Routines Known") + public void setRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + } + + public _18 withRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + return this; + } + + @JsonProperty("Routine Radius") + public String getRoutineRadius() { + return routineRadius; + } + + @JsonProperty("Routine Radius") + public void setRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + } + + public _18 withRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + return this; + } + + @JsonProperty("Kinetic Combat") + public String getKineticCombat() { + return kineticCombat; + } + + @JsonProperty("Kinetic Combat") + public void setKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + } + + public _18 withKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + return this; + } + + @JsonProperty("Ideals Known") + public String getIdealsKnown() { + return idealsKnown; + } + + @JsonProperty("Ideals Known") + public void setIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + } + + public _18 withIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + return this; + } + + @JsonProperty("Ideal Manifests") + public String getIdealManifests() { + return idealManifests; + } + + @JsonProperty("Ideal Manifests") + public void setIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + } + + public _18 withIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public _18 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(_18 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("level"); + sb.append('='); + sb.append(((this.level == null)?"":this.level)); + sb.append(','); + sb.append("proficiencyBonus"); + sb.append('='); + sb.append(((this.proficiencyBonus == null)?"":this.proficiencyBonus)); + sb.append(','); + sb.append("features"); + sb.append('='); + sb.append(((this.features == null)?"":this.features)); + sb.append(','); + sb.append("rages"); + sb.append('='); + sb.append(((this.rages == null)?"":this.rages)); + sb.append(','); + sb.append("rageDamage"); + sb.append('='); + sb.append(((this.rageDamage == null)?"":this.rageDamage)); + sb.append(','); + sb.append("berserkerInstincts"); + sb.append('='); + sb.append(((this.berserkerInstincts == null)?"":this.berserkerInstincts)); + sb.append(','); + sb.append("forcePowersKnown"); + sb.append('='); + sb.append(((this.forcePowersKnown == null)?"":this.forcePowersKnown)); + sb.append(','); + sb.append("forcePoints"); + sb.append('='); + sb.append(((this.forcePoints == null)?"":this.forcePoints)); + sb.append(','); + sb.append("maxPowerLevel"); + sb.append('='); + sb.append(((this.maxPowerLevel == null)?"":this.maxPowerLevel)); + sb.append(','); + sb.append("forceEmpoweredCastingOptions"); + sb.append('='); + sb.append(((this.forceEmpoweredCastingOptions == null)?"":this.forceEmpoweredCastingOptions)); + sb.append(','); + sb.append("techPowersKnown"); + sb.append('='); + sb.append(((this.techPowersKnown == null)?"":this.techPowersKnown)); + sb.append(','); + sb.append("techPoints"); + sb.append('='); + sb.append(((this.techPoints == null)?"":this.techPoints)); + sb.append(','); + sb.append("potentAptitude"); + sb.append('='); + sb.append(((this.potentAptitude == null)?"":this.potentAptitude)); + sb.append(','); + sb.append("modificationSlots"); + sb.append('='); + sb.append(((this.modificationSlots == null)?"":this.modificationSlots)); + sb.append(','); + sb.append("maneuversKnown"); + sb.append('='); + sb.append(((this.maneuversKnown == null)?"":this.maneuversKnown)); + sb.append(','); + sb.append("superiorityDiceQuantity"); + sb.append('='); + sb.append(((this.superiorityDiceQuantity == null)?"":this.superiorityDiceQuantity)); + sb.append(','); + sb.append("superiorityDiceSize"); + sb.append('='); + sb.append(((this.superiorityDiceSize == null)?"":this.superiorityDiceSize)); + sb.append(','); + sb.append("strategiesKnown"); + sb.append('='); + sb.append(((this.strategiesKnown == null)?"":this.strategiesKnown)); + sb.append(','); + sb.append("focusedStrikes"); + sb.append('='); + sb.append(((this.focusedStrikes == null)?"":this.focusedStrikes)); + sb.append(','); + sb.append("aurasKnown"); + sb.append('='); + sb.append(((this.aurasKnown == null)?"":this.aurasKnown)); + sb.append(','); + sb.append("auraRadius"); + sb.append('='); + sb.append(((this.auraRadius == null)?"":this.auraRadius)); + sb.append(','); + sb.append("martialArts"); + sb.append('='); + sb.append(((this.martialArts == null)?"":this.martialArts)); + sb.append(','); + sb.append("focusPoints"); + sb.append('='); + sb.append(((this.focusPoints == null)?"":this.focusPoints)); + sb.append(','); + sb.append("monasticVows"); + sb.append('='); + sb.append(((this.monasticVows == null)?"":this.monasticVows)); + sb.append(','); + sb.append("unarmoredMovement"); + sb.append('='); + sb.append(((this.unarmoredMovement == null)?"":this.unarmoredMovement)); + sb.append(','); + sb.append("sneakAttack"); + sb.append('='); + sb.append(((this.sneakAttack == null)?"":this.sneakAttack)); + sb.append(','); + sb.append("operativeExploits"); + sb.append('='); + sb.append(((this.operativeExploits == null)?"":this.operativeExploits)); + sb.append(','); + sb.append("discoveries"); + sb.append('='); + sb.append(((this.discoveries == null)?"":this.discoveries)); + sb.append(','); + sb.append("rangerSQuarry"); + sb.append('='); + sb.append(((this.rangerSQuarry == null)?"":this.rangerSQuarry)); + sb.append(','); + sb.append("routinesKnown"); + sb.append('='); + sb.append(((this.routinesKnown == null)?"":this.routinesKnown)); + sb.append(','); + sb.append("routineRadius"); + sb.append('='); + sb.append(((this.routineRadius == null)?"":this.routineRadius)); + sb.append(','); + sb.append("kineticCombat"); + sb.append('='); + sb.append(((this.kineticCombat == null)?"":this.kineticCombat)); + sb.append(','); + sb.append("idealsKnown"); + sb.append('='); + sb.append(((this.idealsKnown == null)?"":this.idealsKnown)); + sb.append(','); + sb.append("idealManifests"); + sb.append('='); + sb.append(((this.idealManifests == null)?"":this.idealManifests)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.superiorityDiceQuantity == null)? 0 :this.superiorityDiceQuantity.hashCode())); + result = ((result* 31)+((this.forceEmpoweredCastingOptions == null)? 0 :this.forceEmpoweredCastingOptions.hashCode())); + result = ((result* 31)+((this.kineticCombat == null)? 0 :this.kineticCombat.hashCode())); + result = ((result* 31)+((this.forcePoints == null)? 0 :this.forcePoints.hashCode())); + result = ((result* 31)+((this.potentAptitude == null)? 0 :this.potentAptitude.hashCode())); + result = ((result* 31)+((this.auraRadius == null)? 0 :this.auraRadius.hashCode())); + result = ((result* 31)+((this.proficiencyBonus == null)? 0 :this.proficiencyBonus.hashCode())); + result = ((result* 31)+((this.maneuversKnown == null)? 0 :this.maneuversKnown.hashCode())); + result = ((result* 31)+((this.monasticVows == null)? 0 :this.monasticVows.hashCode())); + result = ((result* 31)+((this.techPowersKnown == null)? 0 :this.techPowersKnown.hashCode())); + result = ((result* 31)+((this.focusPoints == null)? 0 :this.focusPoints.hashCode())); + result = ((result* 31)+((this.features == null)? 0 :this.features.hashCode())); + result = ((result* 31)+((this.maxPowerLevel == null)? 0 :this.maxPowerLevel.hashCode())); + result = ((result* 31)+((this.berserkerInstincts == null)? 0 :this.berserkerInstincts.hashCode())); + result = ((result* 31)+((this.aurasKnown == null)? 0 :this.aurasKnown.hashCode())); + result = ((result* 31)+((this.rangerSQuarry == null)? 0 :this.rangerSQuarry.hashCode())); + result = ((result* 31)+((this.idealManifests == null)? 0 :this.idealManifests.hashCode())); + result = ((result* 31)+((this.focusedStrikes == null)? 0 :this.focusedStrikes.hashCode())); + result = ((result* 31)+((this.level == null)? 0 :this.level.hashCode())); + result = ((result* 31)+((this.operativeExploits == null)? 0 :this.operativeExploits.hashCode())); + result = ((result* 31)+((this.sneakAttack == null)? 0 :this.sneakAttack.hashCode())); + result = ((result* 31)+((this.idealsKnown == null)? 0 :this.idealsKnown.hashCode())); + result = ((result* 31)+((this.strategiesKnown == null)? 0 :this.strategiesKnown.hashCode())); + result = ((result* 31)+((this.techPoints == null)? 0 :this.techPoints.hashCode())); + result = ((result* 31)+((this.rages == null)? 0 :this.rages.hashCode())); + result = ((result* 31)+((this.routinesKnown == null)? 0 :this.routinesKnown.hashCode())); + result = ((result* 31)+((this.unarmoredMovement == null)? 0 :this.unarmoredMovement.hashCode())); + result = ((result* 31)+((this.martialArts == null)? 0 :this.martialArts.hashCode())); + result = ((result* 31)+((this.discoveries == null)? 0 :this.discoveries.hashCode())); + result = ((result* 31)+((this.rageDamage == null)? 0 :this.rageDamage.hashCode())); + result = ((result* 31)+((this.modificationSlots == null)? 0 :this.modificationSlots.hashCode())); + result = ((result* 31)+((this.superiorityDiceSize == null)? 0 :this.superiorityDiceSize.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.routineRadius == null)? 0 :this.routineRadius.hashCode())); + result = ((result* 31)+((this.forcePowersKnown == null)? 0 :this.forcePowersKnown.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof _18) == false) { + return false; + } + _18 rhs = ((_18) other); + return ((((((((((((((((((((((((((((((((((((this.superiorityDiceQuantity == rhs.superiorityDiceQuantity)||((this.superiorityDiceQuantity!= null)&&this.superiorityDiceQuantity.equals(rhs.superiorityDiceQuantity)))&&((this.forceEmpoweredCastingOptions == rhs.forceEmpoweredCastingOptions)||((this.forceEmpoweredCastingOptions!= null)&&this.forceEmpoweredCastingOptions.equals(rhs.forceEmpoweredCastingOptions))))&&((this.kineticCombat == rhs.kineticCombat)||((this.kineticCombat!= null)&&this.kineticCombat.equals(rhs.kineticCombat))))&&((this.forcePoints == rhs.forcePoints)||((this.forcePoints!= null)&&this.forcePoints.equals(rhs.forcePoints))))&&((this.potentAptitude == rhs.potentAptitude)||((this.potentAptitude!= null)&&this.potentAptitude.equals(rhs.potentAptitude))))&&((this.auraRadius == rhs.auraRadius)||((this.auraRadius!= null)&&this.auraRadius.equals(rhs.auraRadius))))&&((this.proficiencyBonus == rhs.proficiencyBonus)||((this.proficiencyBonus!= null)&&this.proficiencyBonus.equals(rhs.proficiencyBonus))))&&((this.maneuversKnown == rhs.maneuversKnown)||((this.maneuversKnown!= null)&&this.maneuversKnown.equals(rhs.maneuversKnown))))&&((this.monasticVows == rhs.monasticVows)||((this.monasticVows!= null)&&this.monasticVows.equals(rhs.monasticVows))))&&((this.techPowersKnown == rhs.techPowersKnown)||((this.techPowersKnown!= null)&&this.techPowersKnown.equals(rhs.techPowersKnown))))&&((this.focusPoints == rhs.focusPoints)||((this.focusPoints!= null)&&this.focusPoints.equals(rhs.focusPoints))))&&((this.features == rhs.features)||((this.features!= null)&&this.features.equals(rhs.features))))&&((this.maxPowerLevel == rhs.maxPowerLevel)||((this.maxPowerLevel!= null)&&this.maxPowerLevel.equals(rhs.maxPowerLevel))))&&((this.berserkerInstincts == rhs.berserkerInstincts)||((this.berserkerInstincts!= null)&&this.berserkerInstincts.equals(rhs.berserkerInstincts))))&&((this.aurasKnown == rhs.aurasKnown)||((this.aurasKnown!= null)&&this.aurasKnown.equals(rhs.aurasKnown))))&&((this.rangerSQuarry == rhs.rangerSQuarry)||((this.rangerSQuarry!= null)&&this.rangerSQuarry.equals(rhs.rangerSQuarry))))&&((this.idealManifests == rhs.idealManifests)||((this.idealManifests!= null)&&this.idealManifests.equals(rhs.idealManifests))))&&((this.focusedStrikes == rhs.focusedStrikes)||((this.focusedStrikes!= null)&&this.focusedStrikes.equals(rhs.focusedStrikes))))&&((this.level == rhs.level)||((this.level!= null)&&this.level.equals(rhs.level))))&&((this.operativeExploits == rhs.operativeExploits)||((this.operativeExploits!= null)&&this.operativeExploits.equals(rhs.operativeExploits))))&&((this.sneakAttack == rhs.sneakAttack)||((this.sneakAttack!= null)&&this.sneakAttack.equals(rhs.sneakAttack))))&&((this.idealsKnown == rhs.idealsKnown)||((this.idealsKnown!= null)&&this.idealsKnown.equals(rhs.idealsKnown))))&&((this.strategiesKnown == rhs.strategiesKnown)||((this.strategiesKnown!= null)&&this.strategiesKnown.equals(rhs.strategiesKnown))))&&((this.techPoints == rhs.techPoints)||((this.techPoints!= null)&&this.techPoints.equals(rhs.techPoints))))&&((this.rages == rhs.rages)||((this.rages!= null)&&this.rages.equals(rhs.rages))))&&((this.routinesKnown == rhs.routinesKnown)||((this.routinesKnown!= null)&&this.routinesKnown.equals(rhs.routinesKnown))))&&((this.unarmoredMovement == rhs.unarmoredMovement)||((this.unarmoredMovement!= null)&&this.unarmoredMovement.equals(rhs.unarmoredMovement))))&&((this.martialArts == rhs.martialArts)||((this.martialArts!= null)&&this.martialArts.equals(rhs.martialArts))))&&((this.discoveries == rhs.discoveries)||((this.discoveries!= null)&&this.discoveries.equals(rhs.discoveries))))&&((this.rageDamage == rhs.rageDamage)||((this.rageDamage!= null)&&this.rageDamage.equals(rhs.rageDamage))))&&((this.modificationSlots == rhs.modificationSlots)||((this.modificationSlots!= null)&&this.modificationSlots.equals(rhs.modificationSlots))))&&((this.superiorityDiceSize == rhs.superiorityDiceSize)||((this.superiorityDiceSize!= null)&&this.superiorityDiceSize.equals(rhs.superiorityDiceSize))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.routineRadius == rhs.routineRadius)||((this.routineRadius!= null)&&this.routineRadius.equals(rhs.routineRadius))))&&((this.forcePowersKnown == rhs.forcePowersKnown)||((this.forcePowersKnown!= null)&&this.forcePowersKnown.equals(rhs.forcePowersKnown)))); + } + +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/model/_19.java b/src/main/java/org/misoenergy/hackday/kessel_run/model/_19.java new file mode 100644 index 0000000..26600b8 --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/model/_19.java @@ -0,0 +1,855 @@ + +package org.misoenergy.hackday.kessel_run.model; + +import java.util.HashMap; +import java.util.Map; +import javax.annotation.processing.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "Level", + "Proficiency Bonus", + "Features", + "Rages", + "Rage Damage", + "Berserker Instincts", + "Force Powers Known", + "Force Points", + "Max Power Level", + "Force-Empowered Casting Options", + "Tech Powers Known", + "Tech Points", + "Potent Aptitude", + "Modification Slots", + "Maneuvers Known", + "Superiority Dice Quantity", + "Superiority Dice Size", + "Strategies Known", + "Focused Strikes", + "Auras Known", + "Aura Radius", + "Martial Arts", + "Focus Points", + "Monastic Vows", + "Unarmored Movement", + "Sneak Attack", + "Operative Exploits", + "Discoveries", + "Ranger's Quarry", + "Routines Known", + "Routine Radius", + "Kinetic Combat", + "Ideals Known", + "Ideal Manifests" +}) +@Generated("jsonschema2pojo") +public class _19 { + + @JsonProperty("Level") + private String level; + @JsonProperty("Proficiency Bonus") + private String proficiencyBonus; + @JsonProperty("Features") + private String features; + @JsonProperty("Rages") + private String rages; + @JsonProperty("Rage Damage") + private String rageDamage; + @JsonProperty("Berserker Instincts") + private String berserkerInstincts; + @JsonProperty("Force Powers Known") + private String forcePowersKnown; + @JsonProperty("Force Points") + private String forcePoints; + @JsonProperty("Max Power Level") + private String maxPowerLevel; + @JsonProperty("Force-Empowered Casting Options") + private String forceEmpoweredCastingOptions; + @JsonProperty("Tech Powers Known") + private String techPowersKnown; + @JsonProperty("Tech Points") + private String techPoints; + @JsonProperty("Potent Aptitude") + private String potentAptitude; + @JsonProperty("Modification Slots") + private String modificationSlots; + @JsonProperty("Maneuvers Known") + private String maneuversKnown; + @JsonProperty("Superiority Dice Quantity") + private String superiorityDiceQuantity; + @JsonProperty("Superiority Dice Size") + private String superiorityDiceSize; + @JsonProperty("Strategies Known") + private String strategiesKnown; + @JsonProperty("Focused Strikes") + private String focusedStrikes; + @JsonProperty("Auras Known") + private String aurasKnown; + @JsonProperty("Aura Radius") + private String auraRadius; + @JsonProperty("Martial Arts") + private String martialArts; + @JsonProperty("Focus Points") + private String focusPoints; + @JsonProperty("Monastic Vows") + private String monasticVows; + @JsonProperty("Unarmored Movement") + private String unarmoredMovement; + @JsonProperty("Sneak Attack") + private String sneakAttack; + @JsonProperty("Operative Exploits") + private String operativeExploits; + @JsonProperty("Discoveries") + private String discoveries; + @JsonProperty("Ranger's Quarry") + private String rangerSQuarry; + @JsonProperty("Routines Known") + private String routinesKnown; + @JsonProperty("Routine Radius") + private String routineRadius; + @JsonProperty("Kinetic Combat") + private String kineticCombat; + @JsonProperty("Ideals Known") + private String idealsKnown; + @JsonProperty("Ideal Manifests") + private String idealManifests; + @JsonIgnore + private Map additionalProperties = new HashMap(); + + @JsonProperty("Level") + public String getLevel() { + return level; + } + + @JsonProperty("Level") + public void setLevel(String level) { + this.level = level; + } + + public _19 withLevel(String level) { + this.level = level; + return this; + } + + @JsonProperty("Proficiency Bonus") + public String getProficiencyBonus() { + return proficiencyBonus; + } + + @JsonProperty("Proficiency Bonus") + public void setProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + } + + public _19 withProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + return this; + } + + @JsonProperty("Features") + public String getFeatures() { + return features; + } + + @JsonProperty("Features") + public void setFeatures(String features) { + this.features = features; + } + + public _19 withFeatures(String features) { + this.features = features; + return this; + } + + @JsonProperty("Rages") + public String getRages() { + return rages; + } + + @JsonProperty("Rages") + public void setRages(String rages) { + this.rages = rages; + } + + public _19 withRages(String rages) { + this.rages = rages; + return this; + } + + @JsonProperty("Rage Damage") + public String getRageDamage() { + return rageDamage; + } + + @JsonProperty("Rage Damage") + public void setRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + } + + public _19 withRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + return this; + } + + @JsonProperty("Berserker Instincts") + public String getBerserkerInstincts() { + return berserkerInstincts; + } + + @JsonProperty("Berserker Instincts") + public void setBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + } + + public _19 withBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + return this; + } + + @JsonProperty("Force Powers Known") + public String getForcePowersKnown() { + return forcePowersKnown; + } + + @JsonProperty("Force Powers Known") + public void setForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + } + + public _19 withForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + return this; + } + + @JsonProperty("Force Points") + public String getForcePoints() { + return forcePoints; + } + + @JsonProperty("Force Points") + public void setForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + } + + public _19 withForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + return this; + } + + @JsonProperty("Max Power Level") + public String getMaxPowerLevel() { + return maxPowerLevel; + } + + @JsonProperty("Max Power Level") + public void setMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + } + + public _19 withMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + return this; + } + + @JsonProperty("Force-Empowered Casting Options") + public String getForceEmpoweredCastingOptions() { + return forceEmpoweredCastingOptions; + } + + @JsonProperty("Force-Empowered Casting Options") + public void setForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + } + + public _19 withForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + return this; + } + + @JsonProperty("Tech Powers Known") + public String getTechPowersKnown() { + return techPowersKnown; + } + + @JsonProperty("Tech Powers Known") + public void setTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + } + + public _19 withTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + return this; + } + + @JsonProperty("Tech Points") + public String getTechPoints() { + return techPoints; + } + + @JsonProperty("Tech Points") + public void setTechPoints(String techPoints) { + this.techPoints = techPoints; + } + + public _19 withTechPoints(String techPoints) { + this.techPoints = techPoints; + return this; + } + + @JsonProperty("Potent Aptitude") + public String getPotentAptitude() { + return potentAptitude; + } + + @JsonProperty("Potent Aptitude") + public void setPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + } + + public _19 withPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + return this; + } + + @JsonProperty("Modification Slots") + public String getModificationSlots() { + return modificationSlots; + } + + @JsonProperty("Modification Slots") + public void setModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + } + + public _19 withModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + return this; + } + + @JsonProperty("Maneuvers Known") + public String getManeuversKnown() { + return maneuversKnown; + } + + @JsonProperty("Maneuvers Known") + public void setManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + } + + public _19 withManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + return this; + } + + @JsonProperty("Superiority Dice Quantity") + public String getSuperiorityDiceQuantity() { + return superiorityDiceQuantity; + } + + @JsonProperty("Superiority Dice Quantity") + public void setSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + } + + public _19 withSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + return this; + } + + @JsonProperty("Superiority Dice Size") + public String getSuperiorityDiceSize() { + return superiorityDiceSize; + } + + @JsonProperty("Superiority Dice Size") + public void setSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + } + + public _19 withSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + return this; + } + + @JsonProperty("Strategies Known") + public String getStrategiesKnown() { + return strategiesKnown; + } + + @JsonProperty("Strategies Known") + public void setStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + } + + public _19 withStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + return this; + } + + @JsonProperty("Focused Strikes") + public String getFocusedStrikes() { + return focusedStrikes; + } + + @JsonProperty("Focused Strikes") + public void setFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + } + + public _19 withFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + return this; + } + + @JsonProperty("Auras Known") + public String getAurasKnown() { + return aurasKnown; + } + + @JsonProperty("Auras Known") + public void setAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + } + + public _19 withAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + return this; + } + + @JsonProperty("Aura Radius") + public String getAuraRadius() { + return auraRadius; + } + + @JsonProperty("Aura Radius") + public void setAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + } + + public _19 withAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + return this; + } + + @JsonProperty("Martial Arts") + public String getMartialArts() { + return martialArts; + } + + @JsonProperty("Martial Arts") + public void setMartialArts(String martialArts) { + this.martialArts = martialArts; + } + + public _19 withMartialArts(String martialArts) { + this.martialArts = martialArts; + return this; + } + + @JsonProperty("Focus Points") + public String getFocusPoints() { + return focusPoints; + } + + @JsonProperty("Focus Points") + public void setFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + } + + public _19 withFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + return this; + } + + @JsonProperty("Monastic Vows") + public String getMonasticVows() { + return monasticVows; + } + + @JsonProperty("Monastic Vows") + public void setMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + } + + public _19 withMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + return this; + } + + @JsonProperty("Unarmored Movement") + public String getUnarmoredMovement() { + return unarmoredMovement; + } + + @JsonProperty("Unarmored Movement") + public void setUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + } + + public _19 withUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + return this; + } + + @JsonProperty("Sneak Attack") + public String getSneakAttack() { + return sneakAttack; + } + + @JsonProperty("Sneak Attack") + public void setSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + } + + public _19 withSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + return this; + } + + @JsonProperty("Operative Exploits") + public String getOperativeExploits() { + return operativeExploits; + } + + @JsonProperty("Operative Exploits") + public void setOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + } + + public _19 withOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + return this; + } + + @JsonProperty("Discoveries") + public String getDiscoveries() { + return discoveries; + } + + @JsonProperty("Discoveries") + public void setDiscoveries(String discoveries) { + this.discoveries = discoveries; + } + + public _19 withDiscoveries(String discoveries) { + this.discoveries = discoveries; + return this; + } + + @JsonProperty("Ranger's Quarry") + public String getRangerSQuarry() { + return rangerSQuarry; + } + + @JsonProperty("Ranger's Quarry") + public void setRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + } + + public _19 withRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + return this; + } + + @JsonProperty("Routines Known") + public String getRoutinesKnown() { + return routinesKnown; + } + + @JsonProperty("Routines Known") + public void setRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + } + + public _19 withRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + return this; + } + + @JsonProperty("Routine Radius") + public String getRoutineRadius() { + return routineRadius; + } + + @JsonProperty("Routine Radius") + public void setRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + } + + public _19 withRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + return this; + } + + @JsonProperty("Kinetic Combat") + public String getKineticCombat() { + return kineticCombat; + } + + @JsonProperty("Kinetic Combat") + public void setKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + } + + public _19 withKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + return this; + } + + @JsonProperty("Ideals Known") + public String getIdealsKnown() { + return idealsKnown; + } + + @JsonProperty("Ideals Known") + public void setIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + } + + public _19 withIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + return this; + } + + @JsonProperty("Ideal Manifests") + public String getIdealManifests() { + return idealManifests; + } + + @JsonProperty("Ideal Manifests") + public void setIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + } + + public _19 withIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public _19 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(_19 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("level"); + sb.append('='); + sb.append(((this.level == null)?"":this.level)); + sb.append(','); + sb.append("proficiencyBonus"); + sb.append('='); + sb.append(((this.proficiencyBonus == null)?"":this.proficiencyBonus)); + sb.append(','); + sb.append("features"); + sb.append('='); + sb.append(((this.features == null)?"":this.features)); + sb.append(','); + sb.append("rages"); + sb.append('='); + sb.append(((this.rages == null)?"":this.rages)); + sb.append(','); + sb.append("rageDamage"); + sb.append('='); + sb.append(((this.rageDamage == null)?"":this.rageDamage)); + sb.append(','); + sb.append("berserkerInstincts"); + sb.append('='); + sb.append(((this.berserkerInstincts == null)?"":this.berserkerInstincts)); + sb.append(','); + sb.append("forcePowersKnown"); + sb.append('='); + sb.append(((this.forcePowersKnown == null)?"":this.forcePowersKnown)); + sb.append(','); + sb.append("forcePoints"); + sb.append('='); + sb.append(((this.forcePoints == null)?"":this.forcePoints)); + sb.append(','); + sb.append("maxPowerLevel"); + sb.append('='); + sb.append(((this.maxPowerLevel == null)?"":this.maxPowerLevel)); + sb.append(','); + sb.append("forceEmpoweredCastingOptions"); + sb.append('='); + sb.append(((this.forceEmpoweredCastingOptions == null)?"":this.forceEmpoweredCastingOptions)); + sb.append(','); + sb.append("techPowersKnown"); + sb.append('='); + sb.append(((this.techPowersKnown == null)?"":this.techPowersKnown)); + sb.append(','); + sb.append("techPoints"); + sb.append('='); + sb.append(((this.techPoints == null)?"":this.techPoints)); + sb.append(','); + sb.append("potentAptitude"); + sb.append('='); + sb.append(((this.potentAptitude == null)?"":this.potentAptitude)); + sb.append(','); + sb.append("modificationSlots"); + sb.append('='); + sb.append(((this.modificationSlots == null)?"":this.modificationSlots)); + sb.append(','); + sb.append("maneuversKnown"); + sb.append('='); + sb.append(((this.maneuversKnown == null)?"":this.maneuversKnown)); + sb.append(','); + sb.append("superiorityDiceQuantity"); + sb.append('='); + sb.append(((this.superiorityDiceQuantity == null)?"":this.superiorityDiceQuantity)); + sb.append(','); + sb.append("superiorityDiceSize"); + sb.append('='); + sb.append(((this.superiorityDiceSize == null)?"":this.superiorityDiceSize)); + sb.append(','); + sb.append("strategiesKnown"); + sb.append('='); + sb.append(((this.strategiesKnown == null)?"":this.strategiesKnown)); + sb.append(','); + sb.append("focusedStrikes"); + sb.append('='); + sb.append(((this.focusedStrikes == null)?"":this.focusedStrikes)); + sb.append(','); + sb.append("aurasKnown"); + sb.append('='); + sb.append(((this.aurasKnown == null)?"":this.aurasKnown)); + sb.append(','); + sb.append("auraRadius"); + sb.append('='); + sb.append(((this.auraRadius == null)?"":this.auraRadius)); + sb.append(','); + sb.append("martialArts"); + sb.append('='); + sb.append(((this.martialArts == null)?"":this.martialArts)); + sb.append(','); + sb.append("focusPoints"); + sb.append('='); + sb.append(((this.focusPoints == null)?"":this.focusPoints)); + sb.append(','); + sb.append("monasticVows"); + sb.append('='); + sb.append(((this.monasticVows == null)?"":this.monasticVows)); + sb.append(','); + sb.append("unarmoredMovement"); + sb.append('='); + sb.append(((this.unarmoredMovement == null)?"":this.unarmoredMovement)); + sb.append(','); + sb.append("sneakAttack"); + sb.append('='); + sb.append(((this.sneakAttack == null)?"":this.sneakAttack)); + sb.append(','); + sb.append("operativeExploits"); + sb.append('='); + sb.append(((this.operativeExploits == null)?"":this.operativeExploits)); + sb.append(','); + sb.append("discoveries"); + sb.append('='); + sb.append(((this.discoveries == null)?"":this.discoveries)); + sb.append(','); + sb.append("rangerSQuarry"); + sb.append('='); + sb.append(((this.rangerSQuarry == null)?"":this.rangerSQuarry)); + sb.append(','); + sb.append("routinesKnown"); + sb.append('='); + sb.append(((this.routinesKnown == null)?"":this.routinesKnown)); + sb.append(','); + sb.append("routineRadius"); + sb.append('='); + sb.append(((this.routineRadius == null)?"":this.routineRadius)); + sb.append(','); + sb.append("kineticCombat"); + sb.append('='); + sb.append(((this.kineticCombat == null)?"":this.kineticCombat)); + sb.append(','); + sb.append("idealsKnown"); + sb.append('='); + sb.append(((this.idealsKnown == null)?"":this.idealsKnown)); + sb.append(','); + sb.append("idealManifests"); + sb.append('='); + sb.append(((this.idealManifests == null)?"":this.idealManifests)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.superiorityDiceQuantity == null)? 0 :this.superiorityDiceQuantity.hashCode())); + result = ((result* 31)+((this.forceEmpoweredCastingOptions == null)? 0 :this.forceEmpoweredCastingOptions.hashCode())); + result = ((result* 31)+((this.kineticCombat == null)? 0 :this.kineticCombat.hashCode())); + result = ((result* 31)+((this.forcePoints == null)? 0 :this.forcePoints.hashCode())); + result = ((result* 31)+((this.potentAptitude == null)? 0 :this.potentAptitude.hashCode())); + result = ((result* 31)+((this.auraRadius == null)? 0 :this.auraRadius.hashCode())); + result = ((result* 31)+((this.proficiencyBonus == null)? 0 :this.proficiencyBonus.hashCode())); + result = ((result* 31)+((this.maneuversKnown == null)? 0 :this.maneuversKnown.hashCode())); + result = ((result* 31)+((this.monasticVows == null)? 0 :this.monasticVows.hashCode())); + result = ((result* 31)+((this.techPowersKnown == null)? 0 :this.techPowersKnown.hashCode())); + result = ((result* 31)+((this.focusPoints == null)? 0 :this.focusPoints.hashCode())); + result = ((result* 31)+((this.features == null)? 0 :this.features.hashCode())); + result = ((result* 31)+((this.maxPowerLevel == null)? 0 :this.maxPowerLevel.hashCode())); + result = ((result* 31)+((this.berserkerInstincts == null)? 0 :this.berserkerInstincts.hashCode())); + result = ((result* 31)+((this.aurasKnown == null)? 0 :this.aurasKnown.hashCode())); + result = ((result* 31)+((this.rangerSQuarry == null)? 0 :this.rangerSQuarry.hashCode())); + result = ((result* 31)+((this.idealManifests == null)? 0 :this.idealManifests.hashCode())); + result = ((result* 31)+((this.focusedStrikes == null)? 0 :this.focusedStrikes.hashCode())); + result = ((result* 31)+((this.level == null)? 0 :this.level.hashCode())); + result = ((result* 31)+((this.operativeExploits == null)? 0 :this.operativeExploits.hashCode())); + result = ((result* 31)+((this.sneakAttack == null)? 0 :this.sneakAttack.hashCode())); + result = ((result* 31)+((this.idealsKnown == null)? 0 :this.idealsKnown.hashCode())); + result = ((result* 31)+((this.strategiesKnown == null)? 0 :this.strategiesKnown.hashCode())); + result = ((result* 31)+((this.techPoints == null)? 0 :this.techPoints.hashCode())); + result = ((result* 31)+((this.rages == null)? 0 :this.rages.hashCode())); + result = ((result* 31)+((this.routinesKnown == null)? 0 :this.routinesKnown.hashCode())); + result = ((result* 31)+((this.unarmoredMovement == null)? 0 :this.unarmoredMovement.hashCode())); + result = ((result* 31)+((this.martialArts == null)? 0 :this.martialArts.hashCode())); + result = ((result* 31)+((this.discoveries == null)? 0 :this.discoveries.hashCode())); + result = ((result* 31)+((this.rageDamage == null)? 0 :this.rageDamage.hashCode())); + result = ((result* 31)+((this.modificationSlots == null)? 0 :this.modificationSlots.hashCode())); + result = ((result* 31)+((this.superiorityDiceSize == null)? 0 :this.superiorityDiceSize.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.routineRadius == null)? 0 :this.routineRadius.hashCode())); + result = ((result* 31)+((this.forcePowersKnown == null)? 0 :this.forcePowersKnown.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof _19) == false) { + return false; + } + _19 rhs = ((_19) other); + return ((((((((((((((((((((((((((((((((((((this.superiorityDiceQuantity == rhs.superiorityDiceQuantity)||((this.superiorityDiceQuantity!= null)&&this.superiorityDiceQuantity.equals(rhs.superiorityDiceQuantity)))&&((this.forceEmpoweredCastingOptions == rhs.forceEmpoweredCastingOptions)||((this.forceEmpoweredCastingOptions!= null)&&this.forceEmpoweredCastingOptions.equals(rhs.forceEmpoweredCastingOptions))))&&((this.kineticCombat == rhs.kineticCombat)||((this.kineticCombat!= null)&&this.kineticCombat.equals(rhs.kineticCombat))))&&((this.forcePoints == rhs.forcePoints)||((this.forcePoints!= null)&&this.forcePoints.equals(rhs.forcePoints))))&&((this.potentAptitude == rhs.potentAptitude)||((this.potentAptitude!= null)&&this.potentAptitude.equals(rhs.potentAptitude))))&&((this.auraRadius == rhs.auraRadius)||((this.auraRadius!= null)&&this.auraRadius.equals(rhs.auraRadius))))&&((this.proficiencyBonus == rhs.proficiencyBonus)||((this.proficiencyBonus!= null)&&this.proficiencyBonus.equals(rhs.proficiencyBonus))))&&((this.maneuversKnown == rhs.maneuversKnown)||((this.maneuversKnown!= null)&&this.maneuversKnown.equals(rhs.maneuversKnown))))&&((this.monasticVows == rhs.monasticVows)||((this.monasticVows!= null)&&this.monasticVows.equals(rhs.monasticVows))))&&((this.techPowersKnown == rhs.techPowersKnown)||((this.techPowersKnown!= null)&&this.techPowersKnown.equals(rhs.techPowersKnown))))&&((this.focusPoints == rhs.focusPoints)||((this.focusPoints!= null)&&this.focusPoints.equals(rhs.focusPoints))))&&((this.features == rhs.features)||((this.features!= null)&&this.features.equals(rhs.features))))&&((this.maxPowerLevel == rhs.maxPowerLevel)||((this.maxPowerLevel!= null)&&this.maxPowerLevel.equals(rhs.maxPowerLevel))))&&((this.berserkerInstincts == rhs.berserkerInstincts)||((this.berserkerInstincts!= null)&&this.berserkerInstincts.equals(rhs.berserkerInstincts))))&&((this.aurasKnown == rhs.aurasKnown)||((this.aurasKnown!= null)&&this.aurasKnown.equals(rhs.aurasKnown))))&&((this.rangerSQuarry == rhs.rangerSQuarry)||((this.rangerSQuarry!= null)&&this.rangerSQuarry.equals(rhs.rangerSQuarry))))&&((this.idealManifests == rhs.idealManifests)||((this.idealManifests!= null)&&this.idealManifests.equals(rhs.idealManifests))))&&((this.focusedStrikes == rhs.focusedStrikes)||((this.focusedStrikes!= null)&&this.focusedStrikes.equals(rhs.focusedStrikes))))&&((this.level == rhs.level)||((this.level!= null)&&this.level.equals(rhs.level))))&&((this.operativeExploits == rhs.operativeExploits)||((this.operativeExploits!= null)&&this.operativeExploits.equals(rhs.operativeExploits))))&&((this.sneakAttack == rhs.sneakAttack)||((this.sneakAttack!= null)&&this.sneakAttack.equals(rhs.sneakAttack))))&&((this.idealsKnown == rhs.idealsKnown)||((this.idealsKnown!= null)&&this.idealsKnown.equals(rhs.idealsKnown))))&&((this.strategiesKnown == rhs.strategiesKnown)||((this.strategiesKnown!= null)&&this.strategiesKnown.equals(rhs.strategiesKnown))))&&((this.techPoints == rhs.techPoints)||((this.techPoints!= null)&&this.techPoints.equals(rhs.techPoints))))&&((this.rages == rhs.rages)||((this.rages!= null)&&this.rages.equals(rhs.rages))))&&((this.routinesKnown == rhs.routinesKnown)||((this.routinesKnown!= null)&&this.routinesKnown.equals(rhs.routinesKnown))))&&((this.unarmoredMovement == rhs.unarmoredMovement)||((this.unarmoredMovement!= null)&&this.unarmoredMovement.equals(rhs.unarmoredMovement))))&&((this.martialArts == rhs.martialArts)||((this.martialArts!= null)&&this.martialArts.equals(rhs.martialArts))))&&((this.discoveries == rhs.discoveries)||((this.discoveries!= null)&&this.discoveries.equals(rhs.discoveries))))&&((this.rageDamage == rhs.rageDamage)||((this.rageDamage!= null)&&this.rageDamage.equals(rhs.rageDamage))))&&((this.modificationSlots == rhs.modificationSlots)||((this.modificationSlots!= null)&&this.modificationSlots.equals(rhs.modificationSlots))))&&((this.superiorityDiceSize == rhs.superiorityDiceSize)||((this.superiorityDiceSize!= null)&&this.superiorityDiceSize.equals(rhs.superiorityDiceSize))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.routineRadius == rhs.routineRadius)||((this.routineRadius!= null)&&this.routineRadius.equals(rhs.routineRadius))))&&((this.forcePowersKnown == rhs.forcePowersKnown)||((this.forcePowersKnown!= null)&&this.forcePowersKnown.equals(rhs.forcePowersKnown)))); + } + +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/model/_2.java b/src/main/java/org/misoenergy/hackday/kessel_run/model/_2.java new file mode 100644 index 0000000..e1e27f1 --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/model/_2.java @@ -0,0 +1,855 @@ + +package org.misoenergy.hackday.kessel_run.model; + +import java.util.HashMap; +import java.util.Map; +import javax.annotation.processing.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "Level", + "Proficiency Bonus", + "Features", + "Rages", + "Rage Damage", + "Berserker Instincts", + "Force Powers Known", + "Force Points", + "Max Power Level", + "Force-Empowered Casting Options", + "Tech Powers Known", + "Tech Points", + "Potent Aptitude", + "Modification Slots", + "Maneuvers Known", + "Superiority Dice Quantity", + "Superiority Dice Size", + "Strategies Known", + "Focused Strikes", + "Auras Known", + "Aura Radius", + "Martial Arts", + "Focus Points", + "Monastic Vows", + "Unarmored Movement", + "Sneak Attack", + "Operative Exploits", + "Discoveries", + "Ranger's Quarry", + "Routines Known", + "Routine Radius", + "Kinetic Combat", + "Ideals Known", + "Ideal Manifests" +}) +@Generated("jsonschema2pojo") +public class _2 { + + @JsonProperty("Level") + private String level; + @JsonProperty("Proficiency Bonus") + private String proficiencyBonus; + @JsonProperty("Features") + private String features; + @JsonProperty("Rages") + private String rages; + @JsonProperty("Rage Damage") + private String rageDamage; + @JsonProperty("Berserker Instincts") + private String berserkerInstincts; + @JsonProperty("Force Powers Known") + private String forcePowersKnown; + @JsonProperty("Force Points") + private String forcePoints; + @JsonProperty("Max Power Level") + private String maxPowerLevel; + @JsonProperty("Force-Empowered Casting Options") + private String forceEmpoweredCastingOptions; + @JsonProperty("Tech Powers Known") + private String techPowersKnown; + @JsonProperty("Tech Points") + private String techPoints; + @JsonProperty("Potent Aptitude") + private String potentAptitude; + @JsonProperty("Modification Slots") + private String modificationSlots; + @JsonProperty("Maneuvers Known") + private String maneuversKnown; + @JsonProperty("Superiority Dice Quantity") + private String superiorityDiceQuantity; + @JsonProperty("Superiority Dice Size") + private String superiorityDiceSize; + @JsonProperty("Strategies Known") + private String strategiesKnown; + @JsonProperty("Focused Strikes") + private String focusedStrikes; + @JsonProperty("Auras Known") + private String aurasKnown; + @JsonProperty("Aura Radius") + private String auraRadius; + @JsonProperty("Martial Arts") + private String martialArts; + @JsonProperty("Focus Points") + private String focusPoints; + @JsonProperty("Monastic Vows") + private String monasticVows; + @JsonProperty("Unarmored Movement") + private String unarmoredMovement; + @JsonProperty("Sneak Attack") + private String sneakAttack; + @JsonProperty("Operative Exploits") + private String operativeExploits; + @JsonProperty("Discoveries") + private String discoveries; + @JsonProperty("Ranger's Quarry") + private String rangerSQuarry; + @JsonProperty("Routines Known") + private String routinesKnown; + @JsonProperty("Routine Radius") + private String routineRadius; + @JsonProperty("Kinetic Combat") + private String kineticCombat; + @JsonProperty("Ideals Known") + private String idealsKnown; + @JsonProperty("Ideal Manifests") + private String idealManifests; + @JsonIgnore + private Map additionalProperties = new HashMap(); + + @JsonProperty("Level") + public String getLevel() { + return level; + } + + @JsonProperty("Level") + public void setLevel(String level) { + this.level = level; + } + + public _2 withLevel(String level) { + this.level = level; + return this; + } + + @JsonProperty("Proficiency Bonus") + public String getProficiencyBonus() { + return proficiencyBonus; + } + + @JsonProperty("Proficiency Bonus") + public void setProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + } + + public _2 withProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + return this; + } + + @JsonProperty("Features") + public String getFeatures() { + return features; + } + + @JsonProperty("Features") + public void setFeatures(String features) { + this.features = features; + } + + public _2 withFeatures(String features) { + this.features = features; + return this; + } + + @JsonProperty("Rages") + public String getRages() { + return rages; + } + + @JsonProperty("Rages") + public void setRages(String rages) { + this.rages = rages; + } + + public _2 withRages(String rages) { + this.rages = rages; + return this; + } + + @JsonProperty("Rage Damage") + public String getRageDamage() { + return rageDamage; + } + + @JsonProperty("Rage Damage") + public void setRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + } + + public _2 withRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + return this; + } + + @JsonProperty("Berserker Instincts") + public String getBerserkerInstincts() { + return berserkerInstincts; + } + + @JsonProperty("Berserker Instincts") + public void setBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + } + + public _2 withBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + return this; + } + + @JsonProperty("Force Powers Known") + public String getForcePowersKnown() { + return forcePowersKnown; + } + + @JsonProperty("Force Powers Known") + public void setForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + } + + public _2 withForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + return this; + } + + @JsonProperty("Force Points") + public String getForcePoints() { + return forcePoints; + } + + @JsonProperty("Force Points") + public void setForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + } + + public _2 withForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + return this; + } + + @JsonProperty("Max Power Level") + public String getMaxPowerLevel() { + return maxPowerLevel; + } + + @JsonProperty("Max Power Level") + public void setMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + } + + public _2 withMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + return this; + } + + @JsonProperty("Force-Empowered Casting Options") + public String getForceEmpoweredCastingOptions() { + return forceEmpoweredCastingOptions; + } + + @JsonProperty("Force-Empowered Casting Options") + public void setForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + } + + public _2 withForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + return this; + } + + @JsonProperty("Tech Powers Known") + public String getTechPowersKnown() { + return techPowersKnown; + } + + @JsonProperty("Tech Powers Known") + public void setTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + } + + public _2 withTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + return this; + } + + @JsonProperty("Tech Points") + public String getTechPoints() { + return techPoints; + } + + @JsonProperty("Tech Points") + public void setTechPoints(String techPoints) { + this.techPoints = techPoints; + } + + public _2 withTechPoints(String techPoints) { + this.techPoints = techPoints; + return this; + } + + @JsonProperty("Potent Aptitude") + public String getPotentAptitude() { + return potentAptitude; + } + + @JsonProperty("Potent Aptitude") + public void setPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + } + + public _2 withPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + return this; + } + + @JsonProperty("Modification Slots") + public String getModificationSlots() { + return modificationSlots; + } + + @JsonProperty("Modification Slots") + public void setModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + } + + public _2 withModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + return this; + } + + @JsonProperty("Maneuvers Known") + public String getManeuversKnown() { + return maneuversKnown; + } + + @JsonProperty("Maneuvers Known") + public void setManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + } + + public _2 withManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + return this; + } + + @JsonProperty("Superiority Dice Quantity") + public String getSuperiorityDiceQuantity() { + return superiorityDiceQuantity; + } + + @JsonProperty("Superiority Dice Quantity") + public void setSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + } + + public _2 withSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + return this; + } + + @JsonProperty("Superiority Dice Size") + public String getSuperiorityDiceSize() { + return superiorityDiceSize; + } + + @JsonProperty("Superiority Dice Size") + public void setSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + } + + public _2 withSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + return this; + } + + @JsonProperty("Strategies Known") + public String getStrategiesKnown() { + return strategiesKnown; + } + + @JsonProperty("Strategies Known") + public void setStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + } + + public _2 withStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + return this; + } + + @JsonProperty("Focused Strikes") + public String getFocusedStrikes() { + return focusedStrikes; + } + + @JsonProperty("Focused Strikes") + public void setFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + } + + public _2 withFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + return this; + } + + @JsonProperty("Auras Known") + public String getAurasKnown() { + return aurasKnown; + } + + @JsonProperty("Auras Known") + public void setAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + } + + public _2 withAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + return this; + } + + @JsonProperty("Aura Radius") + public String getAuraRadius() { + return auraRadius; + } + + @JsonProperty("Aura Radius") + public void setAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + } + + public _2 withAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + return this; + } + + @JsonProperty("Martial Arts") + public String getMartialArts() { + return martialArts; + } + + @JsonProperty("Martial Arts") + public void setMartialArts(String martialArts) { + this.martialArts = martialArts; + } + + public _2 withMartialArts(String martialArts) { + this.martialArts = martialArts; + return this; + } + + @JsonProperty("Focus Points") + public String getFocusPoints() { + return focusPoints; + } + + @JsonProperty("Focus Points") + public void setFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + } + + public _2 withFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + return this; + } + + @JsonProperty("Monastic Vows") + public String getMonasticVows() { + return monasticVows; + } + + @JsonProperty("Monastic Vows") + public void setMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + } + + public _2 withMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + return this; + } + + @JsonProperty("Unarmored Movement") + public String getUnarmoredMovement() { + return unarmoredMovement; + } + + @JsonProperty("Unarmored Movement") + public void setUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + } + + public _2 withUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + return this; + } + + @JsonProperty("Sneak Attack") + public String getSneakAttack() { + return sneakAttack; + } + + @JsonProperty("Sneak Attack") + public void setSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + } + + public _2 withSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + return this; + } + + @JsonProperty("Operative Exploits") + public String getOperativeExploits() { + return operativeExploits; + } + + @JsonProperty("Operative Exploits") + public void setOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + } + + public _2 withOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + return this; + } + + @JsonProperty("Discoveries") + public String getDiscoveries() { + return discoveries; + } + + @JsonProperty("Discoveries") + public void setDiscoveries(String discoveries) { + this.discoveries = discoveries; + } + + public _2 withDiscoveries(String discoveries) { + this.discoveries = discoveries; + return this; + } + + @JsonProperty("Ranger's Quarry") + public String getRangerSQuarry() { + return rangerSQuarry; + } + + @JsonProperty("Ranger's Quarry") + public void setRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + } + + public _2 withRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + return this; + } + + @JsonProperty("Routines Known") + public String getRoutinesKnown() { + return routinesKnown; + } + + @JsonProperty("Routines Known") + public void setRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + } + + public _2 withRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + return this; + } + + @JsonProperty("Routine Radius") + public String getRoutineRadius() { + return routineRadius; + } + + @JsonProperty("Routine Radius") + public void setRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + } + + public _2 withRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + return this; + } + + @JsonProperty("Kinetic Combat") + public String getKineticCombat() { + return kineticCombat; + } + + @JsonProperty("Kinetic Combat") + public void setKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + } + + public _2 withKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + return this; + } + + @JsonProperty("Ideals Known") + public String getIdealsKnown() { + return idealsKnown; + } + + @JsonProperty("Ideals Known") + public void setIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + } + + public _2 withIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + return this; + } + + @JsonProperty("Ideal Manifests") + public String getIdealManifests() { + return idealManifests; + } + + @JsonProperty("Ideal Manifests") + public void setIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + } + + public _2 withIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public _2 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(_2 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("level"); + sb.append('='); + sb.append(((this.level == null)?"":this.level)); + sb.append(','); + sb.append("proficiencyBonus"); + sb.append('='); + sb.append(((this.proficiencyBonus == null)?"":this.proficiencyBonus)); + sb.append(','); + sb.append("features"); + sb.append('='); + sb.append(((this.features == null)?"":this.features)); + sb.append(','); + sb.append("rages"); + sb.append('='); + sb.append(((this.rages == null)?"":this.rages)); + sb.append(','); + sb.append("rageDamage"); + sb.append('='); + sb.append(((this.rageDamage == null)?"":this.rageDamage)); + sb.append(','); + sb.append("berserkerInstincts"); + sb.append('='); + sb.append(((this.berserkerInstincts == null)?"":this.berserkerInstincts)); + sb.append(','); + sb.append("forcePowersKnown"); + sb.append('='); + sb.append(((this.forcePowersKnown == null)?"":this.forcePowersKnown)); + sb.append(','); + sb.append("forcePoints"); + sb.append('='); + sb.append(((this.forcePoints == null)?"":this.forcePoints)); + sb.append(','); + sb.append("maxPowerLevel"); + sb.append('='); + sb.append(((this.maxPowerLevel == null)?"":this.maxPowerLevel)); + sb.append(','); + sb.append("forceEmpoweredCastingOptions"); + sb.append('='); + sb.append(((this.forceEmpoweredCastingOptions == null)?"":this.forceEmpoweredCastingOptions)); + sb.append(','); + sb.append("techPowersKnown"); + sb.append('='); + sb.append(((this.techPowersKnown == null)?"":this.techPowersKnown)); + sb.append(','); + sb.append("techPoints"); + sb.append('='); + sb.append(((this.techPoints == null)?"":this.techPoints)); + sb.append(','); + sb.append("potentAptitude"); + sb.append('='); + sb.append(((this.potentAptitude == null)?"":this.potentAptitude)); + sb.append(','); + sb.append("modificationSlots"); + sb.append('='); + sb.append(((this.modificationSlots == null)?"":this.modificationSlots)); + sb.append(','); + sb.append("maneuversKnown"); + sb.append('='); + sb.append(((this.maneuversKnown == null)?"":this.maneuversKnown)); + sb.append(','); + sb.append("superiorityDiceQuantity"); + sb.append('='); + sb.append(((this.superiorityDiceQuantity == null)?"":this.superiorityDiceQuantity)); + sb.append(','); + sb.append("superiorityDiceSize"); + sb.append('='); + sb.append(((this.superiorityDiceSize == null)?"":this.superiorityDiceSize)); + sb.append(','); + sb.append("strategiesKnown"); + sb.append('='); + sb.append(((this.strategiesKnown == null)?"":this.strategiesKnown)); + sb.append(','); + sb.append("focusedStrikes"); + sb.append('='); + sb.append(((this.focusedStrikes == null)?"":this.focusedStrikes)); + sb.append(','); + sb.append("aurasKnown"); + sb.append('='); + sb.append(((this.aurasKnown == null)?"":this.aurasKnown)); + sb.append(','); + sb.append("auraRadius"); + sb.append('='); + sb.append(((this.auraRadius == null)?"":this.auraRadius)); + sb.append(','); + sb.append("martialArts"); + sb.append('='); + sb.append(((this.martialArts == null)?"":this.martialArts)); + sb.append(','); + sb.append("focusPoints"); + sb.append('='); + sb.append(((this.focusPoints == null)?"":this.focusPoints)); + sb.append(','); + sb.append("monasticVows"); + sb.append('='); + sb.append(((this.monasticVows == null)?"":this.monasticVows)); + sb.append(','); + sb.append("unarmoredMovement"); + sb.append('='); + sb.append(((this.unarmoredMovement == null)?"":this.unarmoredMovement)); + sb.append(','); + sb.append("sneakAttack"); + sb.append('='); + sb.append(((this.sneakAttack == null)?"":this.sneakAttack)); + sb.append(','); + sb.append("operativeExploits"); + sb.append('='); + sb.append(((this.operativeExploits == null)?"":this.operativeExploits)); + sb.append(','); + sb.append("discoveries"); + sb.append('='); + sb.append(((this.discoveries == null)?"":this.discoveries)); + sb.append(','); + sb.append("rangerSQuarry"); + sb.append('='); + sb.append(((this.rangerSQuarry == null)?"":this.rangerSQuarry)); + sb.append(','); + sb.append("routinesKnown"); + sb.append('='); + sb.append(((this.routinesKnown == null)?"":this.routinesKnown)); + sb.append(','); + sb.append("routineRadius"); + sb.append('='); + sb.append(((this.routineRadius == null)?"":this.routineRadius)); + sb.append(','); + sb.append("kineticCombat"); + sb.append('='); + sb.append(((this.kineticCombat == null)?"":this.kineticCombat)); + sb.append(','); + sb.append("idealsKnown"); + sb.append('='); + sb.append(((this.idealsKnown == null)?"":this.idealsKnown)); + sb.append(','); + sb.append("idealManifests"); + sb.append('='); + sb.append(((this.idealManifests == null)?"":this.idealManifests)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.superiorityDiceQuantity == null)? 0 :this.superiorityDiceQuantity.hashCode())); + result = ((result* 31)+((this.forceEmpoweredCastingOptions == null)? 0 :this.forceEmpoweredCastingOptions.hashCode())); + result = ((result* 31)+((this.kineticCombat == null)? 0 :this.kineticCombat.hashCode())); + result = ((result* 31)+((this.forcePoints == null)? 0 :this.forcePoints.hashCode())); + result = ((result* 31)+((this.potentAptitude == null)? 0 :this.potentAptitude.hashCode())); + result = ((result* 31)+((this.auraRadius == null)? 0 :this.auraRadius.hashCode())); + result = ((result* 31)+((this.proficiencyBonus == null)? 0 :this.proficiencyBonus.hashCode())); + result = ((result* 31)+((this.maneuversKnown == null)? 0 :this.maneuversKnown.hashCode())); + result = ((result* 31)+((this.monasticVows == null)? 0 :this.monasticVows.hashCode())); + result = ((result* 31)+((this.techPowersKnown == null)? 0 :this.techPowersKnown.hashCode())); + result = ((result* 31)+((this.focusPoints == null)? 0 :this.focusPoints.hashCode())); + result = ((result* 31)+((this.features == null)? 0 :this.features.hashCode())); + result = ((result* 31)+((this.maxPowerLevel == null)? 0 :this.maxPowerLevel.hashCode())); + result = ((result* 31)+((this.berserkerInstincts == null)? 0 :this.berserkerInstincts.hashCode())); + result = ((result* 31)+((this.aurasKnown == null)? 0 :this.aurasKnown.hashCode())); + result = ((result* 31)+((this.rangerSQuarry == null)? 0 :this.rangerSQuarry.hashCode())); + result = ((result* 31)+((this.idealManifests == null)? 0 :this.idealManifests.hashCode())); + result = ((result* 31)+((this.focusedStrikes == null)? 0 :this.focusedStrikes.hashCode())); + result = ((result* 31)+((this.level == null)? 0 :this.level.hashCode())); + result = ((result* 31)+((this.operativeExploits == null)? 0 :this.operativeExploits.hashCode())); + result = ((result* 31)+((this.sneakAttack == null)? 0 :this.sneakAttack.hashCode())); + result = ((result* 31)+((this.idealsKnown == null)? 0 :this.idealsKnown.hashCode())); + result = ((result* 31)+((this.strategiesKnown == null)? 0 :this.strategiesKnown.hashCode())); + result = ((result* 31)+((this.techPoints == null)? 0 :this.techPoints.hashCode())); + result = ((result* 31)+((this.rages == null)? 0 :this.rages.hashCode())); + result = ((result* 31)+((this.routinesKnown == null)? 0 :this.routinesKnown.hashCode())); + result = ((result* 31)+((this.unarmoredMovement == null)? 0 :this.unarmoredMovement.hashCode())); + result = ((result* 31)+((this.martialArts == null)? 0 :this.martialArts.hashCode())); + result = ((result* 31)+((this.discoveries == null)? 0 :this.discoveries.hashCode())); + result = ((result* 31)+((this.rageDamage == null)? 0 :this.rageDamage.hashCode())); + result = ((result* 31)+((this.modificationSlots == null)? 0 :this.modificationSlots.hashCode())); + result = ((result* 31)+((this.superiorityDiceSize == null)? 0 :this.superiorityDiceSize.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.routineRadius == null)? 0 :this.routineRadius.hashCode())); + result = ((result* 31)+((this.forcePowersKnown == null)? 0 :this.forcePowersKnown.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof _2) == false) { + return false; + } + _2 rhs = ((_2) other); + return ((((((((((((((((((((((((((((((((((((this.superiorityDiceQuantity == rhs.superiorityDiceQuantity)||((this.superiorityDiceQuantity!= null)&&this.superiorityDiceQuantity.equals(rhs.superiorityDiceQuantity)))&&((this.forceEmpoweredCastingOptions == rhs.forceEmpoweredCastingOptions)||((this.forceEmpoweredCastingOptions!= null)&&this.forceEmpoweredCastingOptions.equals(rhs.forceEmpoweredCastingOptions))))&&((this.kineticCombat == rhs.kineticCombat)||((this.kineticCombat!= null)&&this.kineticCombat.equals(rhs.kineticCombat))))&&((this.forcePoints == rhs.forcePoints)||((this.forcePoints!= null)&&this.forcePoints.equals(rhs.forcePoints))))&&((this.potentAptitude == rhs.potentAptitude)||((this.potentAptitude!= null)&&this.potentAptitude.equals(rhs.potentAptitude))))&&((this.auraRadius == rhs.auraRadius)||((this.auraRadius!= null)&&this.auraRadius.equals(rhs.auraRadius))))&&((this.proficiencyBonus == rhs.proficiencyBonus)||((this.proficiencyBonus!= null)&&this.proficiencyBonus.equals(rhs.proficiencyBonus))))&&((this.maneuversKnown == rhs.maneuversKnown)||((this.maneuversKnown!= null)&&this.maneuversKnown.equals(rhs.maneuversKnown))))&&((this.monasticVows == rhs.monasticVows)||((this.monasticVows!= null)&&this.monasticVows.equals(rhs.monasticVows))))&&((this.techPowersKnown == rhs.techPowersKnown)||((this.techPowersKnown!= null)&&this.techPowersKnown.equals(rhs.techPowersKnown))))&&((this.focusPoints == rhs.focusPoints)||((this.focusPoints!= null)&&this.focusPoints.equals(rhs.focusPoints))))&&((this.features == rhs.features)||((this.features!= null)&&this.features.equals(rhs.features))))&&((this.maxPowerLevel == rhs.maxPowerLevel)||((this.maxPowerLevel!= null)&&this.maxPowerLevel.equals(rhs.maxPowerLevel))))&&((this.berserkerInstincts == rhs.berserkerInstincts)||((this.berserkerInstincts!= null)&&this.berserkerInstincts.equals(rhs.berserkerInstincts))))&&((this.aurasKnown == rhs.aurasKnown)||((this.aurasKnown!= null)&&this.aurasKnown.equals(rhs.aurasKnown))))&&((this.rangerSQuarry == rhs.rangerSQuarry)||((this.rangerSQuarry!= null)&&this.rangerSQuarry.equals(rhs.rangerSQuarry))))&&((this.idealManifests == rhs.idealManifests)||((this.idealManifests!= null)&&this.idealManifests.equals(rhs.idealManifests))))&&((this.focusedStrikes == rhs.focusedStrikes)||((this.focusedStrikes!= null)&&this.focusedStrikes.equals(rhs.focusedStrikes))))&&((this.level == rhs.level)||((this.level!= null)&&this.level.equals(rhs.level))))&&((this.operativeExploits == rhs.operativeExploits)||((this.operativeExploits!= null)&&this.operativeExploits.equals(rhs.operativeExploits))))&&((this.sneakAttack == rhs.sneakAttack)||((this.sneakAttack!= null)&&this.sneakAttack.equals(rhs.sneakAttack))))&&((this.idealsKnown == rhs.idealsKnown)||((this.idealsKnown!= null)&&this.idealsKnown.equals(rhs.idealsKnown))))&&((this.strategiesKnown == rhs.strategiesKnown)||((this.strategiesKnown!= null)&&this.strategiesKnown.equals(rhs.strategiesKnown))))&&((this.techPoints == rhs.techPoints)||((this.techPoints!= null)&&this.techPoints.equals(rhs.techPoints))))&&((this.rages == rhs.rages)||((this.rages!= null)&&this.rages.equals(rhs.rages))))&&((this.routinesKnown == rhs.routinesKnown)||((this.routinesKnown!= null)&&this.routinesKnown.equals(rhs.routinesKnown))))&&((this.unarmoredMovement == rhs.unarmoredMovement)||((this.unarmoredMovement!= null)&&this.unarmoredMovement.equals(rhs.unarmoredMovement))))&&((this.martialArts == rhs.martialArts)||((this.martialArts!= null)&&this.martialArts.equals(rhs.martialArts))))&&((this.discoveries == rhs.discoveries)||((this.discoveries!= null)&&this.discoveries.equals(rhs.discoveries))))&&((this.rageDamage == rhs.rageDamage)||((this.rageDamage!= null)&&this.rageDamage.equals(rhs.rageDamage))))&&((this.modificationSlots == rhs.modificationSlots)||((this.modificationSlots!= null)&&this.modificationSlots.equals(rhs.modificationSlots))))&&((this.superiorityDiceSize == rhs.superiorityDiceSize)||((this.superiorityDiceSize!= null)&&this.superiorityDiceSize.equals(rhs.superiorityDiceSize))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.routineRadius == rhs.routineRadius)||((this.routineRadius!= null)&&this.routineRadius.equals(rhs.routineRadius))))&&((this.forcePowersKnown == rhs.forcePowersKnown)||((this.forcePowersKnown!= null)&&this.forcePowersKnown.equals(rhs.forcePowersKnown)))); + } + +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/model/_20.java b/src/main/java/org/misoenergy/hackday/kessel_run/model/_20.java new file mode 100644 index 0000000..94a16c2 --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/model/_20.java @@ -0,0 +1,855 @@ + +package org.misoenergy.hackday.kessel_run.model; + +import java.util.HashMap; +import java.util.Map; +import javax.annotation.processing.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "Level", + "Proficiency Bonus", + "Features", + "Rages", + "Rage Damage", + "Berserker Instincts", + "Force Powers Known", + "Force Points", + "Max Power Level", + "Force-Empowered Casting Options", + "Tech Powers Known", + "Tech Points", + "Potent Aptitude", + "Modification Slots", + "Maneuvers Known", + "Superiority Dice Quantity", + "Superiority Dice Size", + "Strategies Known", + "Focused Strikes", + "Auras Known", + "Aura Radius", + "Martial Arts", + "Focus Points", + "Monastic Vows", + "Unarmored Movement", + "Sneak Attack", + "Operative Exploits", + "Discoveries", + "Ranger's Quarry", + "Routines Known", + "Routine Radius", + "Kinetic Combat", + "Ideals Known", + "Ideal Manifests" +}) +@Generated("jsonschema2pojo") +public class _20 { + + @JsonProperty("Level") + private String level; + @JsonProperty("Proficiency Bonus") + private String proficiencyBonus; + @JsonProperty("Features") + private String features; + @JsonProperty("Rages") + private String rages; + @JsonProperty("Rage Damage") + private String rageDamage; + @JsonProperty("Berserker Instincts") + private String berserkerInstincts; + @JsonProperty("Force Powers Known") + private String forcePowersKnown; + @JsonProperty("Force Points") + private String forcePoints; + @JsonProperty("Max Power Level") + private String maxPowerLevel; + @JsonProperty("Force-Empowered Casting Options") + private String forceEmpoweredCastingOptions; + @JsonProperty("Tech Powers Known") + private String techPowersKnown; + @JsonProperty("Tech Points") + private String techPoints; + @JsonProperty("Potent Aptitude") + private String potentAptitude; + @JsonProperty("Modification Slots") + private String modificationSlots; + @JsonProperty("Maneuvers Known") + private String maneuversKnown; + @JsonProperty("Superiority Dice Quantity") + private String superiorityDiceQuantity; + @JsonProperty("Superiority Dice Size") + private String superiorityDiceSize; + @JsonProperty("Strategies Known") + private String strategiesKnown; + @JsonProperty("Focused Strikes") + private String focusedStrikes; + @JsonProperty("Auras Known") + private String aurasKnown; + @JsonProperty("Aura Radius") + private String auraRadius; + @JsonProperty("Martial Arts") + private String martialArts; + @JsonProperty("Focus Points") + private String focusPoints; + @JsonProperty("Monastic Vows") + private String monasticVows; + @JsonProperty("Unarmored Movement") + private String unarmoredMovement; + @JsonProperty("Sneak Attack") + private String sneakAttack; + @JsonProperty("Operative Exploits") + private String operativeExploits; + @JsonProperty("Discoveries") + private String discoveries; + @JsonProperty("Ranger's Quarry") + private String rangerSQuarry; + @JsonProperty("Routines Known") + private String routinesKnown; + @JsonProperty("Routine Radius") + private String routineRadius; + @JsonProperty("Kinetic Combat") + private String kineticCombat; + @JsonProperty("Ideals Known") + private String idealsKnown; + @JsonProperty("Ideal Manifests") + private String idealManifests; + @JsonIgnore + private Map additionalProperties = new HashMap(); + + @JsonProperty("Level") + public String getLevel() { + return level; + } + + @JsonProperty("Level") + public void setLevel(String level) { + this.level = level; + } + + public _20 withLevel(String level) { + this.level = level; + return this; + } + + @JsonProperty("Proficiency Bonus") + public String getProficiencyBonus() { + return proficiencyBonus; + } + + @JsonProperty("Proficiency Bonus") + public void setProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + } + + public _20 withProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + return this; + } + + @JsonProperty("Features") + public String getFeatures() { + return features; + } + + @JsonProperty("Features") + public void setFeatures(String features) { + this.features = features; + } + + public _20 withFeatures(String features) { + this.features = features; + return this; + } + + @JsonProperty("Rages") + public String getRages() { + return rages; + } + + @JsonProperty("Rages") + public void setRages(String rages) { + this.rages = rages; + } + + public _20 withRages(String rages) { + this.rages = rages; + return this; + } + + @JsonProperty("Rage Damage") + public String getRageDamage() { + return rageDamage; + } + + @JsonProperty("Rage Damage") + public void setRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + } + + public _20 withRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + return this; + } + + @JsonProperty("Berserker Instincts") + public String getBerserkerInstincts() { + return berserkerInstincts; + } + + @JsonProperty("Berserker Instincts") + public void setBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + } + + public _20 withBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + return this; + } + + @JsonProperty("Force Powers Known") + public String getForcePowersKnown() { + return forcePowersKnown; + } + + @JsonProperty("Force Powers Known") + public void setForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + } + + public _20 withForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + return this; + } + + @JsonProperty("Force Points") + public String getForcePoints() { + return forcePoints; + } + + @JsonProperty("Force Points") + public void setForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + } + + public _20 withForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + return this; + } + + @JsonProperty("Max Power Level") + public String getMaxPowerLevel() { + return maxPowerLevel; + } + + @JsonProperty("Max Power Level") + public void setMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + } + + public _20 withMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + return this; + } + + @JsonProperty("Force-Empowered Casting Options") + public String getForceEmpoweredCastingOptions() { + return forceEmpoweredCastingOptions; + } + + @JsonProperty("Force-Empowered Casting Options") + public void setForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + } + + public _20 withForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + return this; + } + + @JsonProperty("Tech Powers Known") + public String getTechPowersKnown() { + return techPowersKnown; + } + + @JsonProperty("Tech Powers Known") + public void setTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + } + + public _20 withTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + return this; + } + + @JsonProperty("Tech Points") + public String getTechPoints() { + return techPoints; + } + + @JsonProperty("Tech Points") + public void setTechPoints(String techPoints) { + this.techPoints = techPoints; + } + + public _20 withTechPoints(String techPoints) { + this.techPoints = techPoints; + return this; + } + + @JsonProperty("Potent Aptitude") + public String getPotentAptitude() { + return potentAptitude; + } + + @JsonProperty("Potent Aptitude") + public void setPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + } + + public _20 withPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + return this; + } + + @JsonProperty("Modification Slots") + public String getModificationSlots() { + return modificationSlots; + } + + @JsonProperty("Modification Slots") + public void setModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + } + + public _20 withModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + return this; + } + + @JsonProperty("Maneuvers Known") + public String getManeuversKnown() { + return maneuversKnown; + } + + @JsonProperty("Maneuvers Known") + public void setManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + } + + public _20 withManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + return this; + } + + @JsonProperty("Superiority Dice Quantity") + public String getSuperiorityDiceQuantity() { + return superiorityDiceQuantity; + } + + @JsonProperty("Superiority Dice Quantity") + public void setSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + } + + public _20 withSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + return this; + } + + @JsonProperty("Superiority Dice Size") + public String getSuperiorityDiceSize() { + return superiorityDiceSize; + } + + @JsonProperty("Superiority Dice Size") + public void setSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + } + + public _20 withSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + return this; + } + + @JsonProperty("Strategies Known") + public String getStrategiesKnown() { + return strategiesKnown; + } + + @JsonProperty("Strategies Known") + public void setStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + } + + public _20 withStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + return this; + } + + @JsonProperty("Focused Strikes") + public String getFocusedStrikes() { + return focusedStrikes; + } + + @JsonProperty("Focused Strikes") + public void setFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + } + + public _20 withFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + return this; + } + + @JsonProperty("Auras Known") + public String getAurasKnown() { + return aurasKnown; + } + + @JsonProperty("Auras Known") + public void setAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + } + + public _20 withAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + return this; + } + + @JsonProperty("Aura Radius") + public String getAuraRadius() { + return auraRadius; + } + + @JsonProperty("Aura Radius") + public void setAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + } + + public _20 withAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + return this; + } + + @JsonProperty("Martial Arts") + public String getMartialArts() { + return martialArts; + } + + @JsonProperty("Martial Arts") + public void setMartialArts(String martialArts) { + this.martialArts = martialArts; + } + + public _20 withMartialArts(String martialArts) { + this.martialArts = martialArts; + return this; + } + + @JsonProperty("Focus Points") + public String getFocusPoints() { + return focusPoints; + } + + @JsonProperty("Focus Points") + public void setFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + } + + public _20 withFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + return this; + } + + @JsonProperty("Monastic Vows") + public String getMonasticVows() { + return monasticVows; + } + + @JsonProperty("Monastic Vows") + public void setMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + } + + public _20 withMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + return this; + } + + @JsonProperty("Unarmored Movement") + public String getUnarmoredMovement() { + return unarmoredMovement; + } + + @JsonProperty("Unarmored Movement") + public void setUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + } + + public _20 withUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + return this; + } + + @JsonProperty("Sneak Attack") + public String getSneakAttack() { + return sneakAttack; + } + + @JsonProperty("Sneak Attack") + public void setSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + } + + public _20 withSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + return this; + } + + @JsonProperty("Operative Exploits") + public String getOperativeExploits() { + return operativeExploits; + } + + @JsonProperty("Operative Exploits") + public void setOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + } + + public _20 withOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + return this; + } + + @JsonProperty("Discoveries") + public String getDiscoveries() { + return discoveries; + } + + @JsonProperty("Discoveries") + public void setDiscoveries(String discoveries) { + this.discoveries = discoveries; + } + + public _20 withDiscoveries(String discoveries) { + this.discoveries = discoveries; + return this; + } + + @JsonProperty("Ranger's Quarry") + public String getRangerSQuarry() { + return rangerSQuarry; + } + + @JsonProperty("Ranger's Quarry") + public void setRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + } + + public _20 withRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + return this; + } + + @JsonProperty("Routines Known") + public String getRoutinesKnown() { + return routinesKnown; + } + + @JsonProperty("Routines Known") + public void setRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + } + + public _20 withRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + return this; + } + + @JsonProperty("Routine Radius") + public String getRoutineRadius() { + return routineRadius; + } + + @JsonProperty("Routine Radius") + public void setRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + } + + public _20 withRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + return this; + } + + @JsonProperty("Kinetic Combat") + public String getKineticCombat() { + return kineticCombat; + } + + @JsonProperty("Kinetic Combat") + public void setKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + } + + public _20 withKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + return this; + } + + @JsonProperty("Ideals Known") + public String getIdealsKnown() { + return idealsKnown; + } + + @JsonProperty("Ideals Known") + public void setIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + } + + public _20 withIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + return this; + } + + @JsonProperty("Ideal Manifests") + public String getIdealManifests() { + return idealManifests; + } + + @JsonProperty("Ideal Manifests") + public void setIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + } + + public _20 withIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public _20 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(_20 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("level"); + sb.append('='); + sb.append(((this.level == null)?"":this.level)); + sb.append(','); + sb.append("proficiencyBonus"); + sb.append('='); + sb.append(((this.proficiencyBonus == null)?"":this.proficiencyBonus)); + sb.append(','); + sb.append("features"); + sb.append('='); + sb.append(((this.features == null)?"":this.features)); + sb.append(','); + sb.append("rages"); + sb.append('='); + sb.append(((this.rages == null)?"":this.rages)); + sb.append(','); + sb.append("rageDamage"); + sb.append('='); + sb.append(((this.rageDamage == null)?"":this.rageDamage)); + sb.append(','); + sb.append("berserkerInstincts"); + sb.append('='); + sb.append(((this.berserkerInstincts == null)?"":this.berserkerInstincts)); + sb.append(','); + sb.append("forcePowersKnown"); + sb.append('='); + sb.append(((this.forcePowersKnown == null)?"":this.forcePowersKnown)); + sb.append(','); + sb.append("forcePoints"); + sb.append('='); + sb.append(((this.forcePoints == null)?"":this.forcePoints)); + sb.append(','); + sb.append("maxPowerLevel"); + sb.append('='); + sb.append(((this.maxPowerLevel == null)?"":this.maxPowerLevel)); + sb.append(','); + sb.append("forceEmpoweredCastingOptions"); + sb.append('='); + sb.append(((this.forceEmpoweredCastingOptions == null)?"":this.forceEmpoweredCastingOptions)); + sb.append(','); + sb.append("techPowersKnown"); + sb.append('='); + sb.append(((this.techPowersKnown == null)?"":this.techPowersKnown)); + sb.append(','); + sb.append("techPoints"); + sb.append('='); + sb.append(((this.techPoints == null)?"":this.techPoints)); + sb.append(','); + sb.append("potentAptitude"); + sb.append('='); + sb.append(((this.potentAptitude == null)?"":this.potentAptitude)); + sb.append(','); + sb.append("modificationSlots"); + sb.append('='); + sb.append(((this.modificationSlots == null)?"":this.modificationSlots)); + sb.append(','); + sb.append("maneuversKnown"); + sb.append('='); + sb.append(((this.maneuversKnown == null)?"":this.maneuversKnown)); + sb.append(','); + sb.append("superiorityDiceQuantity"); + sb.append('='); + sb.append(((this.superiorityDiceQuantity == null)?"":this.superiorityDiceQuantity)); + sb.append(','); + sb.append("superiorityDiceSize"); + sb.append('='); + sb.append(((this.superiorityDiceSize == null)?"":this.superiorityDiceSize)); + sb.append(','); + sb.append("strategiesKnown"); + sb.append('='); + sb.append(((this.strategiesKnown == null)?"":this.strategiesKnown)); + sb.append(','); + sb.append("focusedStrikes"); + sb.append('='); + sb.append(((this.focusedStrikes == null)?"":this.focusedStrikes)); + sb.append(','); + sb.append("aurasKnown"); + sb.append('='); + sb.append(((this.aurasKnown == null)?"":this.aurasKnown)); + sb.append(','); + sb.append("auraRadius"); + sb.append('='); + sb.append(((this.auraRadius == null)?"":this.auraRadius)); + sb.append(','); + sb.append("martialArts"); + sb.append('='); + sb.append(((this.martialArts == null)?"":this.martialArts)); + sb.append(','); + sb.append("focusPoints"); + sb.append('='); + sb.append(((this.focusPoints == null)?"":this.focusPoints)); + sb.append(','); + sb.append("monasticVows"); + sb.append('='); + sb.append(((this.monasticVows == null)?"":this.monasticVows)); + sb.append(','); + sb.append("unarmoredMovement"); + sb.append('='); + sb.append(((this.unarmoredMovement == null)?"":this.unarmoredMovement)); + sb.append(','); + sb.append("sneakAttack"); + sb.append('='); + sb.append(((this.sneakAttack == null)?"":this.sneakAttack)); + sb.append(','); + sb.append("operativeExploits"); + sb.append('='); + sb.append(((this.operativeExploits == null)?"":this.operativeExploits)); + sb.append(','); + sb.append("discoveries"); + sb.append('='); + sb.append(((this.discoveries == null)?"":this.discoveries)); + sb.append(','); + sb.append("rangerSQuarry"); + sb.append('='); + sb.append(((this.rangerSQuarry == null)?"":this.rangerSQuarry)); + sb.append(','); + sb.append("routinesKnown"); + sb.append('='); + sb.append(((this.routinesKnown == null)?"":this.routinesKnown)); + sb.append(','); + sb.append("routineRadius"); + sb.append('='); + sb.append(((this.routineRadius == null)?"":this.routineRadius)); + sb.append(','); + sb.append("kineticCombat"); + sb.append('='); + sb.append(((this.kineticCombat == null)?"":this.kineticCombat)); + sb.append(','); + sb.append("idealsKnown"); + sb.append('='); + sb.append(((this.idealsKnown == null)?"":this.idealsKnown)); + sb.append(','); + sb.append("idealManifests"); + sb.append('='); + sb.append(((this.idealManifests == null)?"":this.idealManifests)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.superiorityDiceQuantity == null)? 0 :this.superiorityDiceQuantity.hashCode())); + result = ((result* 31)+((this.forceEmpoweredCastingOptions == null)? 0 :this.forceEmpoweredCastingOptions.hashCode())); + result = ((result* 31)+((this.kineticCombat == null)? 0 :this.kineticCombat.hashCode())); + result = ((result* 31)+((this.forcePoints == null)? 0 :this.forcePoints.hashCode())); + result = ((result* 31)+((this.potentAptitude == null)? 0 :this.potentAptitude.hashCode())); + result = ((result* 31)+((this.auraRadius == null)? 0 :this.auraRadius.hashCode())); + result = ((result* 31)+((this.proficiencyBonus == null)? 0 :this.proficiencyBonus.hashCode())); + result = ((result* 31)+((this.maneuversKnown == null)? 0 :this.maneuversKnown.hashCode())); + result = ((result* 31)+((this.monasticVows == null)? 0 :this.monasticVows.hashCode())); + result = ((result* 31)+((this.techPowersKnown == null)? 0 :this.techPowersKnown.hashCode())); + result = ((result* 31)+((this.focusPoints == null)? 0 :this.focusPoints.hashCode())); + result = ((result* 31)+((this.features == null)? 0 :this.features.hashCode())); + result = ((result* 31)+((this.maxPowerLevel == null)? 0 :this.maxPowerLevel.hashCode())); + result = ((result* 31)+((this.berserkerInstincts == null)? 0 :this.berserkerInstincts.hashCode())); + result = ((result* 31)+((this.aurasKnown == null)? 0 :this.aurasKnown.hashCode())); + result = ((result* 31)+((this.rangerSQuarry == null)? 0 :this.rangerSQuarry.hashCode())); + result = ((result* 31)+((this.idealManifests == null)? 0 :this.idealManifests.hashCode())); + result = ((result* 31)+((this.focusedStrikes == null)? 0 :this.focusedStrikes.hashCode())); + result = ((result* 31)+((this.level == null)? 0 :this.level.hashCode())); + result = ((result* 31)+((this.operativeExploits == null)? 0 :this.operativeExploits.hashCode())); + result = ((result* 31)+((this.sneakAttack == null)? 0 :this.sneakAttack.hashCode())); + result = ((result* 31)+((this.idealsKnown == null)? 0 :this.idealsKnown.hashCode())); + result = ((result* 31)+((this.strategiesKnown == null)? 0 :this.strategiesKnown.hashCode())); + result = ((result* 31)+((this.techPoints == null)? 0 :this.techPoints.hashCode())); + result = ((result* 31)+((this.rages == null)? 0 :this.rages.hashCode())); + result = ((result* 31)+((this.routinesKnown == null)? 0 :this.routinesKnown.hashCode())); + result = ((result* 31)+((this.unarmoredMovement == null)? 0 :this.unarmoredMovement.hashCode())); + result = ((result* 31)+((this.martialArts == null)? 0 :this.martialArts.hashCode())); + result = ((result* 31)+((this.discoveries == null)? 0 :this.discoveries.hashCode())); + result = ((result* 31)+((this.rageDamage == null)? 0 :this.rageDamage.hashCode())); + result = ((result* 31)+((this.modificationSlots == null)? 0 :this.modificationSlots.hashCode())); + result = ((result* 31)+((this.superiorityDiceSize == null)? 0 :this.superiorityDiceSize.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.routineRadius == null)? 0 :this.routineRadius.hashCode())); + result = ((result* 31)+((this.forcePowersKnown == null)? 0 :this.forcePowersKnown.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof _20) == false) { + return false; + } + _20 rhs = ((_20) other); + return ((((((((((((((((((((((((((((((((((((this.superiorityDiceQuantity == rhs.superiorityDiceQuantity)||((this.superiorityDiceQuantity!= null)&&this.superiorityDiceQuantity.equals(rhs.superiorityDiceQuantity)))&&((this.forceEmpoweredCastingOptions == rhs.forceEmpoweredCastingOptions)||((this.forceEmpoweredCastingOptions!= null)&&this.forceEmpoweredCastingOptions.equals(rhs.forceEmpoweredCastingOptions))))&&((this.kineticCombat == rhs.kineticCombat)||((this.kineticCombat!= null)&&this.kineticCombat.equals(rhs.kineticCombat))))&&((this.forcePoints == rhs.forcePoints)||((this.forcePoints!= null)&&this.forcePoints.equals(rhs.forcePoints))))&&((this.potentAptitude == rhs.potentAptitude)||((this.potentAptitude!= null)&&this.potentAptitude.equals(rhs.potentAptitude))))&&((this.auraRadius == rhs.auraRadius)||((this.auraRadius!= null)&&this.auraRadius.equals(rhs.auraRadius))))&&((this.proficiencyBonus == rhs.proficiencyBonus)||((this.proficiencyBonus!= null)&&this.proficiencyBonus.equals(rhs.proficiencyBonus))))&&((this.maneuversKnown == rhs.maneuversKnown)||((this.maneuversKnown!= null)&&this.maneuversKnown.equals(rhs.maneuversKnown))))&&((this.monasticVows == rhs.monasticVows)||((this.monasticVows!= null)&&this.monasticVows.equals(rhs.monasticVows))))&&((this.techPowersKnown == rhs.techPowersKnown)||((this.techPowersKnown!= null)&&this.techPowersKnown.equals(rhs.techPowersKnown))))&&((this.focusPoints == rhs.focusPoints)||((this.focusPoints!= null)&&this.focusPoints.equals(rhs.focusPoints))))&&((this.features == rhs.features)||((this.features!= null)&&this.features.equals(rhs.features))))&&((this.maxPowerLevel == rhs.maxPowerLevel)||((this.maxPowerLevel!= null)&&this.maxPowerLevel.equals(rhs.maxPowerLevel))))&&((this.berserkerInstincts == rhs.berserkerInstincts)||((this.berserkerInstincts!= null)&&this.berserkerInstincts.equals(rhs.berserkerInstincts))))&&((this.aurasKnown == rhs.aurasKnown)||((this.aurasKnown!= null)&&this.aurasKnown.equals(rhs.aurasKnown))))&&((this.rangerSQuarry == rhs.rangerSQuarry)||((this.rangerSQuarry!= null)&&this.rangerSQuarry.equals(rhs.rangerSQuarry))))&&((this.idealManifests == rhs.idealManifests)||((this.idealManifests!= null)&&this.idealManifests.equals(rhs.idealManifests))))&&((this.focusedStrikes == rhs.focusedStrikes)||((this.focusedStrikes!= null)&&this.focusedStrikes.equals(rhs.focusedStrikes))))&&((this.level == rhs.level)||((this.level!= null)&&this.level.equals(rhs.level))))&&((this.operativeExploits == rhs.operativeExploits)||((this.operativeExploits!= null)&&this.operativeExploits.equals(rhs.operativeExploits))))&&((this.sneakAttack == rhs.sneakAttack)||((this.sneakAttack!= null)&&this.sneakAttack.equals(rhs.sneakAttack))))&&((this.idealsKnown == rhs.idealsKnown)||((this.idealsKnown!= null)&&this.idealsKnown.equals(rhs.idealsKnown))))&&((this.strategiesKnown == rhs.strategiesKnown)||((this.strategiesKnown!= null)&&this.strategiesKnown.equals(rhs.strategiesKnown))))&&((this.techPoints == rhs.techPoints)||((this.techPoints!= null)&&this.techPoints.equals(rhs.techPoints))))&&((this.rages == rhs.rages)||((this.rages!= null)&&this.rages.equals(rhs.rages))))&&((this.routinesKnown == rhs.routinesKnown)||((this.routinesKnown!= null)&&this.routinesKnown.equals(rhs.routinesKnown))))&&((this.unarmoredMovement == rhs.unarmoredMovement)||((this.unarmoredMovement!= null)&&this.unarmoredMovement.equals(rhs.unarmoredMovement))))&&((this.martialArts == rhs.martialArts)||((this.martialArts!= null)&&this.martialArts.equals(rhs.martialArts))))&&((this.discoveries == rhs.discoveries)||((this.discoveries!= null)&&this.discoveries.equals(rhs.discoveries))))&&((this.rageDamage == rhs.rageDamage)||((this.rageDamage!= null)&&this.rageDamage.equals(rhs.rageDamage))))&&((this.modificationSlots == rhs.modificationSlots)||((this.modificationSlots!= null)&&this.modificationSlots.equals(rhs.modificationSlots))))&&((this.superiorityDiceSize == rhs.superiorityDiceSize)||((this.superiorityDiceSize!= null)&&this.superiorityDiceSize.equals(rhs.superiorityDiceSize))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.routineRadius == rhs.routineRadius)||((this.routineRadius!= null)&&this.routineRadius.equals(rhs.routineRadius))))&&((this.forcePowersKnown == rhs.forcePowersKnown)||((this.forcePowersKnown!= null)&&this.forcePowersKnown.equals(rhs.forcePowersKnown)))); + } + +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/model/_3.java b/src/main/java/org/misoenergy/hackday/kessel_run/model/_3.java new file mode 100644 index 0000000..7ae4712 --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/model/_3.java @@ -0,0 +1,855 @@ + +package org.misoenergy.hackday.kessel_run.model; + +import java.util.HashMap; +import java.util.Map; +import javax.annotation.processing.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "Level", + "Proficiency Bonus", + "Features", + "Rages", + "Rage Damage", + "Berserker Instincts", + "Force Powers Known", + "Force Points", + "Max Power Level", + "Force-Empowered Casting Options", + "Tech Powers Known", + "Tech Points", + "Potent Aptitude", + "Modification Slots", + "Maneuvers Known", + "Superiority Dice Quantity", + "Superiority Dice Size", + "Strategies Known", + "Focused Strikes", + "Auras Known", + "Aura Radius", + "Martial Arts", + "Focus Points", + "Monastic Vows", + "Unarmored Movement", + "Sneak Attack", + "Operative Exploits", + "Discoveries", + "Ranger's Quarry", + "Routines Known", + "Routine Radius", + "Kinetic Combat", + "Ideals Known", + "Ideal Manifests" +}) +@Generated("jsonschema2pojo") +public class _3 { + + @JsonProperty("Level") + private String level; + @JsonProperty("Proficiency Bonus") + private String proficiencyBonus; + @JsonProperty("Features") + private String features; + @JsonProperty("Rages") + private String rages; + @JsonProperty("Rage Damage") + private String rageDamage; + @JsonProperty("Berserker Instincts") + private String berserkerInstincts; + @JsonProperty("Force Powers Known") + private String forcePowersKnown; + @JsonProperty("Force Points") + private String forcePoints; + @JsonProperty("Max Power Level") + private String maxPowerLevel; + @JsonProperty("Force-Empowered Casting Options") + private String forceEmpoweredCastingOptions; + @JsonProperty("Tech Powers Known") + private String techPowersKnown; + @JsonProperty("Tech Points") + private String techPoints; + @JsonProperty("Potent Aptitude") + private String potentAptitude; + @JsonProperty("Modification Slots") + private String modificationSlots; + @JsonProperty("Maneuvers Known") + private String maneuversKnown; + @JsonProperty("Superiority Dice Quantity") + private String superiorityDiceQuantity; + @JsonProperty("Superiority Dice Size") + private String superiorityDiceSize; + @JsonProperty("Strategies Known") + private String strategiesKnown; + @JsonProperty("Focused Strikes") + private String focusedStrikes; + @JsonProperty("Auras Known") + private String aurasKnown; + @JsonProperty("Aura Radius") + private String auraRadius; + @JsonProperty("Martial Arts") + private String martialArts; + @JsonProperty("Focus Points") + private String focusPoints; + @JsonProperty("Monastic Vows") + private String monasticVows; + @JsonProperty("Unarmored Movement") + private String unarmoredMovement; + @JsonProperty("Sneak Attack") + private String sneakAttack; + @JsonProperty("Operative Exploits") + private String operativeExploits; + @JsonProperty("Discoveries") + private String discoveries; + @JsonProperty("Ranger's Quarry") + private String rangerSQuarry; + @JsonProperty("Routines Known") + private String routinesKnown; + @JsonProperty("Routine Radius") + private String routineRadius; + @JsonProperty("Kinetic Combat") + private String kineticCombat; + @JsonProperty("Ideals Known") + private String idealsKnown; + @JsonProperty("Ideal Manifests") + private String idealManifests; + @JsonIgnore + private Map additionalProperties = new HashMap(); + + @JsonProperty("Level") + public String getLevel() { + return level; + } + + @JsonProperty("Level") + public void setLevel(String level) { + this.level = level; + } + + public _3 withLevel(String level) { + this.level = level; + return this; + } + + @JsonProperty("Proficiency Bonus") + public String getProficiencyBonus() { + return proficiencyBonus; + } + + @JsonProperty("Proficiency Bonus") + public void setProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + } + + public _3 withProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + return this; + } + + @JsonProperty("Features") + public String getFeatures() { + return features; + } + + @JsonProperty("Features") + public void setFeatures(String features) { + this.features = features; + } + + public _3 withFeatures(String features) { + this.features = features; + return this; + } + + @JsonProperty("Rages") + public String getRages() { + return rages; + } + + @JsonProperty("Rages") + public void setRages(String rages) { + this.rages = rages; + } + + public _3 withRages(String rages) { + this.rages = rages; + return this; + } + + @JsonProperty("Rage Damage") + public String getRageDamage() { + return rageDamage; + } + + @JsonProperty("Rage Damage") + public void setRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + } + + public _3 withRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + return this; + } + + @JsonProperty("Berserker Instincts") + public String getBerserkerInstincts() { + return berserkerInstincts; + } + + @JsonProperty("Berserker Instincts") + public void setBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + } + + public _3 withBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + return this; + } + + @JsonProperty("Force Powers Known") + public String getForcePowersKnown() { + return forcePowersKnown; + } + + @JsonProperty("Force Powers Known") + public void setForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + } + + public _3 withForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + return this; + } + + @JsonProperty("Force Points") + public String getForcePoints() { + return forcePoints; + } + + @JsonProperty("Force Points") + public void setForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + } + + public _3 withForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + return this; + } + + @JsonProperty("Max Power Level") + public String getMaxPowerLevel() { + return maxPowerLevel; + } + + @JsonProperty("Max Power Level") + public void setMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + } + + public _3 withMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + return this; + } + + @JsonProperty("Force-Empowered Casting Options") + public String getForceEmpoweredCastingOptions() { + return forceEmpoweredCastingOptions; + } + + @JsonProperty("Force-Empowered Casting Options") + public void setForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + } + + public _3 withForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + return this; + } + + @JsonProperty("Tech Powers Known") + public String getTechPowersKnown() { + return techPowersKnown; + } + + @JsonProperty("Tech Powers Known") + public void setTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + } + + public _3 withTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + return this; + } + + @JsonProperty("Tech Points") + public String getTechPoints() { + return techPoints; + } + + @JsonProperty("Tech Points") + public void setTechPoints(String techPoints) { + this.techPoints = techPoints; + } + + public _3 withTechPoints(String techPoints) { + this.techPoints = techPoints; + return this; + } + + @JsonProperty("Potent Aptitude") + public String getPotentAptitude() { + return potentAptitude; + } + + @JsonProperty("Potent Aptitude") + public void setPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + } + + public _3 withPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + return this; + } + + @JsonProperty("Modification Slots") + public String getModificationSlots() { + return modificationSlots; + } + + @JsonProperty("Modification Slots") + public void setModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + } + + public _3 withModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + return this; + } + + @JsonProperty("Maneuvers Known") + public String getManeuversKnown() { + return maneuversKnown; + } + + @JsonProperty("Maneuvers Known") + public void setManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + } + + public _3 withManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + return this; + } + + @JsonProperty("Superiority Dice Quantity") + public String getSuperiorityDiceQuantity() { + return superiorityDiceQuantity; + } + + @JsonProperty("Superiority Dice Quantity") + public void setSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + } + + public _3 withSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + return this; + } + + @JsonProperty("Superiority Dice Size") + public String getSuperiorityDiceSize() { + return superiorityDiceSize; + } + + @JsonProperty("Superiority Dice Size") + public void setSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + } + + public _3 withSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + return this; + } + + @JsonProperty("Strategies Known") + public String getStrategiesKnown() { + return strategiesKnown; + } + + @JsonProperty("Strategies Known") + public void setStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + } + + public _3 withStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + return this; + } + + @JsonProperty("Focused Strikes") + public String getFocusedStrikes() { + return focusedStrikes; + } + + @JsonProperty("Focused Strikes") + public void setFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + } + + public _3 withFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + return this; + } + + @JsonProperty("Auras Known") + public String getAurasKnown() { + return aurasKnown; + } + + @JsonProperty("Auras Known") + public void setAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + } + + public _3 withAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + return this; + } + + @JsonProperty("Aura Radius") + public String getAuraRadius() { + return auraRadius; + } + + @JsonProperty("Aura Radius") + public void setAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + } + + public _3 withAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + return this; + } + + @JsonProperty("Martial Arts") + public String getMartialArts() { + return martialArts; + } + + @JsonProperty("Martial Arts") + public void setMartialArts(String martialArts) { + this.martialArts = martialArts; + } + + public _3 withMartialArts(String martialArts) { + this.martialArts = martialArts; + return this; + } + + @JsonProperty("Focus Points") + public String getFocusPoints() { + return focusPoints; + } + + @JsonProperty("Focus Points") + public void setFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + } + + public _3 withFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + return this; + } + + @JsonProperty("Monastic Vows") + public String getMonasticVows() { + return monasticVows; + } + + @JsonProperty("Monastic Vows") + public void setMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + } + + public _3 withMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + return this; + } + + @JsonProperty("Unarmored Movement") + public String getUnarmoredMovement() { + return unarmoredMovement; + } + + @JsonProperty("Unarmored Movement") + public void setUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + } + + public _3 withUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + return this; + } + + @JsonProperty("Sneak Attack") + public String getSneakAttack() { + return sneakAttack; + } + + @JsonProperty("Sneak Attack") + public void setSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + } + + public _3 withSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + return this; + } + + @JsonProperty("Operative Exploits") + public String getOperativeExploits() { + return operativeExploits; + } + + @JsonProperty("Operative Exploits") + public void setOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + } + + public _3 withOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + return this; + } + + @JsonProperty("Discoveries") + public String getDiscoveries() { + return discoveries; + } + + @JsonProperty("Discoveries") + public void setDiscoveries(String discoveries) { + this.discoveries = discoveries; + } + + public _3 withDiscoveries(String discoveries) { + this.discoveries = discoveries; + return this; + } + + @JsonProperty("Ranger's Quarry") + public String getRangerSQuarry() { + return rangerSQuarry; + } + + @JsonProperty("Ranger's Quarry") + public void setRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + } + + public _3 withRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + return this; + } + + @JsonProperty("Routines Known") + public String getRoutinesKnown() { + return routinesKnown; + } + + @JsonProperty("Routines Known") + public void setRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + } + + public _3 withRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + return this; + } + + @JsonProperty("Routine Radius") + public String getRoutineRadius() { + return routineRadius; + } + + @JsonProperty("Routine Radius") + public void setRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + } + + public _3 withRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + return this; + } + + @JsonProperty("Kinetic Combat") + public String getKineticCombat() { + return kineticCombat; + } + + @JsonProperty("Kinetic Combat") + public void setKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + } + + public _3 withKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + return this; + } + + @JsonProperty("Ideals Known") + public String getIdealsKnown() { + return idealsKnown; + } + + @JsonProperty("Ideals Known") + public void setIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + } + + public _3 withIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + return this; + } + + @JsonProperty("Ideal Manifests") + public String getIdealManifests() { + return idealManifests; + } + + @JsonProperty("Ideal Manifests") + public void setIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + } + + public _3 withIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public _3 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(_3 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("level"); + sb.append('='); + sb.append(((this.level == null)?"":this.level)); + sb.append(','); + sb.append("proficiencyBonus"); + sb.append('='); + sb.append(((this.proficiencyBonus == null)?"":this.proficiencyBonus)); + sb.append(','); + sb.append("features"); + sb.append('='); + sb.append(((this.features == null)?"":this.features)); + sb.append(','); + sb.append("rages"); + sb.append('='); + sb.append(((this.rages == null)?"":this.rages)); + sb.append(','); + sb.append("rageDamage"); + sb.append('='); + sb.append(((this.rageDamage == null)?"":this.rageDamage)); + sb.append(','); + sb.append("berserkerInstincts"); + sb.append('='); + sb.append(((this.berserkerInstincts == null)?"":this.berserkerInstincts)); + sb.append(','); + sb.append("forcePowersKnown"); + sb.append('='); + sb.append(((this.forcePowersKnown == null)?"":this.forcePowersKnown)); + sb.append(','); + sb.append("forcePoints"); + sb.append('='); + sb.append(((this.forcePoints == null)?"":this.forcePoints)); + sb.append(','); + sb.append("maxPowerLevel"); + sb.append('='); + sb.append(((this.maxPowerLevel == null)?"":this.maxPowerLevel)); + sb.append(','); + sb.append("forceEmpoweredCastingOptions"); + sb.append('='); + sb.append(((this.forceEmpoweredCastingOptions == null)?"":this.forceEmpoweredCastingOptions)); + sb.append(','); + sb.append("techPowersKnown"); + sb.append('='); + sb.append(((this.techPowersKnown == null)?"":this.techPowersKnown)); + sb.append(','); + sb.append("techPoints"); + sb.append('='); + sb.append(((this.techPoints == null)?"":this.techPoints)); + sb.append(','); + sb.append("potentAptitude"); + sb.append('='); + sb.append(((this.potentAptitude == null)?"":this.potentAptitude)); + sb.append(','); + sb.append("modificationSlots"); + sb.append('='); + sb.append(((this.modificationSlots == null)?"":this.modificationSlots)); + sb.append(','); + sb.append("maneuversKnown"); + sb.append('='); + sb.append(((this.maneuversKnown == null)?"":this.maneuversKnown)); + sb.append(','); + sb.append("superiorityDiceQuantity"); + sb.append('='); + sb.append(((this.superiorityDiceQuantity == null)?"":this.superiorityDiceQuantity)); + sb.append(','); + sb.append("superiorityDiceSize"); + sb.append('='); + sb.append(((this.superiorityDiceSize == null)?"":this.superiorityDiceSize)); + sb.append(','); + sb.append("strategiesKnown"); + sb.append('='); + sb.append(((this.strategiesKnown == null)?"":this.strategiesKnown)); + sb.append(','); + sb.append("focusedStrikes"); + sb.append('='); + sb.append(((this.focusedStrikes == null)?"":this.focusedStrikes)); + sb.append(','); + sb.append("aurasKnown"); + sb.append('='); + sb.append(((this.aurasKnown == null)?"":this.aurasKnown)); + sb.append(','); + sb.append("auraRadius"); + sb.append('='); + sb.append(((this.auraRadius == null)?"":this.auraRadius)); + sb.append(','); + sb.append("martialArts"); + sb.append('='); + sb.append(((this.martialArts == null)?"":this.martialArts)); + sb.append(','); + sb.append("focusPoints"); + sb.append('='); + sb.append(((this.focusPoints == null)?"":this.focusPoints)); + sb.append(','); + sb.append("monasticVows"); + sb.append('='); + sb.append(((this.monasticVows == null)?"":this.monasticVows)); + sb.append(','); + sb.append("unarmoredMovement"); + sb.append('='); + sb.append(((this.unarmoredMovement == null)?"":this.unarmoredMovement)); + sb.append(','); + sb.append("sneakAttack"); + sb.append('='); + sb.append(((this.sneakAttack == null)?"":this.sneakAttack)); + sb.append(','); + sb.append("operativeExploits"); + sb.append('='); + sb.append(((this.operativeExploits == null)?"":this.operativeExploits)); + sb.append(','); + sb.append("discoveries"); + sb.append('='); + sb.append(((this.discoveries == null)?"":this.discoveries)); + sb.append(','); + sb.append("rangerSQuarry"); + sb.append('='); + sb.append(((this.rangerSQuarry == null)?"":this.rangerSQuarry)); + sb.append(','); + sb.append("routinesKnown"); + sb.append('='); + sb.append(((this.routinesKnown == null)?"":this.routinesKnown)); + sb.append(','); + sb.append("routineRadius"); + sb.append('='); + sb.append(((this.routineRadius == null)?"":this.routineRadius)); + sb.append(','); + sb.append("kineticCombat"); + sb.append('='); + sb.append(((this.kineticCombat == null)?"":this.kineticCombat)); + sb.append(','); + sb.append("idealsKnown"); + sb.append('='); + sb.append(((this.idealsKnown == null)?"":this.idealsKnown)); + sb.append(','); + sb.append("idealManifests"); + sb.append('='); + sb.append(((this.idealManifests == null)?"":this.idealManifests)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.superiorityDiceQuantity == null)? 0 :this.superiorityDiceQuantity.hashCode())); + result = ((result* 31)+((this.forceEmpoweredCastingOptions == null)? 0 :this.forceEmpoweredCastingOptions.hashCode())); + result = ((result* 31)+((this.kineticCombat == null)? 0 :this.kineticCombat.hashCode())); + result = ((result* 31)+((this.forcePoints == null)? 0 :this.forcePoints.hashCode())); + result = ((result* 31)+((this.potentAptitude == null)? 0 :this.potentAptitude.hashCode())); + result = ((result* 31)+((this.auraRadius == null)? 0 :this.auraRadius.hashCode())); + result = ((result* 31)+((this.proficiencyBonus == null)? 0 :this.proficiencyBonus.hashCode())); + result = ((result* 31)+((this.maneuversKnown == null)? 0 :this.maneuversKnown.hashCode())); + result = ((result* 31)+((this.monasticVows == null)? 0 :this.monasticVows.hashCode())); + result = ((result* 31)+((this.techPowersKnown == null)? 0 :this.techPowersKnown.hashCode())); + result = ((result* 31)+((this.focusPoints == null)? 0 :this.focusPoints.hashCode())); + result = ((result* 31)+((this.features == null)? 0 :this.features.hashCode())); + result = ((result* 31)+((this.maxPowerLevel == null)? 0 :this.maxPowerLevel.hashCode())); + result = ((result* 31)+((this.berserkerInstincts == null)? 0 :this.berserkerInstincts.hashCode())); + result = ((result* 31)+((this.aurasKnown == null)? 0 :this.aurasKnown.hashCode())); + result = ((result* 31)+((this.rangerSQuarry == null)? 0 :this.rangerSQuarry.hashCode())); + result = ((result* 31)+((this.idealManifests == null)? 0 :this.idealManifests.hashCode())); + result = ((result* 31)+((this.focusedStrikes == null)? 0 :this.focusedStrikes.hashCode())); + result = ((result* 31)+((this.level == null)? 0 :this.level.hashCode())); + result = ((result* 31)+((this.operativeExploits == null)? 0 :this.operativeExploits.hashCode())); + result = ((result* 31)+((this.sneakAttack == null)? 0 :this.sneakAttack.hashCode())); + result = ((result* 31)+((this.idealsKnown == null)? 0 :this.idealsKnown.hashCode())); + result = ((result* 31)+((this.strategiesKnown == null)? 0 :this.strategiesKnown.hashCode())); + result = ((result* 31)+((this.techPoints == null)? 0 :this.techPoints.hashCode())); + result = ((result* 31)+((this.rages == null)? 0 :this.rages.hashCode())); + result = ((result* 31)+((this.routinesKnown == null)? 0 :this.routinesKnown.hashCode())); + result = ((result* 31)+((this.unarmoredMovement == null)? 0 :this.unarmoredMovement.hashCode())); + result = ((result* 31)+((this.martialArts == null)? 0 :this.martialArts.hashCode())); + result = ((result* 31)+((this.discoveries == null)? 0 :this.discoveries.hashCode())); + result = ((result* 31)+((this.rageDamage == null)? 0 :this.rageDamage.hashCode())); + result = ((result* 31)+((this.modificationSlots == null)? 0 :this.modificationSlots.hashCode())); + result = ((result* 31)+((this.superiorityDiceSize == null)? 0 :this.superiorityDiceSize.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.routineRadius == null)? 0 :this.routineRadius.hashCode())); + result = ((result* 31)+((this.forcePowersKnown == null)? 0 :this.forcePowersKnown.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof _3) == false) { + return false; + } + _3 rhs = ((_3) other); + return ((((((((((((((((((((((((((((((((((((this.superiorityDiceQuantity == rhs.superiorityDiceQuantity)||((this.superiorityDiceQuantity!= null)&&this.superiorityDiceQuantity.equals(rhs.superiorityDiceQuantity)))&&((this.forceEmpoweredCastingOptions == rhs.forceEmpoweredCastingOptions)||((this.forceEmpoweredCastingOptions!= null)&&this.forceEmpoweredCastingOptions.equals(rhs.forceEmpoweredCastingOptions))))&&((this.kineticCombat == rhs.kineticCombat)||((this.kineticCombat!= null)&&this.kineticCombat.equals(rhs.kineticCombat))))&&((this.forcePoints == rhs.forcePoints)||((this.forcePoints!= null)&&this.forcePoints.equals(rhs.forcePoints))))&&((this.potentAptitude == rhs.potentAptitude)||((this.potentAptitude!= null)&&this.potentAptitude.equals(rhs.potentAptitude))))&&((this.auraRadius == rhs.auraRadius)||((this.auraRadius!= null)&&this.auraRadius.equals(rhs.auraRadius))))&&((this.proficiencyBonus == rhs.proficiencyBonus)||((this.proficiencyBonus!= null)&&this.proficiencyBonus.equals(rhs.proficiencyBonus))))&&((this.maneuversKnown == rhs.maneuversKnown)||((this.maneuversKnown!= null)&&this.maneuversKnown.equals(rhs.maneuversKnown))))&&((this.monasticVows == rhs.monasticVows)||((this.monasticVows!= null)&&this.monasticVows.equals(rhs.monasticVows))))&&((this.techPowersKnown == rhs.techPowersKnown)||((this.techPowersKnown!= null)&&this.techPowersKnown.equals(rhs.techPowersKnown))))&&((this.focusPoints == rhs.focusPoints)||((this.focusPoints!= null)&&this.focusPoints.equals(rhs.focusPoints))))&&((this.features == rhs.features)||((this.features!= null)&&this.features.equals(rhs.features))))&&((this.maxPowerLevel == rhs.maxPowerLevel)||((this.maxPowerLevel!= null)&&this.maxPowerLevel.equals(rhs.maxPowerLevel))))&&((this.berserkerInstincts == rhs.berserkerInstincts)||((this.berserkerInstincts!= null)&&this.berserkerInstincts.equals(rhs.berserkerInstincts))))&&((this.aurasKnown == rhs.aurasKnown)||((this.aurasKnown!= null)&&this.aurasKnown.equals(rhs.aurasKnown))))&&((this.rangerSQuarry == rhs.rangerSQuarry)||((this.rangerSQuarry!= null)&&this.rangerSQuarry.equals(rhs.rangerSQuarry))))&&((this.idealManifests == rhs.idealManifests)||((this.idealManifests!= null)&&this.idealManifests.equals(rhs.idealManifests))))&&((this.focusedStrikes == rhs.focusedStrikes)||((this.focusedStrikes!= null)&&this.focusedStrikes.equals(rhs.focusedStrikes))))&&((this.level == rhs.level)||((this.level!= null)&&this.level.equals(rhs.level))))&&((this.operativeExploits == rhs.operativeExploits)||((this.operativeExploits!= null)&&this.operativeExploits.equals(rhs.operativeExploits))))&&((this.sneakAttack == rhs.sneakAttack)||((this.sneakAttack!= null)&&this.sneakAttack.equals(rhs.sneakAttack))))&&((this.idealsKnown == rhs.idealsKnown)||((this.idealsKnown!= null)&&this.idealsKnown.equals(rhs.idealsKnown))))&&((this.strategiesKnown == rhs.strategiesKnown)||((this.strategiesKnown!= null)&&this.strategiesKnown.equals(rhs.strategiesKnown))))&&((this.techPoints == rhs.techPoints)||((this.techPoints!= null)&&this.techPoints.equals(rhs.techPoints))))&&((this.rages == rhs.rages)||((this.rages!= null)&&this.rages.equals(rhs.rages))))&&((this.routinesKnown == rhs.routinesKnown)||((this.routinesKnown!= null)&&this.routinesKnown.equals(rhs.routinesKnown))))&&((this.unarmoredMovement == rhs.unarmoredMovement)||((this.unarmoredMovement!= null)&&this.unarmoredMovement.equals(rhs.unarmoredMovement))))&&((this.martialArts == rhs.martialArts)||((this.martialArts!= null)&&this.martialArts.equals(rhs.martialArts))))&&((this.discoveries == rhs.discoveries)||((this.discoveries!= null)&&this.discoveries.equals(rhs.discoveries))))&&((this.rageDamage == rhs.rageDamage)||((this.rageDamage!= null)&&this.rageDamage.equals(rhs.rageDamage))))&&((this.modificationSlots == rhs.modificationSlots)||((this.modificationSlots!= null)&&this.modificationSlots.equals(rhs.modificationSlots))))&&((this.superiorityDiceSize == rhs.superiorityDiceSize)||((this.superiorityDiceSize!= null)&&this.superiorityDiceSize.equals(rhs.superiorityDiceSize))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.routineRadius == rhs.routineRadius)||((this.routineRadius!= null)&&this.routineRadius.equals(rhs.routineRadius))))&&((this.forcePowersKnown == rhs.forcePowersKnown)||((this.forcePowersKnown!= null)&&this.forcePowersKnown.equals(rhs.forcePowersKnown)))); + } + +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/model/_4.java b/src/main/java/org/misoenergy/hackday/kessel_run/model/_4.java new file mode 100644 index 0000000..b7cf02a --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/model/_4.java @@ -0,0 +1,855 @@ + +package org.misoenergy.hackday.kessel_run.model; + +import java.util.HashMap; +import java.util.Map; +import javax.annotation.processing.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "Level", + "Proficiency Bonus", + "Features", + "Rages", + "Rage Damage", + "Berserker Instincts", + "Force Powers Known", + "Force Points", + "Max Power Level", + "Force-Empowered Casting Options", + "Tech Powers Known", + "Tech Points", + "Potent Aptitude", + "Modification Slots", + "Maneuvers Known", + "Superiority Dice Quantity", + "Superiority Dice Size", + "Strategies Known", + "Focused Strikes", + "Auras Known", + "Aura Radius", + "Martial Arts", + "Focus Points", + "Monastic Vows", + "Unarmored Movement", + "Sneak Attack", + "Operative Exploits", + "Discoveries", + "Ranger's Quarry", + "Routines Known", + "Routine Radius", + "Kinetic Combat", + "Ideals Known", + "Ideal Manifests" +}) +@Generated("jsonschema2pojo") +public class _4 { + + @JsonProperty("Level") + private String level; + @JsonProperty("Proficiency Bonus") + private String proficiencyBonus; + @JsonProperty("Features") + private String features; + @JsonProperty("Rages") + private String rages; + @JsonProperty("Rage Damage") + private String rageDamage; + @JsonProperty("Berserker Instincts") + private String berserkerInstincts; + @JsonProperty("Force Powers Known") + private String forcePowersKnown; + @JsonProperty("Force Points") + private String forcePoints; + @JsonProperty("Max Power Level") + private String maxPowerLevel; + @JsonProperty("Force-Empowered Casting Options") + private String forceEmpoweredCastingOptions; + @JsonProperty("Tech Powers Known") + private String techPowersKnown; + @JsonProperty("Tech Points") + private String techPoints; + @JsonProperty("Potent Aptitude") + private String potentAptitude; + @JsonProperty("Modification Slots") + private String modificationSlots; + @JsonProperty("Maneuvers Known") + private String maneuversKnown; + @JsonProperty("Superiority Dice Quantity") + private String superiorityDiceQuantity; + @JsonProperty("Superiority Dice Size") + private String superiorityDiceSize; + @JsonProperty("Strategies Known") + private String strategiesKnown; + @JsonProperty("Focused Strikes") + private String focusedStrikes; + @JsonProperty("Auras Known") + private String aurasKnown; + @JsonProperty("Aura Radius") + private String auraRadius; + @JsonProperty("Martial Arts") + private String martialArts; + @JsonProperty("Focus Points") + private String focusPoints; + @JsonProperty("Monastic Vows") + private String monasticVows; + @JsonProperty("Unarmored Movement") + private String unarmoredMovement; + @JsonProperty("Sneak Attack") + private String sneakAttack; + @JsonProperty("Operative Exploits") + private String operativeExploits; + @JsonProperty("Discoveries") + private String discoveries; + @JsonProperty("Ranger's Quarry") + private String rangerSQuarry; + @JsonProperty("Routines Known") + private String routinesKnown; + @JsonProperty("Routine Radius") + private String routineRadius; + @JsonProperty("Kinetic Combat") + private String kineticCombat; + @JsonProperty("Ideals Known") + private String idealsKnown; + @JsonProperty("Ideal Manifests") + private String idealManifests; + @JsonIgnore + private Map additionalProperties = new HashMap(); + + @JsonProperty("Level") + public String getLevel() { + return level; + } + + @JsonProperty("Level") + public void setLevel(String level) { + this.level = level; + } + + public _4 withLevel(String level) { + this.level = level; + return this; + } + + @JsonProperty("Proficiency Bonus") + public String getProficiencyBonus() { + return proficiencyBonus; + } + + @JsonProperty("Proficiency Bonus") + public void setProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + } + + public _4 withProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + return this; + } + + @JsonProperty("Features") + public String getFeatures() { + return features; + } + + @JsonProperty("Features") + public void setFeatures(String features) { + this.features = features; + } + + public _4 withFeatures(String features) { + this.features = features; + return this; + } + + @JsonProperty("Rages") + public String getRages() { + return rages; + } + + @JsonProperty("Rages") + public void setRages(String rages) { + this.rages = rages; + } + + public _4 withRages(String rages) { + this.rages = rages; + return this; + } + + @JsonProperty("Rage Damage") + public String getRageDamage() { + return rageDamage; + } + + @JsonProperty("Rage Damage") + public void setRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + } + + public _4 withRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + return this; + } + + @JsonProperty("Berserker Instincts") + public String getBerserkerInstincts() { + return berserkerInstincts; + } + + @JsonProperty("Berserker Instincts") + public void setBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + } + + public _4 withBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + return this; + } + + @JsonProperty("Force Powers Known") + public String getForcePowersKnown() { + return forcePowersKnown; + } + + @JsonProperty("Force Powers Known") + public void setForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + } + + public _4 withForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + return this; + } + + @JsonProperty("Force Points") + public String getForcePoints() { + return forcePoints; + } + + @JsonProperty("Force Points") + public void setForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + } + + public _4 withForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + return this; + } + + @JsonProperty("Max Power Level") + public String getMaxPowerLevel() { + return maxPowerLevel; + } + + @JsonProperty("Max Power Level") + public void setMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + } + + public _4 withMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + return this; + } + + @JsonProperty("Force-Empowered Casting Options") + public String getForceEmpoweredCastingOptions() { + return forceEmpoweredCastingOptions; + } + + @JsonProperty("Force-Empowered Casting Options") + public void setForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + } + + public _4 withForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + return this; + } + + @JsonProperty("Tech Powers Known") + public String getTechPowersKnown() { + return techPowersKnown; + } + + @JsonProperty("Tech Powers Known") + public void setTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + } + + public _4 withTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + return this; + } + + @JsonProperty("Tech Points") + public String getTechPoints() { + return techPoints; + } + + @JsonProperty("Tech Points") + public void setTechPoints(String techPoints) { + this.techPoints = techPoints; + } + + public _4 withTechPoints(String techPoints) { + this.techPoints = techPoints; + return this; + } + + @JsonProperty("Potent Aptitude") + public String getPotentAptitude() { + return potentAptitude; + } + + @JsonProperty("Potent Aptitude") + public void setPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + } + + public _4 withPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + return this; + } + + @JsonProperty("Modification Slots") + public String getModificationSlots() { + return modificationSlots; + } + + @JsonProperty("Modification Slots") + public void setModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + } + + public _4 withModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + return this; + } + + @JsonProperty("Maneuvers Known") + public String getManeuversKnown() { + return maneuversKnown; + } + + @JsonProperty("Maneuvers Known") + public void setManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + } + + public _4 withManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + return this; + } + + @JsonProperty("Superiority Dice Quantity") + public String getSuperiorityDiceQuantity() { + return superiorityDiceQuantity; + } + + @JsonProperty("Superiority Dice Quantity") + public void setSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + } + + public _4 withSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + return this; + } + + @JsonProperty("Superiority Dice Size") + public String getSuperiorityDiceSize() { + return superiorityDiceSize; + } + + @JsonProperty("Superiority Dice Size") + public void setSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + } + + public _4 withSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + return this; + } + + @JsonProperty("Strategies Known") + public String getStrategiesKnown() { + return strategiesKnown; + } + + @JsonProperty("Strategies Known") + public void setStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + } + + public _4 withStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + return this; + } + + @JsonProperty("Focused Strikes") + public String getFocusedStrikes() { + return focusedStrikes; + } + + @JsonProperty("Focused Strikes") + public void setFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + } + + public _4 withFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + return this; + } + + @JsonProperty("Auras Known") + public String getAurasKnown() { + return aurasKnown; + } + + @JsonProperty("Auras Known") + public void setAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + } + + public _4 withAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + return this; + } + + @JsonProperty("Aura Radius") + public String getAuraRadius() { + return auraRadius; + } + + @JsonProperty("Aura Radius") + public void setAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + } + + public _4 withAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + return this; + } + + @JsonProperty("Martial Arts") + public String getMartialArts() { + return martialArts; + } + + @JsonProperty("Martial Arts") + public void setMartialArts(String martialArts) { + this.martialArts = martialArts; + } + + public _4 withMartialArts(String martialArts) { + this.martialArts = martialArts; + return this; + } + + @JsonProperty("Focus Points") + public String getFocusPoints() { + return focusPoints; + } + + @JsonProperty("Focus Points") + public void setFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + } + + public _4 withFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + return this; + } + + @JsonProperty("Monastic Vows") + public String getMonasticVows() { + return monasticVows; + } + + @JsonProperty("Monastic Vows") + public void setMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + } + + public _4 withMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + return this; + } + + @JsonProperty("Unarmored Movement") + public String getUnarmoredMovement() { + return unarmoredMovement; + } + + @JsonProperty("Unarmored Movement") + public void setUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + } + + public _4 withUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + return this; + } + + @JsonProperty("Sneak Attack") + public String getSneakAttack() { + return sneakAttack; + } + + @JsonProperty("Sneak Attack") + public void setSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + } + + public _4 withSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + return this; + } + + @JsonProperty("Operative Exploits") + public String getOperativeExploits() { + return operativeExploits; + } + + @JsonProperty("Operative Exploits") + public void setOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + } + + public _4 withOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + return this; + } + + @JsonProperty("Discoveries") + public String getDiscoveries() { + return discoveries; + } + + @JsonProperty("Discoveries") + public void setDiscoveries(String discoveries) { + this.discoveries = discoveries; + } + + public _4 withDiscoveries(String discoveries) { + this.discoveries = discoveries; + return this; + } + + @JsonProperty("Ranger's Quarry") + public String getRangerSQuarry() { + return rangerSQuarry; + } + + @JsonProperty("Ranger's Quarry") + public void setRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + } + + public _4 withRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + return this; + } + + @JsonProperty("Routines Known") + public String getRoutinesKnown() { + return routinesKnown; + } + + @JsonProperty("Routines Known") + public void setRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + } + + public _4 withRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + return this; + } + + @JsonProperty("Routine Radius") + public String getRoutineRadius() { + return routineRadius; + } + + @JsonProperty("Routine Radius") + public void setRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + } + + public _4 withRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + return this; + } + + @JsonProperty("Kinetic Combat") + public String getKineticCombat() { + return kineticCombat; + } + + @JsonProperty("Kinetic Combat") + public void setKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + } + + public _4 withKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + return this; + } + + @JsonProperty("Ideals Known") + public String getIdealsKnown() { + return idealsKnown; + } + + @JsonProperty("Ideals Known") + public void setIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + } + + public _4 withIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + return this; + } + + @JsonProperty("Ideal Manifests") + public String getIdealManifests() { + return idealManifests; + } + + @JsonProperty("Ideal Manifests") + public void setIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + } + + public _4 withIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public _4 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(_4 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("level"); + sb.append('='); + sb.append(((this.level == null)?"":this.level)); + sb.append(','); + sb.append("proficiencyBonus"); + sb.append('='); + sb.append(((this.proficiencyBonus == null)?"":this.proficiencyBonus)); + sb.append(','); + sb.append("features"); + sb.append('='); + sb.append(((this.features == null)?"":this.features)); + sb.append(','); + sb.append("rages"); + sb.append('='); + sb.append(((this.rages == null)?"":this.rages)); + sb.append(','); + sb.append("rageDamage"); + sb.append('='); + sb.append(((this.rageDamage == null)?"":this.rageDamage)); + sb.append(','); + sb.append("berserkerInstincts"); + sb.append('='); + sb.append(((this.berserkerInstincts == null)?"":this.berserkerInstincts)); + sb.append(','); + sb.append("forcePowersKnown"); + sb.append('='); + sb.append(((this.forcePowersKnown == null)?"":this.forcePowersKnown)); + sb.append(','); + sb.append("forcePoints"); + sb.append('='); + sb.append(((this.forcePoints == null)?"":this.forcePoints)); + sb.append(','); + sb.append("maxPowerLevel"); + sb.append('='); + sb.append(((this.maxPowerLevel == null)?"":this.maxPowerLevel)); + sb.append(','); + sb.append("forceEmpoweredCastingOptions"); + sb.append('='); + sb.append(((this.forceEmpoweredCastingOptions == null)?"":this.forceEmpoweredCastingOptions)); + sb.append(','); + sb.append("techPowersKnown"); + sb.append('='); + sb.append(((this.techPowersKnown == null)?"":this.techPowersKnown)); + sb.append(','); + sb.append("techPoints"); + sb.append('='); + sb.append(((this.techPoints == null)?"":this.techPoints)); + sb.append(','); + sb.append("potentAptitude"); + sb.append('='); + sb.append(((this.potentAptitude == null)?"":this.potentAptitude)); + sb.append(','); + sb.append("modificationSlots"); + sb.append('='); + sb.append(((this.modificationSlots == null)?"":this.modificationSlots)); + sb.append(','); + sb.append("maneuversKnown"); + sb.append('='); + sb.append(((this.maneuversKnown == null)?"":this.maneuversKnown)); + sb.append(','); + sb.append("superiorityDiceQuantity"); + sb.append('='); + sb.append(((this.superiorityDiceQuantity == null)?"":this.superiorityDiceQuantity)); + sb.append(','); + sb.append("superiorityDiceSize"); + sb.append('='); + sb.append(((this.superiorityDiceSize == null)?"":this.superiorityDiceSize)); + sb.append(','); + sb.append("strategiesKnown"); + sb.append('='); + sb.append(((this.strategiesKnown == null)?"":this.strategiesKnown)); + sb.append(','); + sb.append("focusedStrikes"); + sb.append('='); + sb.append(((this.focusedStrikes == null)?"":this.focusedStrikes)); + sb.append(','); + sb.append("aurasKnown"); + sb.append('='); + sb.append(((this.aurasKnown == null)?"":this.aurasKnown)); + sb.append(','); + sb.append("auraRadius"); + sb.append('='); + sb.append(((this.auraRadius == null)?"":this.auraRadius)); + sb.append(','); + sb.append("martialArts"); + sb.append('='); + sb.append(((this.martialArts == null)?"":this.martialArts)); + sb.append(','); + sb.append("focusPoints"); + sb.append('='); + sb.append(((this.focusPoints == null)?"":this.focusPoints)); + sb.append(','); + sb.append("monasticVows"); + sb.append('='); + sb.append(((this.monasticVows == null)?"":this.monasticVows)); + sb.append(','); + sb.append("unarmoredMovement"); + sb.append('='); + sb.append(((this.unarmoredMovement == null)?"":this.unarmoredMovement)); + sb.append(','); + sb.append("sneakAttack"); + sb.append('='); + sb.append(((this.sneakAttack == null)?"":this.sneakAttack)); + sb.append(','); + sb.append("operativeExploits"); + sb.append('='); + sb.append(((this.operativeExploits == null)?"":this.operativeExploits)); + sb.append(','); + sb.append("discoveries"); + sb.append('='); + sb.append(((this.discoveries == null)?"":this.discoveries)); + sb.append(','); + sb.append("rangerSQuarry"); + sb.append('='); + sb.append(((this.rangerSQuarry == null)?"":this.rangerSQuarry)); + sb.append(','); + sb.append("routinesKnown"); + sb.append('='); + sb.append(((this.routinesKnown == null)?"":this.routinesKnown)); + sb.append(','); + sb.append("routineRadius"); + sb.append('='); + sb.append(((this.routineRadius == null)?"":this.routineRadius)); + sb.append(','); + sb.append("kineticCombat"); + sb.append('='); + sb.append(((this.kineticCombat == null)?"":this.kineticCombat)); + sb.append(','); + sb.append("idealsKnown"); + sb.append('='); + sb.append(((this.idealsKnown == null)?"":this.idealsKnown)); + sb.append(','); + sb.append("idealManifests"); + sb.append('='); + sb.append(((this.idealManifests == null)?"":this.idealManifests)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.superiorityDiceQuantity == null)? 0 :this.superiorityDiceQuantity.hashCode())); + result = ((result* 31)+((this.forceEmpoweredCastingOptions == null)? 0 :this.forceEmpoweredCastingOptions.hashCode())); + result = ((result* 31)+((this.kineticCombat == null)? 0 :this.kineticCombat.hashCode())); + result = ((result* 31)+((this.forcePoints == null)? 0 :this.forcePoints.hashCode())); + result = ((result* 31)+((this.potentAptitude == null)? 0 :this.potentAptitude.hashCode())); + result = ((result* 31)+((this.auraRadius == null)? 0 :this.auraRadius.hashCode())); + result = ((result* 31)+((this.proficiencyBonus == null)? 0 :this.proficiencyBonus.hashCode())); + result = ((result* 31)+((this.maneuversKnown == null)? 0 :this.maneuversKnown.hashCode())); + result = ((result* 31)+((this.monasticVows == null)? 0 :this.monasticVows.hashCode())); + result = ((result* 31)+((this.techPowersKnown == null)? 0 :this.techPowersKnown.hashCode())); + result = ((result* 31)+((this.focusPoints == null)? 0 :this.focusPoints.hashCode())); + result = ((result* 31)+((this.features == null)? 0 :this.features.hashCode())); + result = ((result* 31)+((this.maxPowerLevel == null)? 0 :this.maxPowerLevel.hashCode())); + result = ((result* 31)+((this.berserkerInstincts == null)? 0 :this.berserkerInstincts.hashCode())); + result = ((result* 31)+((this.aurasKnown == null)? 0 :this.aurasKnown.hashCode())); + result = ((result* 31)+((this.rangerSQuarry == null)? 0 :this.rangerSQuarry.hashCode())); + result = ((result* 31)+((this.idealManifests == null)? 0 :this.idealManifests.hashCode())); + result = ((result* 31)+((this.focusedStrikes == null)? 0 :this.focusedStrikes.hashCode())); + result = ((result* 31)+((this.level == null)? 0 :this.level.hashCode())); + result = ((result* 31)+((this.operativeExploits == null)? 0 :this.operativeExploits.hashCode())); + result = ((result* 31)+((this.sneakAttack == null)? 0 :this.sneakAttack.hashCode())); + result = ((result* 31)+((this.idealsKnown == null)? 0 :this.idealsKnown.hashCode())); + result = ((result* 31)+((this.strategiesKnown == null)? 0 :this.strategiesKnown.hashCode())); + result = ((result* 31)+((this.techPoints == null)? 0 :this.techPoints.hashCode())); + result = ((result* 31)+((this.rages == null)? 0 :this.rages.hashCode())); + result = ((result* 31)+((this.routinesKnown == null)? 0 :this.routinesKnown.hashCode())); + result = ((result* 31)+((this.unarmoredMovement == null)? 0 :this.unarmoredMovement.hashCode())); + result = ((result* 31)+((this.martialArts == null)? 0 :this.martialArts.hashCode())); + result = ((result* 31)+((this.discoveries == null)? 0 :this.discoveries.hashCode())); + result = ((result* 31)+((this.rageDamage == null)? 0 :this.rageDamage.hashCode())); + result = ((result* 31)+((this.modificationSlots == null)? 0 :this.modificationSlots.hashCode())); + result = ((result* 31)+((this.superiorityDiceSize == null)? 0 :this.superiorityDiceSize.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.routineRadius == null)? 0 :this.routineRadius.hashCode())); + result = ((result* 31)+((this.forcePowersKnown == null)? 0 :this.forcePowersKnown.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof _4) == false) { + return false; + } + _4 rhs = ((_4) other); + return ((((((((((((((((((((((((((((((((((((this.superiorityDiceQuantity == rhs.superiorityDiceQuantity)||((this.superiorityDiceQuantity!= null)&&this.superiorityDiceQuantity.equals(rhs.superiorityDiceQuantity)))&&((this.forceEmpoweredCastingOptions == rhs.forceEmpoweredCastingOptions)||((this.forceEmpoweredCastingOptions!= null)&&this.forceEmpoweredCastingOptions.equals(rhs.forceEmpoweredCastingOptions))))&&((this.kineticCombat == rhs.kineticCombat)||((this.kineticCombat!= null)&&this.kineticCombat.equals(rhs.kineticCombat))))&&((this.forcePoints == rhs.forcePoints)||((this.forcePoints!= null)&&this.forcePoints.equals(rhs.forcePoints))))&&((this.potentAptitude == rhs.potentAptitude)||((this.potentAptitude!= null)&&this.potentAptitude.equals(rhs.potentAptitude))))&&((this.auraRadius == rhs.auraRadius)||((this.auraRadius!= null)&&this.auraRadius.equals(rhs.auraRadius))))&&((this.proficiencyBonus == rhs.proficiencyBonus)||((this.proficiencyBonus!= null)&&this.proficiencyBonus.equals(rhs.proficiencyBonus))))&&((this.maneuversKnown == rhs.maneuversKnown)||((this.maneuversKnown!= null)&&this.maneuversKnown.equals(rhs.maneuversKnown))))&&((this.monasticVows == rhs.monasticVows)||((this.monasticVows!= null)&&this.monasticVows.equals(rhs.monasticVows))))&&((this.techPowersKnown == rhs.techPowersKnown)||((this.techPowersKnown!= null)&&this.techPowersKnown.equals(rhs.techPowersKnown))))&&((this.focusPoints == rhs.focusPoints)||((this.focusPoints!= null)&&this.focusPoints.equals(rhs.focusPoints))))&&((this.features == rhs.features)||((this.features!= null)&&this.features.equals(rhs.features))))&&((this.maxPowerLevel == rhs.maxPowerLevel)||((this.maxPowerLevel!= null)&&this.maxPowerLevel.equals(rhs.maxPowerLevel))))&&((this.berserkerInstincts == rhs.berserkerInstincts)||((this.berserkerInstincts!= null)&&this.berserkerInstincts.equals(rhs.berserkerInstincts))))&&((this.aurasKnown == rhs.aurasKnown)||((this.aurasKnown!= null)&&this.aurasKnown.equals(rhs.aurasKnown))))&&((this.rangerSQuarry == rhs.rangerSQuarry)||((this.rangerSQuarry!= null)&&this.rangerSQuarry.equals(rhs.rangerSQuarry))))&&((this.idealManifests == rhs.idealManifests)||((this.idealManifests!= null)&&this.idealManifests.equals(rhs.idealManifests))))&&((this.focusedStrikes == rhs.focusedStrikes)||((this.focusedStrikes!= null)&&this.focusedStrikes.equals(rhs.focusedStrikes))))&&((this.level == rhs.level)||((this.level!= null)&&this.level.equals(rhs.level))))&&((this.operativeExploits == rhs.operativeExploits)||((this.operativeExploits!= null)&&this.operativeExploits.equals(rhs.operativeExploits))))&&((this.sneakAttack == rhs.sneakAttack)||((this.sneakAttack!= null)&&this.sneakAttack.equals(rhs.sneakAttack))))&&((this.idealsKnown == rhs.idealsKnown)||((this.idealsKnown!= null)&&this.idealsKnown.equals(rhs.idealsKnown))))&&((this.strategiesKnown == rhs.strategiesKnown)||((this.strategiesKnown!= null)&&this.strategiesKnown.equals(rhs.strategiesKnown))))&&((this.techPoints == rhs.techPoints)||((this.techPoints!= null)&&this.techPoints.equals(rhs.techPoints))))&&((this.rages == rhs.rages)||((this.rages!= null)&&this.rages.equals(rhs.rages))))&&((this.routinesKnown == rhs.routinesKnown)||((this.routinesKnown!= null)&&this.routinesKnown.equals(rhs.routinesKnown))))&&((this.unarmoredMovement == rhs.unarmoredMovement)||((this.unarmoredMovement!= null)&&this.unarmoredMovement.equals(rhs.unarmoredMovement))))&&((this.martialArts == rhs.martialArts)||((this.martialArts!= null)&&this.martialArts.equals(rhs.martialArts))))&&((this.discoveries == rhs.discoveries)||((this.discoveries!= null)&&this.discoveries.equals(rhs.discoveries))))&&((this.rageDamage == rhs.rageDamage)||((this.rageDamage!= null)&&this.rageDamage.equals(rhs.rageDamage))))&&((this.modificationSlots == rhs.modificationSlots)||((this.modificationSlots!= null)&&this.modificationSlots.equals(rhs.modificationSlots))))&&((this.superiorityDiceSize == rhs.superiorityDiceSize)||((this.superiorityDiceSize!= null)&&this.superiorityDiceSize.equals(rhs.superiorityDiceSize))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.routineRadius == rhs.routineRadius)||((this.routineRadius!= null)&&this.routineRadius.equals(rhs.routineRadius))))&&((this.forcePowersKnown == rhs.forcePowersKnown)||((this.forcePowersKnown!= null)&&this.forcePowersKnown.equals(rhs.forcePowersKnown)))); + } + +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/model/_5.java b/src/main/java/org/misoenergy/hackday/kessel_run/model/_5.java new file mode 100644 index 0000000..b16cd28 --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/model/_5.java @@ -0,0 +1,855 @@ + +package org.misoenergy.hackday.kessel_run.model; + +import java.util.HashMap; +import java.util.Map; +import javax.annotation.processing.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "Level", + "Proficiency Bonus", + "Features", + "Rages", + "Rage Damage", + "Berserker Instincts", + "Force Powers Known", + "Force Points", + "Max Power Level", + "Force-Empowered Casting Options", + "Tech Powers Known", + "Tech Points", + "Potent Aptitude", + "Modification Slots", + "Maneuvers Known", + "Superiority Dice Quantity", + "Superiority Dice Size", + "Strategies Known", + "Focused Strikes", + "Auras Known", + "Aura Radius", + "Martial Arts", + "Focus Points", + "Monastic Vows", + "Unarmored Movement", + "Sneak Attack", + "Operative Exploits", + "Discoveries", + "Ranger's Quarry", + "Routines Known", + "Routine Radius", + "Kinetic Combat", + "Ideals Known", + "Ideal Manifests" +}) +@Generated("jsonschema2pojo") +public class _5 { + + @JsonProperty("Level") + private String level; + @JsonProperty("Proficiency Bonus") + private String proficiencyBonus; + @JsonProperty("Features") + private String features; + @JsonProperty("Rages") + private String rages; + @JsonProperty("Rage Damage") + private String rageDamage; + @JsonProperty("Berserker Instincts") + private String berserkerInstincts; + @JsonProperty("Force Powers Known") + private String forcePowersKnown; + @JsonProperty("Force Points") + private String forcePoints; + @JsonProperty("Max Power Level") + private String maxPowerLevel; + @JsonProperty("Force-Empowered Casting Options") + private String forceEmpoweredCastingOptions; + @JsonProperty("Tech Powers Known") + private String techPowersKnown; + @JsonProperty("Tech Points") + private String techPoints; + @JsonProperty("Potent Aptitude") + private String potentAptitude; + @JsonProperty("Modification Slots") + private String modificationSlots; + @JsonProperty("Maneuvers Known") + private String maneuversKnown; + @JsonProperty("Superiority Dice Quantity") + private String superiorityDiceQuantity; + @JsonProperty("Superiority Dice Size") + private String superiorityDiceSize; + @JsonProperty("Strategies Known") + private String strategiesKnown; + @JsonProperty("Focused Strikes") + private String focusedStrikes; + @JsonProperty("Auras Known") + private String aurasKnown; + @JsonProperty("Aura Radius") + private String auraRadius; + @JsonProperty("Martial Arts") + private String martialArts; + @JsonProperty("Focus Points") + private String focusPoints; + @JsonProperty("Monastic Vows") + private String monasticVows; + @JsonProperty("Unarmored Movement") + private String unarmoredMovement; + @JsonProperty("Sneak Attack") + private String sneakAttack; + @JsonProperty("Operative Exploits") + private String operativeExploits; + @JsonProperty("Discoveries") + private String discoveries; + @JsonProperty("Ranger's Quarry") + private String rangerSQuarry; + @JsonProperty("Routines Known") + private String routinesKnown; + @JsonProperty("Routine Radius") + private String routineRadius; + @JsonProperty("Kinetic Combat") + private String kineticCombat; + @JsonProperty("Ideals Known") + private String idealsKnown; + @JsonProperty("Ideal Manifests") + private String idealManifests; + @JsonIgnore + private Map additionalProperties = new HashMap(); + + @JsonProperty("Level") + public String getLevel() { + return level; + } + + @JsonProperty("Level") + public void setLevel(String level) { + this.level = level; + } + + public _5 withLevel(String level) { + this.level = level; + return this; + } + + @JsonProperty("Proficiency Bonus") + public String getProficiencyBonus() { + return proficiencyBonus; + } + + @JsonProperty("Proficiency Bonus") + public void setProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + } + + public _5 withProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + return this; + } + + @JsonProperty("Features") + public String getFeatures() { + return features; + } + + @JsonProperty("Features") + public void setFeatures(String features) { + this.features = features; + } + + public _5 withFeatures(String features) { + this.features = features; + return this; + } + + @JsonProperty("Rages") + public String getRages() { + return rages; + } + + @JsonProperty("Rages") + public void setRages(String rages) { + this.rages = rages; + } + + public _5 withRages(String rages) { + this.rages = rages; + return this; + } + + @JsonProperty("Rage Damage") + public String getRageDamage() { + return rageDamage; + } + + @JsonProperty("Rage Damage") + public void setRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + } + + public _5 withRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + return this; + } + + @JsonProperty("Berserker Instincts") + public String getBerserkerInstincts() { + return berserkerInstincts; + } + + @JsonProperty("Berserker Instincts") + public void setBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + } + + public _5 withBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + return this; + } + + @JsonProperty("Force Powers Known") + public String getForcePowersKnown() { + return forcePowersKnown; + } + + @JsonProperty("Force Powers Known") + public void setForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + } + + public _5 withForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + return this; + } + + @JsonProperty("Force Points") + public String getForcePoints() { + return forcePoints; + } + + @JsonProperty("Force Points") + public void setForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + } + + public _5 withForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + return this; + } + + @JsonProperty("Max Power Level") + public String getMaxPowerLevel() { + return maxPowerLevel; + } + + @JsonProperty("Max Power Level") + public void setMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + } + + public _5 withMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + return this; + } + + @JsonProperty("Force-Empowered Casting Options") + public String getForceEmpoweredCastingOptions() { + return forceEmpoweredCastingOptions; + } + + @JsonProperty("Force-Empowered Casting Options") + public void setForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + } + + public _5 withForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + return this; + } + + @JsonProperty("Tech Powers Known") + public String getTechPowersKnown() { + return techPowersKnown; + } + + @JsonProperty("Tech Powers Known") + public void setTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + } + + public _5 withTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + return this; + } + + @JsonProperty("Tech Points") + public String getTechPoints() { + return techPoints; + } + + @JsonProperty("Tech Points") + public void setTechPoints(String techPoints) { + this.techPoints = techPoints; + } + + public _5 withTechPoints(String techPoints) { + this.techPoints = techPoints; + return this; + } + + @JsonProperty("Potent Aptitude") + public String getPotentAptitude() { + return potentAptitude; + } + + @JsonProperty("Potent Aptitude") + public void setPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + } + + public _5 withPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + return this; + } + + @JsonProperty("Modification Slots") + public String getModificationSlots() { + return modificationSlots; + } + + @JsonProperty("Modification Slots") + public void setModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + } + + public _5 withModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + return this; + } + + @JsonProperty("Maneuvers Known") + public String getManeuversKnown() { + return maneuversKnown; + } + + @JsonProperty("Maneuvers Known") + public void setManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + } + + public _5 withManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + return this; + } + + @JsonProperty("Superiority Dice Quantity") + public String getSuperiorityDiceQuantity() { + return superiorityDiceQuantity; + } + + @JsonProperty("Superiority Dice Quantity") + public void setSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + } + + public _5 withSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + return this; + } + + @JsonProperty("Superiority Dice Size") + public String getSuperiorityDiceSize() { + return superiorityDiceSize; + } + + @JsonProperty("Superiority Dice Size") + public void setSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + } + + public _5 withSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + return this; + } + + @JsonProperty("Strategies Known") + public String getStrategiesKnown() { + return strategiesKnown; + } + + @JsonProperty("Strategies Known") + public void setStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + } + + public _5 withStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + return this; + } + + @JsonProperty("Focused Strikes") + public String getFocusedStrikes() { + return focusedStrikes; + } + + @JsonProperty("Focused Strikes") + public void setFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + } + + public _5 withFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + return this; + } + + @JsonProperty("Auras Known") + public String getAurasKnown() { + return aurasKnown; + } + + @JsonProperty("Auras Known") + public void setAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + } + + public _5 withAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + return this; + } + + @JsonProperty("Aura Radius") + public String getAuraRadius() { + return auraRadius; + } + + @JsonProperty("Aura Radius") + public void setAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + } + + public _5 withAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + return this; + } + + @JsonProperty("Martial Arts") + public String getMartialArts() { + return martialArts; + } + + @JsonProperty("Martial Arts") + public void setMartialArts(String martialArts) { + this.martialArts = martialArts; + } + + public _5 withMartialArts(String martialArts) { + this.martialArts = martialArts; + return this; + } + + @JsonProperty("Focus Points") + public String getFocusPoints() { + return focusPoints; + } + + @JsonProperty("Focus Points") + public void setFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + } + + public _5 withFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + return this; + } + + @JsonProperty("Monastic Vows") + public String getMonasticVows() { + return monasticVows; + } + + @JsonProperty("Monastic Vows") + public void setMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + } + + public _5 withMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + return this; + } + + @JsonProperty("Unarmored Movement") + public String getUnarmoredMovement() { + return unarmoredMovement; + } + + @JsonProperty("Unarmored Movement") + public void setUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + } + + public _5 withUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + return this; + } + + @JsonProperty("Sneak Attack") + public String getSneakAttack() { + return sneakAttack; + } + + @JsonProperty("Sneak Attack") + public void setSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + } + + public _5 withSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + return this; + } + + @JsonProperty("Operative Exploits") + public String getOperativeExploits() { + return operativeExploits; + } + + @JsonProperty("Operative Exploits") + public void setOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + } + + public _5 withOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + return this; + } + + @JsonProperty("Discoveries") + public String getDiscoveries() { + return discoveries; + } + + @JsonProperty("Discoveries") + public void setDiscoveries(String discoveries) { + this.discoveries = discoveries; + } + + public _5 withDiscoveries(String discoveries) { + this.discoveries = discoveries; + return this; + } + + @JsonProperty("Ranger's Quarry") + public String getRangerSQuarry() { + return rangerSQuarry; + } + + @JsonProperty("Ranger's Quarry") + public void setRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + } + + public _5 withRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + return this; + } + + @JsonProperty("Routines Known") + public String getRoutinesKnown() { + return routinesKnown; + } + + @JsonProperty("Routines Known") + public void setRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + } + + public _5 withRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + return this; + } + + @JsonProperty("Routine Radius") + public String getRoutineRadius() { + return routineRadius; + } + + @JsonProperty("Routine Radius") + public void setRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + } + + public _5 withRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + return this; + } + + @JsonProperty("Kinetic Combat") + public String getKineticCombat() { + return kineticCombat; + } + + @JsonProperty("Kinetic Combat") + public void setKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + } + + public _5 withKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + return this; + } + + @JsonProperty("Ideals Known") + public String getIdealsKnown() { + return idealsKnown; + } + + @JsonProperty("Ideals Known") + public void setIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + } + + public _5 withIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + return this; + } + + @JsonProperty("Ideal Manifests") + public String getIdealManifests() { + return idealManifests; + } + + @JsonProperty("Ideal Manifests") + public void setIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + } + + public _5 withIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public _5 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(_5 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("level"); + sb.append('='); + sb.append(((this.level == null)?"":this.level)); + sb.append(','); + sb.append("proficiencyBonus"); + sb.append('='); + sb.append(((this.proficiencyBonus == null)?"":this.proficiencyBonus)); + sb.append(','); + sb.append("features"); + sb.append('='); + sb.append(((this.features == null)?"":this.features)); + sb.append(','); + sb.append("rages"); + sb.append('='); + sb.append(((this.rages == null)?"":this.rages)); + sb.append(','); + sb.append("rageDamage"); + sb.append('='); + sb.append(((this.rageDamage == null)?"":this.rageDamage)); + sb.append(','); + sb.append("berserkerInstincts"); + sb.append('='); + sb.append(((this.berserkerInstincts == null)?"":this.berserkerInstincts)); + sb.append(','); + sb.append("forcePowersKnown"); + sb.append('='); + sb.append(((this.forcePowersKnown == null)?"":this.forcePowersKnown)); + sb.append(','); + sb.append("forcePoints"); + sb.append('='); + sb.append(((this.forcePoints == null)?"":this.forcePoints)); + sb.append(','); + sb.append("maxPowerLevel"); + sb.append('='); + sb.append(((this.maxPowerLevel == null)?"":this.maxPowerLevel)); + sb.append(','); + sb.append("forceEmpoweredCastingOptions"); + sb.append('='); + sb.append(((this.forceEmpoweredCastingOptions == null)?"":this.forceEmpoweredCastingOptions)); + sb.append(','); + sb.append("techPowersKnown"); + sb.append('='); + sb.append(((this.techPowersKnown == null)?"":this.techPowersKnown)); + sb.append(','); + sb.append("techPoints"); + sb.append('='); + sb.append(((this.techPoints == null)?"":this.techPoints)); + sb.append(','); + sb.append("potentAptitude"); + sb.append('='); + sb.append(((this.potentAptitude == null)?"":this.potentAptitude)); + sb.append(','); + sb.append("modificationSlots"); + sb.append('='); + sb.append(((this.modificationSlots == null)?"":this.modificationSlots)); + sb.append(','); + sb.append("maneuversKnown"); + sb.append('='); + sb.append(((this.maneuversKnown == null)?"":this.maneuversKnown)); + sb.append(','); + sb.append("superiorityDiceQuantity"); + sb.append('='); + sb.append(((this.superiorityDiceQuantity == null)?"":this.superiorityDiceQuantity)); + sb.append(','); + sb.append("superiorityDiceSize"); + sb.append('='); + sb.append(((this.superiorityDiceSize == null)?"":this.superiorityDiceSize)); + sb.append(','); + sb.append("strategiesKnown"); + sb.append('='); + sb.append(((this.strategiesKnown == null)?"":this.strategiesKnown)); + sb.append(','); + sb.append("focusedStrikes"); + sb.append('='); + sb.append(((this.focusedStrikes == null)?"":this.focusedStrikes)); + sb.append(','); + sb.append("aurasKnown"); + sb.append('='); + sb.append(((this.aurasKnown == null)?"":this.aurasKnown)); + sb.append(','); + sb.append("auraRadius"); + sb.append('='); + sb.append(((this.auraRadius == null)?"":this.auraRadius)); + sb.append(','); + sb.append("martialArts"); + sb.append('='); + sb.append(((this.martialArts == null)?"":this.martialArts)); + sb.append(','); + sb.append("focusPoints"); + sb.append('='); + sb.append(((this.focusPoints == null)?"":this.focusPoints)); + sb.append(','); + sb.append("monasticVows"); + sb.append('='); + sb.append(((this.monasticVows == null)?"":this.monasticVows)); + sb.append(','); + sb.append("unarmoredMovement"); + sb.append('='); + sb.append(((this.unarmoredMovement == null)?"":this.unarmoredMovement)); + sb.append(','); + sb.append("sneakAttack"); + sb.append('='); + sb.append(((this.sneakAttack == null)?"":this.sneakAttack)); + sb.append(','); + sb.append("operativeExploits"); + sb.append('='); + sb.append(((this.operativeExploits == null)?"":this.operativeExploits)); + sb.append(','); + sb.append("discoveries"); + sb.append('='); + sb.append(((this.discoveries == null)?"":this.discoveries)); + sb.append(','); + sb.append("rangerSQuarry"); + sb.append('='); + sb.append(((this.rangerSQuarry == null)?"":this.rangerSQuarry)); + sb.append(','); + sb.append("routinesKnown"); + sb.append('='); + sb.append(((this.routinesKnown == null)?"":this.routinesKnown)); + sb.append(','); + sb.append("routineRadius"); + sb.append('='); + sb.append(((this.routineRadius == null)?"":this.routineRadius)); + sb.append(','); + sb.append("kineticCombat"); + sb.append('='); + sb.append(((this.kineticCombat == null)?"":this.kineticCombat)); + sb.append(','); + sb.append("idealsKnown"); + sb.append('='); + sb.append(((this.idealsKnown == null)?"":this.idealsKnown)); + sb.append(','); + sb.append("idealManifests"); + sb.append('='); + sb.append(((this.idealManifests == null)?"":this.idealManifests)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.superiorityDiceQuantity == null)? 0 :this.superiorityDiceQuantity.hashCode())); + result = ((result* 31)+((this.forceEmpoweredCastingOptions == null)? 0 :this.forceEmpoweredCastingOptions.hashCode())); + result = ((result* 31)+((this.kineticCombat == null)? 0 :this.kineticCombat.hashCode())); + result = ((result* 31)+((this.forcePoints == null)? 0 :this.forcePoints.hashCode())); + result = ((result* 31)+((this.potentAptitude == null)? 0 :this.potentAptitude.hashCode())); + result = ((result* 31)+((this.auraRadius == null)? 0 :this.auraRadius.hashCode())); + result = ((result* 31)+((this.proficiencyBonus == null)? 0 :this.proficiencyBonus.hashCode())); + result = ((result* 31)+((this.maneuversKnown == null)? 0 :this.maneuversKnown.hashCode())); + result = ((result* 31)+((this.monasticVows == null)? 0 :this.monasticVows.hashCode())); + result = ((result* 31)+((this.techPowersKnown == null)? 0 :this.techPowersKnown.hashCode())); + result = ((result* 31)+((this.focusPoints == null)? 0 :this.focusPoints.hashCode())); + result = ((result* 31)+((this.features == null)? 0 :this.features.hashCode())); + result = ((result* 31)+((this.maxPowerLevel == null)? 0 :this.maxPowerLevel.hashCode())); + result = ((result* 31)+((this.berserkerInstincts == null)? 0 :this.berserkerInstincts.hashCode())); + result = ((result* 31)+((this.aurasKnown == null)? 0 :this.aurasKnown.hashCode())); + result = ((result* 31)+((this.rangerSQuarry == null)? 0 :this.rangerSQuarry.hashCode())); + result = ((result* 31)+((this.idealManifests == null)? 0 :this.idealManifests.hashCode())); + result = ((result* 31)+((this.focusedStrikes == null)? 0 :this.focusedStrikes.hashCode())); + result = ((result* 31)+((this.level == null)? 0 :this.level.hashCode())); + result = ((result* 31)+((this.operativeExploits == null)? 0 :this.operativeExploits.hashCode())); + result = ((result* 31)+((this.sneakAttack == null)? 0 :this.sneakAttack.hashCode())); + result = ((result* 31)+((this.idealsKnown == null)? 0 :this.idealsKnown.hashCode())); + result = ((result* 31)+((this.strategiesKnown == null)? 0 :this.strategiesKnown.hashCode())); + result = ((result* 31)+((this.techPoints == null)? 0 :this.techPoints.hashCode())); + result = ((result* 31)+((this.rages == null)? 0 :this.rages.hashCode())); + result = ((result* 31)+((this.routinesKnown == null)? 0 :this.routinesKnown.hashCode())); + result = ((result* 31)+((this.unarmoredMovement == null)? 0 :this.unarmoredMovement.hashCode())); + result = ((result* 31)+((this.martialArts == null)? 0 :this.martialArts.hashCode())); + result = ((result* 31)+((this.discoveries == null)? 0 :this.discoveries.hashCode())); + result = ((result* 31)+((this.rageDamage == null)? 0 :this.rageDamage.hashCode())); + result = ((result* 31)+((this.modificationSlots == null)? 0 :this.modificationSlots.hashCode())); + result = ((result* 31)+((this.superiorityDiceSize == null)? 0 :this.superiorityDiceSize.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.routineRadius == null)? 0 :this.routineRadius.hashCode())); + result = ((result* 31)+((this.forcePowersKnown == null)? 0 :this.forcePowersKnown.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof _5) == false) { + return false; + } + _5 rhs = ((_5) other); + return ((((((((((((((((((((((((((((((((((((this.superiorityDiceQuantity == rhs.superiorityDiceQuantity)||((this.superiorityDiceQuantity!= null)&&this.superiorityDiceQuantity.equals(rhs.superiorityDiceQuantity)))&&((this.forceEmpoweredCastingOptions == rhs.forceEmpoweredCastingOptions)||((this.forceEmpoweredCastingOptions!= null)&&this.forceEmpoweredCastingOptions.equals(rhs.forceEmpoweredCastingOptions))))&&((this.kineticCombat == rhs.kineticCombat)||((this.kineticCombat!= null)&&this.kineticCombat.equals(rhs.kineticCombat))))&&((this.forcePoints == rhs.forcePoints)||((this.forcePoints!= null)&&this.forcePoints.equals(rhs.forcePoints))))&&((this.potentAptitude == rhs.potentAptitude)||((this.potentAptitude!= null)&&this.potentAptitude.equals(rhs.potentAptitude))))&&((this.auraRadius == rhs.auraRadius)||((this.auraRadius!= null)&&this.auraRadius.equals(rhs.auraRadius))))&&((this.proficiencyBonus == rhs.proficiencyBonus)||((this.proficiencyBonus!= null)&&this.proficiencyBonus.equals(rhs.proficiencyBonus))))&&((this.maneuversKnown == rhs.maneuversKnown)||((this.maneuversKnown!= null)&&this.maneuversKnown.equals(rhs.maneuversKnown))))&&((this.monasticVows == rhs.monasticVows)||((this.monasticVows!= null)&&this.monasticVows.equals(rhs.monasticVows))))&&((this.techPowersKnown == rhs.techPowersKnown)||((this.techPowersKnown!= null)&&this.techPowersKnown.equals(rhs.techPowersKnown))))&&((this.focusPoints == rhs.focusPoints)||((this.focusPoints!= null)&&this.focusPoints.equals(rhs.focusPoints))))&&((this.features == rhs.features)||((this.features!= null)&&this.features.equals(rhs.features))))&&((this.maxPowerLevel == rhs.maxPowerLevel)||((this.maxPowerLevel!= null)&&this.maxPowerLevel.equals(rhs.maxPowerLevel))))&&((this.berserkerInstincts == rhs.berserkerInstincts)||((this.berserkerInstincts!= null)&&this.berserkerInstincts.equals(rhs.berserkerInstincts))))&&((this.aurasKnown == rhs.aurasKnown)||((this.aurasKnown!= null)&&this.aurasKnown.equals(rhs.aurasKnown))))&&((this.rangerSQuarry == rhs.rangerSQuarry)||((this.rangerSQuarry!= null)&&this.rangerSQuarry.equals(rhs.rangerSQuarry))))&&((this.idealManifests == rhs.idealManifests)||((this.idealManifests!= null)&&this.idealManifests.equals(rhs.idealManifests))))&&((this.focusedStrikes == rhs.focusedStrikes)||((this.focusedStrikes!= null)&&this.focusedStrikes.equals(rhs.focusedStrikes))))&&((this.level == rhs.level)||((this.level!= null)&&this.level.equals(rhs.level))))&&((this.operativeExploits == rhs.operativeExploits)||((this.operativeExploits!= null)&&this.operativeExploits.equals(rhs.operativeExploits))))&&((this.sneakAttack == rhs.sneakAttack)||((this.sneakAttack!= null)&&this.sneakAttack.equals(rhs.sneakAttack))))&&((this.idealsKnown == rhs.idealsKnown)||((this.idealsKnown!= null)&&this.idealsKnown.equals(rhs.idealsKnown))))&&((this.strategiesKnown == rhs.strategiesKnown)||((this.strategiesKnown!= null)&&this.strategiesKnown.equals(rhs.strategiesKnown))))&&((this.techPoints == rhs.techPoints)||((this.techPoints!= null)&&this.techPoints.equals(rhs.techPoints))))&&((this.rages == rhs.rages)||((this.rages!= null)&&this.rages.equals(rhs.rages))))&&((this.routinesKnown == rhs.routinesKnown)||((this.routinesKnown!= null)&&this.routinesKnown.equals(rhs.routinesKnown))))&&((this.unarmoredMovement == rhs.unarmoredMovement)||((this.unarmoredMovement!= null)&&this.unarmoredMovement.equals(rhs.unarmoredMovement))))&&((this.martialArts == rhs.martialArts)||((this.martialArts!= null)&&this.martialArts.equals(rhs.martialArts))))&&((this.discoveries == rhs.discoveries)||((this.discoveries!= null)&&this.discoveries.equals(rhs.discoveries))))&&((this.rageDamage == rhs.rageDamage)||((this.rageDamage!= null)&&this.rageDamage.equals(rhs.rageDamage))))&&((this.modificationSlots == rhs.modificationSlots)||((this.modificationSlots!= null)&&this.modificationSlots.equals(rhs.modificationSlots))))&&((this.superiorityDiceSize == rhs.superiorityDiceSize)||((this.superiorityDiceSize!= null)&&this.superiorityDiceSize.equals(rhs.superiorityDiceSize))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.routineRadius == rhs.routineRadius)||((this.routineRadius!= null)&&this.routineRadius.equals(rhs.routineRadius))))&&((this.forcePowersKnown == rhs.forcePowersKnown)||((this.forcePowersKnown!= null)&&this.forcePowersKnown.equals(rhs.forcePowersKnown)))); + } + +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/model/_6.java b/src/main/java/org/misoenergy/hackday/kessel_run/model/_6.java new file mode 100644 index 0000000..4d7bff2 --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/model/_6.java @@ -0,0 +1,855 @@ + +package org.misoenergy.hackday.kessel_run.model; + +import java.util.HashMap; +import java.util.Map; +import javax.annotation.processing.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "Level", + "Proficiency Bonus", + "Features", + "Rages", + "Rage Damage", + "Berserker Instincts", + "Force Powers Known", + "Force Points", + "Max Power Level", + "Force-Empowered Casting Options", + "Tech Powers Known", + "Tech Points", + "Potent Aptitude", + "Modification Slots", + "Maneuvers Known", + "Superiority Dice Quantity", + "Superiority Dice Size", + "Strategies Known", + "Focused Strikes", + "Auras Known", + "Aura Radius", + "Martial Arts", + "Focus Points", + "Monastic Vows", + "Unarmored Movement", + "Sneak Attack", + "Operative Exploits", + "Discoveries", + "Ranger's Quarry", + "Routines Known", + "Routine Radius", + "Kinetic Combat", + "Ideals Known", + "Ideal Manifests" +}) +@Generated("jsonschema2pojo") +public class _6 { + + @JsonProperty("Level") + private String level; + @JsonProperty("Proficiency Bonus") + private String proficiencyBonus; + @JsonProperty("Features") + private String features; + @JsonProperty("Rages") + private String rages; + @JsonProperty("Rage Damage") + private String rageDamage; + @JsonProperty("Berserker Instincts") + private String berserkerInstincts; + @JsonProperty("Force Powers Known") + private String forcePowersKnown; + @JsonProperty("Force Points") + private String forcePoints; + @JsonProperty("Max Power Level") + private String maxPowerLevel; + @JsonProperty("Force-Empowered Casting Options") + private String forceEmpoweredCastingOptions; + @JsonProperty("Tech Powers Known") + private String techPowersKnown; + @JsonProperty("Tech Points") + private String techPoints; + @JsonProperty("Potent Aptitude") + private String potentAptitude; + @JsonProperty("Modification Slots") + private String modificationSlots; + @JsonProperty("Maneuvers Known") + private String maneuversKnown; + @JsonProperty("Superiority Dice Quantity") + private String superiorityDiceQuantity; + @JsonProperty("Superiority Dice Size") + private String superiorityDiceSize; + @JsonProperty("Strategies Known") + private String strategiesKnown; + @JsonProperty("Focused Strikes") + private String focusedStrikes; + @JsonProperty("Auras Known") + private String aurasKnown; + @JsonProperty("Aura Radius") + private String auraRadius; + @JsonProperty("Martial Arts") + private String martialArts; + @JsonProperty("Focus Points") + private String focusPoints; + @JsonProperty("Monastic Vows") + private String monasticVows; + @JsonProperty("Unarmored Movement") + private String unarmoredMovement; + @JsonProperty("Sneak Attack") + private String sneakAttack; + @JsonProperty("Operative Exploits") + private String operativeExploits; + @JsonProperty("Discoveries") + private String discoveries; + @JsonProperty("Ranger's Quarry") + private String rangerSQuarry; + @JsonProperty("Routines Known") + private String routinesKnown; + @JsonProperty("Routine Radius") + private String routineRadius; + @JsonProperty("Kinetic Combat") + private String kineticCombat; + @JsonProperty("Ideals Known") + private String idealsKnown; + @JsonProperty("Ideal Manifests") + private String idealManifests; + @JsonIgnore + private Map additionalProperties = new HashMap(); + + @JsonProperty("Level") + public String getLevel() { + return level; + } + + @JsonProperty("Level") + public void setLevel(String level) { + this.level = level; + } + + public _6 withLevel(String level) { + this.level = level; + return this; + } + + @JsonProperty("Proficiency Bonus") + public String getProficiencyBonus() { + return proficiencyBonus; + } + + @JsonProperty("Proficiency Bonus") + public void setProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + } + + public _6 withProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + return this; + } + + @JsonProperty("Features") + public String getFeatures() { + return features; + } + + @JsonProperty("Features") + public void setFeatures(String features) { + this.features = features; + } + + public _6 withFeatures(String features) { + this.features = features; + return this; + } + + @JsonProperty("Rages") + public String getRages() { + return rages; + } + + @JsonProperty("Rages") + public void setRages(String rages) { + this.rages = rages; + } + + public _6 withRages(String rages) { + this.rages = rages; + return this; + } + + @JsonProperty("Rage Damage") + public String getRageDamage() { + return rageDamage; + } + + @JsonProperty("Rage Damage") + public void setRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + } + + public _6 withRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + return this; + } + + @JsonProperty("Berserker Instincts") + public String getBerserkerInstincts() { + return berserkerInstincts; + } + + @JsonProperty("Berserker Instincts") + public void setBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + } + + public _6 withBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + return this; + } + + @JsonProperty("Force Powers Known") + public String getForcePowersKnown() { + return forcePowersKnown; + } + + @JsonProperty("Force Powers Known") + public void setForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + } + + public _6 withForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + return this; + } + + @JsonProperty("Force Points") + public String getForcePoints() { + return forcePoints; + } + + @JsonProperty("Force Points") + public void setForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + } + + public _6 withForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + return this; + } + + @JsonProperty("Max Power Level") + public String getMaxPowerLevel() { + return maxPowerLevel; + } + + @JsonProperty("Max Power Level") + public void setMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + } + + public _6 withMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + return this; + } + + @JsonProperty("Force-Empowered Casting Options") + public String getForceEmpoweredCastingOptions() { + return forceEmpoweredCastingOptions; + } + + @JsonProperty("Force-Empowered Casting Options") + public void setForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + } + + public _6 withForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + return this; + } + + @JsonProperty("Tech Powers Known") + public String getTechPowersKnown() { + return techPowersKnown; + } + + @JsonProperty("Tech Powers Known") + public void setTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + } + + public _6 withTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + return this; + } + + @JsonProperty("Tech Points") + public String getTechPoints() { + return techPoints; + } + + @JsonProperty("Tech Points") + public void setTechPoints(String techPoints) { + this.techPoints = techPoints; + } + + public _6 withTechPoints(String techPoints) { + this.techPoints = techPoints; + return this; + } + + @JsonProperty("Potent Aptitude") + public String getPotentAptitude() { + return potentAptitude; + } + + @JsonProperty("Potent Aptitude") + public void setPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + } + + public _6 withPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + return this; + } + + @JsonProperty("Modification Slots") + public String getModificationSlots() { + return modificationSlots; + } + + @JsonProperty("Modification Slots") + public void setModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + } + + public _6 withModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + return this; + } + + @JsonProperty("Maneuvers Known") + public String getManeuversKnown() { + return maneuversKnown; + } + + @JsonProperty("Maneuvers Known") + public void setManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + } + + public _6 withManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + return this; + } + + @JsonProperty("Superiority Dice Quantity") + public String getSuperiorityDiceQuantity() { + return superiorityDiceQuantity; + } + + @JsonProperty("Superiority Dice Quantity") + public void setSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + } + + public _6 withSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + return this; + } + + @JsonProperty("Superiority Dice Size") + public String getSuperiorityDiceSize() { + return superiorityDiceSize; + } + + @JsonProperty("Superiority Dice Size") + public void setSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + } + + public _6 withSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + return this; + } + + @JsonProperty("Strategies Known") + public String getStrategiesKnown() { + return strategiesKnown; + } + + @JsonProperty("Strategies Known") + public void setStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + } + + public _6 withStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + return this; + } + + @JsonProperty("Focused Strikes") + public String getFocusedStrikes() { + return focusedStrikes; + } + + @JsonProperty("Focused Strikes") + public void setFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + } + + public _6 withFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + return this; + } + + @JsonProperty("Auras Known") + public String getAurasKnown() { + return aurasKnown; + } + + @JsonProperty("Auras Known") + public void setAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + } + + public _6 withAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + return this; + } + + @JsonProperty("Aura Radius") + public String getAuraRadius() { + return auraRadius; + } + + @JsonProperty("Aura Radius") + public void setAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + } + + public _6 withAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + return this; + } + + @JsonProperty("Martial Arts") + public String getMartialArts() { + return martialArts; + } + + @JsonProperty("Martial Arts") + public void setMartialArts(String martialArts) { + this.martialArts = martialArts; + } + + public _6 withMartialArts(String martialArts) { + this.martialArts = martialArts; + return this; + } + + @JsonProperty("Focus Points") + public String getFocusPoints() { + return focusPoints; + } + + @JsonProperty("Focus Points") + public void setFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + } + + public _6 withFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + return this; + } + + @JsonProperty("Monastic Vows") + public String getMonasticVows() { + return monasticVows; + } + + @JsonProperty("Monastic Vows") + public void setMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + } + + public _6 withMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + return this; + } + + @JsonProperty("Unarmored Movement") + public String getUnarmoredMovement() { + return unarmoredMovement; + } + + @JsonProperty("Unarmored Movement") + public void setUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + } + + public _6 withUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + return this; + } + + @JsonProperty("Sneak Attack") + public String getSneakAttack() { + return sneakAttack; + } + + @JsonProperty("Sneak Attack") + public void setSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + } + + public _6 withSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + return this; + } + + @JsonProperty("Operative Exploits") + public String getOperativeExploits() { + return operativeExploits; + } + + @JsonProperty("Operative Exploits") + public void setOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + } + + public _6 withOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + return this; + } + + @JsonProperty("Discoveries") + public String getDiscoveries() { + return discoveries; + } + + @JsonProperty("Discoveries") + public void setDiscoveries(String discoveries) { + this.discoveries = discoveries; + } + + public _6 withDiscoveries(String discoveries) { + this.discoveries = discoveries; + return this; + } + + @JsonProperty("Ranger's Quarry") + public String getRangerSQuarry() { + return rangerSQuarry; + } + + @JsonProperty("Ranger's Quarry") + public void setRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + } + + public _6 withRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + return this; + } + + @JsonProperty("Routines Known") + public String getRoutinesKnown() { + return routinesKnown; + } + + @JsonProperty("Routines Known") + public void setRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + } + + public _6 withRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + return this; + } + + @JsonProperty("Routine Radius") + public String getRoutineRadius() { + return routineRadius; + } + + @JsonProperty("Routine Radius") + public void setRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + } + + public _6 withRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + return this; + } + + @JsonProperty("Kinetic Combat") + public String getKineticCombat() { + return kineticCombat; + } + + @JsonProperty("Kinetic Combat") + public void setKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + } + + public _6 withKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + return this; + } + + @JsonProperty("Ideals Known") + public String getIdealsKnown() { + return idealsKnown; + } + + @JsonProperty("Ideals Known") + public void setIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + } + + public _6 withIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + return this; + } + + @JsonProperty("Ideal Manifests") + public String getIdealManifests() { + return idealManifests; + } + + @JsonProperty("Ideal Manifests") + public void setIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + } + + public _6 withIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public _6 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(_6 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("level"); + sb.append('='); + sb.append(((this.level == null)?"":this.level)); + sb.append(','); + sb.append("proficiencyBonus"); + sb.append('='); + sb.append(((this.proficiencyBonus == null)?"":this.proficiencyBonus)); + sb.append(','); + sb.append("features"); + sb.append('='); + sb.append(((this.features == null)?"":this.features)); + sb.append(','); + sb.append("rages"); + sb.append('='); + sb.append(((this.rages == null)?"":this.rages)); + sb.append(','); + sb.append("rageDamage"); + sb.append('='); + sb.append(((this.rageDamage == null)?"":this.rageDamage)); + sb.append(','); + sb.append("berserkerInstincts"); + sb.append('='); + sb.append(((this.berserkerInstincts == null)?"":this.berserkerInstincts)); + sb.append(','); + sb.append("forcePowersKnown"); + sb.append('='); + sb.append(((this.forcePowersKnown == null)?"":this.forcePowersKnown)); + sb.append(','); + sb.append("forcePoints"); + sb.append('='); + sb.append(((this.forcePoints == null)?"":this.forcePoints)); + sb.append(','); + sb.append("maxPowerLevel"); + sb.append('='); + sb.append(((this.maxPowerLevel == null)?"":this.maxPowerLevel)); + sb.append(','); + sb.append("forceEmpoweredCastingOptions"); + sb.append('='); + sb.append(((this.forceEmpoweredCastingOptions == null)?"":this.forceEmpoweredCastingOptions)); + sb.append(','); + sb.append("techPowersKnown"); + sb.append('='); + sb.append(((this.techPowersKnown == null)?"":this.techPowersKnown)); + sb.append(','); + sb.append("techPoints"); + sb.append('='); + sb.append(((this.techPoints == null)?"":this.techPoints)); + sb.append(','); + sb.append("potentAptitude"); + sb.append('='); + sb.append(((this.potentAptitude == null)?"":this.potentAptitude)); + sb.append(','); + sb.append("modificationSlots"); + sb.append('='); + sb.append(((this.modificationSlots == null)?"":this.modificationSlots)); + sb.append(','); + sb.append("maneuversKnown"); + sb.append('='); + sb.append(((this.maneuversKnown == null)?"":this.maneuversKnown)); + sb.append(','); + sb.append("superiorityDiceQuantity"); + sb.append('='); + sb.append(((this.superiorityDiceQuantity == null)?"":this.superiorityDiceQuantity)); + sb.append(','); + sb.append("superiorityDiceSize"); + sb.append('='); + sb.append(((this.superiorityDiceSize == null)?"":this.superiorityDiceSize)); + sb.append(','); + sb.append("strategiesKnown"); + sb.append('='); + sb.append(((this.strategiesKnown == null)?"":this.strategiesKnown)); + sb.append(','); + sb.append("focusedStrikes"); + sb.append('='); + sb.append(((this.focusedStrikes == null)?"":this.focusedStrikes)); + sb.append(','); + sb.append("aurasKnown"); + sb.append('='); + sb.append(((this.aurasKnown == null)?"":this.aurasKnown)); + sb.append(','); + sb.append("auraRadius"); + sb.append('='); + sb.append(((this.auraRadius == null)?"":this.auraRadius)); + sb.append(','); + sb.append("martialArts"); + sb.append('='); + sb.append(((this.martialArts == null)?"":this.martialArts)); + sb.append(','); + sb.append("focusPoints"); + sb.append('='); + sb.append(((this.focusPoints == null)?"":this.focusPoints)); + sb.append(','); + sb.append("monasticVows"); + sb.append('='); + sb.append(((this.monasticVows == null)?"":this.monasticVows)); + sb.append(','); + sb.append("unarmoredMovement"); + sb.append('='); + sb.append(((this.unarmoredMovement == null)?"":this.unarmoredMovement)); + sb.append(','); + sb.append("sneakAttack"); + sb.append('='); + sb.append(((this.sneakAttack == null)?"":this.sneakAttack)); + sb.append(','); + sb.append("operativeExploits"); + sb.append('='); + sb.append(((this.operativeExploits == null)?"":this.operativeExploits)); + sb.append(','); + sb.append("discoveries"); + sb.append('='); + sb.append(((this.discoveries == null)?"":this.discoveries)); + sb.append(','); + sb.append("rangerSQuarry"); + sb.append('='); + sb.append(((this.rangerSQuarry == null)?"":this.rangerSQuarry)); + sb.append(','); + sb.append("routinesKnown"); + sb.append('='); + sb.append(((this.routinesKnown == null)?"":this.routinesKnown)); + sb.append(','); + sb.append("routineRadius"); + sb.append('='); + sb.append(((this.routineRadius == null)?"":this.routineRadius)); + sb.append(','); + sb.append("kineticCombat"); + sb.append('='); + sb.append(((this.kineticCombat == null)?"":this.kineticCombat)); + sb.append(','); + sb.append("idealsKnown"); + sb.append('='); + sb.append(((this.idealsKnown == null)?"":this.idealsKnown)); + sb.append(','); + sb.append("idealManifests"); + sb.append('='); + sb.append(((this.idealManifests == null)?"":this.idealManifests)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.superiorityDiceQuantity == null)? 0 :this.superiorityDiceQuantity.hashCode())); + result = ((result* 31)+((this.forceEmpoweredCastingOptions == null)? 0 :this.forceEmpoweredCastingOptions.hashCode())); + result = ((result* 31)+((this.kineticCombat == null)? 0 :this.kineticCombat.hashCode())); + result = ((result* 31)+((this.forcePoints == null)? 0 :this.forcePoints.hashCode())); + result = ((result* 31)+((this.potentAptitude == null)? 0 :this.potentAptitude.hashCode())); + result = ((result* 31)+((this.auraRadius == null)? 0 :this.auraRadius.hashCode())); + result = ((result* 31)+((this.proficiencyBonus == null)? 0 :this.proficiencyBonus.hashCode())); + result = ((result* 31)+((this.maneuversKnown == null)? 0 :this.maneuversKnown.hashCode())); + result = ((result* 31)+((this.monasticVows == null)? 0 :this.monasticVows.hashCode())); + result = ((result* 31)+((this.techPowersKnown == null)? 0 :this.techPowersKnown.hashCode())); + result = ((result* 31)+((this.focusPoints == null)? 0 :this.focusPoints.hashCode())); + result = ((result* 31)+((this.features == null)? 0 :this.features.hashCode())); + result = ((result* 31)+((this.maxPowerLevel == null)? 0 :this.maxPowerLevel.hashCode())); + result = ((result* 31)+((this.berserkerInstincts == null)? 0 :this.berserkerInstincts.hashCode())); + result = ((result* 31)+((this.aurasKnown == null)? 0 :this.aurasKnown.hashCode())); + result = ((result* 31)+((this.rangerSQuarry == null)? 0 :this.rangerSQuarry.hashCode())); + result = ((result* 31)+((this.idealManifests == null)? 0 :this.idealManifests.hashCode())); + result = ((result* 31)+((this.focusedStrikes == null)? 0 :this.focusedStrikes.hashCode())); + result = ((result* 31)+((this.level == null)? 0 :this.level.hashCode())); + result = ((result* 31)+((this.operativeExploits == null)? 0 :this.operativeExploits.hashCode())); + result = ((result* 31)+((this.sneakAttack == null)? 0 :this.sneakAttack.hashCode())); + result = ((result* 31)+((this.idealsKnown == null)? 0 :this.idealsKnown.hashCode())); + result = ((result* 31)+((this.strategiesKnown == null)? 0 :this.strategiesKnown.hashCode())); + result = ((result* 31)+((this.techPoints == null)? 0 :this.techPoints.hashCode())); + result = ((result* 31)+((this.rages == null)? 0 :this.rages.hashCode())); + result = ((result* 31)+((this.routinesKnown == null)? 0 :this.routinesKnown.hashCode())); + result = ((result* 31)+((this.unarmoredMovement == null)? 0 :this.unarmoredMovement.hashCode())); + result = ((result* 31)+((this.martialArts == null)? 0 :this.martialArts.hashCode())); + result = ((result* 31)+((this.discoveries == null)? 0 :this.discoveries.hashCode())); + result = ((result* 31)+((this.rageDamage == null)? 0 :this.rageDamage.hashCode())); + result = ((result* 31)+((this.modificationSlots == null)? 0 :this.modificationSlots.hashCode())); + result = ((result* 31)+((this.superiorityDiceSize == null)? 0 :this.superiorityDiceSize.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.routineRadius == null)? 0 :this.routineRadius.hashCode())); + result = ((result* 31)+((this.forcePowersKnown == null)? 0 :this.forcePowersKnown.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof _6) == false) { + return false; + } + _6 rhs = ((_6) other); + return ((((((((((((((((((((((((((((((((((((this.superiorityDiceQuantity == rhs.superiorityDiceQuantity)||((this.superiorityDiceQuantity!= null)&&this.superiorityDiceQuantity.equals(rhs.superiorityDiceQuantity)))&&((this.forceEmpoweredCastingOptions == rhs.forceEmpoweredCastingOptions)||((this.forceEmpoweredCastingOptions!= null)&&this.forceEmpoweredCastingOptions.equals(rhs.forceEmpoweredCastingOptions))))&&((this.kineticCombat == rhs.kineticCombat)||((this.kineticCombat!= null)&&this.kineticCombat.equals(rhs.kineticCombat))))&&((this.forcePoints == rhs.forcePoints)||((this.forcePoints!= null)&&this.forcePoints.equals(rhs.forcePoints))))&&((this.potentAptitude == rhs.potentAptitude)||((this.potentAptitude!= null)&&this.potentAptitude.equals(rhs.potentAptitude))))&&((this.auraRadius == rhs.auraRadius)||((this.auraRadius!= null)&&this.auraRadius.equals(rhs.auraRadius))))&&((this.proficiencyBonus == rhs.proficiencyBonus)||((this.proficiencyBonus!= null)&&this.proficiencyBonus.equals(rhs.proficiencyBonus))))&&((this.maneuversKnown == rhs.maneuversKnown)||((this.maneuversKnown!= null)&&this.maneuversKnown.equals(rhs.maneuversKnown))))&&((this.monasticVows == rhs.monasticVows)||((this.monasticVows!= null)&&this.monasticVows.equals(rhs.monasticVows))))&&((this.techPowersKnown == rhs.techPowersKnown)||((this.techPowersKnown!= null)&&this.techPowersKnown.equals(rhs.techPowersKnown))))&&((this.focusPoints == rhs.focusPoints)||((this.focusPoints!= null)&&this.focusPoints.equals(rhs.focusPoints))))&&((this.features == rhs.features)||((this.features!= null)&&this.features.equals(rhs.features))))&&((this.maxPowerLevel == rhs.maxPowerLevel)||((this.maxPowerLevel!= null)&&this.maxPowerLevel.equals(rhs.maxPowerLevel))))&&((this.berserkerInstincts == rhs.berserkerInstincts)||((this.berserkerInstincts!= null)&&this.berserkerInstincts.equals(rhs.berserkerInstincts))))&&((this.aurasKnown == rhs.aurasKnown)||((this.aurasKnown!= null)&&this.aurasKnown.equals(rhs.aurasKnown))))&&((this.rangerSQuarry == rhs.rangerSQuarry)||((this.rangerSQuarry!= null)&&this.rangerSQuarry.equals(rhs.rangerSQuarry))))&&((this.idealManifests == rhs.idealManifests)||((this.idealManifests!= null)&&this.idealManifests.equals(rhs.idealManifests))))&&((this.focusedStrikes == rhs.focusedStrikes)||((this.focusedStrikes!= null)&&this.focusedStrikes.equals(rhs.focusedStrikes))))&&((this.level == rhs.level)||((this.level!= null)&&this.level.equals(rhs.level))))&&((this.operativeExploits == rhs.operativeExploits)||((this.operativeExploits!= null)&&this.operativeExploits.equals(rhs.operativeExploits))))&&((this.sneakAttack == rhs.sneakAttack)||((this.sneakAttack!= null)&&this.sneakAttack.equals(rhs.sneakAttack))))&&((this.idealsKnown == rhs.idealsKnown)||((this.idealsKnown!= null)&&this.idealsKnown.equals(rhs.idealsKnown))))&&((this.strategiesKnown == rhs.strategiesKnown)||((this.strategiesKnown!= null)&&this.strategiesKnown.equals(rhs.strategiesKnown))))&&((this.techPoints == rhs.techPoints)||((this.techPoints!= null)&&this.techPoints.equals(rhs.techPoints))))&&((this.rages == rhs.rages)||((this.rages!= null)&&this.rages.equals(rhs.rages))))&&((this.routinesKnown == rhs.routinesKnown)||((this.routinesKnown!= null)&&this.routinesKnown.equals(rhs.routinesKnown))))&&((this.unarmoredMovement == rhs.unarmoredMovement)||((this.unarmoredMovement!= null)&&this.unarmoredMovement.equals(rhs.unarmoredMovement))))&&((this.martialArts == rhs.martialArts)||((this.martialArts!= null)&&this.martialArts.equals(rhs.martialArts))))&&((this.discoveries == rhs.discoveries)||((this.discoveries!= null)&&this.discoveries.equals(rhs.discoveries))))&&((this.rageDamage == rhs.rageDamage)||((this.rageDamage!= null)&&this.rageDamage.equals(rhs.rageDamage))))&&((this.modificationSlots == rhs.modificationSlots)||((this.modificationSlots!= null)&&this.modificationSlots.equals(rhs.modificationSlots))))&&((this.superiorityDiceSize == rhs.superiorityDiceSize)||((this.superiorityDiceSize!= null)&&this.superiorityDiceSize.equals(rhs.superiorityDiceSize))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.routineRadius == rhs.routineRadius)||((this.routineRadius!= null)&&this.routineRadius.equals(rhs.routineRadius))))&&((this.forcePowersKnown == rhs.forcePowersKnown)||((this.forcePowersKnown!= null)&&this.forcePowersKnown.equals(rhs.forcePowersKnown)))); + } + +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/model/_7.java b/src/main/java/org/misoenergy/hackday/kessel_run/model/_7.java new file mode 100644 index 0000000..b498161 --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/model/_7.java @@ -0,0 +1,855 @@ + +package org.misoenergy.hackday.kessel_run.model; + +import java.util.HashMap; +import java.util.Map; +import javax.annotation.processing.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "Level", + "Proficiency Bonus", + "Features", + "Rages", + "Rage Damage", + "Berserker Instincts", + "Force Powers Known", + "Force Points", + "Max Power Level", + "Force-Empowered Casting Options", + "Tech Powers Known", + "Tech Points", + "Potent Aptitude", + "Modification Slots", + "Maneuvers Known", + "Superiority Dice Quantity", + "Superiority Dice Size", + "Strategies Known", + "Focused Strikes", + "Auras Known", + "Aura Radius", + "Martial Arts", + "Focus Points", + "Monastic Vows", + "Unarmored Movement", + "Sneak Attack", + "Operative Exploits", + "Discoveries", + "Ranger's Quarry", + "Routines Known", + "Routine Radius", + "Kinetic Combat", + "Ideals Known", + "Ideal Manifests" +}) +@Generated("jsonschema2pojo") +public class _7 { + + @JsonProperty("Level") + private String level; + @JsonProperty("Proficiency Bonus") + private String proficiencyBonus; + @JsonProperty("Features") + private String features; + @JsonProperty("Rages") + private String rages; + @JsonProperty("Rage Damage") + private String rageDamage; + @JsonProperty("Berserker Instincts") + private String berserkerInstincts; + @JsonProperty("Force Powers Known") + private String forcePowersKnown; + @JsonProperty("Force Points") + private String forcePoints; + @JsonProperty("Max Power Level") + private String maxPowerLevel; + @JsonProperty("Force-Empowered Casting Options") + private String forceEmpoweredCastingOptions; + @JsonProperty("Tech Powers Known") + private String techPowersKnown; + @JsonProperty("Tech Points") + private String techPoints; + @JsonProperty("Potent Aptitude") + private String potentAptitude; + @JsonProperty("Modification Slots") + private String modificationSlots; + @JsonProperty("Maneuvers Known") + private String maneuversKnown; + @JsonProperty("Superiority Dice Quantity") + private String superiorityDiceQuantity; + @JsonProperty("Superiority Dice Size") + private String superiorityDiceSize; + @JsonProperty("Strategies Known") + private String strategiesKnown; + @JsonProperty("Focused Strikes") + private String focusedStrikes; + @JsonProperty("Auras Known") + private String aurasKnown; + @JsonProperty("Aura Radius") + private String auraRadius; + @JsonProperty("Martial Arts") + private String martialArts; + @JsonProperty("Focus Points") + private String focusPoints; + @JsonProperty("Monastic Vows") + private String monasticVows; + @JsonProperty("Unarmored Movement") + private String unarmoredMovement; + @JsonProperty("Sneak Attack") + private String sneakAttack; + @JsonProperty("Operative Exploits") + private String operativeExploits; + @JsonProperty("Discoveries") + private String discoveries; + @JsonProperty("Ranger's Quarry") + private String rangerSQuarry; + @JsonProperty("Routines Known") + private String routinesKnown; + @JsonProperty("Routine Radius") + private String routineRadius; + @JsonProperty("Kinetic Combat") + private String kineticCombat; + @JsonProperty("Ideals Known") + private String idealsKnown; + @JsonProperty("Ideal Manifests") + private String idealManifests; + @JsonIgnore + private Map additionalProperties = new HashMap(); + + @JsonProperty("Level") + public String getLevel() { + return level; + } + + @JsonProperty("Level") + public void setLevel(String level) { + this.level = level; + } + + public _7 withLevel(String level) { + this.level = level; + return this; + } + + @JsonProperty("Proficiency Bonus") + public String getProficiencyBonus() { + return proficiencyBonus; + } + + @JsonProperty("Proficiency Bonus") + public void setProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + } + + public _7 withProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + return this; + } + + @JsonProperty("Features") + public String getFeatures() { + return features; + } + + @JsonProperty("Features") + public void setFeatures(String features) { + this.features = features; + } + + public _7 withFeatures(String features) { + this.features = features; + return this; + } + + @JsonProperty("Rages") + public String getRages() { + return rages; + } + + @JsonProperty("Rages") + public void setRages(String rages) { + this.rages = rages; + } + + public _7 withRages(String rages) { + this.rages = rages; + return this; + } + + @JsonProperty("Rage Damage") + public String getRageDamage() { + return rageDamage; + } + + @JsonProperty("Rage Damage") + public void setRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + } + + public _7 withRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + return this; + } + + @JsonProperty("Berserker Instincts") + public String getBerserkerInstincts() { + return berserkerInstincts; + } + + @JsonProperty("Berserker Instincts") + public void setBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + } + + public _7 withBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + return this; + } + + @JsonProperty("Force Powers Known") + public String getForcePowersKnown() { + return forcePowersKnown; + } + + @JsonProperty("Force Powers Known") + public void setForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + } + + public _7 withForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + return this; + } + + @JsonProperty("Force Points") + public String getForcePoints() { + return forcePoints; + } + + @JsonProperty("Force Points") + public void setForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + } + + public _7 withForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + return this; + } + + @JsonProperty("Max Power Level") + public String getMaxPowerLevel() { + return maxPowerLevel; + } + + @JsonProperty("Max Power Level") + public void setMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + } + + public _7 withMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + return this; + } + + @JsonProperty("Force-Empowered Casting Options") + public String getForceEmpoweredCastingOptions() { + return forceEmpoweredCastingOptions; + } + + @JsonProperty("Force-Empowered Casting Options") + public void setForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + } + + public _7 withForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + return this; + } + + @JsonProperty("Tech Powers Known") + public String getTechPowersKnown() { + return techPowersKnown; + } + + @JsonProperty("Tech Powers Known") + public void setTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + } + + public _7 withTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + return this; + } + + @JsonProperty("Tech Points") + public String getTechPoints() { + return techPoints; + } + + @JsonProperty("Tech Points") + public void setTechPoints(String techPoints) { + this.techPoints = techPoints; + } + + public _7 withTechPoints(String techPoints) { + this.techPoints = techPoints; + return this; + } + + @JsonProperty("Potent Aptitude") + public String getPotentAptitude() { + return potentAptitude; + } + + @JsonProperty("Potent Aptitude") + public void setPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + } + + public _7 withPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + return this; + } + + @JsonProperty("Modification Slots") + public String getModificationSlots() { + return modificationSlots; + } + + @JsonProperty("Modification Slots") + public void setModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + } + + public _7 withModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + return this; + } + + @JsonProperty("Maneuvers Known") + public String getManeuversKnown() { + return maneuversKnown; + } + + @JsonProperty("Maneuvers Known") + public void setManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + } + + public _7 withManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + return this; + } + + @JsonProperty("Superiority Dice Quantity") + public String getSuperiorityDiceQuantity() { + return superiorityDiceQuantity; + } + + @JsonProperty("Superiority Dice Quantity") + public void setSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + } + + public _7 withSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + return this; + } + + @JsonProperty("Superiority Dice Size") + public String getSuperiorityDiceSize() { + return superiorityDiceSize; + } + + @JsonProperty("Superiority Dice Size") + public void setSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + } + + public _7 withSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + return this; + } + + @JsonProperty("Strategies Known") + public String getStrategiesKnown() { + return strategiesKnown; + } + + @JsonProperty("Strategies Known") + public void setStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + } + + public _7 withStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + return this; + } + + @JsonProperty("Focused Strikes") + public String getFocusedStrikes() { + return focusedStrikes; + } + + @JsonProperty("Focused Strikes") + public void setFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + } + + public _7 withFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + return this; + } + + @JsonProperty("Auras Known") + public String getAurasKnown() { + return aurasKnown; + } + + @JsonProperty("Auras Known") + public void setAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + } + + public _7 withAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + return this; + } + + @JsonProperty("Aura Radius") + public String getAuraRadius() { + return auraRadius; + } + + @JsonProperty("Aura Radius") + public void setAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + } + + public _7 withAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + return this; + } + + @JsonProperty("Martial Arts") + public String getMartialArts() { + return martialArts; + } + + @JsonProperty("Martial Arts") + public void setMartialArts(String martialArts) { + this.martialArts = martialArts; + } + + public _7 withMartialArts(String martialArts) { + this.martialArts = martialArts; + return this; + } + + @JsonProperty("Focus Points") + public String getFocusPoints() { + return focusPoints; + } + + @JsonProperty("Focus Points") + public void setFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + } + + public _7 withFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + return this; + } + + @JsonProperty("Monastic Vows") + public String getMonasticVows() { + return monasticVows; + } + + @JsonProperty("Monastic Vows") + public void setMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + } + + public _7 withMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + return this; + } + + @JsonProperty("Unarmored Movement") + public String getUnarmoredMovement() { + return unarmoredMovement; + } + + @JsonProperty("Unarmored Movement") + public void setUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + } + + public _7 withUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + return this; + } + + @JsonProperty("Sneak Attack") + public String getSneakAttack() { + return sneakAttack; + } + + @JsonProperty("Sneak Attack") + public void setSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + } + + public _7 withSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + return this; + } + + @JsonProperty("Operative Exploits") + public String getOperativeExploits() { + return operativeExploits; + } + + @JsonProperty("Operative Exploits") + public void setOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + } + + public _7 withOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + return this; + } + + @JsonProperty("Discoveries") + public String getDiscoveries() { + return discoveries; + } + + @JsonProperty("Discoveries") + public void setDiscoveries(String discoveries) { + this.discoveries = discoveries; + } + + public _7 withDiscoveries(String discoveries) { + this.discoveries = discoveries; + return this; + } + + @JsonProperty("Ranger's Quarry") + public String getRangerSQuarry() { + return rangerSQuarry; + } + + @JsonProperty("Ranger's Quarry") + public void setRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + } + + public _7 withRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + return this; + } + + @JsonProperty("Routines Known") + public String getRoutinesKnown() { + return routinesKnown; + } + + @JsonProperty("Routines Known") + public void setRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + } + + public _7 withRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + return this; + } + + @JsonProperty("Routine Radius") + public String getRoutineRadius() { + return routineRadius; + } + + @JsonProperty("Routine Radius") + public void setRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + } + + public _7 withRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + return this; + } + + @JsonProperty("Kinetic Combat") + public String getKineticCombat() { + return kineticCombat; + } + + @JsonProperty("Kinetic Combat") + public void setKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + } + + public _7 withKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + return this; + } + + @JsonProperty("Ideals Known") + public String getIdealsKnown() { + return idealsKnown; + } + + @JsonProperty("Ideals Known") + public void setIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + } + + public _7 withIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + return this; + } + + @JsonProperty("Ideal Manifests") + public String getIdealManifests() { + return idealManifests; + } + + @JsonProperty("Ideal Manifests") + public void setIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + } + + public _7 withIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public _7 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(_7 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("level"); + sb.append('='); + sb.append(((this.level == null)?"":this.level)); + sb.append(','); + sb.append("proficiencyBonus"); + sb.append('='); + sb.append(((this.proficiencyBonus == null)?"":this.proficiencyBonus)); + sb.append(','); + sb.append("features"); + sb.append('='); + sb.append(((this.features == null)?"":this.features)); + sb.append(','); + sb.append("rages"); + sb.append('='); + sb.append(((this.rages == null)?"":this.rages)); + sb.append(','); + sb.append("rageDamage"); + sb.append('='); + sb.append(((this.rageDamage == null)?"":this.rageDamage)); + sb.append(','); + sb.append("berserkerInstincts"); + sb.append('='); + sb.append(((this.berserkerInstincts == null)?"":this.berserkerInstincts)); + sb.append(','); + sb.append("forcePowersKnown"); + sb.append('='); + sb.append(((this.forcePowersKnown == null)?"":this.forcePowersKnown)); + sb.append(','); + sb.append("forcePoints"); + sb.append('='); + sb.append(((this.forcePoints == null)?"":this.forcePoints)); + sb.append(','); + sb.append("maxPowerLevel"); + sb.append('='); + sb.append(((this.maxPowerLevel == null)?"":this.maxPowerLevel)); + sb.append(','); + sb.append("forceEmpoweredCastingOptions"); + sb.append('='); + sb.append(((this.forceEmpoweredCastingOptions == null)?"":this.forceEmpoweredCastingOptions)); + sb.append(','); + sb.append("techPowersKnown"); + sb.append('='); + sb.append(((this.techPowersKnown == null)?"":this.techPowersKnown)); + sb.append(','); + sb.append("techPoints"); + sb.append('='); + sb.append(((this.techPoints == null)?"":this.techPoints)); + sb.append(','); + sb.append("potentAptitude"); + sb.append('='); + sb.append(((this.potentAptitude == null)?"":this.potentAptitude)); + sb.append(','); + sb.append("modificationSlots"); + sb.append('='); + sb.append(((this.modificationSlots == null)?"":this.modificationSlots)); + sb.append(','); + sb.append("maneuversKnown"); + sb.append('='); + sb.append(((this.maneuversKnown == null)?"":this.maneuversKnown)); + sb.append(','); + sb.append("superiorityDiceQuantity"); + sb.append('='); + sb.append(((this.superiorityDiceQuantity == null)?"":this.superiorityDiceQuantity)); + sb.append(','); + sb.append("superiorityDiceSize"); + sb.append('='); + sb.append(((this.superiorityDiceSize == null)?"":this.superiorityDiceSize)); + sb.append(','); + sb.append("strategiesKnown"); + sb.append('='); + sb.append(((this.strategiesKnown == null)?"":this.strategiesKnown)); + sb.append(','); + sb.append("focusedStrikes"); + sb.append('='); + sb.append(((this.focusedStrikes == null)?"":this.focusedStrikes)); + sb.append(','); + sb.append("aurasKnown"); + sb.append('='); + sb.append(((this.aurasKnown == null)?"":this.aurasKnown)); + sb.append(','); + sb.append("auraRadius"); + sb.append('='); + sb.append(((this.auraRadius == null)?"":this.auraRadius)); + sb.append(','); + sb.append("martialArts"); + sb.append('='); + sb.append(((this.martialArts == null)?"":this.martialArts)); + sb.append(','); + sb.append("focusPoints"); + sb.append('='); + sb.append(((this.focusPoints == null)?"":this.focusPoints)); + sb.append(','); + sb.append("monasticVows"); + sb.append('='); + sb.append(((this.monasticVows == null)?"":this.monasticVows)); + sb.append(','); + sb.append("unarmoredMovement"); + sb.append('='); + sb.append(((this.unarmoredMovement == null)?"":this.unarmoredMovement)); + sb.append(','); + sb.append("sneakAttack"); + sb.append('='); + sb.append(((this.sneakAttack == null)?"":this.sneakAttack)); + sb.append(','); + sb.append("operativeExploits"); + sb.append('='); + sb.append(((this.operativeExploits == null)?"":this.operativeExploits)); + sb.append(','); + sb.append("discoveries"); + sb.append('='); + sb.append(((this.discoveries == null)?"":this.discoveries)); + sb.append(','); + sb.append("rangerSQuarry"); + sb.append('='); + sb.append(((this.rangerSQuarry == null)?"":this.rangerSQuarry)); + sb.append(','); + sb.append("routinesKnown"); + sb.append('='); + sb.append(((this.routinesKnown == null)?"":this.routinesKnown)); + sb.append(','); + sb.append("routineRadius"); + sb.append('='); + sb.append(((this.routineRadius == null)?"":this.routineRadius)); + sb.append(','); + sb.append("kineticCombat"); + sb.append('='); + sb.append(((this.kineticCombat == null)?"":this.kineticCombat)); + sb.append(','); + sb.append("idealsKnown"); + sb.append('='); + sb.append(((this.idealsKnown == null)?"":this.idealsKnown)); + sb.append(','); + sb.append("idealManifests"); + sb.append('='); + sb.append(((this.idealManifests == null)?"":this.idealManifests)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.superiorityDiceQuantity == null)? 0 :this.superiorityDiceQuantity.hashCode())); + result = ((result* 31)+((this.forceEmpoweredCastingOptions == null)? 0 :this.forceEmpoweredCastingOptions.hashCode())); + result = ((result* 31)+((this.kineticCombat == null)? 0 :this.kineticCombat.hashCode())); + result = ((result* 31)+((this.forcePoints == null)? 0 :this.forcePoints.hashCode())); + result = ((result* 31)+((this.potentAptitude == null)? 0 :this.potentAptitude.hashCode())); + result = ((result* 31)+((this.auraRadius == null)? 0 :this.auraRadius.hashCode())); + result = ((result* 31)+((this.proficiencyBonus == null)? 0 :this.proficiencyBonus.hashCode())); + result = ((result* 31)+((this.maneuversKnown == null)? 0 :this.maneuversKnown.hashCode())); + result = ((result* 31)+((this.monasticVows == null)? 0 :this.monasticVows.hashCode())); + result = ((result* 31)+((this.techPowersKnown == null)? 0 :this.techPowersKnown.hashCode())); + result = ((result* 31)+((this.focusPoints == null)? 0 :this.focusPoints.hashCode())); + result = ((result* 31)+((this.features == null)? 0 :this.features.hashCode())); + result = ((result* 31)+((this.maxPowerLevel == null)? 0 :this.maxPowerLevel.hashCode())); + result = ((result* 31)+((this.berserkerInstincts == null)? 0 :this.berserkerInstincts.hashCode())); + result = ((result* 31)+((this.aurasKnown == null)? 0 :this.aurasKnown.hashCode())); + result = ((result* 31)+((this.rangerSQuarry == null)? 0 :this.rangerSQuarry.hashCode())); + result = ((result* 31)+((this.idealManifests == null)? 0 :this.idealManifests.hashCode())); + result = ((result* 31)+((this.focusedStrikes == null)? 0 :this.focusedStrikes.hashCode())); + result = ((result* 31)+((this.level == null)? 0 :this.level.hashCode())); + result = ((result* 31)+((this.operativeExploits == null)? 0 :this.operativeExploits.hashCode())); + result = ((result* 31)+((this.sneakAttack == null)? 0 :this.sneakAttack.hashCode())); + result = ((result* 31)+((this.idealsKnown == null)? 0 :this.idealsKnown.hashCode())); + result = ((result* 31)+((this.strategiesKnown == null)? 0 :this.strategiesKnown.hashCode())); + result = ((result* 31)+((this.techPoints == null)? 0 :this.techPoints.hashCode())); + result = ((result* 31)+((this.rages == null)? 0 :this.rages.hashCode())); + result = ((result* 31)+((this.routinesKnown == null)? 0 :this.routinesKnown.hashCode())); + result = ((result* 31)+((this.unarmoredMovement == null)? 0 :this.unarmoredMovement.hashCode())); + result = ((result* 31)+((this.martialArts == null)? 0 :this.martialArts.hashCode())); + result = ((result* 31)+((this.discoveries == null)? 0 :this.discoveries.hashCode())); + result = ((result* 31)+((this.rageDamage == null)? 0 :this.rageDamage.hashCode())); + result = ((result* 31)+((this.modificationSlots == null)? 0 :this.modificationSlots.hashCode())); + result = ((result* 31)+((this.superiorityDiceSize == null)? 0 :this.superiorityDiceSize.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.routineRadius == null)? 0 :this.routineRadius.hashCode())); + result = ((result* 31)+((this.forcePowersKnown == null)? 0 :this.forcePowersKnown.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof _7) == false) { + return false; + } + _7 rhs = ((_7) other); + return ((((((((((((((((((((((((((((((((((((this.superiorityDiceQuantity == rhs.superiorityDiceQuantity)||((this.superiorityDiceQuantity!= null)&&this.superiorityDiceQuantity.equals(rhs.superiorityDiceQuantity)))&&((this.forceEmpoweredCastingOptions == rhs.forceEmpoweredCastingOptions)||((this.forceEmpoweredCastingOptions!= null)&&this.forceEmpoweredCastingOptions.equals(rhs.forceEmpoweredCastingOptions))))&&((this.kineticCombat == rhs.kineticCombat)||((this.kineticCombat!= null)&&this.kineticCombat.equals(rhs.kineticCombat))))&&((this.forcePoints == rhs.forcePoints)||((this.forcePoints!= null)&&this.forcePoints.equals(rhs.forcePoints))))&&((this.potentAptitude == rhs.potentAptitude)||((this.potentAptitude!= null)&&this.potentAptitude.equals(rhs.potentAptitude))))&&((this.auraRadius == rhs.auraRadius)||((this.auraRadius!= null)&&this.auraRadius.equals(rhs.auraRadius))))&&((this.proficiencyBonus == rhs.proficiencyBonus)||((this.proficiencyBonus!= null)&&this.proficiencyBonus.equals(rhs.proficiencyBonus))))&&((this.maneuversKnown == rhs.maneuversKnown)||((this.maneuversKnown!= null)&&this.maneuversKnown.equals(rhs.maneuversKnown))))&&((this.monasticVows == rhs.monasticVows)||((this.monasticVows!= null)&&this.monasticVows.equals(rhs.monasticVows))))&&((this.techPowersKnown == rhs.techPowersKnown)||((this.techPowersKnown!= null)&&this.techPowersKnown.equals(rhs.techPowersKnown))))&&((this.focusPoints == rhs.focusPoints)||((this.focusPoints!= null)&&this.focusPoints.equals(rhs.focusPoints))))&&((this.features == rhs.features)||((this.features!= null)&&this.features.equals(rhs.features))))&&((this.maxPowerLevel == rhs.maxPowerLevel)||((this.maxPowerLevel!= null)&&this.maxPowerLevel.equals(rhs.maxPowerLevel))))&&((this.berserkerInstincts == rhs.berserkerInstincts)||((this.berserkerInstincts!= null)&&this.berserkerInstincts.equals(rhs.berserkerInstincts))))&&((this.aurasKnown == rhs.aurasKnown)||((this.aurasKnown!= null)&&this.aurasKnown.equals(rhs.aurasKnown))))&&((this.rangerSQuarry == rhs.rangerSQuarry)||((this.rangerSQuarry!= null)&&this.rangerSQuarry.equals(rhs.rangerSQuarry))))&&((this.idealManifests == rhs.idealManifests)||((this.idealManifests!= null)&&this.idealManifests.equals(rhs.idealManifests))))&&((this.focusedStrikes == rhs.focusedStrikes)||((this.focusedStrikes!= null)&&this.focusedStrikes.equals(rhs.focusedStrikes))))&&((this.level == rhs.level)||((this.level!= null)&&this.level.equals(rhs.level))))&&((this.operativeExploits == rhs.operativeExploits)||((this.operativeExploits!= null)&&this.operativeExploits.equals(rhs.operativeExploits))))&&((this.sneakAttack == rhs.sneakAttack)||((this.sneakAttack!= null)&&this.sneakAttack.equals(rhs.sneakAttack))))&&((this.idealsKnown == rhs.idealsKnown)||((this.idealsKnown!= null)&&this.idealsKnown.equals(rhs.idealsKnown))))&&((this.strategiesKnown == rhs.strategiesKnown)||((this.strategiesKnown!= null)&&this.strategiesKnown.equals(rhs.strategiesKnown))))&&((this.techPoints == rhs.techPoints)||((this.techPoints!= null)&&this.techPoints.equals(rhs.techPoints))))&&((this.rages == rhs.rages)||((this.rages!= null)&&this.rages.equals(rhs.rages))))&&((this.routinesKnown == rhs.routinesKnown)||((this.routinesKnown!= null)&&this.routinesKnown.equals(rhs.routinesKnown))))&&((this.unarmoredMovement == rhs.unarmoredMovement)||((this.unarmoredMovement!= null)&&this.unarmoredMovement.equals(rhs.unarmoredMovement))))&&((this.martialArts == rhs.martialArts)||((this.martialArts!= null)&&this.martialArts.equals(rhs.martialArts))))&&((this.discoveries == rhs.discoveries)||((this.discoveries!= null)&&this.discoveries.equals(rhs.discoveries))))&&((this.rageDamage == rhs.rageDamage)||((this.rageDamage!= null)&&this.rageDamage.equals(rhs.rageDamage))))&&((this.modificationSlots == rhs.modificationSlots)||((this.modificationSlots!= null)&&this.modificationSlots.equals(rhs.modificationSlots))))&&((this.superiorityDiceSize == rhs.superiorityDiceSize)||((this.superiorityDiceSize!= null)&&this.superiorityDiceSize.equals(rhs.superiorityDiceSize))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.routineRadius == rhs.routineRadius)||((this.routineRadius!= null)&&this.routineRadius.equals(rhs.routineRadius))))&&((this.forcePowersKnown == rhs.forcePowersKnown)||((this.forcePowersKnown!= null)&&this.forcePowersKnown.equals(rhs.forcePowersKnown)))); + } + +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/model/_8.java b/src/main/java/org/misoenergy/hackday/kessel_run/model/_8.java new file mode 100644 index 0000000..f841836 --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/model/_8.java @@ -0,0 +1,855 @@ + +package org.misoenergy.hackday.kessel_run.model; + +import java.util.HashMap; +import java.util.Map; +import javax.annotation.processing.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "Level", + "Proficiency Bonus", + "Features", + "Rages", + "Rage Damage", + "Berserker Instincts", + "Force Powers Known", + "Force Points", + "Max Power Level", + "Force-Empowered Casting Options", + "Tech Powers Known", + "Tech Points", + "Potent Aptitude", + "Modification Slots", + "Maneuvers Known", + "Superiority Dice Quantity", + "Superiority Dice Size", + "Strategies Known", + "Focused Strikes", + "Auras Known", + "Aura Radius", + "Martial Arts", + "Focus Points", + "Monastic Vows", + "Unarmored Movement", + "Sneak Attack", + "Operative Exploits", + "Discoveries", + "Ranger's Quarry", + "Routines Known", + "Routine Radius", + "Kinetic Combat", + "Ideals Known", + "Ideal Manifests" +}) +@Generated("jsonschema2pojo") +public class _8 { + + @JsonProperty("Level") + private String level; + @JsonProperty("Proficiency Bonus") + private String proficiencyBonus; + @JsonProperty("Features") + private String features; + @JsonProperty("Rages") + private String rages; + @JsonProperty("Rage Damage") + private String rageDamage; + @JsonProperty("Berserker Instincts") + private String berserkerInstincts; + @JsonProperty("Force Powers Known") + private String forcePowersKnown; + @JsonProperty("Force Points") + private String forcePoints; + @JsonProperty("Max Power Level") + private String maxPowerLevel; + @JsonProperty("Force-Empowered Casting Options") + private String forceEmpoweredCastingOptions; + @JsonProperty("Tech Powers Known") + private String techPowersKnown; + @JsonProperty("Tech Points") + private String techPoints; + @JsonProperty("Potent Aptitude") + private String potentAptitude; + @JsonProperty("Modification Slots") + private String modificationSlots; + @JsonProperty("Maneuvers Known") + private String maneuversKnown; + @JsonProperty("Superiority Dice Quantity") + private String superiorityDiceQuantity; + @JsonProperty("Superiority Dice Size") + private String superiorityDiceSize; + @JsonProperty("Strategies Known") + private String strategiesKnown; + @JsonProperty("Focused Strikes") + private String focusedStrikes; + @JsonProperty("Auras Known") + private String aurasKnown; + @JsonProperty("Aura Radius") + private String auraRadius; + @JsonProperty("Martial Arts") + private String martialArts; + @JsonProperty("Focus Points") + private String focusPoints; + @JsonProperty("Monastic Vows") + private String monasticVows; + @JsonProperty("Unarmored Movement") + private String unarmoredMovement; + @JsonProperty("Sneak Attack") + private String sneakAttack; + @JsonProperty("Operative Exploits") + private String operativeExploits; + @JsonProperty("Discoveries") + private String discoveries; + @JsonProperty("Ranger's Quarry") + private String rangerSQuarry; + @JsonProperty("Routines Known") + private String routinesKnown; + @JsonProperty("Routine Radius") + private String routineRadius; + @JsonProperty("Kinetic Combat") + private String kineticCombat; + @JsonProperty("Ideals Known") + private String idealsKnown; + @JsonProperty("Ideal Manifests") + private String idealManifests; + @JsonIgnore + private Map additionalProperties = new HashMap(); + + @JsonProperty("Level") + public String getLevel() { + return level; + } + + @JsonProperty("Level") + public void setLevel(String level) { + this.level = level; + } + + public _8 withLevel(String level) { + this.level = level; + return this; + } + + @JsonProperty("Proficiency Bonus") + public String getProficiencyBonus() { + return proficiencyBonus; + } + + @JsonProperty("Proficiency Bonus") + public void setProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + } + + public _8 withProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + return this; + } + + @JsonProperty("Features") + public String getFeatures() { + return features; + } + + @JsonProperty("Features") + public void setFeatures(String features) { + this.features = features; + } + + public _8 withFeatures(String features) { + this.features = features; + return this; + } + + @JsonProperty("Rages") + public String getRages() { + return rages; + } + + @JsonProperty("Rages") + public void setRages(String rages) { + this.rages = rages; + } + + public _8 withRages(String rages) { + this.rages = rages; + return this; + } + + @JsonProperty("Rage Damage") + public String getRageDamage() { + return rageDamage; + } + + @JsonProperty("Rage Damage") + public void setRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + } + + public _8 withRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + return this; + } + + @JsonProperty("Berserker Instincts") + public String getBerserkerInstincts() { + return berserkerInstincts; + } + + @JsonProperty("Berserker Instincts") + public void setBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + } + + public _8 withBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + return this; + } + + @JsonProperty("Force Powers Known") + public String getForcePowersKnown() { + return forcePowersKnown; + } + + @JsonProperty("Force Powers Known") + public void setForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + } + + public _8 withForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + return this; + } + + @JsonProperty("Force Points") + public String getForcePoints() { + return forcePoints; + } + + @JsonProperty("Force Points") + public void setForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + } + + public _8 withForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + return this; + } + + @JsonProperty("Max Power Level") + public String getMaxPowerLevel() { + return maxPowerLevel; + } + + @JsonProperty("Max Power Level") + public void setMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + } + + public _8 withMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + return this; + } + + @JsonProperty("Force-Empowered Casting Options") + public String getForceEmpoweredCastingOptions() { + return forceEmpoweredCastingOptions; + } + + @JsonProperty("Force-Empowered Casting Options") + public void setForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + } + + public _8 withForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + return this; + } + + @JsonProperty("Tech Powers Known") + public String getTechPowersKnown() { + return techPowersKnown; + } + + @JsonProperty("Tech Powers Known") + public void setTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + } + + public _8 withTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + return this; + } + + @JsonProperty("Tech Points") + public String getTechPoints() { + return techPoints; + } + + @JsonProperty("Tech Points") + public void setTechPoints(String techPoints) { + this.techPoints = techPoints; + } + + public _8 withTechPoints(String techPoints) { + this.techPoints = techPoints; + return this; + } + + @JsonProperty("Potent Aptitude") + public String getPotentAptitude() { + return potentAptitude; + } + + @JsonProperty("Potent Aptitude") + public void setPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + } + + public _8 withPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + return this; + } + + @JsonProperty("Modification Slots") + public String getModificationSlots() { + return modificationSlots; + } + + @JsonProperty("Modification Slots") + public void setModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + } + + public _8 withModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + return this; + } + + @JsonProperty("Maneuvers Known") + public String getManeuversKnown() { + return maneuversKnown; + } + + @JsonProperty("Maneuvers Known") + public void setManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + } + + public _8 withManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + return this; + } + + @JsonProperty("Superiority Dice Quantity") + public String getSuperiorityDiceQuantity() { + return superiorityDiceQuantity; + } + + @JsonProperty("Superiority Dice Quantity") + public void setSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + } + + public _8 withSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + return this; + } + + @JsonProperty("Superiority Dice Size") + public String getSuperiorityDiceSize() { + return superiorityDiceSize; + } + + @JsonProperty("Superiority Dice Size") + public void setSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + } + + public _8 withSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + return this; + } + + @JsonProperty("Strategies Known") + public String getStrategiesKnown() { + return strategiesKnown; + } + + @JsonProperty("Strategies Known") + public void setStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + } + + public _8 withStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + return this; + } + + @JsonProperty("Focused Strikes") + public String getFocusedStrikes() { + return focusedStrikes; + } + + @JsonProperty("Focused Strikes") + public void setFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + } + + public _8 withFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + return this; + } + + @JsonProperty("Auras Known") + public String getAurasKnown() { + return aurasKnown; + } + + @JsonProperty("Auras Known") + public void setAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + } + + public _8 withAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + return this; + } + + @JsonProperty("Aura Radius") + public String getAuraRadius() { + return auraRadius; + } + + @JsonProperty("Aura Radius") + public void setAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + } + + public _8 withAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + return this; + } + + @JsonProperty("Martial Arts") + public String getMartialArts() { + return martialArts; + } + + @JsonProperty("Martial Arts") + public void setMartialArts(String martialArts) { + this.martialArts = martialArts; + } + + public _8 withMartialArts(String martialArts) { + this.martialArts = martialArts; + return this; + } + + @JsonProperty("Focus Points") + public String getFocusPoints() { + return focusPoints; + } + + @JsonProperty("Focus Points") + public void setFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + } + + public _8 withFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + return this; + } + + @JsonProperty("Monastic Vows") + public String getMonasticVows() { + return monasticVows; + } + + @JsonProperty("Monastic Vows") + public void setMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + } + + public _8 withMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + return this; + } + + @JsonProperty("Unarmored Movement") + public String getUnarmoredMovement() { + return unarmoredMovement; + } + + @JsonProperty("Unarmored Movement") + public void setUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + } + + public _8 withUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + return this; + } + + @JsonProperty("Sneak Attack") + public String getSneakAttack() { + return sneakAttack; + } + + @JsonProperty("Sneak Attack") + public void setSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + } + + public _8 withSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + return this; + } + + @JsonProperty("Operative Exploits") + public String getOperativeExploits() { + return operativeExploits; + } + + @JsonProperty("Operative Exploits") + public void setOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + } + + public _8 withOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + return this; + } + + @JsonProperty("Discoveries") + public String getDiscoveries() { + return discoveries; + } + + @JsonProperty("Discoveries") + public void setDiscoveries(String discoveries) { + this.discoveries = discoveries; + } + + public _8 withDiscoveries(String discoveries) { + this.discoveries = discoveries; + return this; + } + + @JsonProperty("Ranger's Quarry") + public String getRangerSQuarry() { + return rangerSQuarry; + } + + @JsonProperty("Ranger's Quarry") + public void setRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + } + + public _8 withRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + return this; + } + + @JsonProperty("Routines Known") + public String getRoutinesKnown() { + return routinesKnown; + } + + @JsonProperty("Routines Known") + public void setRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + } + + public _8 withRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + return this; + } + + @JsonProperty("Routine Radius") + public String getRoutineRadius() { + return routineRadius; + } + + @JsonProperty("Routine Radius") + public void setRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + } + + public _8 withRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + return this; + } + + @JsonProperty("Kinetic Combat") + public String getKineticCombat() { + return kineticCombat; + } + + @JsonProperty("Kinetic Combat") + public void setKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + } + + public _8 withKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + return this; + } + + @JsonProperty("Ideals Known") + public String getIdealsKnown() { + return idealsKnown; + } + + @JsonProperty("Ideals Known") + public void setIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + } + + public _8 withIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + return this; + } + + @JsonProperty("Ideal Manifests") + public String getIdealManifests() { + return idealManifests; + } + + @JsonProperty("Ideal Manifests") + public void setIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + } + + public _8 withIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public _8 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(_8 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("level"); + sb.append('='); + sb.append(((this.level == null)?"":this.level)); + sb.append(','); + sb.append("proficiencyBonus"); + sb.append('='); + sb.append(((this.proficiencyBonus == null)?"":this.proficiencyBonus)); + sb.append(','); + sb.append("features"); + sb.append('='); + sb.append(((this.features == null)?"":this.features)); + sb.append(','); + sb.append("rages"); + sb.append('='); + sb.append(((this.rages == null)?"":this.rages)); + sb.append(','); + sb.append("rageDamage"); + sb.append('='); + sb.append(((this.rageDamage == null)?"":this.rageDamage)); + sb.append(','); + sb.append("berserkerInstincts"); + sb.append('='); + sb.append(((this.berserkerInstincts == null)?"":this.berserkerInstincts)); + sb.append(','); + sb.append("forcePowersKnown"); + sb.append('='); + sb.append(((this.forcePowersKnown == null)?"":this.forcePowersKnown)); + sb.append(','); + sb.append("forcePoints"); + sb.append('='); + sb.append(((this.forcePoints == null)?"":this.forcePoints)); + sb.append(','); + sb.append("maxPowerLevel"); + sb.append('='); + sb.append(((this.maxPowerLevel == null)?"":this.maxPowerLevel)); + sb.append(','); + sb.append("forceEmpoweredCastingOptions"); + sb.append('='); + sb.append(((this.forceEmpoweredCastingOptions == null)?"":this.forceEmpoweredCastingOptions)); + sb.append(','); + sb.append("techPowersKnown"); + sb.append('='); + sb.append(((this.techPowersKnown == null)?"":this.techPowersKnown)); + sb.append(','); + sb.append("techPoints"); + sb.append('='); + sb.append(((this.techPoints == null)?"":this.techPoints)); + sb.append(','); + sb.append("potentAptitude"); + sb.append('='); + sb.append(((this.potentAptitude == null)?"":this.potentAptitude)); + sb.append(','); + sb.append("modificationSlots"); + sb.append('='); + sb.append(((this.modificationSlots == null)?"":this.modificationSlots)); + sb.append(','); + sb.append("maneuversKnown"); + sb.append('='); + sb.append(((this.maneuversKnown == null)?"":this.maneuversKnown)); + sb.append(','); + sb.append("superiorityDiceQuantity"); + sb.append('='); + sb.append(((this.superiorityDiceQuantity == null)?"":this.superiorityDiceQuantity)); + sb.append(','); + sb.append("superiorityDiceSize"); + sb.append('='); + sb.append(((this.superiorityDiceSize == null)?"":this.superiorityDiceSize)); + sb.append(','); + sb.append("strategiesKnown"); + sb.append('='); + sb.append(((this.strategiesKnown == null)?"":this.strategiesKnown)); + sb.append(','); + sb.append("focusedStrikes"); + sb.append('='); + sb.append(((this.focusedStrikes == null)?"":this.focusedStrikes)); + sb.append(','); + sb.append("aurasKnown"); + sb.append('='); + sb.append(((this.aurasKnown == null)?"":this.aurasKnown)); + sb.append(','); + sb.append("auraRadius"); + sb.append('='); + sb.append(((this.auraRadius == null)?"":this.auraRadius)); + sb.append(','); + sb.append("martialArts"); + sb.append('='); + sb.append(((this.martialArts == null)?"":this.martialArts)); + sb.append(','); + sb.append("focusPoints"); + sb.append('='); + sb.append(((this.focusPoints == null)?"":this.focusPoints)); + sb.append(','); + sb.append("monasticVows"); + sb.append('='); + sb.append(((this.monasticVows == null)?"":this.monasticVows)); + sb.append(','); + sb.append("unarmoredMovement"); + sb.append('='); + sb.append(((this.unarmoredMovement == null)?"":this.unarmoredMovement)); + sb.append(','); + sb.append("sneakAttack"); + sb.append('='); + sb.append(((this.sneakAttack == null)?"":this.sneakAttack)); + sb.append(','); + sb.append("operativeExploits"); + sb.append('='); + sb.append(((this.operativeExploits == null)?"":this.operativeExploits)); + sb.append(','); + sb.append("discoveries"); + sb.append('='); + sb.append(((this.discoveries == null)?"":this.discoveries)); + sb.append(','); + sb.append("rangerSQuarry"); + sb.append('='); + sb.append(((this.rangerSQuarry == null)?"":this.rangerSQuarry)); + sb.append(','); + sb.append("routinesKnown"); + sb.append('='); + sb.append(((this.routinesKnown == null)?"":this.routinesKnown)); + sb.append(','); + sb.append("routineRadius"); + sb.append('='); + sb.append(((this.routineRadius == null)?"":this.routineRadius)); + sb.append(','); + sb.append("kineticCombat"); + sb.append('='); + sb.append(((this.kineticCombat == null)?"":this.kineticCombat)); + sb.append(','); + sb.append("idealsKnown"); + sb.append('='); + sb.append(((this.idealsKnown == null)?"":this.idealsKnown)); + sb.append(','); + sb.append("idealManifests"); + sb.append('='); + sb.append(((this.idealManifests == null)?"":this.idealManifests)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.superiorityDiceQuantity == null)? 0 :this.superiorityDiceQuantity.hashCode())); + result = ((result* 31)+((this.forceEmpoweredCastingOptions == null)? 0 :this.forceEmpoweredCastingOptions.hashCode())); + result = ((result* 31)+((this.kineticCombat == null)? 0 :this.kineticCombat.hashCode())); + result = ((result* 31)+((this.forcePoints == null)? 0 :this.forcePoints.hashCode())); + result = ((result* 31)+((this.potentAptitude == null)? 0 :this.potentAptitude.hashCode())); + result = ((result* 31)+((this.auraRadius == null)? 0 :this.auraRadius.hashCode())); + result = ((result* 31)+((this.proficiencyBonus == null)? 0 :this.proficiencyBonus.hashCode())); + result = ((result* 31)+((this.maneuversKnown == null)? 0 :this.maneuversKnown.hashCode())); + result = ((result* 31)+((this.monasticVows == null)? 0 :this.monasticVows.hashCode())); + result = ((result* 31)+((this.techPowersKnown == null)? 0 :this.techPowersKnown.hashCode())); + result = ((result* 31)+((this.focusPoints == null)? 0 :this.focusPoints.hashCode())); + result = ((result* 31)+((this.features == null)? 0 :this.features.hashCode())); + result = ((result* 31)+((this.maxPowerLevel == null)? 0 :this.maxPowerLevel.hashCode())); + result = ((result* 31)+((this.berserkerInstincts == null)? 0 :this.berserkerInstincts.hashCode())); + result = ((result* 31)+((this.aurasKnown == null)? 0 :this.aurasKnown.hashCode())); + result = ((result* 31)+((this.rangerSQuarry == null)? 0 :this.rangerSQuarry.hashCode())); + result = ((result* 31)+((this.idealManifests == null)? 0 :this.idealManifests.hashCode())); + result = ((result* 31)+((this.focusedStrikes == null)? 0 :this.focusedStrikes.hashCode())); + result = ((result* 31)+((this.level == null)? 0 :this.level.hashCode())); + result = ((result* 31)+((this.operativeExploits == null)? 0 :this.operativeExploits.hashCode())); + result = ((result* 31)+((this.sneakAttack == null)? 0 :this.sneakAttack.hashCode())); + result = ((result* 31)+((this.idealsKnown == null)? 0 :this.idealsKnown.hashCode())); + result = ((result* 31)+((this.strategiesKnown == null)? 0 :this.strategiesKnown.hashCode())); + result = ((result* 31)+((this.techPoints == null)? 0 :this.techPoints.hashCode())); + result = ((result* 31)+((this.rages == null)? 0 :this.rages.hashCode())); + result = ((result* 31)+((this.routinesKnown == null)? 0 :this.routinesKnown.hashCode())); + result = ((result* 31)+((this.unarmoredMovement == null)? 0 :this.unarmoredMovement.hashCode())); + result = ((result* 31)+((this.martialArts == null)? 0 :this.martialArts.hashCode())); + result = ((result* 31)+((this.discoveries == null)? 0 :this.discoveries.hashCode())); + result = ((result* 31)+((this.rageDamage == null)? 0 :this.rageDamage.hashCode())); + result = ((result* 31)+((this.modificationSlots == null)? 0 :this.modificationSlots.hashCode())); + result = ((result* 31)+((this.superiorityDiceSize == null)? 0 :this.superiorityDiceSize.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.routineRadius == null)? 0 :this.routineRadius.hashCode())); + result = ((result* 31)+((this.forcePowersKnown == null)? 0 :this.forcePowersKnown.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof _8) == false) { + return false; + } + _8 rhs = ((_8) other); + return ((((((((((((((((((((((((((((((((((((this.superiorityDiceQuantity == rhs.superiorityDiceQuantity)||((this.superiorityDiceQuantity!= null)&&this.superiorityDiceQuantity.equals(rhs.superiorityDiceQuantity)))&&((this.forceEmpoweredCastingOptions == rhs.forceEmpoweredCastingOptions)||((this.forceEmpoweredCastingOptions!= null)&&this.forceEmpoweredCastingOptions.equals(rhs.forceEmpoweredCastingOptions))))&&((this.kineticCombat == rhs.kineticCombat)||((this.kineticCombat!= null)&&this.kineticCombat.equals(rhs.kineticCombat))))&&((this.forcePoints == rhs.forcePoints)||((this.forcePoints!= null)&&this.forcePoints.equals(rhs.forcePoints))))&&((this.potentAptitude == rhs.potentAptitude)||((this.potentAptitude!= null)&&this.potentAptitude.equals(rhs.potentAptitude))))&&((this.auraRadius == rhs.auraRadius)||((this.auraRadius!= null)&&this.auraRadius.equals(rhs.auraRadius))))&&((this.proficiencyBonus == rhs.proficiencyBonus)||((this.proficiencyBonus!= null)&&this.proficiencyBonus.equals(rhs.proficiencyBonus))))&&((this.maneuversKnown == rhs.maneuversKnown)||((this.maneuversKnown!= null)&&this.maneuversKnown.equals(rhs.maneuversKnown))))&&((this.monasticVows == rhs.monasticVows)||((this.monasticVows!= null)&&this.monasticVows.equals(rhs.monasticVows))))&&((this.techPowersKnown == rhs.techPowersKnown)||((this.techPowersKnown!= null)&&this.techPowersKnown.equals(rhs.techPowersKnown))))&&((this.focusPoints == rhs.focusPoints)||((this.focusPoints!= null)&&this.focusPoints.equals(rhs.focusPoints))))&&((this.features == rhs.features)||((this.features!= null)&&this.features.equals(rhs.features))))&&((this.maxPowerLevel == rhs.maxPowerLevel)||((this.maxPowerLevel!= null)&&this.maxPowerLevel.equals(rhs.maxPowerLevel))))&&((this.berserkerInstincts == rhs.berserkerInstincts)||((this.berserkerInstincts!= null)&&this.berserkerInstincts.equals(rhs.berserkerInstincts))))&&((this.aurasKnown == rhs.aurasKnown)||((this.aurasKnown!= null)&&this.aurasKnown.equals(rhs.aurasKnown))))&&((this.rangerSQuarry == rhs.rangerSQuarry)||((this.rangerSQuarry!= null)&&this.rangerSQuarry.equals(rhs.rangerSQuarry))))&&((this.idealManifests == rhs.idealManifests)||((this.idealManifests!= null)&&this.idealManifests.equals(rhs.idealManifests))))&&((this.focusedStrikes == rhs.focusedStrikes)||((this.focusedStrikes!= null)&&this.focusedStrikes.equals(rhs.focusedStrikes))))&&((this.level == rhs.level)||((this.level!= null)&&this.level.equals(rhs.level))))&&((this.operativeExploits == rhs.operativeExploits)||((this.operativeExploits!= null)&&this.operativeExploits.equals(rhs.operativeExploits))))&&((this.sneakAttack == rhs.sneakAttack)||((this.sneakAttack!= null)&&this.sneakAttack.equals(rhs.sneakAttack))))&&((this.idealsKnown == rhs.idealsKnown)||((this.idealsKnown!= null)&&this.idealsKnown.equals(rhs.idealsKnown))))&&((this.strategiesKnown == rhs.strategiesKnown)||((this.strategiesKnown!= null)&&this.strategiesKnown.equals(rhs.strategiesKnown))))&&((this.techPoints == rhs.techPoints)||((this.techPoints!= null)&&this.techPoints.equals(rhs.techPoints))))&&((this.rages == rhs.rages)||((this.rages!= null)&&this.rages.equals(rhs.rages))))&&((this.routinesKnown == rhs.routinesKnown)||((this.routinesKnown!= null)&&this.routinesKnown.equals(rhs.routinesKnown))))&&((this.unarmoredMovement == rhs.unarmoredMovement)||((this.unarmoredMovement!= null)&&this.unarmoredMovement.equals(rhs.unarmoredMovement))))&&((this.martialArts == rhs.martialArts)||((this.martialArts!= null)&&this.martialArts.equals(rhs.martialArts))))&&((this.discoveries == rhs.discoveries)||((this.discoveries!= null)&&this.discoveries.equals(rhs.discoveries))))&&((this.rageDamage == rhs.rageDamage)||((this.rageDamage!= null)&&this.rageDamage.equals(rhs.rageDamage))))&&((this.modificationSlots == rhs.modificationSlots)||((this.modificationSlots!= null)&&this.modificationSlots.equals(rhs.modificationSlots))))&&((this.superiorityDiceSize == rhs.superiorityDiceSize)||((this.superiorityDiceSize!= null)&&this.superiorityDiceSize.equals(rhs.superiorityDiceSize))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.routineRadius == rhs.routineRadius)||((this.routineRadius!= null)&&this.routineRadius.equals(rhs.routineRadius))))&&((this.forcePowersKnown == rhs.forcePowersKnown)||((this.forcePowersKnown!= null)&&this.forcePowersKnown.equals(rhs.forcePowersKnown)))); + } + +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/model/_9.java b/src/main/java/org/misoenergy/hackday/kessel_run/model/_9.java new file mode 100644 index 0000000..1219121 --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/model/_9.java @@ -0,0 +1,855 @@ + +package org.misoenergy.hackday.kessel_run.model; + +import java.util.HashMap; +import java.util.Map; +import javax.annotation.processing.Generated; +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; + +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonPropertyOrder({ + "Level", + "Proficiency Bonus", + "Features", + "Rages", + "Rage Damage", + "Berserker Instincts", + "Force Powers Known", + "Force Points", + "Max Power Level", + "Force-Empowered Casting Options", + "Tech Powers Known", + "Tech Points", + "Potent Aptitude", + "Modification Slots", + "Maneuvers Known", + "Superiority Dice Quantity", + "Superiority Dice Size", + "Strategies Known", + "Focused Strikes", + "Auras Known", + "Aura Radius", + "Martial Arts", + "Focus Points", + "Monastic Vows", + "Unarmored Movement", + "Sneak Attack", + "Operative Exploits", + "Discoveries", + "Ranger's Quarry", + "Routines Known", + "Routine Radius", + "Kinetic Combat", + "Ideals Known", + "Ideal Manifests" +}) +@Generated("jsonschema2pojo") +public class _9 { + + @JsonProperty("Level") + private String level; + @JsonProperty("Proficiency Bonus") + private String proficiencyBonus; + @JsonProperty("Features") + private String features; + @JsonProperty("Rages") + private String rages; + @JsonProperty("Rage Damage") + private String rageDamage; + @JsonProperty("Berserker Instincts") + private String berserkerInstincts; + @JsonProperty("Force Powers Known") + private String forcePowersKnown; + @JsonProperty("Force Points") + private String forcePoints; + @JsonProperty("Max Power Level") + private String maxPowerLevel; + @JsonProperty("Force-Empowered Casting Options") + private String forceEmpoweredCastingOptions; + @JsonProperty("Tech Powers Known") + private String techPowersKnown; + @JsonProperty("Tech Points") + private String techPoints; + @JsonProperty("Potent Aptitude") + private String potentAptitude; + @JsonProperty("Modification Slots") + private String modificationSlots; + @JsonProperty("Maneuvers Known") + private String maneuversKnown; + @JsonProperty("Superiority Dice Quantity") + private String superiorityDiceQuantity; + @JsonProperty("Superiority Dice Size") + private String superiorityDiceSize; + @JsonProperty("Strategies Known") + private String strategiesKnown; + @JsonProperty("Focused Strikes") + private String focusedStrikes; + @JsonProperty("Auras Known") + private String aurasKnown; + @JsonProperty("Aura Radius") + private String auraRadius; + @JsonProperty("Martial Arts") + private String martialArts; + @JsonProperty("Focus Points") + private String focusPoints; + @JsonProperty("Monastic Vows") + private String monasticVows; + @JsonProperty("Unarmored Movement") + private String unarmoredMovement; + @JsonProperty("Sneak Attack") + private String sneakAttack; + @JsonProperty("Operative Exploits") + private String operativeExploits; + @JsonProperty("Discoveries") + private String discoveries; + @JsonProperty("Ranger's Quarry") + private String rangerSQuarry; + @JsonProperty("Routines Known") + private String routinesKnown; + @JsonProperty("Routine Radius") + private String routineRadius; + @JsonProperty("Kinetic Combat") + private String kineticCombat; + @JsonProperty("Ideals Known") + private String idealsKnown; + @JsonProperty("Ideal Manifests") + private String idealManifests; + @JsonIgnore + private Map additionalProperties = new HashMap(); + + @JsonProperty("Level") + public String getLevel() { + return level; + } + + @JsonProperty("Level") + public void setLevel(String level) { + this.level = level; + } + + public _9 withLevel(String level) { + this.level = level; + return this; + } + + @JsonProperty("Proficiency Bonus") + public String getProficiencyBonus() { + return proficiencyBonus; + } + + @JsonProperty("Proficiency Bonus") + public void setProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + } + + public _9 withProficiencyBonus(String proficiencyBonus) { + this.proficiencyBonus = proficiencyBonus; + return this; + } + + @JsonProperty("Features") + public String getFeatures() { + return features; + } + + @JsonProperty("Features") + public void setFeatures(String features) { + this.features = features; + } + + public _9 withFeatures(String features) { + this.features = features; + return this; + } + + @JsonProperty("Rages") + public String getRages() { + return rages; + } + + @JsonProperty("Rages") + public void setRages(String rages) { + this.rages = rages; + } + + public _9 withRages(String rages) { + this.rages = rages; + return this; + } + + @JsonProperty("Rage Damage") + public String getRageDamage() { + return rageDamage; + } + + @JsonProperty("Rage Damage") + public void setRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + } + + public _9 withRageDamage(String rageDamage) { + this.rageDamage = rageDamage; + return this; + } + + @JsonProperty("Berserker Instincts") + public String getBerserkerInstincts() { + return berserkerInstincts; + } + + @JsonProperty("Berserker Instincts") + public void setBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + } + + public _9 withBerserkerInstincts(String berserkerInstincts) { + this.berserkerInstincts = berserkerInstincts; + return this; + } + + @JsonProperty("Force Powers Known") + public String getForcePowersKnown() { + return forcePowersKnown; + } + + @JsonProperty("Force Powers Known") + public void setForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + } + + public _9 withForcePowersKnown(String forcePowersKnown) { + this.forcePowersKnown = forcePowersKnown; + return this; + } + + @JsonProperty("Force Points") + public String getForcePoints() { + return forcePoints; + } + + @JsonProperty("Force Points") + public void setForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + } + + public _9 withForcePoints(String forcePoints) { + this.forcePoints = forcePoints; + return this; + } + + @JsonProperty("Max Power Level") + public String getMaxPowerLevel() { + return maxPowerLevel; + } + + @JsonProperty("Max Power Level") + public void setMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + } + + public _9 withMaxPowerLevel(String maxPowerLevel) { + this.maxPowerLevel = maxPowerLevel; + return this; + } + + @JsonProperty("Force-Empowered Casting Options") + public String getForceEmpoweredCastingOptions() { + return forceEmpoweredCastingOptions; + } + + @JsonProperty("Force-Empowered Casting Options") + public void setForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + } + + public _9 withForceEmpoweredCastingOptions(String forceEmpoweredCastingOptions) { + this.forceEmpoweredCastingOptions = forceEmpoweredCastingOptions; + return this; + } + + @JsonProperty("Tech Powers Known") + public String getTechPowersKnown() { + return techPowersKnown; + } + + @JsonProperty("Tech Powers Known") + public void setTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + } + + public _9 withTechPowersKnown(String techPowersKnown) { + this.techPowersKnown = techPowersKnown; + return this; + } + + @JsonProperty("Tech Points") + public String getTechPoints() { + return techPoints; + } + + @JsonProperty("Tech Points") + public void setTechPoints(String techPoints) { + this.techPoints = techPoints; + } + + public _9 withTechPoints(String techPoints) { + this.techPoints = techPoints; + return this; + } + + @JsonProperty("Potent Aptitude") + public String getPotentAptitude() { + return potentAptitude; + } + + @JsonProperty("Potent Aptitude") + public void setPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + } + + public _9 withPotentAptitude(String potentAptitude) { + this.potentAptitude = potentAptitude; + return this; + } + + @JsonProperty("Modification Slots") + public String getModificationSlots() { + return modificationSlots; + } + + @JsonProperty("Modification Slots") + public void setModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + } + + public _9 withModificationSlots(String modificationSlots) { + this.modificationSlots = modificationSlots; + return this; + } + + @JsonProperty("Maneuvers Known") + public String getManeuversKnown() { + return maneuversKnown; + } + + @JsonProperty("Maneuvers Known") + public void setManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + } + + public _9 withManeuversKnown(String maneuversKnown) { + this.maneuversKnown = maneuversKnown; + return this; + } + + @JsonProperty("Superiority Dice Quantity") + public String getSuperiorityDiceQuantity() { + return superiorityDiceQuantity; + } + + @JsonProperty("Superiority Dice Quantity") + public void setSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + } + + public _9 withSuperiorityDiceQuantity(String superiorityDiceQuantity) { + this.superiorityDiceQuantity = superiorityDiceQuantity; + return this; + } + + @JsonProperty("Superiority Dice Size") + public String getSuperiorityDiceSize() { + return superiorityDiceSize; + } + + @JsonProperty("Superiority Dice Size") + public void setSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + } + + public _9 withSuperiorityDiceSize(String superiorityDiceSize) { + this.superiorityDiceSize = superiorityDiceSize; + return this; + } + + @JsonProperty("Strategies Known") + public String getStrategiesKnown() { + return strategiesKnown; + } + + @JsonProperty("Strategies Known") + public void setStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + } + + public _9 withStrategiesKnown(String strategiesKnown) { + this.strategiesKnown = strategiesKnown; + return this; + } + + @JsonProperty("Focused Strikes") + public String getFocusedStrikes() { + return focusedStrikes; + } + + @JsonProperty("Focused Strikes") + public void setFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + } + + public _9 withFocusedStrikes(String focusedStrikes) { + this.focusedStrikes = focusedStrikes; + return this; + } + + @JsonProperty("Auras Known") + public String getAurasKnown() { + return aurasKnown; + } + + @JsonProperty("Auras Known") + public void setAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + } + + public _9 withAurasKnown(String aurasKnown) { + this.aurasKnown = aurasKnown; + return this; + } + + @JsonProperty("Aura Radius") + public String getAuraRadius() { + return auraRadius; + } + + @JsonProperty("Aura Radius") + public void setAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + } + + public _9 withAuraRadius(String auraRadius) { + this.auraRadius = auraRadius; + return this; + } + + @JsonProperty("Martial Arts") + public String getMartialArts() { + return martialArts; + } + + @JsonProperty("Martial Arts") + public void setMartialArts(String martialArts) { + this.martialArts = martialArts; + } + + public _9 withMartialArts(String martialArts) { + this.martialArts = martialArts; + return this; + } + + @JsonProperty("Focus Points") + public String getFocusPoints() { + return focusPoints; + } + + @JsonProperty("Focus Points") + public void setFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + } + + public _9 withFocusPoints(String focusPoints) { + this.focusPoints = focusPoints; + return this; + } + + @JsonProperty("Monastic Vows") + public String getMonasticVows() { + return monasticVows; + } + + @JsonProperty("Monastic Vows") + public void setMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + } + + public _9 withMonasticVows(String monasticVows) { + this.monasticVows = monasticVows; + return this; + } + + @JsonProperty("Unarmored Movement") + public String getUnarmoredMovement() { + return unarmoredMovement; + } + + @JsonProperty("Unarmored Movement") + public void setUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + } + + public _9 withUnarmoredMovement(String unarmoredMovement) { + this.unarmoredMovement = unarmoredMovement; + return this; + } + + @JsonProperty("Sneak Attack") + public String getSneakAttack() { + return sneakAttack; + } + + @JsonProperty("Sneak Attack") + public void setSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + } + + public _9 withSneakAttack(String sneakAttack) { + this.sneakAttack = sneakAttack; + return this; + } + + @JsonProperty("Operative Exploits") + public String getOperativeExploits() { + return operativeExploits; + } + + @JsonProperty("Operative Exploits") + public void setOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + } + + public _9 withOperativeExploits(String operativeExploits) { + this.operativeExploits = operativeExploits; + return this; + } + + @JsonProperty("Discoveries") + public String getDiscoveries() { + return discoveries; + } + + @JsonProperty("Discoveries") + public void setDiscoveries(String discoveries) { + this.discoveries = discoveries; + } + + public _9 withDiscoveries(String discoveries) { + this.discoveries = discoveries; + return this; + } + + @JsonProperty("Ranger's Quarry") + public String getRangerSQuarry() { + return rangerSQuarry; + } + + @JsonProperty("Ranger's Quarry") + public void setRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + } + + public _9 withRangerSQuarry(String rangerSQuarry) { + this.rangerSQuarry = rangerSQuarry; + return this; + } + + @JsonProperty("Routines Known") + public String getRoutinesKnown() { + return routinesKnown; + } + + @JsonProperty("Routines Known") + public void setRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + } + + public _9 withRoutinesKnown(String routinesKnown) { + this.routinesKnown = routinesKnown; + return this; + } + + @JsonProperty("Routine Radius") + public String getRoutineRadius() { + return routineRadius; + } + + @JsonProperty("Routine Radius") + public void setRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + } + + public _9 withRoutineRadius(String routineRadius) { + this.routineRadius = routineRadius; + return this; + } + + @JsonProperty("Kinetic Combat") + public String getKineticCombat() { + return kineticCombat; + } + + @JsonProperty("Kinetic Combat") + public void setKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + } + + public _9 withKineticCombat(String kineticCombat) { + this.kineticCombat = kineticCombat; + return this; + } + + @JsonProperty("Ideals Known") + public String getIdealsKnown() { + return idealsKnown; + } + + @JsonProperty("Ideals Known") + public void setIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + } + + public _9 withIdealsKnown(String idealsKnown) { + this.idealsKnown = idealsKnown; + return this; + } + + @JsonProperty("Ideal Manifests") + public String getIdealManifests() { + return idealManifests; + } + + @JsonProperty("Ideal Manifests") + public void setIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + } + + public _9 withIdealManifests(String idealManifests) { + this.idealManifests = idealManifests; + return this; + } + + @JsonAnyGetter + public Map getAdditionalProperties() { + return this.additionalProperties; + } + + @JsonAnySetter + public void setAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + } + + public _9 withAdditionalProperty(String name, Object value) { + this.additionalProperties.put(name, value); + return this; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(_9 .class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); + sb.append("level"); + sb.append('='); + sb.append(((this.level == null)?"":this.level)); + sb.append(','); + sb.append("proficiencyBonus"); + sb.append('='); + sb.append(((this.proficiencyBonus == null)?"":this.proficiencyBonus)); + sb.append(','); + sb.append("features"); + sb.append('='); + sb.append(((this.features == null)?"":this.features)); + sb.append(','); + sb.append("rages"); + sb.append('='); + sb.append(((this.rages == null)?"":this.rages)); + sb.append(','); + sb.append("rageDamage"); + sb.append('='); + sb.append(((this.rageDamage == null)?"":this.rageDamage)); + sb.append(','); + sb.append("berserkerInstincts"); + sb.append('='); + sb.append(((this.berserkerInstincts == null)?"":this.berserkerInstincts)); + sb.append(','); + sb.append("forcePowersKnown"); + sb.append('='); + sb.append(((this.forcePowersKnown == null)?"":this.forcePowersKnown)); + sb.append(','); + sb.append("forcePoints"); + sb.append('='); + sb.append(((this.forcePoints == null)?"":this.forcePoints)); + sb.append(','); + sb.append("maxPowerLevel"); + sb.append('='); + sb.append(((this.maxPowerLevel == null)?"":this.maxPowerLevel)); + sb.append(','); + sb.append("forceEmpoweredCastingOptions"); + sb.append('='); + sb.append(((this.forceEmpoweredCastingOptions == null)?"":this.forceEmpoweredCastingOptions)); + sb.append(','); + sb.append("techPowersKnown"); + sb.append('='); + sb.append(((this.techPowersKnown == null)?"":this.techPowersKnown)); + sb.append(','); + sb.append("techPoints"); + sb.append('='); + sb.append(((this.techPoints == null)?"":this.techPoints)); + sb.append(','); + sb.append("potentAptitude"); + sb.append('='); + sb.append(((this.potentAptitude == null)?"":this.potentAptitude)); + sb.append(','); + sb.append("modificationSlots"); + sb.append('='); + sb.append(((this.modificationSlots == null)?"":this.modificationSlots)); + sb.append(','); + sb.append("maneuversKnown"); + sb.append('='); + sb.append(((this.maneuversKnown == null)?"":this.maneuversKnown)); + sb.append(','); + sb.append("superiorityDiceQuantity"); + sb.append('='); + sb.append(((this.superiorityDiceQuantity == null)?"":this.superiorityDiceQuantity)); + sb.append(','); + sb.append("superiorityDiceSize"); + sb.append('='); + sb.append(((this.superiorityDiceSize == null)?"":this.superiorityDiceSize)); + sb.append(','); + sb.append("strategiesKnown"); + sb.append('='); + sb.append(((this.strategiesKnown == null)?"":this.strategiesKnown)); + sb.append(','); + sb.append("focusedStrikes"); + sb.append('='); + sb.append(((this.focusedStrikes == null)?"":this.focusedStrikes)); + sb.append(','); + sb.append("aurasKnown"); + sb.append('='); + sb.append(((this.aurasKnown == null)?"":this.aurasKnown)); + sb.append(','); + sb.append("auraRadius"); + sb.append('='); + sb.append(((this.auraRadius == null)?"":this.auraRadius)); + sb.append(','); + sb.append("martialArts"); + sb.append('='); + sb.append(((this.martialArts == null)?"":this.martialArts)); + sb.append(','); + sb.append("focusPoints"); + sb.append('='); + sb.append(((this.focusPoints == null)?"":this.focusPoints)); + sb.append(','); + sb.append("monasticVows"); + sb.append('='); + sb.append(((this.monasticVows == null)?"":this.monasticVows)); + sb.append(','); + sb.append("unarmoredMovement"); + sb.append('='); + sb.append(((this.unarmoredMovement == null)?"":this.unarmoredMovement)); + sb.append(','); + sb.append("sneakAttack"); + sb.append('='); + sb.append(((this.sneakAttack == null)?"":this.sneakAttack)); + sb.append(','); + sb.append("operativeExploits"); + sb.append('='); + sb.append(((this.operativeExploits == null)?"":this.operativeExploits)); + sb.append(','); + sb.append("discoveries"); + sb.append('='); + sb.append(((this.discoveries == null)?"":this.discoveries)); + sb.append(','); + sb.append("rangerSQuarry"); + sb.append('='); + sb.append(((this.rangerSQuarry == null)?"":this.rangerSQuarry)); + sb.append(','); + sb.append("routinesKnown"); + sb.append('='); + sb.append(((this.routinesKnown == null)?"":this.routinesKnown)); + sb.append(','); + sb.append("routineRadius"); + sb.append('='); + sb.append(((this.routineRadius == null)?"":this.routineRadius)); + sb.append(','); + sb.append("kineticCombat"); + sb.append('='); + sb.append(((this.kineticCombat == null)?"":this.kineticCombat)); + sb.append(','); + sb.append("idealsKnown"); + sb.append('='); + sb.append(((this.idealsKnown == null)?"":this.idealsKnown)); + sb.append(','); + sb.append("idealManifests"); + sb.append('='); + sb.append(((this.idealManifests == null)?"":this.idealManifests)); + sb.append(','); + sb.append("additionalProperties"); + sb.append('='); + sb.append(((this.additionalProperties == null)?"":this.additionalProperties)); + sb.append(','); + if (sb.charAt((sb.length()- 1)) == ',') { + sb.setCharAt((sb.length()- 1), ']'); + } else { + sb.append(']'); + } + return sb.toString(); + } + + @Override + public int hashCode() { + int result = 1; + result = ((result* 31)+((this.superiorityDiceQuantity == null)? 0 :this.superiorityDiceQuantity.hashCode())); + result = ((result* 31)+((this.forceEmpoweredCastingOptions == null)? 0 :this.forceEmpoweredCastingOptions.hashCode())); + result = ((result* 31)+((this.kineticCombat == null)? 0 :this.kineticCombat.hashCode())); + result = ((result* 31)+((this.forcePoints == null)? 0 :this.forcePoints.hashCode())); + result = ((result* 31)+((this.potentAptitude == null)? 0 :this.potentAptitude.hashCode())); + result = ((result* 31)+((this.auraRadius == null)? 0 :this.auraRadius.hashCode())); + result = ((result* 31)+((this.proficiencyBonus == null)? 0 :this.proficiencyBonus.hashCode())); + result = ((result* 31)+((this.maneuversKnown == null)? 0 :this.maneuversKnown.hashCode())); + result = ((result* 31)+((this.monasticVows == null)? 0 :this.monasticVows.hashCode())); + result = ((result* 31)+((this.techPowersKnown == null)? 0 :this.techPowersKnown.hashCode())); + result = ((result* 31)+((this.focusPoints == null)? 0 :this.focusPoints.hashCode())); + result = ((result* 31)+((this.features == null)? 0 :this.features.hashCode())); + result = ((result* 31)+((this.maxPowerLevel == null)? 0 :this.maxPowerLevel.hashCode())); + result = ((result* 31)+((this.berserkerInstincts == null)? 0 :this.berserkerInstincts.hashCode())); + result = ((result* 31)+((this.aurasKnown == null)? 0 :this.aurasKnown.hashCode())); + result = ((result* 31)+((this.rangerSQuarry == null)? 0 :this.rangerSQuarry.hashCode())); + result = ((result* 31)+((this.idealManifests == null)? 0 :this.idealManifests.hashCode())); + result = ((result* 31)+((this.focusedStrikes == null)? 0 :this.focusedStrikes.hashCode())); + result = ((result* 31)+((this.level == null)? 0 :this.level.hashCode())); + result = ((result* 31)+((this.operativeExploits == null)? 0 :this.operativeExploits.hashCode())); + result = ((result* 31)+((this.sneakAttack == null)? 0 :this.sneakAttack.hashCode())); + result = ((result* 31)+((this.idealsKnown == null)? 0 :this.idealsKnown.hashCode())); + result = ((result* 31)+((this.strategiesKnown == null)? 0 :this.strategiesKnown.hashCode())); + result = ((result* 31)+((this.techPoints == null)? 0 :this.techPoints.hashCode())); + result = ((result* 31)+((this.rages == null)? 0 :this.rages.hashCode())); + result = ((result* 31)+((this.routinesKnown == null)? 0 :this.routinesKnown.hashCode())); + result = ((result* 31)+((this.unarmoredMovement == null)? 0 :this.unarmoredMovement.hashCode())); + result = ((result* 31)+((this.martialArts == null)? 0 :this.martialArts.hashCode())); + result = ((result* 31)+((this.discoveries == null)? 0 :this.discoveries.hashCode())); + result = ((result* 31)+((this.rageDamage == null)? 0 :this.rageDamage.hashCode())); + result = ((result* 31)+((this.modificationSlots == null)? 0 :this.modificationSlots.hashCode())); + result = ((result* 31)+((this.superiorityDiceSize == null)? 0 :this.superiorityDiceSize.hashCode())); + result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode())); + result = ((result* 31)+((this.routineRadius == null)? 0 :this.routineRadius.hashCode())); + result = ((result* 31)+((this.forcePowersKnown == null)? 0 :this.forcePowersKnown.hashCode())); + return result; + } + + @Override + public boolean equals(Object other) { + if (other == this) { + return true; + } + if ((other instanceof _9) == false) { + return false; + } + _9 rhs = ((_9) other); + return ((((((((((((((((((((((((((((((((((((this.superiorityDiceQuantity == rhs.superiorityDiceQuantity)||((this.superiorityDiceQuantity!= null)&&this.superiorityDiceQuantity.equals(rhs.superiorityDiceQuantity)))&&((this.forceEmpoweredCastingOptions == rhs.forceEmpoweredCastingOptions)||((this.forceEmpoweredCastingOptions!= null)&&this.forceEmpoweredCastingOptions.equals(rhs.forceEmpoweredCastingOptions))))&&((this.kineticCombat == rhs.kineticCombat)||((this.kineticCombat!= null)&&this.kineticCombat.equals(rhs.kineticCombat))))&&((this.forcePoints == rhs.forcePoints)||((this.forcePoints!= null)&&this.forcePoints.equals(rhs.forcePoints))))&&((this.potentAptitude == rhs.potentAptitude)||((this.potentAptitude!= null)&&this.potentAptitude.equals(rhs.potentAptitude))))&&((this.auraRadius == rhs.auraRadius)||((this.auraRadius!= null)&&this.auraRadius.equals(rhs.auraRadius))))&&((this.proficiencyBonus == rhs.proficiencyBonus)||((this.proficiencyBonus!= null)&&this.proficiencyBonus.equals(rhs.proficiencyBonus))))&&((this.maneuversKnown == rhs.maneuversKnown)||((this.maneuversKnown!= null)&&this.maneuversKnown.equals(rhs.maneuversKnown))))&&((this.monasticVows == rhs.monasticVows)||((this.monasticVows!= null)&&this.monasticVows.equals(rhs.monasticVows))))&&((this.techPowersKnown == rhs.techPowersKnown)||((this.techPowersKnown!= null)&&this.techPowersKnown.equals(rhs.techPowersKnown))))&&((this.focusPoints == rhs.focusPoints)||((this.focusPoints!= null)&&this.focusPoints.equals(rhs.focusPoints))))&&((this.features == rhs.features)||((this.features!= null)&&this.features.equals(rhs.features))))&&((this.maxPowerLevel == rhs.maxPowerLevel)||((this.maxPowerLevel!= null)&&this.maxPowerLevel.equals(rhs.maxPowerLevel))))&&((this.berserkerInstincts == rhs.berserkerInstincts)||((this.berserkerInstincts!= null)&&this.berserkerInstincts.equals(rhs.berserkerInstincts))))&&((this.aurasKnown == rhs.aurasKnown)||((this.aurasKnown!= null)&&this.aurasKnown.equals(rhs.aurasKnown))))&&((this.rangerSQuarry == rhs.rangerSQuarry)||((this.rangerSQuarry!= null)&&this.rangerSQuarry.equals(rhs.rangerSQuarry))))&&((this.idealManifests == rhs.idealManifests)||((this.idealManifests!= null)&&this.idealManifests.equals(rhs.idealManifests))))&&((this.focusedStrikes == rhs.focusedStrikes)||((this.focusedStrikes!= null)&&this.focusedStrikes.equals(rhs.focusedStrikes))))&&((this.level == rhs.level)||((this.level!= null)&&this.level.equals(rhs.level))))&&((this.operativeExploits == rhs.operativeExploits)||((this.operativeExploits!= null)&&this.operativeExploits.equals(rhs.operativeExploits))))&&((this.sneakAttack == rhs.sneakAttack)||((this.sneakAttack!= null)&&this.sneakAttack.equals(rhs.sneakAttack))))&&((this.idealsKnown == rhs.idealsKnown)||((this.idealsKnown!= null)&&this.idealsKnown.equals(rhs.idealsKnown))))&&((this.strategiesKnown == rhs.strategiesKnown)||((this.strategiesKnown!= null)&&this.strategiesKnown.equals(rhs.strategiesKnown))))&&((this.techPoints == rhs.techPoints)||((this.techPoints!= null)&&this.techPoints.equals(rhs.techPoints))))&&((this.rages == rhs.rages)||((this.rages!= null)&&this.rages.equals(rhs.rages))))&&((this.routinesKnown == rhs.routinesKnown)||((this.routinesKnown!= null)&&this.routinesKnown.equals(rhs.routinesKnown))))&&((this.unarmoredMovement == rhs.unarmoredMovement)||((this.unarmoredMovement!= null)&&this.unarmoredMovement.equals(rhs.unarmoredMovement))))&&((this.martialArts == rhs.martialArts)||((this.martialArts!= null)&&this.martialArts.equals(rhs.martialArts))))&&((this.discoveries == rhs.discoveries)||((this.discoveries!= null)&&this.discoveries.equals(rhs.discoveries))))&&((this.rageDamage == rhs.rageDamage)||((this.rageDamage!= null)&&this.rageDamage.equals(rhs.rageDamage))))&&((this.modificationSlots == rhs.modificationSlots)||((this.modificationSlots!= null)&&this.modificationSlots.equals(rhs.modificationSlots))))&&((this.superiorityDiceSize == rhs.superiorityDiceSize)||((this.superiorityDiceSize!= null)&&this.superiorityDiceSize.equals(rhs.superiorityDiceSize))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.routineRadius == rhs.routineRadius)||((this.routineRadius!= null)&&this.routineRadius.equals(rhs.routineRadius))))&&((this.forcePowersKnown == rhs.forcePowersKnown)||((this.forcePowersKnown!= null)&&this.forcePowersKnown.equals(rhs.forcePowersKnown)))); + } + +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/service/JsonToPojoConcerterService.java b/src/main/java/org/misoenergy/hackday/kessel_run/service/JsonToPojoConcerterService.java new file mode 100644 index 0000000..9803226 --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/service/JsonToPojoConcerterService.java @@ -0,0 +1,36 @@ +package org.misoenergy.hackday.kessel_run.service; + +import com.sun.codemodel.JCodeModel; +import org.jsonschema2pojo.*; +import org.jsonschema2pojo.rules.RuleFactory; +import org.springframework.stereotype.Service; + +import java.io.File; +import java.io.IOException; +import java.net.URL; + +@Service +public class JsonToPojoConcerterService { + + public void convertJsonToJavaClass(URL inputJsonUrl, File outputJavaClassDirectory, String packageName, String javaClassName) + throws IOException { + JCodeModel jcodeModel = new JCodeModel(); + + GenerationConfig config = new DefaultGenerationConfig() { + @Override + public boolean isGenerateBuilders() { + return true; + } + + @Override + public SourceType getSourceType() { + return SourceType.JSON; + } + }; + + SchemaMapper mapper = new SchemaMapper(new RuleFactory(config, new Jackson2Annotator(config), new SchemaStore()), new SchemaGenerator()); + mapper.generate(jcodeModel, javaClassName, packageName, inputJsonUrl); + + jcodeModel.build(outputJavaClassDirectory); + } +} diff --git a/src/main/java/org/misoenergy/hackday/kessel_run/service/StarWarsApiService.java b/src/main/java/org/misoenergy/hackday/kessel_run/service/StarWarsApiService.java new file mode 100644 index 0000000..67285e5 --- /dev/null +++ b/src/main/java/org/misoenergy/hackday/kessel_run/service/StarWarsApiService.java @@ -0,0 +1,83 @@ +package org.misoenergy.hackday.kessel_run.service; + +import lombok.extern.slf4j.Slf4j; +import org.misoenergy.hackday.kessel_run.model.StarWarsPojo; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.MediaType; +import org.springframework.stereotype.Service; +import org.springframework.web.client.RestTemplate; +import org.springframework.web.reactive.function.client.WebClient; + +import java.io.File; +import java.util.Arrays; +import java.util.List; + +@Service +@Slf4j +public class StarWarsApiService { + + @Autowired + RestTemplate restTemplate; + + @Autowired + private JsonToPojoConcerterService jsonToPojoConcerterService; + + private String url = "https://sw5eapi.azurewebsites.net/api/class"; + + public List getClassData () { + + //return getClassDataRestTemplate(); + + return getClassDataWebClient(); + } + + private List getClassDataRestTemplate() { + + StarWarsPojo[] response = restTemplate.getForObject(url, StarWarsPojo[].class); + List starWarsPojoList = Arrays.stream(response).toList(); + + log.info("Using rest template: size of response is: {}", starWarsPojoList.size()); + + return starWarsPojoList; + } + + private List getClassDataWebClient () { + + StarWarsPojo[] response = WebClient.builder() + .build() + .get() + .uri(url) + .accept(MediaType.APPLICATION_JSON) + .retrieve() + .bodyToMono(StarWarsPojo[].class) + .block(); + + List starWarsPojoList = Arrays.stream(response).toList(); + + log.info("Using webclient: size of response is: {}", starWarsPojoList.size()); + + return starWarsPojoList; + } + + + public void generatePojoFromJSON() { + + String packageName = "org.misoenergy.hackday.kessel_run.model"; + + String jsonPath = "src/main/resources/"; + File inputJson = new File(jsonPath + "starwarsjsonresponse.json"); + + String outputPath = "src/main/resources/"; + File outputJavaClassDirectory = new File(outputPath); + + String javaClassName = "StarWarsPojo"; + + try { + jsonToPojoConcerterService.convertJsonToJavaClass(inputJson.toURI() + .toURL(), outputJavaClassDirectory, packageName, javaClassName ) ; + + }catch (Exception ex) { + log.info("exception : {}" , ex.getMessage() ); + } + } +} diff --git a/src/main/resources/starwarsjsonresponse.json b/src/main/resources/starwarsjsonresponse.json new file mode 100644 index 0000000..685d821 --- /dev/null +++ b/src/main/resources/starwarsjsonresponse.json @@ -0,0 +1,2784 @@ +[ + { + "name": "Berserker", + "summary": "Melee combatant who utilizes rage to increase prowess", + "primaryAbility": "Strength", + "flavorText": "A massive wookiee hunter prowls through the forest, hefting his vibroaxe. With a roar he charges at the pair of trandoshans who dared poach his kin. \r\n\r\nA gamorrean snarls at the latest challenger to his authority over their savage tribe, ready to break his neck with his bare hands as he did to the last six rivals. \r\n\r\nFrothing at the mouth, a nikto slams his helmet into the face of his foe, then turns to drive his armored elbow into the gut of another.\r\n\r\nThese berserkers, different as they might be, are defined by their rage: unbridled, unquenchable, and unthinking fury. More than a mere emotion, their anger is the ferocity of a cornered predator, the unrelenting assault of a storm, the churning turmoil of the sea. For every berserker, rage is a power that fuels not just a battle frenzy but also uncanny reflexes, resilience, and feats of strength.\r\n\r\n### Primal Instinct\r\nPeople of towns and cities take pride in how their civilized ways set them apart from animals, as if denying one's own nature was a mark of superiority. To a berserker, though, civilization is no virtue, but a sign of weakness. The strong embrace their animal nature keen instincts, primal physicality, and ferocious rage. Berserkers are uncomfortable when hedged in by walls and crowds. They thrive where the civilized don't.\r\n\r\nBerserkers come alive in the chaos of combat. They can enter a berserk state where rage takes over, giving them superhuman strength and resilience. A berserker can draw on this reservoir of fury only a few times without resting, but those few rages are usually sufficient to defeat whatever threats arise.\r\n\r\n### A Life of Danger\r\nNot every person deemed \"berserkers\" by scions of civilized society has the berserker class. A true berserker among these people is as uncommon as a skilled fighter in a town, and he or she plays a similar role as a protector of the people and a leader in times of war. Life in the wild places of the world is fraught with peril: rival tribes, deadly weather, and terrifying monsters. Berserkers charge headlong into that danger so that their people don't have to.\r\n\r\nTheir courage in the face of danger makes berserkers perfectly suited for adventuring. Wandering is often a way of life for their native tribes, and the rootless life of the adventurer is little hardship for a berserker. Some berserkers miss the close-knit family structures of the tribe, but eventually find them replaced by the bonds formed among the members of their adventuring parties.\r\n", + "creatingText": "When creating a berserker character, think about where your character comes from and his or her place in the world. Talk with your GM about an appropriate origin for your berserker. Did you come from a remote planet, making you a stranger in the area of the campaign? Or is the campaign set in a rough-and-tumble frontier where berserkers are common?\r\n\r\nWhat led you to take up the adventuring life? Were you lured to settled planets by the promise of riches? Did you join forces with soldiers of those lands to face a shared threat? Did monsters or an invading horde drive you out of your homeland, making you a rootless refugee? Perhaps you were a prisoner of war, brought in chains to \"civilized\" lands and only now able to win your freedom. Or you might have been cast out from your people because of a crime you committed, a taboo you violated, or a coup that removed you from a position of authority.\r\n", + "quickBuildText": "You can make a berserker quickly by following these suggestions. First, put your highest ability score in Strength, followed by Constitution. Second, choose the mercenary background.\r\n", + "levelChangeHeadersJson": "[\"Level\",\"Proficiency Bonus\",\"Features\",\"Rages\",\"Rage Damage\",\"Berserker Instincts\"]", + "levelChanges": { + "1": { + "Level": "1st", + "Proficiency Bonus": "+2", + "Features": "Rage, Unarmored Defense", + "Rages": "2", + "Rage Damage": "+2", + "Berserker Instincts": "�" + }, + "2": { + "Level": "2nd", + "Proficiency Bonus": "+2", + "Features": "Reckless Attack, Berserker Instincts", + "Rages": "2", + "Rage Damage": "+2", + "Berserker Instincts": "2" + }, + "3": { + "Level": "3rd", + "Proficiency Bonus": "+2", + "Features": "Danger Sense, Berserker Approach", + "Rages": "3", + "Rage Damage": "+2", + "Berserker Instincts": "2" + }, + "4": { + "Level": "4th", + "Proficiency Bonus": "+2", + "Features": "Ability Score Improvement", + "Rages": "3", + "Rage Damage": "+2", + "Berserker Instincts": "2" + }, + "5": { + "Level": "5th", + "Proficiency Bonus": "+3", + "Features": "Extra Attack", + "Rages": "3", + "Rage Damage": "+2", + "Berserker Instincts": "2" + }, + "6": { + "Level": "6th", + "Proficiency Bonus": "+3", + "Features": "Approach feature", + "Rages": "4", + "Rage Damage": "+2", + "Berserker Instincts": "2" + }, + "7": { + "Level": "7th", + "Proficiency Bonus": "+3", + "Features": "Feral Impulse", + "Rages": "4", + "Rage Damage": "+2", + "Berserker Instincts": "3" + }, + "8": { + "Level": "8th", + "Proficiency Bonus": "+3", + "Features": "Ability Score Improvement", + "Rages": "4", + "Rage Damage": "+2", + "Berserker Instincts": "3" + }, + "9": { + "Level": "9th", + "Proficiency Bonus": "+4", + "Features": "Brutal Critical (one die)", + "Rages": "4", + "Rage Damage": "+3", + "Berserker Instincts": "3" + }, + "10": { + "Level": "10th", + "Proficiency Bonus": "+4", + "Features": "Approach feature", + "Rages": "4", + "Rage Damage": "+3", + "Berserker Instincts": "3" + }, + "11": { + "Level": "11th", + "Proficiency Bonus": "+4", + "Features": "Relentless Rage", + "Rages": "4", + "Rage Damage": "+3", + "Berserker Instincts": "3" + }, + "12": { + "Level": "12th", + "Proficiency Bonus": "+4", + "Features": "Ability Score Improvement", + "Rages": "5", + "Rage Damage": "+3", + "Berserker Instincts": "3" + }, + "13": { + "Level": "13th", + "Proficiency Bonus": "+5", + "Features": "Brutal Critical (two dice)", + "Rages": "5", + "Rage Damage": "+4", + "Berserker Instincts": "4" + }, + "14": { + "Level": "14th", + "Proficiency Bonus": "+5", + "Features": "Approach feature", + "Rages": "5", + "Rage Damage": "+4", + "Berserker Instincts": "4" + }, + "15": { + "Level": "15th", + "Proficiency Bonus": "+5", + "Features": "Persistent Rage", + "Rages": "5", + "Rage Damage": "+4", + "Berserker Instincts": "4" + }, + "16": { + "Level": "16th", + "Proficiency Bonus": "+5", + "Features": "Ability Score Improvement", + "Rages": "5", + "Rage Damage": "+4", + "Berserker Instincts": "4" + }, + "17": { + "Level": "17th", + "Proficiency Bonus": "+6", + "Features": "Brutal Critical (three dice)", + "Rages": "6", + "Rage Damage": "+5", + "Berserker Instincts": "5" + }, + "18": { + "Level": "18th", + "Proficiency Bonus": "+6", + "Features": "Indomitable Might", + "Rages": "6", + "Rage Damage": "+5", + "Berserker Instincts": "5" + }, + "19": { + "Level": "19th", + "Proficiency Bonus": "+6", + "Features": "Ability Score Improvement", + "Rages": "6", + "Rage Damage": "+5", + "Berserker Instincts": "5" + }, + "20": { + "Level": "20th", + "Proficiency Bonus": "+6", + "Features": "Primal Champion", + "Rages": "Unlimited", + "Rage Damage": "+5", + "Berserker Instincts": "5" + } + }, + "levelChangesJson": "{\"1\":{\"Level\":\"1st\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Rage, Unarmored Defense\",\"Rages\":\"2\",\"Rage Damage\":\"+2\",\"Berserker Instincts\":\"�\"},\"2\":{\"Level\":\"2nd\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Reckless Attack, Berserker Instincts\",\"Rages\":\"2\",\"Rage Damage\":\"+2\",\"Berserker Instincts\":\"2\"},\"3\":{\"Level\":\"3rd\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Danger Sense, Berserker Approach\",\"Rages\":\"3\",\"Rage Damage\":\"+2\",\"Berserker Instincts\":\"2\"},\"4\":{\"Level\":\"4th\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Ability Score Improvement\",\"Rages\":\"3\",\"Rage Damage\":\"+2\",\"Berserker Instincts\":\"2\"},\"5\":{\"Level\":\"5th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Extra Attack\",\"Rages\":\"3\",\"Rage Damage\":\"+2\",\"Berserker Instincts\":\"2\"},\"6\":{\"Level\":\"6th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Approach feature\",\"Rages\":\"4\",\"Rage Damage\":\"+2\",\"Berserker Instincts\":\"2\"},\"7\":{\"Level\":\"7th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Feral Impulse\",\"Rages\":\"4\",\"Rage Damage\":\"+2\",\"Berserker Instincts\":\"3\"},\"8\":{\"Level\":\"8th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Ability Score Improvement\",\"Rages\":\"4\",\"Rage Damage\":\"+2\",\"Berserker Instincts\":\"3\"},\"9\":{\"Level\":\"9th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Brutal Critical (one die)\",\"Rages\":\"4\",\"Rage Damage\":\"+3\",\"Berserker Instincts\":\"3\"},\"10\":{\"Level\":\"10th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Approach feature\",\"Rages\":\"4\",\"Rage Damage\":\"+3\",\"Berserker Instincts\":\"3\"},\"11\":{\"Level\":\"11th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Relentless Rage\",\"Rages\":\"4\",\"Rage Damage\":\"+3\",\"Berserker Instincts\":\"3\"},\"12\":{\"Level\":\"12th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Ability Score Improvement\",\"Rages\":\"5\",\"Rage Damage\":\"+3\",\"Berserker Instincts\":\"3\"},\"13\":{\"Level\":\"13th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Brutal Critical (two dice)\",\"Rages\":\"5\",\"Rage Damage\":\"+4\",\"Berserker Instincts\":\"4\"},\"14\":{\"Level\":\"14th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Approach feature\",\"Rages\":\"5\",\"Rage Damage\":\"+4\",\"Berserker Instincts\":\"4\"},\"15\":{\"Level\":\"15th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Persistent Rage\",\"Rages\":\"5\",\"Rage Damage\":\"+4\",\"Berserker Instincts\":\"4\"},\"16\":{\"Level\":\"16th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Ability Score Improvement\",\"Rages\":\"5\",\"Rage Damage\":\"+4\",\"Berserker Instincts\":\"4\"},\"17\":{\"Level\":\"17th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Brutal Critical (three dice)\",\"Rages\":\"6\",\"Rage Damage\":\"+5\",\"Berserker Instincts\":\"5\"},\"18\":{\"Level\":\"18th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Indomitable Might\",\"Rages\":\"6\",\"Rage Damage\":\"+5\",\"Berserker Instincts\":\"5\"},\"19\":{\"Level\":\"19th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Ability Score Improvement\",\"Rages\":\"6\",\"Rage Damage\":\"+5\",\"Berserker Instincts\":\"5\"},\"20\":{\"Level\":\"20th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Primal Champion\",\"Rages\":\"Unlimited\",\"Rage Damage\":\"+5\",\"Berserker Instincts\":\"5\"}}", + "hitDiceDieTypeEnum": 12, + "hitDiceDieType": 12, + "hitPointsAtFirstLevel": "12 + your Constitution modifier", + "hitPointsAtHigherLevels": "1d12 (or 7) + your Constitution modifier per berserker level after 1st", + "hitPointsAtFirstLevelNumber": 12, + "hitPointsAtHigherLevelsNumber": 7, + "armorProficiencies": [ + "Light armor", + "medium armor" + ], + "armorProficienciesJson": "[\"Light armor\",\"medium armor\"]", + "weaponProficiencies": [ + "All vibroweapons", + "simple blasters" + ], + "weaponProficienciesJson": "[\"All vibroweapons\",\"simple blasters\"]", + "toolProficiencies": [ + "None" + ], + "toolProficienciesJson": "[\"None\"]", + "toolProficienciesList": [ + "None" + ], + "toolProficienciesListJson": "[\"None\"]", + "savingThrows": [ + "Strength", + "Constitution" + ], + "savingThrowsJson": "[\"Strength\",\"Constitution\"]", + "skillChoices": "Choose two from Animal Handling, Athletics, Intimidation, Nature, Perception, Survival", + "numSkillChoices": 2, + "skillChoicesList": [ + "Animal Handling", + "Athletics", + "Intimidation", + "Nature", + "Perception", + "Survival" + ], + "skillChoicesListJson": "[\"Animal Handling\",\"Athletics\",\"Intimidation\",\"Nature\",\"Perception\",\"Survival\"]", + "equipmentLines": [ + "- *(a)* a vibroweapon and a light or medium physical shield or *(b)* two vibroweapons", + "- *(a)* two techaxes or *(b)* two vibrospears", + "- *(a)* a dungeoneer's pack or *(b)* an explorer's pack" + ], + "equipmentLinesJson": "[\"- *(a)* a vibroweapon and a light or medium physical shield or *(b)* two vibroweapons\",\"- *(a)* two techaxes or *(b)* two vibrospears\",\"- *(a)* a dungeoneer's pack or *(b)* an explorer's pack\"]", + "startingWealthVariant": "5d4 x 100 cr", + "classFeatureText": "\r\n### Rage\r\n_**Berserker:** 1st level_\r\nIn battle, you fight with primal ferocity. On your turn, you can enter a rage as a bonus action if you aren't wearing heavy armor.\r\n\r\nWhile raging, you gain the following benefits:\r\n- You have advantage on Strength checks and Strength saving throws.\r\n- When you make a melee weapon attack using Strength, you gain a bonus to the damage roll that increases as you gain levels as a berserker, as shown in the Rage Damage column of the berserker table.\r\n- You have resistance to kinetic and energy damage.\r\n\r\nIf you are able to cast powers, you can't cast them or concentrate on them while raging.\r\n\r\nYour rage lasts for 1 minute. It ends early if you are knocked unconscious, you don heavy armor, or if your turn ends and you haven't taken a hostile action or taken damage since your last turn. You can also end your rage on your turn as a bonus action.\r\n\r\nYou can enter a rage a number of times as shown in the Rages column of the berserker table. You regain all expended uses when you complete a long rest.\r\n\r\n### Unarmored Defense\r\n_**Berserker:** 1st level_\r\nWhile you are not wearing any armor, your Armor Class equals 10 + your Dexterity modifier + your Constitution modifier. You can use a shield and still gain this benefit.\r\n\r\n### Reckless Attack \r\n_**Berserker:** 2nd level_\r\nYou can throw aside all concern for defense to attack with fierce desperation. When you make your first attack on your turn, you can decide to attack recklessly. Doing so gives you advantage on melee weapon attack rolls using Strength during this turn, but attack rolls against you have advantage until your next turn.\r\n\r\n### Berserker Instincts\r\n_**Berserker:** 2nd level_\r\nYou've honed two instincts, as detailed at the end of the class description, and you hone more at higher levels, as shown in the Berserker Instincts column of the berserker table.\r\n\r\n### Danger Sense\r\n_**Berserker:** 3rd level_\r\nYou gain an uncanny sense of when things nearby aren't as they should be, giving you an edge when you dodge away from danger. You have advantage on Dexterity saving throws against effects that you can see, such as traps and powers. To gain this benefit, you can't be blinded, deafened, or incapacitated.\r\n\r\n### Berserker Approach\r\n_**Berserker:** 3rd, 6th, 10th, and 14th level_\r\nYou choose an approach that shapes the nature of your rage which is detailed at the end of the class description. \r\n\r\n### Ability Score Improvement\r\n_**Berserker:** 4th, 8th, 12th, 16th, and 19th level_\r\nYou can increase one ability score by 2, or you can increase two ability scores by 1. You can't increase an ability score above 20 using this feature.\r\n\r\n### Extra Attack\r\n_**Berserker:** 5th level_\r\nYou can attack twice, instead of once, whenever you take the Attack action on your turn.\r\n\r\n### Feral Impulse\r\n_**Berserker:** 7th level_\r\nYour instincts are so honed that you have advantage on initiative checks.\r\n\r\nAdditionally, if you are surprised at the start of combat and aren't incapacitated, you can act normally on your first turn, but only if you enter your rage before doing anything else on that turn.\r\n\r\n### Brutal Critical\r\n_**Berserker:** 9th, 13th, and 17th level_\r\nYou can roll one additional weapon damage die when determining the extra damage for a critical hit with a melee attack. \r\n\r\nThis increases to two additional dice at 13th level and three additional dice at 17th level.\r\n\r\n### Relentless Rage\r\n_**Berserker:** 11th level_\r\nYour rage can keep you fighting despite grievous wounds. If you drop to 0 hit points while you're raging and don't die outright, you can make a DC 10 Constitution saving throw. If you succeed, you drop to 1 hit point instead. Each time you use this feature after the first, the DC increases by 5. When you finish a short or long rest, the DC resets to 10.\r\n\r\n### Persistent Rage\r\n_**Berserker:** 15th level_\r\nYour rage is so fierce that it ends early only if you fall unconscious or if you choose to end it.\r\n\r\n### Indomitable Might\r\n_**Berserker:** 18th level_\r\nIf your total for a Strength check is less than your Strength score, you can use that score in place of the total.\r\n\r\n### Primal Champion\r\n_**Berserker:** 20th level_\r\nYou embody the power of the wilds. Your Strength or Dexterity score increases by 2, and your Constitution score increases by 2. Your maximum for those scores increases by 2.\r\n\r\nAdditionally, you can enter rage an unlimited number of times, and entering rage no longer requires your bonus action on your turn.\r\n\r\n### Berserker Instincts\r\nThe instincts are presented in alphabetical order. \r\n\r\n#### Acklay's Instinct\r\nWhile raging, you have advantage on Constitution saving throws.\r\n\r\n#### Bantha's Instinct\r\n_**Prerequisite:** 7th level_\r\nYour carrying capacity and the weight you can push, drag, or lift doubles. If it would already double, it instead triples. Additionally, you have advantage on Strength checks made to push, pull, lift, or break objects.\r\n\r\n#### Blurrg's Instinct\r\nWhether mounted or on foot, your travel pace is doubled, as is the travel pace of up to ten companions while they're within 60 feet of you and you're not incapacitated. \r\n\r\n#### Boggdo's Instinct\r\n_**Prerequisite:** 13th level_\r\nWhile raging you have a flying speed equal to your current walking speed, though you fall if you end your turn in the air and nothing else is holding you aloft.\r\n\r\n#### Chirodactyl's Instinct\r\n_**Prerequisite:** 7th level_\r\nWhile raging, you have blindsight to a range of 30 feet, and you have advantage on Wisdom (Perception) checks that rely on sound, as long as you aren't deafened.\r\n\r\n#### Dewback's Instinct\r\nChoose three damage types other than true damage. While raging, you have resistance to the chosen damage types.\r\n\r\n#### Fighter's Instinct\r\nYou adopt a particular style of fighting as your specialty. Choose one of the Fighting Style options, detailed in Chapter 6. \r\n\r\n#### Fyrnock's Instinct\r\nWhile raging, you can use your bonus action to leap up to 30 feet to an empty space you can see. When you land you deal kinetic damage equal to your Strength modifier to each creature within 5 feet of where you land. You can use this feature twice. You gain an additional use at 5th, 9th, 13th, and 17th level. You regain all expended uses when you complete a long rest.\r\n\r\n#### Hawk's Instinct\r\n_**Prerequisite:** 7th level_\r\nYou can see up to 1 mile away with no difficulty. You are able to discern even fine details as though looking at something no more than 100 feet away from you. Additionally, dim light doesn't impose disadvantage on your Wisdom (Perception) checks.\r\n\r\n#### Katarn's Instinct\r\nYou gain a climbing speed equal to your movement speed.\r\n\r\n#### Loth-cat's Instinct\r\nWhile you're raging, other creatures have disadvantage on opportunity attack rolls against you, and you can take the Dash action as a bonus action on your turn.\r\n\r\n#### Predator's Instinct\r\nYour speed increases by 10 feet.\r\n\r\n#### Rancor's Instinct\r\n_**Prerequisite:** 13th level_\r\nWhile you're raging any creature within 5 feet of you that's hostile to you has disadvantage on attack rolls against targets other than you or another character with this feature. An enemy is immune to this effect if it can't see or hear you or if it can't be frightened.\r\n\r\n#### Tactician's Instinct\r\nWhen you use your Reckless Attack feature, you can choose to not have advantage on your attack rolls this turn. If you do so, friendly creatures within 5 feet of a hostile creature that is within 5 feet of you have advantage on attack rolls against that creature.\r\n\r\n#### Tracker's Instinct\r\n_**Prerequisite:** 7th level_\r\nYou can track other creatures while traveling at a fast pace, and you can move stealthily while traveling at a normal pace.\r\n\r\n#### Terentatek's Instinct\r\n_**Prerequisite:** 13th level_\r\nWhen you are forced to make a saving throw against a force power, you can immediately use your reaction to move up to half your speed towards the source power's caster. If you end this movement within 5 feet of the target, you can immediately make one melee weapon attack against the target as a part of that reaction.\r\n\r\n#### Varactyl's Instinct\r\n_**Prerequisite:** 13th level_\r\nWhile raging, you have advantage on Dexterity checks, your attack rolls can't suffer from disadvantage, and each slowed level only reduces your speed by 5 feet, unless it would reduce your speed to 0.\r\n", + "classFeatureText2": null, + "archetypeFlavorText": "For berserkers, rage is an internal reservoir where pain, grief, and anger are forged into a fury hard as steel. Your approach grants you features at 3rd, 6th, 10th, and 14th level.", + "archetypeFlavorName": "Berserker Approaches", + "archetypes": null, + "imageUrls": [ + "https://starwars5ecentral.blob.core.windows.net/site-images/classes/berserker_01.png" + ], + "imageUrlsJson": "[\"https://starwars5ecentral.blob.core.windows.net/site-images/classes/berserker_01.png\"]", + "casterRatio": 0.0, + "casterTypeEnum": 0, + "casterType": "None", + "multiClassProficiencies": [ + "Light armor", + "all vibroweapons" + ], + "multiClassProficienciesJson": "[\"Light armor\",\"all vibroweapons\"]", + "features": null, + "featureRowKeys": null, + "featureRowKeysJson": "", + "contentTypeEnum": 1, + "contentType": "Core", + "contentSourceEnum": 1, + "contentSource": "PHB", + "partitionKey": "Core", + "rowKey": "Berserker", + "timestamp": "2023-05-30T20:15:42.497076+00:00", + "eTag": "W/\"datetime'2023-05-30T20%3A15%3A42.497076Z'\"" + }, + { + "name": "Consular", + "summary": "Force-wielder who focuses on utilizing force powers", + "primaryAbility": "Wisdom", + "flavorText": "A twi'lek in black robes steps on a terrified rodian, who scampers away on the ground. Lightning sparks from his fingers, illuminating his red and black tattoos. The rodian's pleas for mercy fall on deaf ears as the Sith channels his lightning into his failed apprentice, leaving nothing but a charred husk behind.\r\n\r\nSitting cross-legged on a dense patch of grass, a miraluka mystic meditates on the Force. With every breath, the trees sway with a rhythmic breeze. Though she lacks simple vision, she can see the Force as it moves everything around her. \r\n\r\nA drably-robed human focuses inward, channeling the Force into the ground around him. Slowly, all the debris within arms reach rises into the air around him; with a flick of his wrist, he clears the air, sending his projectiles to pound on the approaching tank.\r\n\r\nConsulars are the supreme wielders of the Force, defined and united by the powers they cast. Drawing on the omnipresent Force that permeates the universe, consulars cast powers of rejuvenating healing and destructive lightning, draining life-force and manipulating minds; the most powerful with the Force can even experience brief glimpses of the future. \r\n\r\n### Strong with the Force\r\nRefraining from drawing their lightsabers except as a measure of last resort, consulars spend a great deal of time studying the mysteries of the Force. Their knowledge allows them to channel the Force to greater heights, unlocking unrivaled power, and twisting those powers to greater effect. \r\n\r\n### Sage or Sorcerer\r\nConsulars who follow the light side of the Force, using their powers to better their communities and people, are often called sages, while consulars who fall to the dark side and subjugate or cast aside all in their path are commonly called sorcerers. Alternatively, they may tend toward the middle, refraining from politics and war, spending their time in isolation and study.\r\n", + "creatingText": "While creating your consular, consider your personal philosophy in regards to the Force and its most famous practitioners � the Jedi and the Sith. Are you a member of one of the two orders, or do you walk a different path? Perhaps you were ostracized from your primitive village out of superstition or jealousy. You may have been brutally trained from a young age in the dark side, fueling your innate thirst for power, or perhaps you were trained as a padawan in one of the Jedi temples. How do you treat strangers, and how do they treat you once they know your abilities? What was your family like, or what did you have instead of a family? Do you see the Force as light and dark, or an impartial river of gray? \r\n", + "quickBuildText": "You can make a consular quickly by following these suggestions. First, make Wisdom or Charisma your highest ability score, followed by Dexterity. Second, choose the Jedi or Sith background.\r\n", + "levelChangeHeadersJson": "[\"Level\",\"Proficiency Bonus\",\"Features\",\"Force Powers Known\",\"Force Points\",\"Max Power Level\",\"Force-Empowered Casting Options\"]", + "levelChanges": { + "1": { + "Level": "1st", + "Proficiency Bonus": "+2", + "Features": "Forcecasting, Force Recovery", + "Force Powers Known": "9", + "Force Points": "4", + "Max Power Level": "1st", + "Force-Empowered Casting Options": "�" + }, + "2": { + "Level": "2nd", + "Proficiency Bonus": "+2", + "Features": "Force-Empowered Casting, Force Shield", + "Force Powers Known": "11", + "Force Points": "8", + "Max Power Level": "1st", + "Force-Empowered Casting Options": "2" + }, + "3": { + "Level": "3rd", + "Proficiency Bonus": "+2", + "Features": "Force Affinity, Consular Tradition", + "Force Powers Known": "13", + "Force Points": "12", + "Max Power Level": "2nd", + "Force-Empowered Casting Options": "2" + }, + "4": { + "Level": "4th", + "Proficiency Bonus": "+2", + "Features": "Ability Score Improvement", + "Force Powers Known": "15", + "Force Points": "16", + "Max Power Level": "2nd", + "Force-Empowered Casting Options": "2" + }, + "5": { + "Level": "5th", + "Proficiency Bonus": "+3", + "Features": "�", + "Force Powers Known": "17", + "Force Points": "20", + "Max Power Level": "3rd", + "Force-Empowered Casting Options": "2" + }, + "6": { + "Level": "6th", + "Proficiency Bonus": "+3", + "Features": "Tradition feature", + "Force Powers Known": "19", + "Force Points": "24", + "Max Power Level": "3rd", + "Force-Empowered Casting Options": "2" + }, + "7": { + "Level": "7th", + "Proficiency Bonus": "+3", + "Features": "�", + "Force Powers Known": "21", + "Force Points": "28", + "Max Power Level": "4th", + "Force-Empowered Casting Options": "2" + }, + "8": { + "Level": "8th", + "Proficiency Bonus": "+3", + "Features": "Ability Score Improvement", + "Force Powers Known": "23", + "Force Points": "32", + "Max Power Level": "4th", + "Force-Empowered Casting Options": "2" + }, + "9": { + "Level": "9th", + "Proficiency Bonus": "+4", + "Features": "�", + "Force Powers Known": "25", + "Force Points": "36", + "Max Power Level": "5th", + "Force-Empowered Casting Options": "3" + }, + "10": { + "Level": "10th", + "Proficiency Bonus": "+4", + "Features": "Tradition feature", + "Force Powers Known": "26", + "Force Points": "40", + "Max Power Level": "5th", + "Force-Empowered Casting Options": "3" + }, + "11": { + "Level": "11th", + "Proficiency Bonus": "+4", + "Features": "�", + "Force Powers Known": "28", + "Force Points": "44", + "Max Power Level": "6th", + "Force-Empowered Casting Options": "3" + }, + "12": { + "Level": "12th", + "Proficiency Bonus": "+4", + "Features": "Ability Score Improvement", + "Force Powers Known": "29", + "Force Points": "48", + "Max Power Level": "6th", + "Force-Empowered Casting Options": "3" + }, + "13": { + "Level": "13th", + "Proficiency Bonus": "+5", + "Features": "�", + "Force Powers Known": "31", + "Force Points": "52", + "Max Power Level": "7th", + "Force-Empowered Casting Options": "3" + }, + "14": { + "Level": "14th", + "Proficiency Bonus": "+5", + "Features": "Tradition feature", + "Force Powers Known": "32", + "Force Points": "56", + "Max Power Level": "7th", + "Force-Empowered Casting Options": "3" + }, + "15": { + "Level": "15th", + "Proficiency Bonus": "+5", + "Features": "�", + "Force Powers Known": "34", + "Force Points": "60", + "Max Power Level": "8th", + "Force-Empowered Casting Options": "3" + }, + "16": { + "Level": "16th", + "Proficiency Bonus": "+5", + "Features": "Ability Score Improvement", + "Force Powers Known": "35", + "Force Points": "64", + "Max Power Level": "8th", + "Force-Empowered Casting Options": "3" + }, + "17": { + "Level": "17th", + "Proficiency Bonus": "+6", + "Features": "�", + "Force Powers Known": "37", + "Force Points": "68", + "Max Power Level": "9th", + "Force-Empowered Casting Options": "4" + }, + "18": { + "Level": "18th", + "Proficiency Bonus": "+6", + "Features": "Tradition feature", + "Force Powers Known": "38", + "Force Points": "72", + "Max Power Level": "9th", + "Force-Empowered Casting Options": "4" + }, + "19": { + "Level": "19th", + "Proficiency Bonus": "+6", + "Features": "Ability Score Improvement", + "Force Powers Known": "39", + "Force Points": "76", + "Max Power Level": "9th", + "Force-Empowered Casting Options": "4" + }, + "20": { + "Level": "20th", + "Proficiency Bonus": "+6", + "Features": "One with the Force", + "Force Powers Known": "40", + "Force Points": "80", + "Max Power Level": "9th", + "Force-Empowered Casting Options": "4" + } + }, + "levelChangesJson": "{\"1\":{\"Level\":\"1st\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Forcecasting, Force Recovery\",\"Force Powers Known\":\"9\",\"Force Points\":\"4\",\"Max Power Level\":\"1st\",\"Force-Empowered Casting Options\":\"�\"},\"2\":{\"Level\":\"2nd\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Force-Empowered Casting, Force Shield\",\"Force Powers Known\":\"11\",\"Force Points\":\"8\",\"Max Power Level\":\"1st\",\"Force-Empowered Casting Options\":\"2\"},\"3\":{\"Level\":\"3rd\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Force Affinity, Consular Tradition\",\"Force Powers Known\":\"13\",\"Force Points\":\"12\",\"Max Power Level\":\"2nd\",\"Force-Empowered Casting Options\":\"2\"},\"4\":{\"Level\":\"4th\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Ability Score Improvement\",\"Force Powers Known\":\"15\",\"Force Points\":\"16\",\"Max Power Level\":\"2nd\",\"Force-Empowered Casting Options\":\"2\"},\"5\":{\"Level\":\"5th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"�\",\"Force Powers Known\":\"17\",\"Force Points\":\"20\",\"Max Power Level\":\"3rd\",\"Force-Empowered Casting Options\":\"2\"},\"6\":{\"Level\":\"6th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Tradition feature\",\"Force Powers Known\":\"19\",\"Force Points\":\"24\",\"Max Power Level\":\"3rd\",\"Force-Empowered Casting Options\":\"2\"},\"7\":{\"Level\":\"7th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"�\",\"Force Powers Known\":\"21\",\"Force Points\":\"28\",\"Max Power Level\":\"4th\",\"Force-Empowered Casting Options\":\"2\"},\"8\":{\"Level\":\"8th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Ability Score Improvement\",\"Force Powers Known\":\"23\",\"Force Points\":\"32\",\"Max Power Level\":\"4th\",\"Force-Empowered Casting Options\":\"2\"},\"9\":{\"Level\":\"9th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"�\",\"Force Powers Known\":\"25\",\"Force Points\":\"36\",\"Max Power Level\":\"5th\",\"Force-Empowered Casting Options\":\"3\"},\"10\":{\"Level\":\"10th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Tradition feature\",\"Force Powers Known\":\"26\",\"Force Points\":\"40\",\"Max Power Level\":\"5th\",\"Force-Empowered Casting Options\":\"3\"},\"11\":{\"Level\":\"11th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"�\",\"Force Powers Known\":\"28\",\"Force Points\":\"44\",\"Max Power Level\":\"6th\",\"Force-Empowered Casting Options\":\"3\"},\"12\":{\"Level\":\"12th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Ability Score Improvement\",\"Force Powers Known\":\"29\",\"Force Points\":\"48\",\"Max Power Level\":\"6th\",\"Force-Empowered Casting Options\":\"3\"},\"13\":{\"Level\":\"13th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"�\",\"Force Powers Known\":\"31\",\"Force Points\":\"52\",\"Max Power Level\":\"7th\",\"Force-Empowered Casting Options\":\"3\"},\"14\":{\"Level\":\"14th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Tradition feature\",\"Force Powers Known\":\"32\",\"Force Points\":\"56\",\"Max Power Level\":\"7th\",\"Force-Empowered Casting Options\":\"3\"},\"15\":{\"Level\":\"15th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"�\",\"Force Powers Known\":\"34\",\"Force Points\":\"60\",\"Max Power Level\":\"8th\",\"Force-Empowered Casting Options\":\"3\"},\"16\":{\"Level\":\"16th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Ability Score Improvement\",\"Force Powers Known\":\"35\",\"Force Points\":\"64\",\"Max Power Level\":\"8th\",\"Force-Empowered Casting Options\":\"3\"},\"17\":{\"Level\":\"17th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"�\",\"Force Powers Known\":\"37\",\"Force Points\":\"68\",\"Max Power Level\":\"9th\",\"Force-Empowered Casting Options\":\"4\"},\"18\":{\"Level\":\"18th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Tradition feature\",\"Force Powers Known\":\"38\",\"Force Points\":\"72\",\"Max Power Level\":\"9th\",\"Force-Empowered Casting Options\":\"4\"},\"19\":{\"Level\":\"19th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Ability Score Improvement\",\"Force Powers Known\":\"39\",\"Force Points\":\"76\",\"Max Power Level\":\"9th\",\"Force-Empowered Casting Options\":\"4\"},\"20\":{\"Level\":\"20th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"One with the Force\",\"Force Powers Known\":\"40\",\"Force Points\":\"80\",\"Max Power Level\":\"9th\",\"Force-Empowered Casting Options\":\"4\"}}", + "hitDiceDieTypeEnum": 6, + "hitDiceDieType": 6, + "hitPointsAtFirstLevel": "6 + your Constitution modifier", + "hitPointsAtHigherLevels": "1d6 (or 4) + your Constitution modifier per consular level after 1st", + "hitPointsAtFirstLevelNumber": 6, + "hitPointsAtHigherLevelsNumber": 4, + "armorProficiencies": [ + "None" + ], + "armorProficienciesJson": "[\"None\"]", + "weaponProficiencies": [ + "Simple lightweapons", + "simple vibroweapons" + ], + "weaponProficienciesJson": "[\"Simple lightweapons\",\"simple vibroweapons\"]", + "toolProficiencies": [ + "None" + ], + "toolProficienciesJson": "[\"None\"]", + "toolProficienciesList": [ + "None" + ], + "toolProficienciesListJson": "[\"None\"]", + "savingThrows": [ + "Wisdom", + "Charisma" + ], + "savingThrowsJson": "[\"Wisdom\",\"Charisma\"]", + "skillChoices": "Choose two from Deception, Insight, Intimidation, Investigation, Lore, Medicine, and Persuasion", + "numSkillChoices": 2, + "skillChoicesList": [ + "Deception", + "Insight", + "Intimidation", + "Investigation", + "Lore", + "Medicine", + "Persuasion" + ], + "skillChoicesListJson": "[\"Deception\",\"Insight\",\"Intimidation\",\"Investigation\",\"Lore\",\"Medicine\",\"Persuasion\"]", + "equipmentLines": [ + "- *(a)* a simple lightweapon or *(b)* a simple vibroweapon", + "- *(a)* a scholar's pack, *(b)* an explorer's pack, or *(c)* a diplomat's pack" + ], + "equipmentLinesJson": "[\"- *(a)* a simple lightweapon or *(b)* a simple vibroweapon\",\"- *(a)* a scholar's pack, *(b)* an explorer's pack, or *(c)* a diplomat's pack\"]", + "startingWealthVariant": "5d4 x 100 cr", + "classFeatureText": "\r\n### Forcecasting\r\n_**Consular:** 1st level_\r\nIn your meditations on the force, you have learned powers, fragments of knowledge that imbue you with an abiding force ability. See chapter 10 for the general rules of forcecasting and chapter 11 for the force powers list.\r\n\r\n#### Force Powers Known\r\nYou learn 9 force powers of your choice, and you learn more at higher levels, as shown in the Force Powers Known column of the consular table. You may not learn a force power of a level higher than your Max Power Level, and you may learn a force power at the same time you learn its prerequisite.\r\n\r\n#### Force Points\r\nYou have a number of force points equal to your consular level x 4, as shown in the Force Points column of the consular table, + your Wisdom or Charisma modifier (your choice). You use these force points to cast force powers. You regain all expended force points when you finish a long rest.\r\n\r\n#### Max Power Level\r\nMany force powers can be overpowered, consuming more force points to create a greater effect. You can overpower these abilities to a maximum level, which increases at higher levels, as shown in the Max Power Level column of the consular table.\r\n\r\nYou may only cast force powers at 6th, 7th, 8th, and 9th-level once. You regain the ability to do so after a long rest.\r\n\r\n#### Forcecasting Ability\r\nYour forcecasting ability varies based on the alignment of the powers you cast. You use Wisdom for light side powers, Charisma for dark side powers, and Wisdom or Charisma for universal powers (your choice). You use this ability whenever a power refers to your forcecasting ability. Additionally, you use this ability modifier when setting the saving throw DC for a force power you cast and when making an attack roll with one.\r\n\r\n___\r\n\r\n**Force save DC** = 8 + your proficiency bonus + your forcecasting ability modifier\r\n\r\n___\r\n\r\n**Force attack modifier** = your proficiency bonus + your forcecasting ability modifier\r\n\r\n___\r\n\r\n### Force Recovery\r\n_**Consular:** 1st level_\r\nYou have learned to regain some of your energy by briefly meditating. When you finish a short rest, you can regain a number of force points equal to half your consular level + your Wisdom or Charisma modifier (your choice, minimum of one). Once you've used this feature, you must complete a long rest before you can use it again.\r\n\r\n### Force-Empowered Casting\r\n_**Consular:** 2nd level_\r\nYou gain the ability to twist your powers to suit your needs. When you cast a force power, you can expend additional force points to modify the power. You gain two Force-Empowered Casting options, located at the end of the class description, and you learn more at higher levels, as shown in the Force-Empowered Casting Options of the cnosular table.\r\n\r\nYou can use only one Force-Empowered Casting option on a power when you cast it, unless otherwise noted.\r\n\r\n### Force Shield\r\n_**Consular:** 2nd level_\r\nYou learn how to defend yourself purely through your strength with the Force. When you are hit by an attack, you can use your reaction to shroud yourself in Force energy. Until the start of your next turn, you have a bonus to AC equal to your Wisdom or Charisma modifier (your choice, minimum of +1). This includes the triggering attack.\r\n\r\nYou can use this feature twice. You gain an additional use at 5th, 9th, 13th, and 17th level. You regain all expended uses when you finish a long rest.\r\n\r\n### Force Affinity\r\n_**Consular:** 3rd level_\r\nYou've developed an affinity for one of the three aspects of the Force: the Ashla, the Bendu, or the Bogan. Choose one from the following:\r\n\r\n#### Ashla\r\nWhen you successfully cast a light side power, either your or the target's (your choice) hit point maximum and current hit points increase by an amount equal to the power's level. This effect lasts for 1 minute. You can only have one instance of this effect active at a time.\r\n\r\n#### Bendu\r\nYou can add both your Wisdom and Charisma modifier to your maximum number of force points, instead of just one.\r\n\r\n#### Bogan\r\nYour dark side power damage rolls gain a minimum roll threshold, discussed in chapter 7.\r\n\r\n### Consular Tradition\r\n_**Consular:** 3rd, 6th, 10th, 14th, and 18th level_\r\nYou choose a consular tradition, which is detailed at the end of the class description. \r\n\r\n### Ability Score Improvement\r\n_**Consular:** 4th, 8th, 12th, 16th, and 19th level_\r\nYou can increase one ability score by 2, or you can increase two ability scores by 1. You can't increase an ability score above 20 using this feature.\r\n\r\n### One with the Force\r\n_**Consular:** 20th level_\r\nYour attunement to the Force is absolute. Your Wisdom or Charisma score increases by 4, and your maximum for this score increases by 4. Additionally, you gain mastery over a single force power, and can cast it with little effort. Choose one 3rd-level force power that you know as your signature power. You can cast it once at 3rd level without expending force points. When you do so, you can't do so again until you finish a short or long rest.\r\n\r\nIf you want to cast it at a higher level, you must expend force points as normal.\r\n\r\n### Force-Empowered Castings\r\nThe castings are presented in alphabetical order.\r\n\r\n#### Careful Power\r\nWhen you cast a power that forces other creatures to make a saving throw, you can protect some of those creatures from the power's full force. To do so, you spend 1 additional force point and choose a number of those creatures up to your Wisdom or Charisma modifier (your choice, minimum of one). A chosen creature automatically succeeds on its saving throw against the power.\r\n\r\n#### Distant Power\r\nWhen you cast a power that has a range of 5 feet or greater, you can spend 1 additional force point to double the range of the power.\r\n\r\nAlternatively, when you cast a power that has a range of touch, you can spend 1 additional force point to make the range of the power 30 feet.\r\n\r\n#### Extended Power\r\nWhen you cast a power that has a duration of 1 minute or longer, you can spend 1 additional force point to double its duration, to a maximum duration of 24 hours.\r\n\r\n#### Heightened Power\r\nWhen you cast a power that forces a creature to make a saving throw to resist its effects, you can spend 3 additional force points to give one target of the power disadvantage on its first saving throw made against the power.\r\n\r\n#### Improved Power\r\nWhen you roll damage for a power, you can spend 1 additional force point to reroll a number of the damage dice up to your Wisdom or Charisma modifier (your choice, minimum of one). You must use the new rolls.\r\n\r\nYou can use Improved Power even if you have already used a different Force-Empowered Casting option during the casting of the power.\r\n\r\n#### Lingering Power\r\nWhen you cast a power that requires concentration to maintain you can choose to spend 3 additional force points. If you do, when you lose concentration on the power, the power will not end until the end of your next turn.\r\n\r\n#### Pinpoint Power \r\nWhen you cast a power that allows you to force creatures in an area to make a saving throw you can instead spend 1 force point and make a ranged force attack against a single target that would be in the range. On a hit the target suffers the effects as though they failed their saving throw.\r\n\r\n#### Quickened Power\r\nWhen you cast a power that has a casting time of 1 action, you can spend 2 additional force points to change the casting time to 1 bonus action for this casting.\r\n\r\n#### Refocused Power \r\nWhen you are forced to make a Constitution saving throw to maintain concentration on a power you can use your reaction and spend 2 force points to automatically succeed on the saving throw.\r\n\r\nYou can use Refocused Power even if you have already used a different Force-Empowered Casting option during the casting of the power.\r\n\r\n#### Seeking Power\r\nIf you miss with a force power that calls for an attack roll, you can spend 2 force points to reroll the attack. You must use the new roll.\r\n\r\nYou can use Seeking Power even if you have already used a different Force-Empowered Casting option during the casting of the power.\r\n\r\n#### Twinned Power\r\nWhen you cast a power that can only have one target and doesn't have a range of self, you can spend a number of additional force points equal to the power's level to choose a second target in range with the same power (1 force point if the power is at-will).\r\n", + "classFeatureText2": null, + "archetypeFlavorText": "Different consulars select different traditions, called Ways, to follow as they hone their powers. Your tradition grants you features at 3rd, 6th, 10th, 14th, and 18th level.", + "archetypeFlavorName": "Consular Traditions", + "archetypes": null, + "imageUrls": [ + "https://starwars5ecentral.blob.core.windows.net/site-images/classes/consular_01.png", + "https://starwars5ecentral.blob.core.windows.net/site-images/classes/consular_02.png" + ], + "imageUrlsJson": "[\"https://starwars5ecentral.blob.core.windows.net/site-images/classes/consular_01.png\",\"https://starwars5ecentral.blob.core.windows.net/site-images/classes/consular_02.png\"]", + "casterRatio": 1.0, + "casterTypeEnum": 1, + "casterType": "Force", + "multiClassProficiencies": [ + "Simple lightweapons" + ], + "multiClassProficienciesJson": "[\"Simple lightweapons\"]", + "features": null, + "featureRowKeys": null, + "featureRowKeysJson": "", + "contentTypeEnum": 1, + "contentType": "Core", + "contentSourceEnum": 1, + "contentSource": "PHB", + "partitionKey": "Core", + "rowKey": "Consular", + "timestamp": "2023-05-30T20:15:42.497076+00:00", + "eTag": "W/\"datetime'2023-05-30T20%3A15%3A42.497076Z'\"" + }, + { + "name": "Engineer", + "summary": "Tech caster who enhances items to benefit allies", + "primaryAbility": "Intelligence", + "flavorText": "Flinching occasionally as a blaster bolt hits the nearby bulkhead, a Sullustan mechanic quickly solders a large wire. He peers through his tinted goggles, ignoring the shouts of his ship captain as the enemy descends on the hanger. Finally he shouts with pride as the repaired coupling powers up, causing the frigate to hum with energy. He gathers his tools and runs into the ship moments before it finally takes off. \r\n\r\nInside, the human captain jumps into the cockpit. She nods to her droid co-pilot, who quickly begins charting a course home. Before the calculations can be completed, enemy Starfighters scream in from the clouds. The pilot rolls the ship, nimbly evading incoming fire. She reroutes the power to shields, leaving just enough for astronavigation. Just as the energy reserves near depletion, the exosphere and stars beyond blur into streaks of light. In a flash, they warp to safety. \r\n\r\nA Cerean officer surveys the battlefield, looking for weaknesses. When he identifies a potential problem, he keys in a quick combination in his wristpad. In a blink, a custom suit of armor assembles itself around him. As the helmet locks into place, the officer leaps into the air, flying overhead and raining destruction on the opposition.\r\n\r\nEvery machine needs an engineer to run it, and a living crew is no different. Engineers are the experts and professionals who rely on skill, bravery, and their tools to survive and keep others alive. While they do not claim to be fighters, their mere presence can turn the tide of battle or simply keep operations running.\r\n\r\n### Behind the Curtain\r\nWhile perhaps not as intimidating as a heavily-armored trooper, or as exotic as a lighsaber-wielding guardian, engineers are no less vital to group dynamic. They are armorers and gunsmiths, electricians and welders, or any other facet to be found in facilities across the galaxy. Their work, often unsung, is what keeps starships (and their crew) intact.\r\n\r\n### Unflappable\r\nIt takes bravery for a soldier to enter a battlefield. It perhaps takes more for someone who is unarmed, and untrained in combat, to do the same. Engineers put their lives on the line for a living, whether by choice or acknowledging their plights as an occupational hazard. Whether they come from an elite training academy or learned their talents surviving in the slums, they are no strangers to danger and conflict.\r\n", + "creatingText": "While creating your engineer character, consider what your primary skill set is and how you use it. You could be a street-smart mechanic who taught yourself how to fix swoop bikes as a teenager. Perhaps you are the recent graduate of an esteemed medical college, or a rookie pilot in the fledgling Rebel Alliance. What is the number one skill you are known for? Why are you willing to enter battles when you have no combat training? How do you view the more adventurous members of your group, and how do they see you and your role?\r\n", + "quickBuildText": "You can make an engineer quickly by following these suggestions. First, make Intelligence your highest ability score. Your next-highest score should be Constitution. Second, choose the scientist background.\r\n", + "levelChangeHeadersJson": "[\"Level\",\"Proficiency Bonus\",\"Features\",\"Tech Powers Known\",\"Tech Points\",\"Max Power Level\",\"Potent Aptitude\",\"Modification Slots\"]", + "levelChanges": { + "1": { + "Level": "1", + "Proficiency Bonus": "+2", + "Features": "Techcasting, Potent Aptitude", + "Tech Powers Known": "6", + "Tech Points": "2", + "Max Power Level": "1st", + "Potent Aptitude": "d4", + "Modification Slots": "�" + }, + "2": { + "Level": "2", + "Proficiency Bonus": "+2", + "Features": "Infuse Item (+1), Tool Expertise", + "Tech Powers Known": "7", + "Tech Points": "4", + "Max Power Level": "1st", + "Potent Aptitude": "d4", + "Modification Slots": "�" + }, + "3": { + "Level": "3", + "Proficiency Bonus": "+2", + "Features": "Engineering Discipline", + "Tech Powers Known": "9", + "Tech Points": "6", + "Max Power Level": "2nd", + "Potent Aptitude": "d4", + "Modification Slots": "4" + }, + "4": { + "Level": "4", + "Proficiency Bonus": "+2", + "Features": "Ability Score Improvement", + "Tech Powers Known": "10", + "Tech Points": "8", + "Max Power Level": "2nd", + "Potent Aptitude": "d4", + "Modification Slots": "4" + }, + "5": { + "Level": "5", + "Proficiency Bonus": "+3", + "Features": "�", + "Tech Powers Known": "12", + "Tech Points": "10", + "Max Power Level": "3rd", + "Potent Aptitude": "d6", + "Modification Slots": "5" + }, + "6": { + "Level": "6", + "Proficiency Bonus": "+3", + "Features": "Discipline feature", + "Tech Powers Known": "13", + "Tech Points": "12", + "Max Power Level": "3rd", + "Potent Aptitude": "d6", + "Modification Slots": "5" + }, + "7": { + "Level": "7", + "Proficiency Bonus": "+3", + "Features": "�", + "Tech Powers Known": "15", + "Tech Points": "14", + "Max Power Level": "4th", + "Potent Aptitude": "d6", + "Modification Slots": "5" + }, + "8": { + "Level": "8", + "Proficiency Bonus": "+3", + "Features": "Ability Score Improvement", + "Tech Powers Known": "16", + "Tech Points": "16", + "Max Power Level": "4th", + "Potent Aptitude": "d6", + "Modification Slots": "5" + }, + "9": { + "Level": "9", + "Proficiency Bonus": "+4", + "Features": "�", + "Tech Powers Known": "18", + "Tech Points": "18", + "Max Power Level": "5th", + "Potent Aptitude": "d8", + "Modification Slots": "6" + }, + "10": { + "Level": "10", + "Proficiency Bonus": "+4", + "Features": "Infuse Item (+2)", + "Tech Powers Known": "19", + "Tech Points": "20", + "Max Power Level": "5th", + "Potent Aptitude": "d8", + "Modification Slots": "6" + }, + "11": { + "Level": "11", + "Proficiency Bonus": "+4", + "Features": "�", + "Tech Powers Known": "21", + "Tech Points": "22", + "Max Power Level": "6th", + "Potent Aptitude": "d8", + "Modification Slots": "7" + }, + "12": { + "Level": "12", + "Proficiency Bonus": "+4", + "Features": "Ability Score Improvement", + "Tech Powers Known": "22", + "Tech Points": "24", + "Max Power Level": "6th", + "Potent Aptitude": "d8", + "Modification Slots": "7" + }, + "13": { + "Level": "13", + "Proficiency Bonus": "+5", + "Features": "�", + "Tech Powers Known": "23", + "Tech Points": "26", + "Max Power Level": "7th", + "Potent Aptitude": "d10", + "Modification Slots": "8" + }, + "14": { + "Level": "14", + "Proficiency Bonus": "+5", + "Features": "Discipline feature", + "Tech Powers Known": "24", + "Tech Points": "28", + "Max Power Level": "7th", + "Potent Aptitude": "d10", + "Modification Slots": "8" + }, + "15": { + "Level": "15", + "Proficiency Bonus": "+5", + "Features": "Infuse Item (+3)", + "Tech Powers Known": "25", + "Tech Points": "30", + "Max Power Level": "8th", + "Potent Aptitude": "d10", + "Modification Slots": "8" + }, + "16": { + "Level": "16", + "Proficiency Bonus": "+5", + "Features": "Ability Score Improvement", + "Tech Powers Known": "26", + "Tech Points": "32", + "Max Power Level": "8th", + "Potent Aptitude": "d10", + "Modification Slots": "8" + }, + "17": { + "Level": "17", + "Proficiency Bonus": "+6", + "Features": "�", + "Tech Powers Known": "27", + "Tech Points": "34", + "Max Power Level": "9th", + "Potent Aptitude": "d12", + "Modification Slots": "9" + }, + "18": { + "Level": "18", + "Proficiency Bonus": "+6", + "Features": "Discipline feature", + "Tech Powers Known": "28", + "Tech Points": "36", + "Max Power Level": "9th", + "Potent Aptitude": "d12", + "Modification Slots": "9" + }, + "19": { + "Level": "19", + "Proficiency Bonus": "+6", + "Features": "Ability Score Improvement", + "Tech Powers Known": "29", + "Tech Points": "38", + "Max Power Level": "9th", + "Potent Aptitude": "d12", + "Modification Slots": "9" + }, + "20": { + "Level": "20", + "Proficiency Bonus": "+6", + "Features": "Tech Mastery", + "Tech Powers Known": "30", + "Tech Points": "40", + "Max Power Level": "9th", + "Potent Aptitude": "d12", + "Modification Slots": "9" + } + }, + "levelChangesJson": "{\"1\":{\"Level\":\"1\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Techcasting, Potent Aptitude\",\"Tech Powers Known\":\"6\",\"Tech Points\":\"2\",\"Max Power Level\":\"1st\",\"Potent Aptitude\":\"d4\",\"Modification Slots\":\"�\"},\"2\":{\"Level\":\"2\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Infuse Item (+1), Tool Expertise\",\"Tech Powers Known\":\"7\",\"Tech Points\":\"4\",\"Max Power Level\":\"1st\",\"Potent Aptitude\":\"d4\",\"Modification Slots\":\"�\"},\"3\":{\"Level\":\"3\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Engineering Discipline\",\"Tech Powers Known\":\"9\",\"Tech Points\":\"6\",\"Max Power Level\":\"2nd\",\"Potent Aptitude\":\"d4\",\"Modification Slots\":\"4\"},\"4\":{\"Level\":\"4\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Ability Score Improvement\",\"Tech Powers Known\":\"10\",\"Tech Points\":\"8\",\"Max Power Level\":\"2nd\",\"Potent Aptitude\":\"d4\",\"Modification Slots\":\"4\"},\"5\":{\"Level\":\"5\",\"Proficiency Bonus\":\"+3\",\"Features\":\"�\",\"Tech Powers Known\":\"12\",\"Tech Points\":\"10\",\"Max Power Level\":\"3rd\",\"Potent Aptitude\":\"d6\",\"Modification Slots\":\"5\"},\"6\":{\"Level\":\"6\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Discipline feature\",\"Tech Powers Known\":\"13\",\"Tech Points\":\"12\",\"Max Power Level\":\"3rd\",\"Potent Aptitude\":\"d6\",\"Modification Slots\":\"5\"},\"7\":{\"Level\":\"7\",\"Proficiency Bonus\":\"+3\",\"Features\":\"�\",\"Tech Powers Known\":\"15\",\"Tech Points\":\"14\",\"Max Power Level\":\"4th\",\"Potent Aptitude\":\"d6\",\"Modification Slots\":\"5\"},\"8\":{\"Level\":\"8\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Ability Score Improvement\",\"Tech Powers Known\":\"16\",\"Tech Points\":\"16\",\"Max Power Level\":\"4th\",\"Potent Aptitude\":\"d6\",\"Modification Slots\":\"5\"},\"9\":{\"Level\":\"9\",\"Proficiency Bonus\":\"+4\",\"Features\":\"�\",\"Tech Powers Known\":\"18\",\"Tech Points\":\"18\",\"Max Power Level\":\"5th\",\"Potent Aptitude\":\"d8\",\"Modification Slots\":\"6\"},\"10\":{\"Level\":\"10\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Infuse Item (+2)\",\"Tech Powers Known\":\"19\",\"Tech Points\":\"20\",\"Max Power Level\":\"5th\",\"Potent Aptitude\":\"d8\",\"Modification Slots\":\"6\"},\"11\":{\"Level\":\"11\",\"Proficiency Bonus\":\"+4\",\"Features\":\"�\",\"Tech Powers Known\":\"21\",\"Tech Points\":\"22\",\"Max Power Level\":\"6th\",\"Potent Aptitude\":\"d8\",\"Modification Slots\":\"7\"},\"12\":{\"Level\":\"12\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Ability Score Improvement\",\"Tech Powers Known\":\"22\",\"Tech Points\":\"24\",\"Max Power Level\":\"6th\",\"Potent Aptitude\":\"d8\",\"Modification Slots\":\"7\"},\"13\":{\"Level\":\"13\",\"Proficiency Bonus\":\"+5\",\"Features\":\"�\",\"Tech Powers Known\":\"23\",\"Tech Points\":\"26\",\"Max Power Level\":\"7th\",\"Potent Aptitude\":\"d10\",\"Modification Slots\":\"8\"},\"14\":{\"Level\":\"14\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Discipline feature\",\"Tech Powers Known\":\"24\",\"Tech Points\":\"28\",\"Max Power Level\":\"7th\",\"Potent Aptitude\":\"d10\",\"Modification Slots\":\"8\"},\"15\":{\"Level\":\"15\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Infuse Item (+3)\",\"Tech Powers Known\":\"25\",\"Tech Points\":\"30\",\"Max Power Level\":\"8th\",\"Potent Aptitude\":\"d10\",\"Modification Slots\":\"8\"},\"16\":{\"Level\":\"16\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Ability Score Improvement\",\"Tech Powers Known\":\"26\",\"Tech Points\":\"32\",\"Max Power Level\":\"8th\",\"Potent Aptitude\":\"d10\",\"Modification Slots\":\"8\"},\"17\":{\"Level\":\"17\",\"Proficiency Bonus\":\"+6\",\"Features\":\"�\",\"Tech Powers Known\":\"27\",\"Tech Points\":\"34\",\"Max Power Level\":\"9th\",\"Potent Aptitude\":\"d12\",\"Modification Slots\":\"9\"},\"18\":{\"Level\":\"18\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Discipline feature\",\"Tech Powers Known\":\"28\",\"Tech Points\":\"36\",\"Max Power Level\":\"9th\",\"Potent Aptitude\":\"d12\",\"Modification Slots\":\"9\"},\"19\":{\"Level\":\"19\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Ability Score Improvement\",\"Tech Powers Known\":\"29\",\"Tech Points\":\"38\",\"Max Power Level\":\"9th\",\"Potent Aptitude\":\"d12\",\"Modification Slots\":\"9\"},\"20\":{\"Level\":\"20\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Tech Mastery\",\"Tech Powers Known\":\"30\",\"Tech Points\":\"40\",\"Max Power Level\":\"9th\",\"Potent Aptitude\":\"d12\",\"Modification Slots\":\"9\"}}", + "hitDiceDieTypeEnum": 8, + "hitDiceDieType": 8, + "hitPointsAtFirstLevel": "8 + your Constitution modifier", + "hitPointsAtHigherLevels": "1d8 (or 5) + your Constitution modifier per engineer level after 1st", + "hitPointsAtFirstLevelNumber": 8, + "hitPointsAtHigherLevelsNumber": 5, + "armorProficiencies": [ + "Light armor" + ], + "armorProficienciesJson": "[\"Light armor\"]", + "weaponProficiencies": [ + "Simple blasters", + "simple vibroweapons" + ], + "weaponProficienciesJson": "[\"Simple blasters\",\"simple vibroweapons\"]", + "toolProficiencies": [ + "Tinker's implements", + "one of your choice" + ], + "toolProficienciesJson": "[\"Tinker's implements\",\"one of your choice\"]", + "toolProficienciesList": [ + "Tinker's implements", + "one of your choice" + ], + "toolProficienciesListJson": "[\"Tinker's implements\",\"one of your choice\"]", + "savingThrows": [ + "Constitution", + "Intelligence" + ], + "savingThrowsJson": "[\"Constitution\",\"Intelligence\"]", + "skillChoices": "Choose three from Investigation, Lore, Medicine, Nature, Piloting, and Technology", + "numSkillChoices": 3, + "skillChoicesList": [ + "Investigation", + "Lore", + "Medicine", + "Nature", + "Piloting", + "Technology" + ], + "skillChoicesListJson": "[\"Investigation\",\"Lore\",\"Medicine\",\"Nature\",\"Piloting\",\"Technology\"]", + "equipmentLines": [ + "- *(a)* a simple vibroweapon or *(b)* a simple blaster and two power cells", + "- *(a)* a dungeoneer's pack or *(b)* an explorer's pack", + "- A combat suit, a set of tinker's implements, a vibrodagger, and a wristpad" + ], + "equipmentLinesJson": "[\"- *(a)* a simple vibroweapon or *(b)* a simple blaster and two power cells\",\"- *(a)* a dungeoneer's pack or *(b)* an explorer's pack\",\"- A combat suit, a set of tinker's implements, a vibrodagger, and a wristpad\"]", + "startingWealthVariant": "6d4 x 100 cr", + "classFeatureText": "\r\n### Techcasting\r\n_**Engineer:** 1st level_\r\nDuring your training you have derived powers from schematics with the aid of your wristpad. See chapter 10 for the general rules of techcasting and chapter 12 for the tech powers list.\r\n\r\n#### Tech Powers Known\r\nYou learn 6 tech powers of your choice, and you learn more at higher levels, as shown in the Tech Powers Known column of the engineer table. You may not learn a tech power of a level higher than your Max Power Level.\r\n\r\n#### Tech Points\r\nYou have a number of tech points equal to your engineer level x 2, as shown in the Tech Points column of the engineer table, + your Intelligence modifier. You use these tech points to cast tech powers. You regain all expended tech points when you finish a short or long rest.\r\n\r\n#### Max Power Level\r\nMany tech powers can be overcharged, consuming more tech points to create a greater effect. You can overcharge these powers to a maximum level, which increases at higher levels, as shown in the Max Power Level column of the engineer table.\r\n\r\nYou may only cast tech powers at 6th, 7th, 8th, and 9th-level once. You regain the ability to do so after a long rest.\r\n\r\n#### Techcasting Ability\r\nIntelligence is your techcasting ability for your tech powers. You use your Intelligence whenever a power refers to your techcasting ability. Additionally, you use your Intelligence modifier when setting the saving throw DC for a tech power you cast and when making an attack roll with one.\r\n\r\n___\r\n\r\n**Tech save DC** = 8 + your proficiency bonus + your Intelligence modifier\r\n\r\n___\r\n\r\n**Tech attack modifier** = your proficiency bonus + your Intelligence modifier\r\n\r\n___\r\n\r\n#### Techcasting Focus\r\nYou use a wristpad (found in chapter 5) or the tools in which you are granted proficiency by this class as a tech focus for your tech powers.\r\n\r\n### Potent Aptitude\r\n_**Engineer:** 1st level_\r\nYour technological experience lends you an uncommon insight that you can use to bolster your allies. To do so, you use a bonus action on your turn to choose one creature other than yourself within 60 feet of you who can hear you. That creature gains one Potent Aptitude die, a d4. This die changes as you gain engineer levels, as shown in the Potent Aptitude column of the engineer table.\r\n\r\nOnce within the next 10 minutes, the creature can roll the die and add the number rolled to one ability check, attack roll, or saving throw it makes. Once the Potent Aptitude die is rolled, it is lost.\r\n\r\nA creature can have only one Potent Aptitude die at a time.\r\n\r\nYou can use this feature twice. You gain an additional use at 5th, 9th, 13th, and 17th level. You regain any expended uses when you finish a short or long rest.\r\n\r\n### Infuse Item\r\n_**Engineer:** 2nd level_\r\nYou gain the ability to temporarily enhance a weapon or armor. At the end of a long rest, you can touch one unenhanced object that is a suit of armor, a shield, or a simple or martial weapon. Until the end of your next long rest or until you die, the object becomes an enhanced item, granting a +1 bonus to AC if it's armor or a shield or a +1 bonus to attack and damage rolls if it's a weapon. \r\n\r\nOnce you've used this feature, you can't use it again until you finish a long rest.\r\n\r\nThis bonus increases to +2 at 10th level and +3 at 15th level.\r\n\r\n### Tool Expertise\r\n_**Engineer:** 2nd level_\r\nYou gain expertise in any tool proficiencies you gain from this class.\r\n\r\n### Engineering Discipline\r\n_**Engineer:** 3rd, 6th, 14th, and 18th level_\r\nYou begin to focus on a specific engineering discipline, which is detailed at the end of the class description. \r\n\r\n### Ability Score Improvement\r\n_**Engineer:** 4th, 8th, 12th, 16th, and 19th level_\r\nYou can increase one ability score by 2, or you can increase two ability scores by 1. You can't increase an ability score above 20 using this feature.\r\n\r\n### Tech Mastery\r\n_**Engineer:** 20th level_\r\nYour mastery of technology is unrivaled. Your Constitution and Intelligence scores increase by 2. Your maximum for those scores increases by 2.\r\n\r\nAdditionally, when you roll initiative and have no uses of Potent Aptitude left, you regain one use.\r\n", + "classFeatureText2": null, + "archetypeFlavorText": "Each discipline focuses on maximizing the personal use of a certain tool. Your discipline grants you features at 3rd, 6th, 14th, and 18th level.", + "archetypeFlavorName": "Engineering Disciplines", + "archetypes": null, + "imageUrls": [ + "https://starwars5ecentral.blob.core.windows.net/site-images/classes/engineer_01.png" + ], + "imageUrlsJson": "[\"https://starwars5ecentral.blob.core.windows.net/site-images/classes/engineer_01.png\"]", + "casterRatio": 1.0, + "casterTypeEnum": 2, + "casterType": "Tech", + "multiClassProficiencies": [ + "Light armor" + ], + "multiClassProficienciesJson": "[\"Light armor\"]", + "features": null, + "featureRowKeys": null, + "featureRowKeysJson": "", + "contentTypeEnum": 1, + "contentType": "Core", + "contentSourceEnum": 1, + "contentSource": "PHB", + "partitionKey": "Core", + "rowKey": "Engineer", + "timestamp": "2023-05-30T20:15:42.497076+00:00", + "eTag": "W/\"datetime'2023-05-30T20%3A15%3A42.497076Z'\"" + }, + { + "name": "Fighter", + "summary": "Versatile combatant who excels at both range and in melee", + "primaryAbility": "Strength", + "flavorText": "A Trandoshan runs frantically across rooftops, constantly looking over his shoulder. As he prepares to leap a gap, a blaster bolt hits him in the back and renders him unconscious. His blurry vision barely makes out the figure of a masked woman who casually approaches, ready to collect her bounty.\r\n\r\nWith his muscular arms held wide, a grizzled-looking Wookiee grins to his bloodthirsty crowd. He turns back to his arena opponent just in time to see the Besalisk take a swing. He ducks, punching the four-armed fighter in the gut. Two wild haymakers later, and he stands alone as the gladiatorial champion. \r\n\r\nTaking a deep breath, a Republic soldier looks out onto the war zone waging across the frozen surface of Ilum. He grips his blaster rifle tightly then, with a nod to the dozen squad-mates beside him, he charges onto the battlefield. \r\n\r\nFighters combine discipline with martial skills to become the best pure warriors in the galaxy. Fighters can be stalwart defenders of those in need, cruel marauders, or brave advent-urers. They fight for glory, honor, to right wrongs, to gain power, to acquire wealth, or simple for the thrill of battle.\r\n\r\n### All in a Day's Work\r\nMany fighters see adventures, raids on enemy strongholds, and dangerous missions as their jobs. Some want to defend those who can't defend themselves while others seek to use their muscle to carve their own place of importance in the galaxy. Fighters can take the form of guards, champions, bounty hunters, enforcers, mercenaries, freedom fighters, or simply armed explorers.\r\n\r\n### Code Red\r\nMost fighters come to the profession after receiving at least some amount of formal training from a military organization. Some attend formal academies; others are self-taught and well tested. A fighter may have taken up his weapon to escape a mundane life while another may be following a proud family tradition. Whatever their origins, most fighters share an unshakeable loyalty. Fighters follow orders with little hesitation, as failure can often mean death.\r\n", + "creatingText": "While creating your fighter character, consider where your loyalties lie. You could be part of a formal military, one of countless troopers fighting for your enterprise. Perhaps you are a gun-for-hire, traveling the galaxy in search of your next gig. What weapons do you prefer and specialize in? Who or what do you fight for? Do you have aspirations of a life beyond the battlefield, or have you been at war so long you know of nothing else?\r\n", + "quickBuildText": "You can make a fighter quickly by following these suggestions. First, make Strength or Dexterity your highest ability modifier, depending on whether you want to focus on melee combat or on ranged weapons (or finesse weapons). Your next-highest score should be Constitution. Second, choose the soldier background.\r\n", + "levelChangeHeadersJson": "[\"Level\",\"Proficiency Bonus\",\"Features\",\"Maneuvers Known\",\"Superiority Dice Quantity\",\"Superiority Dice Size\",\"Strategies Known\"]", + "levelChanges": { + "1": { + "Level": "1st", + "Proficiency Bonus": "+2", + "Features": "Fighting Style, Second Wind", + "Maneuvers Known": "�", + "Superiority Dice Quantity": "�", + "Superiority Dice Size": "�", + "Strategies Known": "�" + }, + "2": { + "Level": "2nd", + "Proficiency Bonus": "+2", + "Features": "Action Surge (one use), Combat Superiority", + "Maneuvers Known": "1", + "Superiority Dice Quantity": "2", + "Superiority Dice Size": "d4", + "Strategies Known": "�" + }, + "3": { + "Level": "3rd", + "Proficiency Bonus": "+2", + "Features": "Fighter Strategies, Fighter Specialty", + "Maneuvers Known": "2", + "Superiority Dice Quantity": "2", + "Superiority Dice Size": "d4", + "Strategies Known": "1" + }, + "4": { + "Level": "4th", + "Proficiency Bonus": "+2", + "Features": "Ability Score Improvement", + "Maneuvers Known": "2", + "Superiority Dice Quantity": "2", + "Superiority Dice Size": "d4", + "Strategies Known": "1" + }, + "5": { + "Level": "5th", + "Proficiency Bonus": "+3", + "Features": "Extra Attack", + "Maneuvers Known": "4", + "Superiority Dice Quantity": "3", + "Superiority Dice Size": "d6", + "Strategies Known": "1" + }, + "6": { + "Level": "6th", + "Proficiency Bonus": "+3", + "Features": "Ability Score Improvement", + "Maneuvers Known": "4", + "Superiority Dice Quantity": "3", + "Superiority Dice Size": "d6", + "Strategies Known": "1" + }, + "7": { + "Level": "7th", + "Proficiency Bonus": "+3", + "Features": "Specialty feature", + "Maneuvers Known": "5", + "Superiority Dice Quantity": "3", + "Superiority Dice Size": "d6", + "Strategies Known": "2" + }, + "8": { + "Level": "8th", + "Proficiency Bonus": "+3", + "Features": "Ability Score Improvement", + "Maneuvers Known": "5", + "Superiority Dice Quantity": "3", + "Superiority Dice Size": "d6", + "Strategies Known": "2" + }, + "9": { + "Level": "9th", + "Proficiency Bonus": "+4", + "Features": "Indomitable (one use)", + "Maneuvers Known": "6", + "Superiority Dice Quantity": "4", + "Superiority Dice Size": "d8", + "Strategies Known": "2" + }, + "10": { + "Level": "10th", + "Proficiency Bonus": "+4", + "Features": "Specialty feature", + "Maneuvers Known": "6", + "Superiority Dice Quantity": "4", + "Superiority Dice Size": "d8", + "Strategies Known": "2" + }, + "11": { + "Level": "11th", + "Proficiency Bonus": "+4", + "Features": "Greater Extra Attack", + "Maneuvers Known": "7", + "Superiority Dice Quantity": "4", + "Superiority Dice Size": "d8", + "Strategies Known": "2" + }, + "12": { + "Level": "12th", + "Proficiency Bonus": "+4", + "Features": "Ability Score Improvement", + "Maneuvers Known": "7", + "Superiority Dice Quantity": "4", + "Superiority Dice Size": "d8", + "Strategies Known": "2" + }, + "13": { + "Level": "13th", + "Proficiency Bonus": "+5", + "Features": "Indomitable (two uses)", + "Maneuvers Known": "9", + "Superiority Dice Quantity": "5", + "Superiority Dice Size": "d10", + "Strategies Known": "3" + }, + "14": { + "Level": "14th", + "Proficiency Bonus": "+5", + "Features": "Ability Score Improvement", + "Maneuvers Known": "9", + "Superiority Dice Quantity": "5", + "Superiority Dice Size": "d10", + "Strategies Known": "3" + }, + "15": { + "Level": "15th", + "Proficiency Bonus": "+5", + "Features": "Specialty feature", + "Maneuvers Known": "10", + "Superiority Dice Quantity": "5", + "Superiority Dice Size": "d10", + "Strategies Known": "3" + }, + "16": { + "Level": "16th", + "Proficiency Bonus": "+5", + "Features": "Ability Score Improvement", + "Maneuvers Known": "10", + "Superiority Dice Quantity": "5", + "Superiority Dice Size": "d10", + "Strategies Known": "3" + }, + "17": { + "Level": "17th", + "Proficiency Bonus": "+6", + "Features": "Action Surge (two uses), Indomitable (three uses)", + "Maneuvers Known": "11", + "Superiority Dice Quantity": "6", + "Superiority Dice Size": "d12", + "Strategies Known": "4" + }, + "18": { + "Level": "18th", + "Proficiency Bonus": "+6", + "Features": "Specialty feature", + "Maneuvers Known": "11", + "Superiority Dice Quantity": "6", + "Superiority Dice Size": "d12", + "Strategies Known": "4" + }, + "19": { + "Level": "19th", + "Proficiency Bonus": "+6", + "Features": "Ability Score Improvement", + "Maneuvers Known": "12", + "Superiority Dice Quantity": "6", + "Superiority Dice Size": "d12", + "Strategies Known": "4" + }, + "20": { + "Level": "20th", + "Proficiency Bonus": "+6", + "Features": "Master of Combat", + "Maneuvers Known": "12", + "Superiority Dice Quantity": "6", + "Superiority Dice Size": "d12", + "Strategies Known": "4" + } + }, + "levelChangesJson": "{\"1\":{\"Level\":\"1st\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Fighting Style, Second Wind\",\"Maneuvers Known\":\"�\",\"Superiority Dice Quantity\":\"�\",\"Superiority Dice Size\":\"�\",\"Strategies Known\":\"�\"},\"2\":{\"Level\":\"2nd\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Action Surge (one use), Combat Superiority\",\"Maneuvers Known\":\"1\",\"Superiority Dice Quantity\":\"2\",\"Superiority Dice Size\":\"d4\",\"Strategies Known\":\"�\"},\"3\":{\"Level\":\"3rd\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Fighter Strategies, Fighter Specialty\",\"Maneuvers Known\":\"2\",\"Superiority Dice Quantity\":\"2\",\"Superiority Dice Size\":\"d4\",\"Strategies Known\":\"1\"},\"4\":{\"Level\":\"4th\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Ability Score Improvement\",\"Maneuvers Known\":\"2\",\"Superiority Dice Quantity\":\"2\",\"Superiority Dice Size\":\"d4\",\"Strategies Known\":\"1\"},\"5\":{\"Level\":\"5th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Extra Attack\",\"Maneuvers Known\":\"4\",\"Superiority Dice Quantity\":\"3\",\"Superiority Dice Size\":\"d6\",\"Strategies Known\":\"1\"},\"6\":{\"Level\":\"6th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Ability Score Improvement\",\"Maneuvers Known\":\"4\",\"Superiority Dice Quantity\":\"3\",\"Superiority Dice Size\":\"d6\",\"Strategies Known\":\"1\"},\"7\":{\"Level\":\"7th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Specialty feature\",\"Maneuvers Known\":\"5\",\"Superiority Dice Quantity\":\"3\",\"Superiority Dice Size\":\"d6\",\"Strategies Known\":\"2\"},\"8\":{\"Level\":\"8th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Ability Score Improvement\",\"Maneuvers Known\":\"5\",\"Superiority Dice Quantity\":\"3\",\"Superiority Dice Size\":\"d6\",\"Strategies Known\":\"2\"},\"9\":{\"Level\":\"9th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Indomitable (one use)\",\"Maneuvers Known\":\"6\",\"Superiority Dice Quantity\":\"4\",\"Superiority Dice Size\":\"d8\",\"Strategies Known\":\"2\"},\"10\":{\"Level\":\"10th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Specialty feature\",\"Maneuvers Known\":\"6\",\"Superiority Dice Quantity\":\"4\",\"Superiority Dice Size\":\"d8\",\"Strategies Known\":\"2\"},\"11\":{\"Level\":\"11th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Greater Extra Attack\",\"Maneuvers Known\":\"7\",\"Superiority Dice Quantity\":\"4\",\"Superiority Dice Size\":\"d8\",\"Strategies Known\":\"2\"},\"12\":{\"Level\":\"12th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Ability Score Improvement\",\"Maneuvers Known\":\"7\",\"Superiority Dice Quantity\":\"4\",\"Superiority Dice Size\":\"d8\",\"Strategies Known\":\"2\"},\"13\":{\"Level\":\"13th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Indomitable (two uses)\",\"Maneuvers Known\":\"9\",\"Superiority Dice Quantity\":\"5\",\"Superiority Dice Size\":\"d10\",\"Strategies Known\":\"3\"},\"14\":{\"Level\":\"14th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Ability Score Improvement\",\"Maneuvers Known\":\"9\",\"Superiority Dice Quantity\":\"5\",\"Superiority Dice Size\":\"d10\",\"Strategies Known\":\"3\"},\"15\":{\"Level\":\"15th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Specialty feature\",\"Maneuvers Known\":\"10\",\"Superiority Dice Quantity\":\"5\",\"Superiority Dice Size\":\"d10\",\"Strategies Known\":\"3\"},\"16\":{\"Level\":\"16th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Ability Score Improvement\",\"Maneuvers Known\":\"10\",\"Superiority Dice Quantity\":\"5\",\"Superiority Dice Size\":\"d10\",\"Strategies Known\":\"3\"},\"17\":{\"Level\":\"17th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Action Surge (two uses), Indomitable (three uses)\",\"Maneuvers Known\":\"11\",\"Superiority Dice Quantity\":\"6\",\"Superiority Dice Size\":\"d12\",\"Strategies Known\":\"4\"},\"18\":{\"Level\":\"18th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Specialty feature\",\"Maneuvers Known\":\"11\",\"Superiority Dice Quantity\":\"6\",\"Superiority Dice Size\":\"d12\",\"Strategies Known\":\"4\"},\"19\":{\"Level\":\"19th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Ability Score Improvement\",\"Maneuvers Known\":\"12\",\"Superiority Dice Quantity\":\"6\",\"Superiority Dice Size\":\"d12\",\"Strategies Known\":\"4\"},\"20\":{\"Level\":\"20th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Master of Combat\",\"Maneuvers Known\":\"12\",\"Superiority Dice Quantity\":\"6\",\"Superiority Dice Size\":\"d12\",\"Strategies Known\":\"4\"}}", + "hitDiceDieTypeEnum": 10, + "hitDiceDieType": 10, + "hitPointsAtFirstLevel": "10 + your Constitution modifier", + "hitPointsAtHigherLevels": "1d10 (or 6) + your Constitution modifier per fighter level after 1st", + "hitPointsAtFirstLevelNumber": 10, + "hitPointsAtHigherLevelsNumber": 6, + "armorProficiencies": [ + "All armor" + ], + "armorProficienciesJson": "[\"All armor\"]", + "weaponProficiencies": [ + "All blasters", + "all vibroweapons" + ], + "weaponProficienciesJson": "[\"All blasters\",\"all vibroweapons\"]", + "toolProficiencies": [ + "None" + ], + "toolProficienciesJson": "[\"None\"]", + "toolProficienciesList": [ + "None" + ], + "toolProficienciesListJson": "[\"None\"]", + "savingThrows": [ + "Strength", + "Constitution" + ], + "savingThrowsJson": "[\"Strength\",\"Constitution\"]", + "skillChoices": "Choose two skills from Acrobatics, Animal Handling, Athletics, Lore, Insight, Intimidation, Perception, and Survival", + "numSkillChoices": 2, + "skillChoicesList": [ + "Acrobatics", + "Animal Handling", + "Athletics", + "Lore", + "Insight", + "Intimidation", + "Perception", + "Survival" + ], + "skillChoicesListJson": "[\"Acrobatics\",\"Animal Handling\",\"Athletics\",\"Lore\",\"Insight\",\"Intimidation\",\"Perception\",\"Survival\"]", + "equipmentLines": [ + "- *(a)* mesh armor or *(b)* a combat suit, blaster rifle or simple blaster, and two power cells", + "- *(a)* a vibroweapon or heavy pistol and a light or medium physical shield or *(b)* two vibroweapons", + "- *(a)* a light pistol and a power cell or *(b)* two vibrodaggers", + "- *(a)* a dungeoneer's pack or *(b)* an explorer's pack" + ], + "equipmentLinesJson": "[\"- *(a)* mesh armor or *(b)* a combat suit, blaster rifle or simple blaster, and two power cells\",\"- *(a)* a vibroweapon or heavy pistol and a light or medium physical shield or *(b)* two vibroweapons\",\"- *(a)* a light pistol and a power cell or *(b)* two vibrodaggers\",\"- *(a)* a dungeoneer's pack or *(b)* an explorer's pack\"]", + "startingWealthVariant": "8d4 x 100 cr", + "classFeatureText": "\r\n### Fighting Style\r\n_**Fighter:** 1st level_\r\nYou adopt a particular style of fighting as your specialty. Choose one of the fighting style options, detailed in Chapter 6. \r\n\r\n### Second Wind\r\n_**Fighter:** 1st level_\r\nYou have a limited well of stamina that you can draw on to protect yourself from harm. On your turn, you can use a bonus action to regain hit points equal to 1d10 + your fighter level.\r\n\r\nOnce you've used this feature, you must finish a short or long rest before you can use it again.\r\n\r\n### Action Surge\r\n_**Fighter:** 2nd level_\r\nYou can push yourself beyond your normal limits for a moment. On your turn, you can take one additional action on top of your regular action.\r\n\r\nOnce you've used this feature, you must finish a short or long rest before you can use it again. Starting at 17th level, you can use it twice before a rest, but only once on the same turn.\r\n\r\n### Combat Superiority\r\n_**Fighter:** 2nd level_\r\nYou learn maneuvers that are fueled by special dice called superiority dice. See chapter 13 for the maneuvers list.\r\n\r\n#### Maneuvers Known\r\nYou learn one maneuver of your choice, and you earn more at higher levels, as shown in the Maneuvers Known column of the fighter table. Many maneuvers enhance an attack in some way. You can use only one maneuver per attack, and you may only use each maneuver once per turn.\r\n\r\nEach time you learn new maneuvers, you can also replace one maneuver you know with a different one.\r\n\r\n#### Superiority Dice\r\nYou have two superiority dice, which are d4s, and you earn more at higher levels, as shown in the Superiority Dice Quantity column of the fighter table. This die changes as you gain fighter levels, as shown in the Superiority Dice Size column of the fighter table. A superiority die is expended when you use it. \r\n\r\nYou regain all of your expended superiority dice when you finish a short or long rest.\r\n\r\n#### Maneuver Ability\r\nYour maneuver ability varies based on the type of the maneuver you use. You use Strength, Dexterity, or Constitution for physical maneuvers (your choice), Intelligence, Wisdom, or Charisma for mental maneuvers (your choice), and an ability of your choice for general maneuvers. You use this ability whenever a maneuver refers to your maneuver ability. Additionally, you use this ability modifier when setting the saving throw DC for a maneuver you use.\r\n\r\n___\r\n\r\n**Maneuver save DC** = 8 + your proficiency bonus + your maneuver ability modifier\r\n\r\n___\r\n\r\n### Fighter Strategies\r\n_**Fighter:** 3rd level_\r\nYou've adopted a fighter strategy, as detailed at the end of the class description, and you adopt more at higher levels, as shown in the Strategies Known column of the fighter table.\r\n\r\n### Fighter Specialty\r\n_**Fighter:** 3rd, 7th, 10th, 15th, and 18th level_\r\nYou choose a specialty that you strive to emulate in your combat styles and techniques, which is detailed at the end of the class description.\r\n\r\n### Ability Score Improvement\r\n_**Fighter:** 4th, 6th, 8th, 12th, 14th, 16th, and 19th level_\r\nYou can increase one ability score by 2, or you can increase two ability scores by 1. You can't increase an ability score above 20 using this feature.\r\n\r\n### Extra Attack\r\n_**Fighter:** 5th level_\r\nYou can attack twice, instead of once, whenever you take the Attack action on your turn.\r\n\r\n### Indomitable\r\n_**Fighter:** 9th level_\r\nYou can reroll a saving throw that you fail. If you do so, you must use the new roll, and you can't use this feature again until you finish a long rest.\r\n\r\nYou can use this feature twice between long rests starting at 13th level and three times between long rests starting at 17th level.\r\n\r\n### Greater Extra Attack\r\n_**Fighter:** 11th level_\r\nYou can attack three times, instead of twice, whenever you take the Attack action on your turn.\r\n\r\nAdditionally, when you use a bonus action to engage in Double- or Two-Weapon Fighting, you can make two attacks, instead of one.\r\n\r\n### Master of Combat\r\n_**Fighter:** 20th level_\r\nYou are the master of combat. Your Strength or Dexterity score increases by 2, and your Constitution score increases by 2. Your maximum for those scores increases by 2.\r\n\r\nAdditionally, you can attack four times, instead of three times, whenever you take the Attack action on your turn.\r\n\r\n### Fighter Strategies\r\nThe strategies are presented in alphabetical order.\r\n\r\n#### Cover Strategist\r\nYou treat partial cover as one step higher (from one-quarter to half or half to three-quarters). While in cover, your attacks reduce partial cover by one step (from three-quarters to half or half to one-quarter).\r\n\r\n#### Cunning Strategist\r\nChoose two from the following. You can perform each of the chosen options with your bonus action, instead of your action: \r\n- Applying poison\r\n- Dash\r\n- Disengage\r\n- Guard\r\n- Help\r\n- Hide\r\n- Search\r\n- Throwing grenades and setting mines\r\n- While mounted on a controlled beast, having your beast make a single melee attack against a creature within its reach\r\n- While mounted on a vehicle, taking a vehicle action (you can't take the same action twice in one turn)\r\n\r\n#### Enduring Strategist\r\nYou only need 3 hours of sleep during a long rest to gain its benefits, instead of 6. Additionally, if your long rest would be interrupted, you only need to complete the long rest instead of restarting it to gain its benefits. Lastly, you have advantage on saving throws against exhaustion.\r\n\r\n#### Mastery Strategist\r\nYou've mastered a particular style of fighting. Choose one of the Fighting Mastery options, detailed in Chapter 6. \r\n\r\n#### Lightweapon Strategist\r\nYou gain proficiency in all lightweapons. Additionally, you no longer need the ability to cast force powers to learn features that grant lightsaber forms, and you learn one lightsaber form of your choice.\r\n\r\n#### Maneuver Strategist\r\nYou learn two additional maneuvers. When you complete a short rest, you can replace one of these maneuvers with another one. When you complete a long rest, you can replace both of these maneuvers with other ones.\r\n\r\n#### Skilled Strategist\r\nYou gain proficiency in a skill and a tool, or two tools.\r\n\r\n#### Style Strategist\r\nYou adopt a second fighting style. Choose one of the fighting style options, detailed in Chapter 6. When you complete a long rest, you can change this style out for another one. \r\n", + "classFeatureText2": null, + "archetypeFlavorText": "Different fighters choose different approaches to perfecting their fighting prowess. The fighter specialty you choose to emulate reflects your approach. Your specialty grants you features at 3rd, 7th, 10th, 15th, and 18th level.", + "archetypeFlavorName": "Fighter Specialties", + "archetypes": null, + "imageUrls": [ + "https://starwars5ecentral.blob.core.windows.net/site-images/classes/fighter_01.png" + ], + "imageUrlsJson": "[\"https://starwars5ecentral.blob.core.windows.net/site-images/classes/fighter_01.png\"]", + "casterRatio": 0.0, + "casterTypeEnum": 0, + "casterType": "None", + "multiClassProficiencies": [ + "Light armor", + "all blasters", + "all vibroweapons", + "medium armor" + ], + "multiClassProficienciesJson": "[\"Light armor\",\"all blasters\",\"all vibroweapons\",\"medium armor\"]", + "features": null, + "featureRowKeys": null, + "featureRowKeysJson": "", + "contentTypeEnum": 1, + "contentType": "Core", + "contentSourceEnum": 1, + "contentSource": "PHB", + "partitionKey": "Core", + "rowKey": "Fighter", + "timestamp": "2023-05-30T20:15:42.497076+00:00", + "eTag": "W/\"datetime'2023-05-30T20%3A15%3A42.497076Z'\"" + }, + { + "name": "Guardian", + "summary": "Force-wielder specializing in melee combat", + "primaryAbility": "Strength", + "flavorText": "A dark-skinned human quickly runs down a corridor, the metal armor under his grey cloak clanking with each step. He rounds the corner into the prison while the lights and power are still out, urging the weakened prisoners to escape. Just then a handful of slavers arrive and ready their blasters. The man draws and ignites a white-bladed lightsaber, ready to die for the strangers behind him. \r\n\r\nA sith pureblood, clad head to toe in black and red armor, charges towards a line of soldiers. Shot after shot deflects off his armor until he reaches his prey, where he unleashes his fury in a series of devastating lightsaber sweeps. \r\n\r\nA zabrak general dramatically leaps to his soon-to-be overrun squad, landing with a flurry of lightsaber attacks. At the arrival of this powerful Jedi, the attackers fall back.\r\n\r\nGuardians are the master of the art of lightsaber combat. They focus on utilizing the everpresent power of the Force to enable devastating attacks, often single-handedly turning the tide of battle.\r\n\r\n### Protector or Destroyer\r\nAn unstoppable agent of the Force, the guardian channels the power flowing through him into his weapons. Their skills with a lightsaber are unrivalled. Subduing their enemies and bolstering their allies, the guardian uses the Force to control what happens around them.\r\n\r\n### Natural Leaders\r\nThe guardian's command of the Force lends them a powerful presence. Whether through fear and intimidation or respect and admiration, the guardian is one of the greatest generals on the battlefield. They are a symbol of power to their followers.\r\n", + "creatingText": "While creating your guardian, consider your attraction to the Force and its most famous practitioners � the Jedi and the Sith. Are you a member of one of the two orders, or do you walk a different path? Are you a soldier tapping into a latent Force-sensitivity? Were you trained in the force from a young age, or did you discover it as an adult? How do you treat those weaker than you? What was your family like? Do you see the Force as light and dark, or an impartial river of gray?\r\n", + "quickBuildText": "You can make a guardian quickly by following these suggestions. First, make Strength your highest ability score, followed by Constitution. Second, choose the Jedi or Sith background.\r\n", + "levelChangeHeadersJson": "[\"Level\",\"Proficiency Bonus\",\"Features\",\"Force Powers Known\",\"Force Points\",\"Max Power Level\",\"Focused Strikes\",\"Auras Known\",\"Aura Radius\"]", + "levelChanges": { + "1": { + "Level": "1st", + "Proficiency Bonus": "+2", + "Features": "Forcecasting, Channel the Force", + "Force Powers Known": "5", + "Force Points": "2", + "Max Power Level": "1st", + "Focused Strikes": "�", + "Auras Known": "�", + "Aura Radius": "�" + }, + "2": { + "Level": "2nd", + "Proficiency Bonus": "+2", + "Features": "Force-Empowered Strikes, Fighting Style", + "Force Powers Known": "7", + "Force Points": "4", + "Max Power Level": "1st", + "Focused Strikes": "2d8", + "Auras Known": "�", + "Aura Radius": "�" + }, + "3": { + "Level": "3rd", + "Proficiency Bonus": "+2", + "Features": "Guardian Aura, Guardian Focus", + "Force Powers Known": "9", + "Force Points": "6", + "Max Power Level": "1st", + "Focused Strikes": "2d8", + "Auras Known": "1", + "Aura Radius": "5 ft." + }, + "4": { + "Level": "4th", + "Proficiency Bonus": "+2", + "Features": "Ability Score Improvement", + "Force Powers Known": "10", + "Force Points": "8", + "Max Power Level": "1st", + "Focused Strikes": "2d8", + "Auras Known": "1", + "Aura Radius": "5 ft." + }, + "5": { + "Level": "5th", + "Proficiency Bonus": "+3", + "Features": "Extra Attack", + "Force Powers Known": "12", + "Force Points": "10", + "Max Power Level": "2nd", + "Focused Strikes": "3d8", + "Auras Known": "1", + "Aura Radius": "5 ft." + }, + "6": { + "Level": "6th", + "Proficiency Bonus": "+3", + "Features": "Force Purity", + "Force Powers Known": "13", + "Force Points": "12", + "Max Power Level": "2nd", + "Focused Strikes": "3d8", + "Auras Known": "1", + "Aura Radius": "5 ft." + }, + "7": { + "Level": "7th", + "Proficiency Bonus": "+3", + "Features": "Focus feature", + "Force Powers Known": "14", + "Force Points": "14", + "Max Power Level": "2nd", + "Focused Strikes": "3d8", + "Auras Known": "1", + "Aura Radius": "5 ft." + }, + "8": { + "Level": "8th", + "Proficiency Bonus": "+3", + "Features": "Ability Score Improvement", + "Force Powers Known": "15", + "Force Points": "16", + "Max Power Level": "2nd", + "Focused Strikes": "3d8", + "Auras Known": "1", + "Aura Radius": "5 ft." + }, + "9": { + "Level": "9th", + "Proficiency Bonus": "+4", + "Features": "�", + "Force Powers Known": "17", + "Force Points": "18", + "Max Power Level": "3rd", + "Focused Strikes": "4d8", + "Auras Known": "1", + "Aura Radius": "15 ft." + }, + "10": { + "Level": "10th", + "Proficiency Bonus": "+4", + "Features": "�", + "Force Powers Known": "18", + "Force Points": "20", + "Max Power Level": "3rd", + "Focused Strikes": "4d8", + "Auras Known": "2", + "Aura Radius": "15 ft." + }, + "11": { + "Level": "11th", + "Proficiency Bonus": "+4", + "Features": "Improved Force-Empowered Strikes", + "Force Powers Known": "19", + "Force Points": "22", + "Max Power Level": "3rd", + "Focused Strikes": "4d8", + "Auras Known": "2", + "Aura Radius": "15 ft." + }, + "12": { + "Level": "12th", + "Proficiency Bonus": "+4", + "Features": "Ability Score Improvement", + "Force Powers Known": "20", + "Force Points": "24", + "Max Power Level": "3rd", + "Focused Strikes": "4d8", + "Auras Known": "2", + "Aura Radius": "15 ft." + }, + "13": { + "Level": "13th", + "Proficiency Bonus": "+5", + "Features": "�", + "Force Powers Known": "22", + "Force Points": "26", + "Max Power Level": "4th", + "Focused Strikes": "5d8", + "Auras Known": "2", + "Aura Radius": "15 ft." + }, + "14": { + "Level": "14th", + "Proficiency Bonus": "+5", + "Features": "Cleansing Touch", + "Force Powers Known": "23", + "Force Points": "28", + "Max Power Level": "4th", + "Focused Strikes": "5d8", + "Auras Known": "2", + "Aura Radius": "15 ft." + }, + "15": { + "Level": "15th", + "Proficiency Bonus": "+5", + "Features": "Focus feature", + "Force Powers Known": "24", + "Force Points": "30", + "Max Power Level": "4th", + "Focused Strikes": "5d8", + "Auras Known": "2", + "Aura Radius": "15 ft." + }, + "16": { + "Level": "16th", + "Proficiency Bonus": "+5", + "Features": "Ability Score Improvement", + "Force Powers Known": "25", + "Force Points": "32", + "Max Power Level": "4th", + "Focused Strikes": "5d8", + "Auras Known": "2", + "Aura Radius": "15 ft." + }, + "17": { + "Level": "17th", + "Proficiency Bonus": "+6", + "Features": "�", + "Force Powers Known": "27", + "Force Points": "34", + "Max Power Level": "5th", + "Focused Strikes": "6d8", + "Auras Known": "2", + "Aura Radius": "30 ft." + }, + "18": { + "Level": "18th", + "Proficiency Bonus": "+6", + "Features": "�", + "Force Powers Known": "28", + "Force Points": "36", + "Max Power Level": "5th", + "Focused Strikes": "6d8", + "Auras Known": "3", + "Aura Radius": "30 ft." + }, + "19": { + "Level": "19th", + "Proficiency Bonus": "+6", + "Features": "Ability Score Improvement", + "Force Powers Known": "29", + "Force Points": "38", + "Max Power Level": "5th", + "Focused Strikes": "6d8", + "Auras Known": "3", + "Aura Radius": "30 ft." + }, + "20": { + "Level": "20th", + "Proficiency Bonus": "+6", + "Features": "Focus feature", + "Force Powers Known": "30", + "Force Points": "40", + "Max Power Level": "5th", + "Focused Strikes": "6d8", + "Auras Known": "3", + "Aura Radius": "30 ft." + } + }, + "levelChangesJson": "{\"1\":{\"Level\":\"1st\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Forcecasting, Channel the Force\",\"Force Powers Known\":\"5\",\"Force Points\":\"2\",\"Max Power Level\":\"1st\",\"Focused Strikes\":\"�\",\"Auras Known\":\"�\",\"Aura Radius\":\"�\"},\"2\":{\"Level\":\"2nd\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Force-Empowered Strikes, Fighting Style\",\"Force Powers Known\":\"7\",\"Force Points\":\"4\",\"Max Power Level\":\"1st\",\"Focused Strikes\":\"2d8\",\"Auras Known\":\"�\",\"Aura Radius\":\"�\"},\"3\":{\"Level\":\"3rd\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Guardian Aura, Guardian Focus\",\"Force Powers Known\":\"9\",\"Force Points\":\"6\",\"Max Power Level\":\"1st\",\"Focused Strikes\":\"2d8\",\"Auras Known\":\"1\",\"Aura Radius\":\"5 ft.\"},\"4\":{\"Level\":\"4th\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Ability Score Improvement\",\"Force Powers Known\":\"10\",\"Force Points\":\"8\",\"Max Power Level\":\"1st\",\"Focused Strikes\":\"2d8\",\"Auras Known\":\"1\",\"Aura Radius\":\"5 ft.\"},\"5\":{\"Level\":\"5th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Extra Attack\",\"Force Powers Known\":\"12\",\"Force Points\":\"10\",\"Max Power Level\":\"2nd\",\"Focused Strikes\":\"3d8\",\"Auras Known\":\"1\",\"Aura Radius\":\"5 ft.\"},\"6\":{\"Level\":\"6th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Force Purity\",\"Force Powers Known\":\"13\",\"Force Points\":\"12\",\"Max Power Level\":\"2nd\",\"Focused Strikes\":\"3d8\",\"Auras Known\":\"1\",\"Aura Radius\":\"5 ft.\"},\"7\":{\"Level\":\"7th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Focus feature\",\"Force Powers Known\":\"14\",\"Force Points\":\"14\",\"Max Power Level\":\"2nd\",\"Focused Strikes\":\"3d8\",\"Auras Known\":\"1\",\"Aura Radius\":\"5 ft.\"},\"8\":{\"Level\":\"8th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Ability Score Improvement\",\"Force Powers Known\":\"15\",\"Force Points\":\"16\",\"Max Power Level\":\"2nd\",\"Focused Strikes\":\"3d8\",\"Auras Known\":\"1\",\"Aura Radius\":\"5 ft.\"},\"9\":{\"Level\":\"9th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"�\",\"Force Powers Known\":\"17\",\"Force Points\":\"18\",\"Max Power Level\":\"3rd\",\"Focused Strikes\":\"4d8\",\"Auras Known\":\"1\",\"Aura Radius\":\"15 ft.\"},\"10\":{\"Level\":\"10th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"�\",\"Force Powers Known\":\"18\",\"Force Points\":\"20\",\"Max Power Level\":\"3rd\",\"Focused Strikes\":\"4d8\",\"Auras Known\":\"2\",\"Aura Radius\":\"15 ft.\"},\"11\":{\"Level\":\"11th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Improved Force-Empowered Strikes\",\"Force Powers Known\":\"19\",\"Force Points\":\"22\",\"Max Power Level\":\"3rd\",\"Focused Strikes\":\"4d8\",\"Auras Known\":\"2\",\"Aura Radius\":\"15 ft.\"},\"12\":{\"Level\":\"12th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Ability Score Improvement\",\"Force Powers Known\":\"20\",\"Force Points\":\"24\",\"Max Power Level\":\"3rd\",\"Focused Strikes\":\"4d8\",\"Auras Known\":\"2\",\"Aura Radius\":\"15 ft.\"},\"13\":{\"Level\":\"13th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"�\",\"Force Powers Known\":\"22\",\"Force Points\":\"26\",\"Max Power Level\":\"4th\",\"Focused Strikes\":\"5d8\",\"Auras Known\":\"2\",\"Aura Radius\":\"15 ft.\"},\"14\":{\"Level\":\"14th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Cleansing Touch\",\"Force Powers Known\":\"23\",\"Force Points\":\"28\",\"Max Power Level\":\"4th\",\"Focused Strikes\":\"5d8\",\"Auras Known\":\"2\",\"Aura Radius\":\"15 ft.\"},\"15\":{\"Level\":\"15th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Focus feature\",\"Force Powers Known\":\"24\",\"Force Points\":\"30\",\"Max Power Level\":\"4th\",\"Focused Strikes\":\"5d8\",\"Auras Known\":\"2\",\"Aura Radius\":\"15 ft.\"},\"16\":{\"Level\":\"16th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Ability Score Improvement\",\"Force Powers Known\":\"25\",\"Force Points\":\"32\",\"Max Power Level\":\"4th\",\"Focused Strikes\":\"5d8\",\"Auras Known\":\"2\",\"Aura Radius\":\"15 ft.\"},\"17\":{\"Level\":\"17th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"�\",\"Force Powers Known\":\"27\",\"Force Points\":\"34\",\"Max Power Level\":\"5th\",\"Focused Strikes\":\"6d8\",\"Auras Known\":\"2\",\"Aura Radius\":\"30 ft.\"},\"18\":{\"Level\":\"18th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"�\",\"Force Powers Known\":\"28\",\"Force Points\":\"36\",\"Max Power Level\":\"5th\",\"Focused Strikes\":\"6d8\",\"Auras Known\":\"3\",\"Aura Radius\":\"30 ft.\"},\"19\":{\"Level\":\"19th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Ability Score Improvement\",\"Force Powers Known\":\"29\",\"Force Points\":\"38\",\"Max Power Level\":\"5th\",\"Focused Strikes\":\"6d8\",\"Auras Known\":\"3\",\"Aura Radius\":\"30 ft.\"},\"20\":{\"Level\":\"20th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Focus feature\",\"Force Powers Known\":\"30\",\"Force Points\":\"40\",\"Max Power Level\":\"5th\",\"Focused Strikes\":\"6d8\",\"Auras Known\":\"3\",\"Aura Radius\":\"30 ft.\"}}", + "hitDiceDieTypeEnum": 10, + "hitDiceDieType": 10, + "hitPointsAtFirstLevel": "10 + your Constitution modifier", + "hitPointsAtHigherLevels": "1d10 (or 6) + your Constitution modifier per guardian level after 1st.", + "hitPointsAtFirstLevelNumber": 10, + "hitPointsAtHigherLevelsNumber": 6, + "armorProficiencies": [ + "Light armor", + "medium armor" + ], + "armorProficienciesJson": "[\"Light armor\",\"medium armor\"]", + "weaponProficiencies": [ + "All lightweapons", + "all vibroweapons" + ], + "weaponProficienciesJson": "[\"All lightweapons\",\"all vibroweapons\"]", + "toolProficiencies": [ + "None" + ], + "toolProficienciesJson": "[\"None\"]", + "toolProficienciesList": [ + "None" + ], + "toolProficienciesListJson": "[\"None\"]", + "savingThrows": [ + "Constitution", + "Charisma" + ], + "savingThrowsJson": "[\"Constitution\",\"Charisma\"]", + "skillChoices": "Choose two from Acrobatics, Athletics, Deception, Insight, Intimidation, Lore, Perception, Persuasion, and Piloting", + "numSkillChoices": 2, + "skillChoicesList": [ + "Acrobatics", + "Athletics", + "Deception", + "Insight", + "Intimidation", + "Lore", + "Perception", + "Persuasion", + "Piloting" + ], + "skillChoicesListJson": "[\"Acrobatics\",\"Athletics\",\"Deception\",\"Insight\",\"Intimidation\",\"Lore\",\"Perception\",\"Persuasion\",\"Piloting\"]", + "equipmentLines": [ + "- *(a)* mesh armor, *(b)* a combat suit, and a light physical shield", + "- *(a)* a lightweapon or vibroweapon and a light or medium physical shield or *(b)* two lightweapons or vibroweapons", + "- *(a)* a priest's pack or *(b)* an explorer's pack" + ], + "equipmentLinesJson": "[\"- *(a)* mesh armor, *(b)* a combat suit, and a light physical shield\",\"- *(a)* a lightweapon or vibroweapon and a light or medium physical shield or *(b)* two lightweapons or vibroweapons\",\"- *(a)* a priest's pack or *(b)* an explorer's pack\"]", + "startingWealthVariant": "8d4 x 100 cr", + "classFeatureText": "\r\n### Forcecasting\r\n_**Guardian:** 1st level_\r\nIn your meditations on the Force, you have learned powers, fragments of knowledge that imbue you with an abiding force ability. See chapter 10 for the general rules of forcecasting and chapter 11 for the force powers list.\r\n\r\n#### Force Powers Known\r\nYou learn 5 force powers of your choice, and you learn more at higher levels, as shown in the Force Powers Known column of the guardian table. You may not learn a force power of a level higher than your Max Power Level, and you may learn a force power at the same time you learn its prerequisite.\r\n\r\n#### Force Points\r\nYou have a number of force points equal to your guardian level x 2, as shown in the Force Points column of the guardian table, + your Wisdom or Charisma modifier (your choice). You use these force points to cast force powers. You regain all expended force points when you finish a long rest.\r\n\r\n#### Max Power Level\r\nMany force powers can be overpowered, consuming more force points to create a greater effect. You can overpower these abilities to a maximum level, which increases at higher levels, as shown in the Max Power Level column of the guardian table.\r\n\r\nYou may only cast force powers at 4th and 5th-level once. You regain the ability to do so after a long rest.\r\n\r\n#### Forcecasting Ability\r\nYour forcecasting ability varies based on the alignment of the powers you cast. You use Wisdom for light side powers, Charisma for dark side powers, and Wisdom or Charisma for universal powers (your choice). You use this ability whenever a power refers to your forcecasting ability. Additionally, you use this ability modifier when setting the saving throw DC for a force power you cast and when making an attack roll with one.\r\n\r\n___\r\n\r\n**Force save DC** = 8 + your proficiency bonus + your forcecasting ability modifier\r\n\r\n___\r\n\r\n**Force attack modifier** = your proficiency bonus + your forcecasting ability modifier\r\n\r\n___\r\n\r\n### Channel the Force\r\n_**Guardian:** 1st level_\r\nYou know how to channel the Force to create a unique effect. You start with your choice of one from two such effects: Cause Harm or Lend Aid. At 3rd level, your Guardian Focus grants you an additional effect. When you use your Channel the Force, you choose which effect to create.\r\n\r\nSome Channel the Force effects require saving throws. When you use such an effect from this class, the DC equals your universal force save DC.\r\n\r\nYou can use this feature twice. You gain an additional use at 5th, 9th, 13th, and 17th level. You regain all expended uses when you finish a short or long rest.\r\n\r\n#### Cause Harm\r\nAs an action, you can expend a use of your Channel the Force to sap the life from a hostile creature you can see within 60 feet. That creature must make a Constitution saving throw. On a failed save, the creature takes necrotic damage equal to your guardian level + your Charisma modifier (minimum of +1), or half as much on a successful one.\r\n\r\n#### Lend Aid\r\nAs a bonus action, you can expend a use of your Channel the Force and touch a beast or humanoid within 5 feet of you. That creature regains hit points equal to your guardian level + your Wisdom modifier (minimum of +1). Alternatively, if the beast or humanoid is poisoned or diseased, you neutralize the poison or disease. If more than one poison or disease afflicts the target, you neutralize one poison or disease that you know is present, or you neutralize one at random.\r\n\r\n### Force-Empowered Strikes\r\n_**Guardian:** 2nd level_\r\nWhen you hit a creature with a melee weapon attack, you can expend force points to deal additional damage to the target, which is the same type as the weapon's damage. The additional damage is 1d8 for each point spent in this way. You can't deal more additional damage than the amount shown in the Focused Strikes column of the guardian table. \r\n\r\n### Fighting Style\r\n_**Guardian:** 2nd level_\r\nYou adopt a particular style of fighting as your specialty. Choose one of the fighting style options, detailed in Chapter 6. \r\n\r\n### Guardian Aura\r\n_**Guardian:** 3rd level_\r\nYou gain an aura of your choice, as detailed at the end of the class description, and you gain more at higher levels, as shown in the Auras Known column of the guardian table. Your aura has a radius of 5 feet, which increases at higher levels, as shown in the Aura Radius column of the guardian table.\r\n\r\n### Guardian Focus\r\n_**Guardian:** 3rd, 7th, 15th, and 20th level_\r\nYou begin to focus your studies on a specific lightsaber form, which is detailed at the end of the class description. \r\n\r\n### Ability Score Improvement\r\n_**Guardian:** 4th, 8th, 12th, 16th, and 19th level_\r\nYou can increase one ability score by 2, or you can increase two ability scores by 1. You can't increase an ability score above 20 using this feature.\r\n\r\n### Extra Attack\r\n_**Guardian:** 5th level_\r\nYou can attack twice, instead of once, whenever you take the Attack action on your turn.\r\n\r\n### Force Purity\r\n_**Guardian:** 6th level_\r\nThe Force flowing through you makes you immune to poison and disease.\r\n\r\n### Improved Force-Empowered Strikes\r\n_**Guardian:** 11th level_\r\nYou are so in tune with the Force that all your melee weapon strikes carry the power of the Force with them. Whenever you hit a creature with a melee weapon attack, the creature takes an extra 1d8 damage. The damage is the same type as the weapon's damage.\r\n\r\n### Cleansing Touch\r\n_**Guardian:** 14th level_\r\nYou can use your action and expend a use of your Channel the Force ability to end one force power on yourself or on one willing creature that you touch.\r\n\r\n### Guardian Auras\r\nThe auras are presented in alphabetical order. If multiple guardians grant the same aura, affected creatures can only benefit from it once. You must be conscious to grant the benefits of your auras.\r\n\r\n#### Aura of Conquest\r\nWhenever a creature who is frightened of you starts its turn within 5 feet of you, its gains 4 slowed levels and takes psychic damage equal to half your guardian level.\r\n\r\n#### Aura of Conviction\r\nYou and friendly creatures within 5 feet of you have advantage on saving throws against effects that would cause you to be charmed or frightened.\r\n\r\n#### Aura of Hatred\r\nYou and friendly creatures within 5 feet of you gain a bonus to the first melee weapon damage rolls you make each round equal to your Charisma modifier (minimum of +1).\r\n\r\n#### Aura of Presence\r\nWhenever you or a friendly creature within 5 feet of you must make a saving throw, the creature can add your Wisdom modifier to the saving throw. \r\n\r\n#### Aura of Protection\r\nWhenever a creature within 5 feet of you takes damage, you can use your reaction to take that damage instead of that creature taking it. This feature doesn't transfer any other effects that might accompany the damage, and this damage can't be reduced in any way.\r\n\r\n#### Aura of Vigor\r\nWhenever a friendly creature starts its turn within 5 feet of you, that creature gains temporary hit points equal to your Wisdom or Charisma modifier (your choice, minimum of one).\r\n\r\n#### Aura of Warding\r\nYou and friendly creatures within 5 feet of you have resistance to damage from force powers.\r\n", + "classFeatureText2": null, + "archetypeFlavorText": "Different guardians focus on different lightsaber styles, called Forms, as they hone their powers. Your focus grants you features at 3rd, 7th, 15th, and 20th level.", + "archetypeFlavorName": "Guardian Foci", + "archetypes": null, + "imageUrls": [ + "https://starwars5ecentral.blob.core.windows.net/site-images/classes/guardian_01.png", + "https://starwars5ecentral.blob.core.windows.net/site-images/classes/guardian_02.png" + ], + "imageUrlsJson": "[\"https://starwars5ecentral.blob.core.windows.net/site-images/classes/guardian_01.png\",\"https://starwars5ecentral.blob.core.windows.net/site-images/classes/guardian_02.png\"]", + "casterRatio": 0.5, + "casterTypeEnum": 1, + "casterType": "Force", + "multiClassProficiencies": [ + "Light armor", + "all lightweapons", + "all vibroweapons", + "medium armor" + ], + "multiClassProficienciesJson": "[\"Light armor\",\"all lightweapons\",\"all vibroweapons\",\"medium armor\"]", + "features": null, + "featureRowKeys": null, + "featureRowKeysJson": "", + "contentTypeEnum": 1, + "contentType": "Core", + "contentSourceEnum": 1, + "contentSource": "PHB", + "partitionKey": "Core", + "rowKey": "Guardian", + "timestamp": "2023-05-30T20:15:42.4980744+00:00", + "eTag": "W/\"datetime'2023-05-30T20%3A15%3A42.4980744Z'\"" + }, + { + "name": "Monk", + "summary": "Unarmed combatant who uses focus to fuel abilities", + "primaryAbility": "Dexterity", + "flavorText": "Her vibrostaff a blur as they deflect an incoming hail of blaster bolts, a human springs over a barricade and throws herself into the massed ranks of pirates on the other side. She whirls among them, knocking their blows aside and sending them reeling, until at last she stands alone.\r\n\r\nTaking a deep breath, a zabrak covered in tattoos settles into a battle stance. As the first charging mercenaries reach him, he exhales and a blast of negative energy courses from his hands, engulfing his foes.\r\n\r\nMoving with the silence of the night, a black-clad mirialan steps into a shadow beneath an arch and nimbly climbs to the balcony a stone's throw above her. She slides her blade free of its cloth-wrapped scabbard and peers through the open window at the warlord, so vulnerable in the grip of sleep.\r\n\r\nWhatever their discipline, monks are united in their ability to harness the energy that flows in their bodies. Whether channeled as a striking display of combat prowess or a subtler focus of defensive ability and speed, this energy infuses all that a monk does.\r\n\r\n### The Power of Focus\r\nMonks make careful study of a mystical energy that most monastic orders call focus. This energy is an element of the power that suffuses the galaxy�specifically, the element that flows through living bodies. Monks harness this energy within themselves to create powerful effects and exceed their bodies' physical capabilities, and some of their special attacks can hinder the flow of focus in their opponents. Using this energy, monks channel uncanny speed and strength into their unarmed strikes. As they gain experience, their martial training and their mastery of focus gives them more power over their bodies and the bodies of their foes.\r\n\r\n### Training and Asceticism\r\nMost monks live entirely apart from the surrounding population, secluded from anything that might impede their spiritual progress. Others are sworn to isolation, emerging only to serve as spies or assassins at the command of their leader, a noble patron, or some other power.\r\n\r\nThe majority of monks don't shun their neighbors, making frequent visits to nearby towns or villages and exchanging their service for food and other goods. As versatile warriors, monks often end up protecting their neighbors from monsters or brigands.\r\n\r\nFor a monk, becoming an adventurer means leaving a structured, communal lifestyle to become a wanderer. This can be a harsh transition, and monks don't undertake it lightly. Those who leave their cloisters take their work seriously, approaching their adventures as personal tests of their physical and spiritual growth. \r\n", + "creatingText": "As you make your monk character, think about your connection to the monastery where you learned your skills and spent your formative years. Were you an orphan or a child left on the monastery's threshold? Did your parents promise you to the monastery in gratitude for a service performed by the monks? Did you enter this secluded life to hide from a crime you committed? Or did you choose the monastic life for yourself?\r\n\r\nConsider why you left. Did the head of your monastery choose you for a particularly important mission beyond the cloister? Perhaps you were cast out because of some violation of the community's rules. Did you dread leaving, or were you happy to go? Is there something you hope to accomplish outside the monastery? Are you eager to return to your home?\r\n\r\nAs a result of the structured life of a monastic community and the discipline required to harness focus, monks are typically lawful in alignment.\r\n", + "quickBuildText": "You can make a monk quickly by following these suggestions. First, make Dexterity your highest ability score, followed by Wisdom. Second, choose the agent background.\r\n", + "levelChangeHeadersJson": "[\"Level\",\"Proficiency Bonus\",\"Features\",\"Martial Arts\",\"Focus Points\",\"Monastic Vows\",\"Unarmored Movement\"]", + "levelChanges": { + "1": { + "Level": "1st", + "Proficiency Bonus": "+2", + "Features": "Martial Arts, Unarmored Defense", + "Martial Arts": "d4", + "Focus Points": "�", + "Monastic Vows": "�", + "Unarmored Movement": "�" + }, + "2": { + "Level": "2nd", + "Proficiency Bonus": "+2", + "Features": "Focus, Monastic Vows", + "Martial Arts": "d4", + "Focus Points": "2", + "Monastic Vows": "2", + "Unarmored Movement": "�" + }, + "3": { + "Level": "3rd", + "Proficiency Bonus": "+2", + "Features": "Unarmored Movement, Deflect Missiles, Monastic Order", + "Martial Arts": "d4", + "Focus Points": "3", + "Monastic Vows": "2", + "Unarmored Movement": "+10 ft." + }, + "4": { + "Level": "4th", + "Proficiency Bonus": "+2", + "Features": "Ability Score Improvement, Slow Fall", + "Martial Arts": "d4", + "Focus Points": "4", + "Monastic Vows": "2", + "Unarmored Movement": "+10 ft." + }, + "5": { + "Level": "5th", + "Proficiency Bonus": "+3", + "Features": "Extra Attack, Stunning Strike", + "Martial Arts": "d6", + "Focus Points": "5", + "Monastic Vows": "2", + "Unarmored Movement": "+15 ft." + }, + "6": { + "Level": "6th", + "Proficiency Bonus": "+3", + "Features": "Enhanced Strikes, Order feature", + "Martial Arts": "d6", + "Focus Points": "6", + "Monastic Vows": "2", + "Unarmored Movement": "+15 ft." + }, + "7": { + "Level": "7th", + "Proficiency Bonus": "+3", + "Features": "Evasion, Stillness of Mind", + "Martial Arts": "d6", + "Focus Points": "7", + "Monastic Vows": "3", + "Unarmored Movement": "+15 ft." + }, + "8": { + "Level": "8th", + "Proficiency Bonus": "+3", + "Features": "Ability Score Improvement", + "Martial Arts": "d6", + "Focus Points": "8", + "Monastic Vows": "3", + "Unarmored Movement": "+15 ft." + }, + "9": { + "Level": "9th", + "Proficiency Bonus": "+4", + "Features": "Unarmored Movement Improvement", + "Martial Arts": "d8", + "Focus Points": "9", + "Monastic Vows": "3", + "Unarmored Movement": "+20 ft." + }, + "10": { + "Level": "10th", + "Proficiency Bonus": "+4", + "Features": "Ability Score Improvement", + "Martial Arts": "d8", + "Focus Points": "10", + "Monastic Vows": "3", + "Unarmored Movement": "+20 ft." + }, + "11": { + "Level": "11th", + "Proficiency Bonus": "+4", + "Features": "Order feature", + "Martial Arts": "d8", + "Focus Points": "11", + "Monastic Vows": "3", + "Unarmored Movement": "+20 ft." + }, + "12": { + "Level": "12th", + "Proficiency Bonus": "+4", + "Features": "Ability Score Improvement", + "Martial Arts": "d8", + "Focus Points": "12", + "Monastic Vows": "3", + "Unarmored Movement": "+20 ft." + }, + "13": { + "Level": "13th", + "Proficiency Bonus": "+5", + "Features": "Purity of Body", + "Martial Arts": "d10", + "Focus Points": "13", + "Monastic Vows": "4", + "Unarmored Movement": "+25 ft." + }, + "14": { + "Level": "14th", + "Proficiency Bonus": "+5", + "Features": "Diamond Soul", + "Martial Arts": "d10", + "Focus Points": "14", + "Monastic Vows": "4", + "Unarmored Movement": "+25 ft." + }, + "15": { + "Level": "15th", + "Proficiency Bonus": "+5", + "Features": "Timeless Vessel", + "Martial Arts": "d10", + "Focus Points": "15", + "Monastic Vows": "4", + "Unarmored Movement": "+25 ft." + }, + "16": { + "Level": "16th", + "Proficiency Bonus": "+5", + "Features": "Ability Score Improvement", + "Martial Arts": "d10", + "Focus Points": "16", + "Monastic Vows": "4", + "Unarmored Movement": "+25 ft." + }, + "17": { + "Level": "17th", + "Proficiency Bonus": "+6", + "Features": "Order feature", + "Martial Arts": "d12", + "Focus Points": "17", + "Monastic Vows": "5", + "Unarmored Movement": "+30 ft." + }, + "18": { + "Level": "18th", + "Proficiency Bonus": "+6", + "Features": "Empty Body", + "Martial Arts": "d12", + "Focus Points": "18", + "Monastic Vows": "5", + "Unarmored Movement": "+30 ft." + }, + "19": { + "Level": "19th", + "Proficiency Bonus": "+6", + "Features": "Ability Score Improvement", + "Martial Arts": "d12", + "Focus Points": "19", + "Monastic Vows": "5", + "Unarmored Movement": "+30 ft." + }, + "20": { + "Level": "20th", + "Proficiency Bonus": "+6", + "Features": "Perfect Self", + "Martial Arts": "d12", + "Focus Points": "20", + "Monastic Vows": "5", + "Unarmored Movement": "+30 ft." + } + }, + "levelChangesJson": "{\"1\":{\"Level\":\"1st\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Martial Arts, Unarmored Defense\",\"Martial Arts\":\"d4\",\"Focus Points\":\"�\",\"Monastic Vows\":\"�\",\"Unarmored Movement\":\"�\"},\"2\":{\"Level\":\"2nd\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Focus, Monastic Vows\",\"Martial Arts\":\"d4\",\"Focus Points\":\"2\",\"Monastic Vows\":\"2\",\"Unarmored Movement\":\"�\"},\"3\":{\"Level\":\"3rd\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Unarmored Movement, Deflect Missiles, Monastic Order\",\"Martial Arts\":\"d4\",\"Focus Points\":\"3\",\"Monastic Vows\":\"2\",\"Unarmored Movement\":\"+10 ft.\"},\"4\":{\"Level\":\"4th\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Ability Score Improvement, Slow Fall\",\"Martial Arts\":\"d4\",\"Focus Points\":\"4\",\"Monastic Vows\":\"2\",\"Unarmored Movement\":\"+10 ft.\"},\"5\":{\"Level\":\"5th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Extra Attack, Stunning Strike\",\"Martial Arts\":\"d6\",\"Focus Points\":\"5\",\"Monastic Vows\":\"2\",\"Unarmored Movement\":\"+15 ft.\"},\"6\":{\"Level\":\"6th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Enhanced Strikes, Order feature\",\"Martial Arts\":\"d6\",\"Focus Points\":\"6\",\"Monastic Vows\":\"2\",\"Unarmored Movement\":\"+15 ft.\"},\"7\":{\"Level\":\"7th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Evasion, Stillness of Mind\",\"Martial Arts\":\"d6\",\"Focus Points\":\"7\",\"Monastic Vows\":\"3\",\"Unarmored Movement\":\"+15 ft.\"},\"8\":{\"Level\":\"8th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Ability Score Improvement\",\"Martial Arts\":\"d6\",\"Focus Points\":\"8\",\"Monastic Vows\":\"3\",\"Unarmored Movement\":\"+15 ft.\"},\"9\":{\"Level\":\"9th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Unarmored Movement Improvement\",\"Martial Arts\":\"d8\",\"Focus Points\":\"9\",\"Monastic Vows\":\"3\",\"Unarmored Movement\":\"+20 ft.\"},\"10\":{\"Level\":\"10th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Ability Score Improvement\",\"Martial Arts\":\"d8\",\"Focus Points\":\"10\",\"Monastic Vows\":\"3\",\"Unarmored Movement\":\"+20 ft.\"},\"11\":{\"Level\":\"11th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Order feature\",\"Martial Arts\":\"d8\",\"Focus Points\":\"11\",\"Monastic Vows\":\"3\",\"Unarmored Movement\":\"+20 ft.\"},\"12\":{\"Level\":\"12th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Ability Score Improvement\",\"Martial Arts\":\"d8\",\"Focus Points\":\"12\",\"Monastic Vows\":\"3\",\"Unarmored Movement\":\"+20 ft.\"},\"13\":{\"Level\":\"13th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Purity of Body\",\"Martial Arts\":\"d10\",\"Focus Points\":\"13\",\"Monastic Vows\":\"4\",\"Unarmored Movement\":\"+25 ft.\"},\"14\":{\"Level\":\"14th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Diamond Soul\",\"Martial Arts\":\"d10\",\"Focus Points\":\"14\",\"Monastic Vows\":\"4\",\"Unarmored Movement\":\"+25 ft.\"},\"15\":{\"Level\":\"15th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Timeless Vessel\",\"Martial Arts\":\"d10\",\"Focus Points\":\"15\",\"Monastic Vows\":\"4\",\"Unarmored Movement\":\"+25 ft.\"},\"16\":{\"Level\":\"16th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Ability Score Improvement\",\"Martial Arts\":\"d10\",\"Focus Points\":\"16\",\"Monastic Vows\":\"4\",\"Unarmored Movement\":\"+25 ft.\"},\"17\":{\"Level\":\"17th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Order feature\",\"Martial Arts\":\"d12\",\"Focus Points\":\"17\",\"Monastic Vows\":\"5\",\"Unarmored Movement\":\"+30 ft.\"},\"18\":{\"Level\":\"18th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Empty Body\",\"Martial Arts\":\"d12\",\"Focus Points\":\"18\",\"Monastic Vows\":\"5\",\"Unarmored Movement\":\"+30 ft.\"},\"19\":{\"Level\":\"19th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Ability Score Improvement\",\"Martial Arts\":\"d12\",\"Focus Points\":\"19\",\"Monastic Vows\":\"5\",\"Unarmored Movement\":\"+30 ft.\"},\"20\":{\"Level\":\"20th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Perfect Self\",\"Martial Arts\":\"d12\",\"Focus Points\":\"20\",\"Monastic Vows\":\"5\",\"Unarmored Movement\":\"+30 ft.\"}}", + "hitDiceDieTypeEnum": 8, + "hitDiceDieType": 8, + "hitPointsAtFirstLevel": "8 + your Constitution modifier", + "hitPointsAtHigherLevels": "1d8 (or 5) + your Constitution modifier per monk level after 1st", + "hitPointsAtFirstLevelNumber": 8, + "hitPointsAtHigherLevelsNumber": 5, + "armorProficiencies": [ + "None" + ], + "armorProficienciesJson": "[\"None\"]", + "weaponProficiencies": [ + "Simple blasters", + "simple vibroweapons", + "martial vibroweapons that lack the dexterity", + "heavy", + "special", + "and two-handed properties" + ], + "weaponProficienciesJson": "[\"Simple blasters\",\"simple vibroweapons\",\"martial vibroweapons that lack the dexterity\",\"heavy\",\"special\",\"and two-handed properties\"]", + "toolProficiencies": [ + "None" + ], + "toolProficienciesJson": "[\"None\"]", + "toolProficienciesList": [ + "None" + ], + "toolProficienciesListJson": "[\"None\"]", + "savingThrows": [ + "Strength", + "Dexterity" + ], + "savingThrowsJson": "[\"Strength\",\"Dexterity\"]", + "skillChoices": "Choose two from Acrobatics, Athletics, Insight, Lore, Perception, and Stealth", + "numSkillChoices": 2, + "skillChoicesList": [ + "Acrobatics", + "Athletics", + "Insight", + "Lore", + "Perception", + "Stealth" + ], + "skillChoicesListJson": "[\"Acrobatics\",\"Athletics\",\"Insight\",\"Lore\",\"Perception\",\"Stealth\"]", + "equipmentLines": [ + "- *(a)* a vibroweapon with which you are proficient or *(b)* a simple blaster and a power cell", + "- *(a)* a dungeoneer's pack or *(b)* an explorer's pack", + "- 10 vibrodarts" + ], + "equipmentLinesJson": "[\"- *(a)* a vibroweapon with which you are proficient or *(b)* a simple blaster and a power cell\",\"- *(a)* a dungeoneer's pack or *(b)* an explorer's pack\",\"- 10 vibrodarts\"]", + "startingWealthVariant": "4d4 x 100 cr", + "classFeatureText": "\r\n### Martial Arts\r\n_**Monk:** 1st level_ \r\nYour practice of martial arts gives you mastery of combat styles that use unarmed strikes and monk weapons, which are vibroweapons with which you are proficient that lack the dexterity, heavy, special, and two-handed properties.\r\n\r\nYou gain the following benefits while you are unarmed or wielding only monk weapons and you aren't wearing armor or wielding a shield:\r\n- Your unarmed strikes and monk weapons gain the finesse property.\r\n- You can roll a d4 in place of the normal damage of your unarmed strike or monk weapon. This die changes as you gain monk levels, as shown in the Martial Arts column of the monk table.\r\n- You can use Dexterity instead of Strength whenever you would make a Strength (Athletics) check to grapple, shove, or trip a creature.\r\n- When you use the Attack action with an unarmed strike or a monk weapon on your turn, you can make one unarmed strike as a bonus action. \r\n- You can take the Dash or Disengage actions as a bonus action.\r\n\r\n> ##### Variant: Monks with Lightweapons\r\n> If monks gain lightweapon proficiency, consider letting them use lightweapons as monk weapons, provided the weapon lacks the dexterity, heavy, special, and two-handed properties.\r\n\r\n### Unarmored Defense\r\n_**Monk:** 1st level_\r\nWhile you are wearing no armor and not wielding a shield, your AC equals 10 + your Dexterity modifier + your Wisdom or Charisma modifier (your choice).\r\n\r\n### Focus\r\n_**Monk:** 2nd and 11th level_\r\nYour training allows you to harness the mystic energy of focus. Your access to this energy is represented by a number of focus points. Your monk level determines the number of points you have, as shown in the Focus Points column of the monk table.\r\n\r\nYou can spend these points to fuel various focus features. You start knowing three such features: Flurry of Blows, Patient Defense, and Step of the Wind. You learn more focus features as you gain levels in this class.\r\n\r\nWhen you spend a focus point, it is unavailable until you finish a short or long rest, at the end of which you draw all of your expended focus back into yourself. You must spend at least 30 minutes of the rest meditating to regain your focus points.\r\n\r\nYou use your choice of Wisdom or Charisma for your focus ability. You use the chosen ability modifier whenever a feature refers to your focus ability. Additionally, you use the chosen ability modifier when making an attack with a focus feature or setting the saving throw DC for one.\r\n\r\n___\r\n\r\n**Focus save DC** = 8 + your proficiency bonus + your Wisdom or Charisma modifier (your choice)\r\n\r\n___\r\n\r\n**Focus attack modifier** = your proficiency bonus + your Wisdom or Charisma modifier (your choice)\r\n\r\n___\r\n\r\n#### Flurry of Blows\r\nWhen you make your Martial Arts bonus action attack, you can spend 1 focus point to make an additional unarmed strike (no action required). At 11th level, you can instead spend 2 focus points to make two additional unarmed strikes.\r\n\r\n#### Patient Defense\r\nWhen you use your bonus action to Disengage, you can spend 1 focus point to also Dodge (no action required). At 11th level, you can instead spend 2 focus points to Dodge and gain an additional reaction until the start of your next turn. \r\n\r\n#### Step of the Wind\r\nWhen you use your bonus action to Dash, you can spend 1 focus point to double your jump distance for the turn. At 11th level, you can instead spend 2 focus points to gain a flying speed equal to your walking speed until the end of your turn, though you fall if you end your speed in the air and nothing else is holding you aloft.\r\n\r\n### Monastic Vows\r\n_**Monk:** 2nd level_\r\nYou've sworn two vows, as detailed at the end of the class description. You swear an additional vow at 7th, 13th, and 17th level.\r\n\r\n### Unarmored Movement\r\n_**Monk:** 3rd and 9th level_\r\nYour speed increases by 10 feet while you are not wearing armor or wielding a shield. This bonus increases when you reach certain monk levels, as shown in the Unarmored Movement column of the monk table.\r\n\r\nAt 9th level, you gain the ability to move along vertical surfaces and across liquids on your turn without falling during the move.\r\n\r\n### Deflect Missiles\r\n_**Monk:** 3rd level_\r\nYou can use your reaction to deflect a projectile when you are dealt damage by a ranged weapon attack. When you do so, the damage you take from the attack is reduced by 1d10 + your Dexterity modifier + your monk level.\r\n\r\nIf you reduce the damage to 0, and the damage is kinetic, energy, or ion, you can redirect it at another target if you have a weapon capable of doing so. You can spend 1 focus point to make a ranged attack with a range of 20/60 as you deflect the projectile, as part of the same reaction. You make this attack with proficiency, regardless of your weapon proficiencies, and the projectile counts as a monk weapon for the attack.\r\n\r\n### Monastic Order\r\n_**Monk:** 3rd, 6th, 11th, and 17th level_\r\nYou commit yourself to one monastic order, which is detailed at the end of the class description. \r\n\r\n### Ability Score Improvement\r\n_**Monk:** 4th, 8th, 10th, 12th, 16th, and 19th level_\r\nYou can increase one ability score by 2, or you can increase two ability scores by 1. You can't increase an ability score above 20 using this feature.\r\n\r\n### Slow Fall\r\n_**Monk:** 4th level_\r\nYou can use your reaction when you fall to reduce any falling damage you take by an amount equal to five times your monk level.\r\n\r\n### Extra Attack\r\n_**Monk:** 5th level_\r\nYou can attack twice, instead of once, whenever you take the Attack action on your turn.\r\n\r\n### Stunning Strike\r\n_**Monk:** 5th level_\r\nYou can interfere with an opponent's body. When you hit another creature with a melee weapon attack, you can spend 1 focus point to attempt a stunning strike. The target must succeed on a Constitution saving throw or be stunned until the end of your next turn.\r\n\r\n### Enhanced Strikes\r\n_**Monk:** 6th level_\r\nYour unarmed strikes count as enhanced for the purpose of overcoming resistance and immunity to unenhanced attacks and damage.\r\n\r\n### Evasion\r\n_**Monk:** 7th level_\r\nYour instinctive agility lets you dodge out of the way of certain area effects. When you are subjected to an effect that allows you to make a Dexterity saving throw to take only half damage, you instead take no damage if you succeed on a saving throw, and only half damage if you fail.\r\n\r\n### Stillness of Mind\r\n_**Monk:** 7th level_\r\nYou can use your action or bonus action to end one effect on yourself that is causing you to be charmed or frightened.\r\n\r\n### Purity of Body\r\n_**Monk:** 13th level_\r\nYou are immune to disease and poison and resistant to poison damage.\r\n\r\n### Diamond Soul\r\n_**Monk:** 14th level_\r\nYour mastery of focus grants you proficiency in all saving throws, and when you fail a saving throw, you can spend 1 focus point to reroll it, taking the new roll.\r\n\r\n### Timeless Vessel\r\n_**Monk:** 15th level_\r\nYour focus sustains you so that you suffer none of the frailty of old age, and you can't be aged abnormally. You can still die of old age, however. Additionally, when you complete a short rest, you can expend a Hit Die to remove 1 level of exhaustion or slowed.\r\n\r\n### Empty Body\r\n_**Monk:** 18th level_\r\nYou can use your action to spend 4 focus points to become invisible for 1 minute. During that time, you also have resistance to all damage but force damage.\r\n\r\n### Perfect Self\r\n_**Monk:** 20th level_\r\nYou've gained perfect control over your body. Your Dexterity and Wisdom or Charisma scores (your choice) increase by 2. Your maximum for those scores increases by 2. Additionally, when you roll for initiative and have fewer than 6 focus points remaining, you regain up to 6 focus points.\r\n\r\n### Monastic Vows\r\nThe vows are presented in alphabetical order.\r\n\r\n#### Vow of Deflection\r\nYou can use your reaction to divert a strike when you are dealt damage by a melee weapon attack. When you do so, the damage taken by the attack is reduced by 1d10 + your Dexterity modifier + your monk level.\r\n\r\n#### Vow of the Devoted\r\nYou gain a limited ability to manipulate the Force. See chapter 10 for the general rules of forcecasting and chapter 11 for the force powers list.\r\n\r\n***Force Powers Known.*** You learn 2 force powers of your choice. You learn an additional power at 3rd, 5th, 7th, 9th, 11th, 13th, 15th, and 17th level. You may not learn a force power of a level higher than your Max Power Level, and you may learn a force power at the same time you learn its prerequisite. You may only learn universal powers in this way.\r\n\r\n***Force Points.*** Rather than force points, powers you learn through this vow are cast using your focus points, at 1 focus point per power level. You may only cast universal powers in this way.\r\n\r\n***Max Power Level.*** Many force powers can be overpowered, consuming more focus points to create a greater effect. You can overpower these abilities to a maximum level, which increases at higher levels. Your Max Power Level is 1st. It increases to 2nd at 7th level, 3rd at 13th level, and 4th at 17th level. You may only cast force powers at 4th-level once. You regain the ability to do so after a long rest.\r\n\r\n***Forcecasting Ability.*** You use your focus ability whenever a power refers to your forcecasting ability. If a power you cast with focus points calls for a saving throw, you use your focus save DC. If a power you cast with focus points calls for an attack roll, you use your focus attack modifier.\r\n\r\n#### Vow of Fate\r\n_**Prerequisite:** 7th level_\r\nWhen you finish a short or long rest, roll a d20 and record the number rolled. Once before your next short or long rest, you can replace any attack roll, saving throw, or ability check made by you or a creature within 5 feet of you with this roll. You must choose to do so before the roll. \r\n\r\n#### Vow of the Fighter\r\nYou adopt a particular style of fighting as your specialty. Choose one of the fighting Style options, detailed in Chapter 6. \r\n\r\n#### Vow of the Focused\r\nYou can substitute Strength, Constitution, or Intelligence (chosen when you take this vow) for Wisdom or Charisma for your monk class features, except for other vows and Monastic Tradition features.\r\n\r\n#### Vow of Fortitude\r\n_**Prerequisite:** 7th level_\r\nYou can use your action or bonus action to end one effect on yourself that is causing you to be blinded or deafened. \r\n\r\n#### Vow of Freedom\r\nYou ignore unenhanced difficult terrain, and when you would use your action to break free of an effect that is grappling or restraining you, you can instead use your bonus action.\r\n\r\n#### Vow of Intuition\r\nYou can no longer have disadvantage on attack rolls against creatures within 10 feet of you due to not being able to see them.\r\n\r\n#### Vow of the Limber\r\n_**Prerequisite:** 7th level_\r\nWhen you make your first unarmed strike on your turn, you can choose to spend 1 focus point. If you do so, your reach with your unarmed strikes increases by 5 feet until the end of your turn.\r\n\r\n#### Vow of the Nemesis\r\n_**Prerequisite:** 13th level_\r\nAs a bonus action, you can choose one creature within 30 feet that you can see. The creature must make a Wisdom saving throw against your focus save DC. On a successful save, the creature becomes immune to this feature for 24 hours. On a failed save, for the next minute, the creature has disadvantage on attack rolls against creatures other than you, and it must make an additional Wisdom saving throw each time it attempts to move to a space that is more than 30 feet away from you; if it succeeds on this saving throw, this feature doesn't restrict its movement for that turn. \r\n\r\nThis feature ends early if you attack another creature, if you target another hostile creature with a power or class feature, if a friendly creature damages the target, if a friendly creature targets it with a power or class feature, or if you target another creature with this feature.\r\n\r\n#### Vow of the Open Mind\r\nYou gain proficiency in a skill of your choice. Additionally, you can spend 1 focus point and 10 minutes meditating on a skill in which you are proficient. If you do so, when you make an ability check with the chosen skill, you can add your Wisdom or Charisma modifier to the check. You can only have one instance of this feature active at a time.\r\n\r\n#### Vow of Precision\r\n_**Prerequisite:** 13th level_\r\nYour critical hit range with unarmed strikes increases by 1.\r\n\r\n#### Vow of Requital\r\n_**Prerequisite:** 13th level_\r\nWhen you take the Dodge action and an attack made by a creature within 5 feet of you misses you before the start of your next turn, you can use your reaction to make one melee weapon attack with a monk weapon or unarmed strike against that creature.\r\n\r\n#### Vow of Restoration\r\nWhen you would make an unarmed strike, you can spend 1 focus point to instead touch a willing creature within your reach. Roll your Martial Arts die. The target gains hit points equal to the amount rolled + your Wisdom or Charisma modifier (your choice, minimum of +1).\r\n\r\n#### Vow of the Sentry\r\nYou gain proficiency in light and medium armor. Additionally, you can now gain the benefits of your Martial Arts and Unarmored Movement features while wearing light or medium armor as long as you are not wielding a shield.\r\n\r\n#### Vow of Serenity\r\nYour maximum focus increases by an amount equal to half your Wisdom or Charisma modifier (your choice, minimum of +1).\r\n\r\n#### Vow of Spirit\r\nYou can use your choice of Wisdom or Charisma instead of Strength or Dexterity for the attack and damage rolls of your unarmed strikes and monk weapons. You must use the same modifier for both rolls.\r\n\r\n#### Vow of the Versatile\r\nWhen you would make an unarmed strike as part of your Martial Arts bonus action attack or your Flurry of Blows, you can instead make a weapon attack with a monk weapon you are wielding, using your Martial Arts die in place of the weapon's damage.\r\n", + "classFeatureText2": null, + "archetypeFlavorText": "Orders of monastic pursuit are common in the locales scattered across the galaxy. Each order is based in a specific culture and is mutually exclusive, despite relying on the same basic techniques. Your order grants you features at 3rd, 6th, 11th, and 17th level.", + "archetypeFlavorName": "Monastic Orders", + "archetypes": null, + "imageUrls": [ + "https://starwars5ecentral.blob.core.windows.net/site-images/classes/monk_01.png", + "https://starwars5ecentral.blob.core.windows.net/site-images/classes/monk_02.png" + ], + "imageUrlsJson": "[\"https://starwars5ecentral.blob.core.windows.net/site-images/classes/monk_01.png\",\"https://starwars5ecentral.blob.core.windows.net/site-images/classes/monk_02.png\"]", + "casterRatio": 0.0, + "casterTypeEnum": 0, + "casterType": "None", + "multiClassProficiencies": [ + "Simple vibroweapons", + "techblades" + ], + "multiClassProficienciesJson": "[\"Simple vibroweapons\",\"techblades\"]", + "features": null, + "featureRowKeys": null, + "featureRowKeysJson": "", + "contentTypeEnum": 1, + "contentType": "Core", + "contentSourceEnum": 1, + "contentSource": "PHB", + "partitionKey": "Core", + "rowKey": "Monk", + "timestamp": "2023-05-30T20:15:42.4980744+00:00", + "eTag": "W/\"datetime'2023-05-30T20%3A15%3A42.4980744Z'\"" + }, + { + "name": "Operative", + "summary": "Controller who focuses on stealth and techniques", + "primaryAbility": "Dexterity", + "flavorText": "A Bothan spy takes a moment to adjust her infrared goggles. Nimbly sidestepping the laser grid in the room, she slips to the computer at the far end. Counting down the seconds in her head, she slices the mainframe. Twenty seconds. Ten seconds. A handful of soldiers bursts into the room, but she is already gone � with the data in hand. \r\n\r\nWith a wary eye on the door, a scruffy-looking Duros plays pazaak in a seedy cantina. When two city guards appear at the exit, he smiles and reaches under the table. Before they can move in, the smuggler flips the table and opens fire. The crowd scatters in panic, giving him just enough cover to escape. \r\n\r\nA gorgeous young human dances before an intoxicated senator in his parlor. She winks enticingly through her golden blonde hair as she sways closer. Leaning in for a kiss, the senator is instead surprised by the barrel of a hold-out blaster pistol shoved into his mouth. He has no time to shout before the assassin pulls the trigger. \r\n\r\nOperatives, whether good, bad, or neutral, are those who focus on a specific practice and utilize it to get the upper hand. They can come from any world or region in the galaxy, with origins from the lowliest scoundrel to the once social elite.\r\n\r\n### Evading Danger\r\nOperatives have a knack for getting out of trouble. They have an instinct for self-preservation that keeps them alive, but it's usually tempered with a need to experience the thrills that their profession has to offer, and many adventurous operatives are also saddled with a sense of honor that sometimes makes them go against their natural inclinations. No matter what their immediate concerns may be, survival is the name of the game.\r\n\r\n### Outside the Law\r\nOperatives don't often start out seeking to defy authority and break the law. Some are thrust into the profession as a means of rebellion. Others wind up on the wrong side of the law due to bad luck, poor decisions, or circumstances beyond their control. The skills they pick up along the way make them great members of any mission team.\r\n", + "creatingText": "While creating your operative character, consider how you first started on your path. Maybe you were raised on the street and fell into the criminal element as a means of survival. You could be a simple trader who decided to strike against the Sith Empire when it encroached on your business. What would you say is your greatest skill set? What is your core, the truest essence about yourself that keeps you focused? Why would society treat you as a criminal, yet your allies hold you as a loyal companion?\r\n", + "quickBuildText": "You can make an operative quickly by following these suggestions. First, make Dexterity your highest ability score, followed by Intelligence or Charisma. Second, choose the gambler background.\r\n", + "levelChangeHeadersJson": "[\"Level\",\"Proficiency Bonus\",\"Features\",\"Sneak Attack\",\"Operative Exploits\"]", + "levelChanges": { + "1": { + "Level": "1st", + "Proficiency Bonus": "+2", + "Features": "Expertise, Sneak Attack", + "Sneak Attack": "1d6", + "Operative Exploits": "�" + }, + "2": { + "Level": "2nd", + "Proficiency Bonus": "+2", + "Features": "Cunning Action, Operative Exploits", + "Sneak Attack": "1d6", + "Operative Exploits": "2" + }, + "3": { + "Level": "3rd", + "Proficiency Bonus": "+2", + "Features": "Bad Feeling, Operative Practice", + "Sneak Attack": "2d6", + "Operative Exploits": "2" + }, + "4": { + "Level": "4th", + "Proficiency Bonus": "+2", + "Features": "Ability Score Improvement", + "Sneak Attack": "2d6", + "Operative Exploits": "2" + }, + "5": { + "Level": "5th", + "Proficiency Bonus": "+3", + "Features": "Uncanny Dodge", + "Sneak Attack": "3d6", + "Operative Exploits": "2" + }, + "6": { + "Level": "6th", + "Proficiency Bonus": "+3", + "Features": "Expertise", + "Sneak Attack": "3d6", + "Operative Exploits": "2" + }, + "7": { + "Level": "7th", + "Proficiency Bonus": "+3", + "Features": "Evasion", + "Sneak Attack": "4d6", + "Operative Exploits": "3" + }, + "8": { + "Level": "8th", + "Proficiency Bonus": "+3", + "Features": "Ability Score Improvement", + "Sneak Attack": "4d6", + "Operative Exploits": "3" + }, + "9": { + "Level": "9th", + "Proficiency Bonus": "+4", + "Features": "Practice feature", + "Sneak Attack": "5d6", + "Operative Exploits": "3" + }, + "10": { + "Level": "10th", + "Proficiency Bonus": "+4", + "Features": "Ability Score Improvement", + "Sneak Attack": "5d6", + "Operative Exploits": "3" + }, + "11": { + "Level": "11th", + "Proficiency Bonus": "+4", + "Features": "Reliable Talent", + "Sneak Attack": "6d6", + "Operative Exploits": "3" + }, + "12": { + "Level": "12th", + "Proficiency Bonus": "+4", + "Features": "Ability Score Improvement", + "Sneak Attack": "6d6", + "Operative Exploits": "3" + }, + "13": { + "Level": "13th", + "Proficiency Bonus": "+5", + "Features": "Practice feature", + "Sneak Attack": "7d6", + "Operative Exploits": "4" + }, + "14": { + "Level": "14th", + "Proficiency Bonus": "+5", + "Features": "Blindsense", + "Sneak Attack": "7d6", + "Operative Exploits": "4" + }, + "15": { + "Level": "15th", + "Proficiency Bonus": "+5", + "Features": "Slippery Mind", + "Sneak Attack": "8d6", + "Operative Exploits": "4" + }, + "16": { + "Level": "16th", + "Proficiency Bonus": "+5", + "Features": "Ability Score Improvement", + "Sneak Attack": "8d6", + "Operative Exploits": "4" + }, + "17": { + "Level": "17th", + "Proficiency Bonus": "+6", + "Features": "Practice feature", + "Sneak Attack": "9d6", + "Operative Exploits": "5" + }, + "18": { + "Level": "18th", + "Proficiency Bonus": "+6", + "Features": "Elusive", + "Sneak Attack": "9d6", + "Operative Exploits": "5" + }, + "19": { + "Level": "19th", + "Proficiency Bonus": "+6", + "Features": "Ability Score Improvement", + "Sneak Attack": "10d6", + "Operative Exploits": "5" + }, + "20": { + "Level": "20th", + "Proficiency Bonus": "+6", + "Features": "Stroke of Luck", + "Sneak Attack": "10d6", + "Operative Exploits": "5" + } + }, + "levelChangesJson": "{\"1\":{\"Level\":\"1st\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Expertise, Sneak Attack\",\"Sneak Attack\":\"1d6\",\"Operative Exploits\":\"�\"},\"2\":{\"Level\":\"2nd\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Cunning Action, Operative Exploits\",\"Sneak Attack\":\"1d6\",\"Operative Exploits\":\"2\"},\"3\":{\"Level\":\"3rd\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Bad Feeling, Operative Practice\",\"Sneak Attack\":\"2d6\",\"Operative Exploits\":\"2\"},\"4\":{\"Level\":\"4th\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Ability Score Improvement\",\"Sneak Attack\":\"2d6\",\"Operative Exploits\":\"2\"},\"5\":{\"Level\":\"5th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Uncanny Dodge\",\"Sneak Attack\":\"3d6\",\"Operative Exploits\":\"2\"},\"6\":{\"Level\":\"6th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Expertise\",\"Sneak Attack\":\"3d6\",\"Operative Exploits\":\"2\"},\"7\":{\"Level\":\"7th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Evasion\",\"Sneak Attack\":\"4d6\",\"Operative Exploits\":\"3\"},\"8\":{\"Level\":\"8th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Ability Score Improvement\",\"Sneak Attack\":\"4d6\",\"Operative Exploits\":\"3\"},\"9\":{\"Level\":\"9th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Practice feature\",\"Sneak Attack\":\"5d6\",\"Operative Exploits\":\"3\"},\"10\":{\"Level\":\"10th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Ability Score Improvement\",\"Sneak Attack\":\"5d6\",\"Operative Exploits\":\"3\"},\"11\":{\"Level\":\"11th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Reliable Talent\",\"Sneak Attack\":\"6d6\",\"Operative Exploits\":\"3\"},\"12\":{\"Level\":\"12th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Ability Score Improvement\",\"Sneak Attack\":\"6d6\",\"Operative Exploits\":\"3\"},\"13\":{\"Level\":\"13th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Practice feature\",\"Sneak Attack\":\"7d6\",\"Operative Exploits\":\"4\"},\"14\":{\"Level\":\"14th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Blindsense\",\"Sneak Attack\":\"7d6\",\"Operative Exploits\":\"4\"},\"15\":{\"Level\":\"15th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Slippery Mind\",\"Sneak Attack\":\"8d6\",\"Operative Exploits\":\"4\"},\"16\":{\"Level\":\"16th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Ability Score Improvement\",\"Sneak Attack\":\"8d6\",\"Operative Exploits\":\"4\"},\"17\":{\"Level\":\"17th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Practice feature\",\"Sneak Attack\":\"9d6\",\"Operative Exploits\":\"5\"},\"18\":{\"Level\":\"18th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Elusive\",\"Sneak Attack\":\"9d6\",\"Operative Exploits\":\"5\"},\"19\":{\"Level\":\"19th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Ability Score Improvement\",\"Sneak Attack\":\"10d6\",\"Operative Exploits\":\"5\"},\"20\":{\"Level\":\"20th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Stroke of Luck\",\"Sneak Attack\":\"10d6\",\"Operative Exploits\":\"5\"}}", + "hitDiceDieTypeEnum": 8, + "hitDiceDieType": 8, + "hitPointsAtFirstLevel": "8 + your Constitution modifier", + "hitPointsAtHigherLevels": "1d8 (or 5) + your Constitution modifier per operative level after 1st", + "hitPointsAtFirstLevelNumber": 8, + "hitPointsAtHigherLevelsNumber": 5, + "armorProficiencies": [ + "Light armor" + ], + "armorProficienciesJson": "[\"Light armor\"]", + "weaponProficiencies": [ + "Simple blasters", + "simple vibroweapons", + "martial blasters that lack the auto", + "special", + "strength", + "and two-handed properties", + "martial vibroweapons with the finesse property" + ], + "weaponProficienciesJson": "[\"Simple blasters\",\"simple vibroweapons\",\"martial blasters that lack the auto\",\"special\",\"strength\",\"and two-handed properties\",\"martial vibroweapons with the finesse property\"]", + "toolProficiencies": [ + "One specialist's kit of your choice" + ], + "toolProficienciesJson": "[\"One specialist's kit of your choice\"]", + "toolProficienciesList": [ + "One specialist's kit of your choice" + ], + "toolProficienciesListJson": "[\"One specialist's kit of your choice\"]", + "savingThrows": [ + "Dexterity", + "Intelligence" + ], + "savingThrowsJson": "[\"Dexterity\",\"Intelligence\"]", + "skillChoices": "Choose any four", + "numSkillChoices": 4, + "skillChoicesList": [ + "Any" + ], + "skillChoicesListJson": "[\"Any\"]", + "equipmentLines": [ + "- *(a)* a vibroweapon with which you are proficient or *(b)* a simple blaster and a power cell", + "- *(a)* a simple blaster and two power cells or *(b)* a simple vibroweapon and a light physical shield", + "- *(a)* a burglar's pack, *(b)* a dungeoneer's pack, or *(c)* an explorer's pack", + "- A tool with which you are proficient", + "- A combat suit and a vibrodagger" + ], + "equipmentLinesJson": "[\"- *(a)* a vibroweapon with which you are proficient or *(b)* a simple blaster and a power cell\",\"- *(a)* a simple blaster and two power cells or *(b)* a simple vibroweapon and a light physical shield\",\"- *(a)* a burglar's pack, *(b)* a dungeoneer's pack, or *(c)* an explorer's pack\",\"- A tool with which you are proficient\",\"- A combat suit and a vibrodagger\"]", + "startingWealthVariant": "7d4 x 100 cr", + "classFeatureText": "\r\n### Expertise\r\n_**Operative:** 1st and 6th level_\r\nChoose two of your skill proficiencies, or one of skill proficiencies and one of your tool proficiencies, or two of your tool proficiencies. You gain expertise in those skills or tools.\r\n\r\nAt 6th level, you can choose two more of your proficiencies (in skills or tools) to gain this benefit.\r\n\r\n### Sneak Attack\r\n_**Operative:** 1st level_\r\nYou know how to strike subtly and exploit a foe's distraction. Once per turn, you can deal an extra 1d6 damage to one creature you hit with a weapon attack if you have advantage on the attack roll. This damage is the same as the weapon's damage, and the attack must use a finesse or a ranged weapon. \r\n\r\nYou don't need advantage on the attack roll if another enemy of the target is within 5 feet of it, that enemy isn't incapacitated, and you don't have disadvantage on the attack roll.\r\n\r\nThe amount of the extra damage increases as you gain levels in this class, as shown in the Sneak Attack column of the operative table.\r\n\r\n### Cunning Action\r\n_**Operative:** 2nd level_\r\nYour quick thinking and agility allow you to move and act quickly. You can take the Dash, Disengage, or Hide actions as a bonus action.\r\n\r\n### Operative Exploits\r\n_**Operative:** 2nd level_\r\nYou've adopted two exploits, as detailed at the end of the class description. You adopt an additional exploit at 7th, 13th, and 17th level.\r\n\r\n### Bad Feeling\r\n_**Operative:** 3rd level_\r\nYou have a wary eye, bordering on paranoia. When you roll for initiative, you can move up to your speed. This movement happens before the initiative order is determined. \r\n\r\nOnce you've used this feature, you can't use it again until you finish a long rest.\r\n\r\n### Operative Practice\r\n_**Operative:** 3rd, 9th, 13th, and 17th level_\r\nYou choose a practice that you emulate in the exercise of your operative abilities, which is detailed at the end of the class description. Your practice choice grants you features at 3rd level and then again at 9th, 13th, and 17th level.\r\n\r\n### Ability Score Improvement\r\n_**Operative:** 4th, 8th, 10th, 12th, 16th, and 19th level_\r\nYou can increase one ability score by 2, or you can increase two ability scores by 1. You can't increase an ability score above 20 using this feature.\r\n\r\n### Uncanny Dodge\r\n_**Operative:** 5th level_\r\nWhen an attacker that you can see deals damage to you with an attack, you can use your reaction to halve the attack's damage against you.\r\n\r\n### Evasion\r\n_**Operative:** 7th level_\r\nWhen you are subjected to an effect that allows you to make a Dexterity saving throw to take only half damage, you instead take no damage if you succeed on a saving throw, and only half damage if you fail.\r\n\r\n### Reliable Talent\r\n_**Operative:** 11th level_\r\nYou have refined your chosen skills until they approach perfection. Ability checks you make that let you add your proficiency bonus gain a minimum roll threshold, discussed in chapter 7.\r\n\r\n### Blindsense\r\n_**Operative:** 14th level_\r\nIf you are able to hear, you are aware of the location of any hidden or invisible creature within 10 feet of you.\r\n\r\n### Slippery Mind\r\n_**Operative:** 15th level_\r\nYou have acquired greater mental strength. You gain proficiency in Wisdom saving throws. \r\n\r\n### Elusive\r\n_**Operative:** 18th level_\r\nYou are so evasive that attackers rarely gain the upper hand against you. No attack roll has advantage against you while you aren't incapacitated.\r\n\r\n### Stroke of Luck\r\n_**Operative:** 20th level_\r\nYou have an uncanny knack for succeeding when you need to. Your Dexterity and Intelligence scores increase by 2. Your maximum for those scores increases by 2. Additionally, if your attack misses a target within range, you can turn the miss into a hit. Alternatively, if you fail an ability check, you can treat the d20 roll as a 20.\r\n\r\nOnce you've used this feature, you can't use it again until you finish a short or long rest.\r\n\r\n### Operative Exploits\r\nThe exploits are presented in alphabetical order. \r\n\r\n#### Commander's Exploit\r\nYou gain proficiency in medium armor.\r\n\r\n#### Explorer's Exploit\r\nYou can hold your breath twice as long as you are normally able to, and take half as much damage from fall damage.\r\n\r\n#### Fate's Exploit\r\n_**Prerequisite:** 7th level_\r\nWhen you finish a short or long rest, roll a d20 and record the number rolled. Once before your next short or long rest, you can replace any attack roll, saving throw, or ability check made by you or a creature within 5 feet of you with this roll. You must choose to do so before the roll. \r\n\r\n#### Fighter's Exploit\r\nYou adopt a particular style of fighting as your specialty. Choose one of the fighting Style options, detailed in Chapter 6. \r\n\r\n#### Freedom's Exploit\r\nYou ignore unenhanced difficult terrain, and when you would use your action to break free of an effect that is grappling or restraining you, you can instead use your bonus action.\r\n\r\n#### Guerrilla's Exploit\r\nYou only need 3 hours of sleep during a long rest to gain its benefits, instead of 6. Additionally, if your long rest would be interrupted, you only need to complete the long rest instead of restarting it to gain its benefits. Lastly, you have advantage on saving throws against exhaustion.\r\n\r\n#### Learner's Exploit\r\nYou gain proficiency in a skill and a tool, or two tools.\r\n\r\nYou can select this exploit multiple times, each time choosing a new skill and a tool, or two new tools.\r\n\r\n#### Mentor's Exploit\r\n_**Prerequisite:** 13th level_\r\nOnce per turn, whenever both you and a friendly creature within 60 feet that can see and hear you both have to make a saving throw to resist the same effect, you can choose to have disadvantage on the save. If you do so, the friendly creature gains advantage on the save. You can use this feature before or after you both make the saving throw, but you must do so before the GM says whether the save succeeds or fails.\r\n\r\n#### Skill's Exploit\r\nYou learn an exploit that enhances your ability to apply your knowledge to combat situations. You can take this exploit multiple times.\r\n\r\nWhen you take the Attack action, you can use one of your skill exploits granted by this feature. You can use these features a combined two times. You gain an additional use at 5th, 9th, 13th, and 17th level. You regain any expended uses when you finish a long rest.\r\n\r\nChoose from the following. You must be proficient in the skill in order to take that skill's exploit. \r\n\r\n***Aim (Stealth).*** You attempt to line up a strike against a creature you can see that you are hidden from. Make a Dexterity (Stealth) check contested by the target's Wisdom (Perception) check. If your check succeeds, you gain a +10 bonus to the first attack roll you make against the target before the end of your next turn. If your check fails, you are no longer hidden from the target.\r\n\r\n***Angle (Perception).*** You attempt to predict the behavior of a humanoid you can see within 30 feet. Make a Wisdom (Perception) check contested by the target's Dexterity (Sleight of Hand) check. If your check succeeds, the first attack roll the target makes before the start of your next turn has disadvantage, and the first saving throw the creature makes before the start of your next turn has disadvantage. If your check fails, you can't use this feature on this target again for 1 hour.\r\n\r\n***Battle Cry (Intimidation).*** You attempt to demoralize one humanoid you can see within 30 feet of you that can see and hear you. Make a Charisma (Intimidation) check contested by the target's Wisdom (Insight) check. If your check succeeds, the target is frightened until the end of your next turn. If the target was already frightened of you, it must immediately drop whatever it is holding. On its next turn, if it is still frightened of you, it must take the Dash action and move away from you by the safest available route on its turn, unless there is nowhere to move. If your check fails, you can't use this feature on this target again for 1 hour.\r\n\r\n***Charm (Persuasion).*** You attempt to convince one humanoid you can see within 30 feet that can hear and understand you. Make a Charisma (Persuasion) check contested by the target's Wisdom (Insight) check. If you have dealt damage to the creature in the last hour, it has advantage on the check. If your check succeeds, the target is charmed by you until the start of your next turn, and it has disadvantage on the first attack roll it makes against a creature before the end of its next turn. If your check fails, you can't use this feature on this target again for 1 hour.\r\n\r\n***Confuse Beast (Animal Handling).*** You attempt to confuse one beast on the battlefield. Make a Wisdom (Animal Handling) check contested by the target's Wisdom (Insight) check. If your check succeeds, the beast cannot take actions or reactions until the end of your next turn. If your check fails, you can't use this feature on this target again for 1 hour.\r\n\r\n***Distract (Performance).*** You attempt to distract one beast or humanoid you can see within 30 feet of you that can see and hear you. Make a Charisma (Performance) check contested by the target's Wisdom (Insight) check. If your check succeeds, the next attack roll made against the target before the start of its next turn has advantage. If your check fails, you can't use this feature on this target again for 1 hour.\r\n\r\n***Emulate Predator (Nature).*** You attempt to emulate the sounds of a natural predator of a beast or plant you can see within 30 feet. Make an Intelligence (Nature) check contested by the target's Wisdom (Insight) check. If your check succeeds, the target must take the Dash action and move away from you by the safest available route on its turn, unless there is nowhere to move. If your check fails, you can't use this feature on this target again for 1 hour.\r\n\r\n***Feint (Deception).*** You attempt to divert the attention of a target you can see within 30 feet. Make a Charisma (Deception) check contested by the target's Wisdom (Insight) check. If your check succeeds, the first attack roll made against the target before the start of \r\n\r\nyour next turn by someone other than you has advantage, and the target has disadvantage on the first saving throw they make against an effect caused by a creature other than you before the start of your next turn. If your check fails, the target can't be deceived by you in this way for 1 hour.\r\n\r\n***Hacktivate (Technology).*** You attempt to determine the weaknesses in a droid you can see within 30 feet. Make an Intelligence (Technology) check contested by the target's Intelligence (Technology) check. If your check succeeds, you have advantage on the next attack roll you make against the target before the end of your turn, and if you hit, you deal additional damage equal to your Intelligence modifier. If your check fails, you can't use this feature on this target again for 1 hour.\r\n\r\n***Instruct (Investigation).*** You attempt to find a weakness in your target. Make an Intelligence (Investigation) check contested by the target's Charisma (Deception) check. If your check succeeds, if a friendly creature makes an attack roll against the target and they can see and hear you, you can use your reaction to grant them advantage on the roll. If you do so, and they hit, they deal additional damage equal to your bonus to Investigation checks. This damage is the same type as the attack's damage. If your check fails, you can't use this feature on this target again for 1 hour.\r\n\r\n***Intuit (Insight).*** You attempt to determine the motivations of one humanoid you can see within 30 feet. Make a Wisdom (Insight) check contested by the target's Charisma (Deception) check. If your check succeeds, the target can't have advantage on ability checks, attack rolls, or saving throws against you until the end of your next turn. If your check fails, the target instead can't have disadvantage on ability checks, attack rolls, or saving throws against you until the end of your next turn.\r\n\r\n***Pocket Sand (Sleight of Hand).*** You attempt to blind one beast or humanoid you can see within 15 feet of you. Make a Dexterity (Sleight of Hand) check contested by the target's Wisdom (Perception) check. If your check succeeds, the target is blinded until the end of your turn. If your check fails, you can't use this feature on this target again for 1 hour.\r\n\r\n***Precision Strike (Medicine).*** You attempt to strike a pressure point in one humanoid within your reach. Make a Wisdom (Medicine) check contested by the target's Strength (Athletics) or Dexterity (Acrobatics) check (the target chooses the ability to use). If your check succeeds, they are incapacitated until the end of their next turn. If your check fails, you can't use this feature on this target again for 1 hour.\r\n\r\n***Snare (Survival).*** You attempt to cause a creature within 30 feet of you to stumble. Make a Wisdom (Survival) check contested by the target's Wisdom (Perception) check. If your check succeeds, and the target moves towards you before the start of your next turn, it gains 1 slowed level, and you can use your reaction to cause it to fall prone. If your check fails, you can't use this feature on this target again for 1 hour.\r\n\r\n***Spin (Piloting).*** You attempt to confound a piloted construct you can see within 30 feet. Make an \r\n\r\nIntelligence (Piloting) check contested by the target's Intelligence (Piloting) check. If your check succeeds, the target has disadvantage on attack rolls against you, and you have advantage on Dexterity saving throws against the target, until the start of your next turn. If your check fails, the target instead has advantage on attack rolls against you, and you have disadvantage on Dexterity saving throws against the target, until the start of your next turn.\r\n\r\n***Study (Lore).*** You attempt to anticipate your target's action. Make an Intelligence (Lore) check contested by the target's Charisma (Deception) check. If your check succeeds, you have advantage on the first ability check, attack roll or saving throw you make against that creature before the end of your next turn. Alternatively, before the end of your next turn, you can use your reaction to grant disadvantage on the first ability check, attack roll, or saving throw the target makes against you. If your check fails, you instead have disadvantage on the first ability check, attack roll or saving throw you make against that creature before the end of your next turn.\r\n\r\n***Tumble (Acrobatics).*** You attempt to make a quick tumble, immediately moving 10 feet. If you begin or end this movement within a creature's reach, make a Dexterity (Acrobatics) check contested by it's Strength (Athletics) or Dexterity (Acrobatics) check (the target chooses the ability to use). If your check succeeds, this movement does not provoke opportunity attacks from it, and you have advantage on the first attack roll you make against it before the end of your turn. If your check fails, you immediately fall prone.\r\n\r\n***Wrestle (Athletics).*** You attempt to grab and pin a creature within 5 feet of you with at least one free hand. The target must be no more than one size larger than you. Make a Strength (Athletics) check contested by the target's Strength (Athletics) or Dexterity (Acrobatics) check (the target chooses the ability to use). If your check succeeds, the target is both grappled and restrained by you. If the target stops being grappled, it also stops being restrained. If your check fails, you can't use this feature on this target again for 1 hour.\r\n\r\n#### Technologist's Exploit\r\nYou learn and can cast one 1st-level tech power once per long rest. Your techcasting ability is Intelligence. You require use of a wristpad for this power.\r\n\r\nYou can select this exploit multiple times. Each time you do so, you must choose a different power.\r\n\r\n#### Weaponmaster's Exploit\r\nYou gain proficiency in three blasters or vibroweapons that lack the heavy and strength properties.\r\n\r\nYou can select this exploit multiple times. Each time you do so, you must choose different weapons.\r\n", + "classFeatureText2": null, + "archetypeFlavorText": "Operatives share, including their emphasis on perfecting their skills, their precise and deadly approach to combat, and their increasingly quick reflexes, though their practices differ. Your practice grants you features at 3rd, 9th, 13th, and 17th level.", + "archetypeFlavorName": "Operative Practices", + "archetypes": null, + "imageUrls": [ + "https://starwars5ecentral.blob.core.windows.net/site-images/classes/operative_01.png" + ], + "imageUrlsJson": "[\"https://starwars5ecentral.blob.core.windows.net/site-images/classes/operative_01.png\"]", + "casterRatio": 0.0, + "casterTypeEnum": 0, + "casterType": "None", + "multiClassProficiencies": [ + "Light armor" + ], + "multiClassProficienciesJson": "[\"Light armor\"]", + "features": null, + "featureRowKeys": null, + "featureRowKeysJson": "", + "contentTypeEnum": 1, + "contentType": "Core", + "contentSourceEnum": 1, + "contentSource": "PHB", + "partitionKey": "Core", + "rowKey": "Operative", + "timestamp": "2023-05-30T20:15:42.4980744+00:00", + "eTag": "W/\"datetime'2023-05-30T20%3A15%3A42.4980744Z'\"" + }, + { + "name": "Scholar", + "summary": "Academic who uses wits and allies to control the battlefield", + "primaryAbility": "Intelligence", + "flavorText": "An overwhelming horde of tusken raiders bears down on a chiss and her fellow adventurers. She gives the order and her allies unleash a single coordinated attack cutting deep into their lines. Under her command the enemy is quickly routed against all odds, all according to plan.\r\n\r\nDeep within the once thought abandoned ruins, a nautolan tends to his companions wounds as they rest. Countless long nights of study and training have conditioned him to keep going even when all others have exhausted themselves. He will see them through this.\r\n\r\nA twi'lek in fine vestments addresses a gathering crowd. What was the making of an angry mob begins to disperse, his mere presence putting them at ease, giving his companions time to make their escape. \r\n\r\nScholars are master of the mundane arts, using methodical practices to turn the tables to their advantage. From years of study and testing, scholars take in the situation around them and quickly formulate the means to achieve whatever they have minds set to. Whatever pursuit they follow, a scholar will have a plan for anything that comes their way.\r\n\r\n### The Pursuit of Knowledge\r\nA true scholar is never satisfied. They are always seeking out a new answer to a new question. This often goes hand-in-hand with seeking a life of adventure, to explore new, hidden areas, or accompany those that do. The life of a scholar often times begins in the mundane, as a teacher or sage. Sometimes they serve as doctors, diplomats, or as officers in the military.\r\n\r\n### To Learn, To Know\r\nFor scholars, mundane life is often too slow. When life becomes stagnant or when an answer cannot be found, the call to adventure rings louder. Scholars will often go to ancient, forgotten, and often dangerous places to find something to quench their thirst for knowledge.\r\n", + "creatingText": "As you create a scholar, it's important to think of where you gained your knowledge. Did you serve as an apprentice under a master? Did you attend college or other formal education? Perhaps you gained it on your own, searching out and pouring over dusty tomes found in forgotten places. Where did your thirst for knowledge come from? Insatiable curiosity? Always wanting to know the right answer? Or do you have something to prove? Think about what field you wish to pursue and think of what is driving you in that direction.\r\n", + "quickBuildText": "You can make a scholar quickly by following these suggestions. First, make Intelligence your highest ability score. Your next-highest score should be Dexterity. Second, choose the noble background.\r\n", + "levelChangeHeadersJson": "[\"Level\",\"Proficiency Bonus\",\"Features\",\"Maneuvers Known\",\"Superiority Dice Quantity\",\"Superiority Dice Size\",\"Discoveries\"]", + "levelChanges": { + "1": { + "Level": "1st", + "Proficiency Bonus": "+2", + "Features": "Academic Superiority, Critical Analysis", + "Maneuvers Known": "1", + "Superiority Dice Quantity": "3", + "Superiority Dice Size": "d4", + "Discoveries": "�" + }, + "2": { + "Level": "2nd", + "Proficiency Bonus": "+2", + "Features": "Discovery, Sage Advice (long rest)", + "Maneuvers Known": "2", + "Superiority Dice Quantity": "3", + "Superiority Dice Size": "d4", + "Discoveries": "2" + }, + "3": { + "Level": "3rd", + "Proficiency Bonus": "+2", + "Features": "Expertise, Academic Pursuit", + "Maneuvers Known": "4", + "Superiority Dice Quantity": "4", + "Superiority Dice Size": "d4", + "Discoveries": "4" + }, + "4": { + "Level": "4th", + "Proficiency Bonus": "+2", + "Features": "Ability Score Improvement", + "Maneuvers Known": "5", + "Superiority Dice Quantity": "4", + "Superiority Dice Size": "d4", + "Discoveries": "4" + }, + "5": { + "Level": "5th", + "Proficiency Bonus": "+3", + "Features": "Multitasker", + "Maneuvers Known": "6", + "Superiority Dice Quantity": "5", + "Superiority Dice Size": "d6", + "Discoveries": "5" + }, + "6": { + "Level": "6th", + "Proficiency Bonus": "+3", + "Features": "Pursuit feature", + "Maneuvers Known": "7", + "Superiority Dice Quantity": "5", + "Superiority Dice Size": "d6", + "Discoveries": "5" + }, + "7": { + "Level": "7th", + "Proficiency Bonus": "+3", + "Features": "�", + "Maneuvers Known": "9", + "Superiority Dice Quantity": "6", + "Superiority Dice Size": "d6", + "Discoveries": "5" + }, + "8": { + "Level": "8th", + "Proficiency Bonus": "+3", + "Features": "Ability Score Improvement", + "Maneuvers Known": "10", + "Superiority Dice Quantity": "6", + "Superiority Dice Size": "d6", + "Discoveries": "5" + }, + "9": { + "Level": "9th", + "Proficiency Bonus": "+4", + "Features": "Pursuit feature", + "Maneuvers Known": "11", + "Superiority Dice Quantity": "7", + "Superiority Dice Size": "d8", + "Discoveries": "6" + }, + "10": { + "Level": "10th", + "Proficiency Bonus": "+4", + "Features": "Expertise", + "Maneuvers Known": "12", + "Superiority Dice Quantity": "7", + "Superiority Dice Size": "d8", + "Discoveries": "6" + }, + "11": { + "Level": "11th", + "Proficiency Bonus": "+4", + "Features": "�", + "Maneuvers Known": "14", + "Superiority Dice Quantity": "8", + "Superiority Dice Size": "d8", + "Discoveries": "7" + }, + "12": { + "Level": "12th", + "Proficiency Bonus": "+4", + "Features": "Ability Score Improvement", + "Maneuvers Known": "15", + "Superiority Dice Quantity": "8", + "Superiority Dice Size": "d8", + "Discoveries": "7" + }, + "13": { + "Level": "13th", + "Proficiency Bonus": "+5", + "Features": "Sage Advice (short rest)", + "Maneuvers Known": "16", + "Superiority Dice Quantity": "9", + "Superiority Dice Size": "d10", + "Discoveries": "8" + }, + "14": { + "Level": "14th", + "Proficiency Bonus": "+5", + "Features": "Calm and Collected", + "Maneuvers Known": "17", + "Superiority Dice Quantity": "9", + "Superiority Dice Size": "d10", + "Discoveries": "8" + }, + "15": { + "Level": "15th", + "Proficiency Bonus": "+5", + "Features": "�", + "Maneuvers Known": "19", + "Superiority Dice Quantity": "10", + "Superiority Dice Size": "d10", + "Discoveries": "8" + }, + "16": { + "Level": "16th", + "Proficiency Bonus": "+5", + "Features": "Ability Score Improvement", + "Maneuvers Known": "20", + "Superiority Dice Quantity": "10", + "Superiority Dice Size": "d10", + "Discoveries": "8" + }, + "17": { + "Level": "17th", + "Proficiency Bonus": "+6", + "Features": "Pursuit feature", + "Maneuvers Known": "21", + "Superiority Dice Quantity": "11", + "Superiority Dice Size": "d12", + "Discoveries": "9" + }, + "18": { + "Level": "18th", + "Proficiency Bonus": "+6", + "Features": "Adaptable Intellectual", + "Maneuvers Known": "22", + "Superiority Dice Quantity": "11", + "Superiority Dice Size": "d12", + "Discoveries": "9" + }, + "19": { + "Level": "19th", + "Proficiency Bonus": "+6", + "Features": "Ability Score Improvement", + "Maneuvers Known": "23", + "Superiority Dice Quantity": "12", + "Superiority Dice Size": "d12", + "Discoveries": "9" + }, + "20": { + "Level": "20th", + "Proficiency Bonus": "+6", + "Features": "Knowledge Unbound", + "Maneuvers Known": "24", + "Superiority Dice Quantity": "12", + "Superiority Dice Size": "d12", + "Discoveries": "9" + } + }, + "levelChangesJson": "{\"1\":{\"Level\":\"1st\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Academic Superiority, Critical Analysis\",\"Maneuvers Known\":\"1\",\"Superiority Dice Quantity\":\"3\",\"Superiority Dice Size\":\"d4\",\"Discoveries\":\"�\"},\"2\":{\"Level\":\"2nd\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Discovery, Sage Advice (long rest)\",\"Maneuvers Known\":\"2\",\"Superiority Dice Quantity\":\"3\",\"Superiority Dice Size\":\"d4\",\"Discoveries\":\"2\"},\"3\":{\"Level\":\"3rd\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Expertise, Academic Pursuit\",\"Maneuvers Known\":\"4\",\"Superiority Dice Quantity\":\"4\",\"Superiority Dice Size\":\"d4\",\"Discoveries\":\"4\"},\"4\":{\"Level\":\"4th\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Ability Score Improvement\",\"Maneuvers Known\":\"5\",\"Superiority Dice Quantity\":\"4\",\"Superiority Dice Size\":\"d4\",\"Discoveries\":\"4\"},\"5\":{\"Level\":\"5th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Multitasker\",\"Maneuvers Known\":\"6\",\"Superiority Dice Quantity\":\"5\",\"Superiority Dice Size\":\"d6\",\"Discoveries\":\"5\"},\"6\":{\"Level\":\"6th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Pursuit feature\",\"Maneuvers Known\":\"7\",\"Superiority Dice Quantity\":\"5\",\"Superiority Dice Size\":\"d6\",\"Discoveries\":\"5\"},\"7\":{\"Level\":\"7th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"�\",\"Maneuvers Known\":\"9\",\"Superiority Dice Quantity\":\"6\",\"Superiority Dice Size\":\"d6\",\"Discoveries\":\"5\"},\"8\":{\"Level\":\"8th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Ability Score Improvement\",\"Maneuvers Known\":\"10\",\"Superiority Dice Quantity\":\"6\",\"Superiority Dice Size\":\"d6\",\"Discoveries\":\"5\"},\"9\":{\"Level\":\"9th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Pursuit feature\",\"Maneuvers Known\":\"11\",\"Superiority Dice Quantity\":\"7\",\"Superiority Dice Size\":\"d8\",\"Discoveries\":\"6\"},\"10\":{\"Level\":\"10th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Expertise\",\"Maneuvers Known\":\"12\",\"Superiority Dice Quantity\":\"7\",\"Superiority Dice Size\":\"d8\",\"Discoveries\":\"6\"},\"11\":{\"Level\":\"11th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"�\",\"Maneuvers Known\":\"14\",\"Superiority Dice Quantity\":\"8\",\"Superiority Dice Size\":\"d8\",\"Discoveries\":\"7\"},\"12\":{\"Level\":\"12th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Ability Score Improvement\",\"Maneuvers Known\":\"15\",\"Superiority Dice Quantity\":\"8\",\"Superiority Dice Size\":\"d8\",\"Discoveries\":\"7\"},\"13\":{\"Level\":\"13th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Sage Advice (short rest)\",\"Maneuvers Known\":\"16\",\"Superiority Dice Quantity\":\"9\",\"Superiority Dice Size\":\"d10\",\"Discoveries\":\"8\"},\"14\":{\"Level\":\"14th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Calm and Collected\",\"Maneuvers Known\":\"17\",\"Superiority Dice Quantity\":\"9\",\"Superiority Dice Size\":\"d10\",\"Discoveries\":\"8\"},\"15\":{\"Level\":\"15th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"�\",\"Maneuvers Known\":\"19\",\"Superiority Dice Quantity\":\"10\",\"Superiority Dice Size\":\"d10\",\"Discoveries\":\"8\"},\"16\":{\"Level\":\"16th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Ability Score Improvement\",\"Maneuvers Known\":\"20\",\"Superiority Dice Quantity\":\"10\",\"Superiority Dice Size\":\"d10\",\"Discoveries\":\"8\"},\"17\":{\"Level\":\"17th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Pursuit feature\",\"Maneuvers Known\":\"21\",\"Superiority Dice Quantity\":\"11\",\"Superiority Dice Size\":\"d12\",\"Discoveries\":\"9\"},\"18\":{\"Level\":\"18th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Adaptable Intellectual\",\"Maneuvers Known\":\"22\",\"Superiority Dice Quantity\":\"11\",\"Superiority Dice Size\":\"d12\",\"Discoveries\":\"9\"},\"19\":{\"Level\":\"19th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Ability Score Improvement\",\"Maneuvers Known\":\"23\",\"Superiority Dice Quantity\":\"12\",\"Superiority Dice Size\":\"d12\",\"Discoveries\":\"9\"},\"20\":{\"Level\":\"20th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Knowledge Unbound\",\"Maneuvers Known\":\"24\",\"Superiority Dice Quantity\":\"12\",\"Superiority Dice Size\":\"d12\",\"Discoveries\":\"9\"}}", + "hitDiceDieTypeEnum": 8, + "hitDiceDieType": 8, + "hitPointsAtFirstLevel": "8 + your Constitution modifier", + "hitPointsAtHigherLevels": "1d8 (or 5) + your Constitution modifier per scholar level after 1st", + "hitPointsAtFirstLevelNumber": 8, + "hitPointsAtHigherLevelsNumber": 5, + "armorProficiencies": [ + "Light armor" + ], + "armorProficienciesJson": "[\"Light armor\"]", + "weaponProficiencies": [ + "Simple blasters", + "simple vibroweapons", + "martial vibroweapons with the finesse property" + ], + "weaponProficienciesJson": "[\"Simple blasters\",\"simple vibroweapons\",\"martial vibroweapons with the finesse property\"]", + "toolProficiencies": [ + "Any one" + ], + "toolProficienciesJson": "[\"Any one\"]", + "toolProficienciesList": [ + "Any one" + ], + "toolProficienciesListJson": "[\"Any one\"]", + "savingThrows": [ + "Intelligence", + "Wisdom" + ], + "savingThrowsJson": "[\"Intelligence\",\"Wisdom\"]", + "skillChoices": "Choose three from Deception, Insight, Intimidation, Investigation, Lore, Medicine, Nature, Persuasion, and Survival", + "numSkillChoices": 3, + "skillChoicesList": [ + "Deception", + "Insight", + "Intimidation", + "Investigation", + "Lore", + "Medicine", + "Nature", + "Persuasion", + "Survival" + ], + "skillChoicesListJson": "[\"Deception\",\"Insight\",\"Intimidation\",\"Investigation\",\"Lore\",\"Medicine\",\"Nature\",\"Persuasion\",\"Survival\"]", + "equipmentLines": [ + "- *(a)* a simple vibroweapon or *(b)* a simple blaster and two power cells", + "- *(a)* a entertainer's pack, *(b)* an explorer's pack, or *(c)* a scholar's pack", + "- A tool with which you are proficient", + "- A combat suit" + ], + "equipmentLinesJson": "[\"- *(a)* a simple vibroweapon or *(b)* a simple blaster and two power cells\",\"- *(a)* a entertainer's pack, *(b)* an explorer's pack, or *(c)* a scholar's pack\",\"- A tool with which you are proficient\",\"- A combat suit\"]", + "startingWealthVariant": "6d4 x 100 cr", + "classFeatureText": "\r\n### Academic Superiority\r\n_**Scholar:** 1st level_\r\nYou learn maneuvers that are fueled by special dice called superiority dice. See chapter 13 for the maneuvers list.\r\n\r\n#### Maneuvers Known\r\nYou learn one maneuver of your choice, and you earn more at higher levels, as shown in the Maneuvers Known column of the scholar table. Many maneuvers enhance an attack in some way. You can use only one maneuver per attack, and you may only use each maneuver once per turn.\r\n\r\nEach time you learn new maneuvers, you can also replace one maneuver you know with a different one.\r\n\r\n#### Superiority Dice\r\nYou have three superiority dice, which are d4s, and you earn more at higher levels, as shown in the Superiority Dice Quantity column of the scholar table. This die changes as you gain scholar levels, as shown in the Superiority Dice Size column of the scholar table. A superiority die is expended when you use it. \r\n\r\nYou regain all of your expended superiority dice when you finish a short or long rest.\r\n\r\n#### Maneuver Ability\r\nYour maneuver ability varies based on the type of the maneuver you use. You use Strength, Dexterity, or Constitution for physical maneuvers (your choice), Intelligence, Wisdom, or Charisma for mental maneuvers (your choice), and an ability of your choice for general maneuvers. You use this ability whenever a maneuver refers to your maneuver ability. Additionally, you use this ability modifier when setting the saving throw DC for a maneuver you use.\r\n\r\n___\r\n\r\n**Maneuver save DC** = 8 + your proficiency bonus + your maneuver ability modifier\r\n\r\n___\r\n\r\n### Critical Analysis\r\n_**Scholar:** 1st level_\r\nYou are able to analyze a creature, develop a plan on how to best overcome any potential obstacle, and execute that plan with ruthless efficiency. As a bonus action on your turn, you can analyze a creature you can see within 60 feet of you. For the next minute, or until you analyze another target, you gain the following benefits:\r\n- When you analyze a hostile creature, your attack and damage rolls made with weapons with the finesse property or blaster weapons against that target may use your Critical Analysis ability modifier, which is Intelligence, instead of Strength or Dexterity. You must use the same modifier for both rolls.\r\n- When you analyze a friendly creature, the target can end your Critical Analysis on them (no action required) to add your Critical Analysis ability modifier, which is Intelligence, to one attack roll, ability check, or saving throw. Once a friendly creature has benefited from this ability, they can not do so again until they complete a short or long rest.\r\n\r\n### Discovery\r\n_**Scholar:** 2nd level_\r\nAs you adventure, your studies have helped you discover new practices you can apply to your skills. You master two discoveries of your choice. Your discovery options are detailed at the end of the class description. When you gain certain scholar levels, you gain additional discoveries of your choice, as shown in the Discoveries column of the scholar table.\r\n\r\nAdditionally, when you gain a level in this class, you can choose one of the discoveries you know and replace it with another discovery that you could learn at that level.\r\n\r\n### Sage Advice\r\n_**Scholar:** 2nd and 13th level_\r\nYou can spend 1 minute spreading your knowledge and experience, advising those around you. When you do so, choose a skill or tool you are proficient with and a number of friendly creatures up to your Intelligence modifier within 30 feet of you who can hear you and who can understand you. Once within the next hour, the next time each creature would make an ability check with the chosen skill or tool, they may add their proficiency bonus to the roll if they are not already proficient. A creature may only benefit from this feature once. If a creature is targeted by this feature again before using it, they can choose to retain the first benefit or replace it with the new skill or tool instead.\r\n\r\nOnce you've used this feature, you can't use it again until you finish a long rest. Starting at 13th level, you regain the ability to use it after you complete a short or long rest.\r\n\r\n### Expertise\r\n_**Scholar:** 3rd and 10th level_\r\nChoose two of your skill proficiencies, or one of skill proficiencies and one of your tool proficiencies, or two of your tool proficiencies. You gain expertise in those skills or tools.\r\n\r\nAt 10th level, you can choose another two proficiencies (in skills or tools) to gain this benefit.\r\n\r\n### Academic Pursuit\r\n_**Scholar:** 3rd, 6th, 9th, and 17th level_\r\nYou dedicate your studies towards a pursuit, which is detailed at the end of the class description. \r\n\r\n### Ability Score Improvement\r\n_**Scholar:** 4th, 8th, 12th, 16th, and 19th level_\r\nYou can increase one ability score by 2, or you can increase two ability scores by 1. You can't increase an ability score above 20 using this feature.\r\n\r\n### Multitasker\r\n_**Scholar:** 5th level_\r\nYou can take a second reaction each round. \r\n\r\nAdditionally, when a friendly creature you can see that can hear you is forced to make a saving throw, you can use your reaction to target them with your Critical Analysis feature.\r\n\r\n### Calm and Collected\r\n_**Scholar:** 14th and 17th level_\r\nWhen you make a saving throw caused by an effect you can see, you may gain a bonus to the saving throw equal to your Intelligence modifier. \r\n\r\nYou can use this feature five times. You gain an additional use at 17th level. You regain all expended uses when you complete a long rest.\r\n\r\n### Adaptable Intellectual\r\n_**Scholar:** 18th level_\r\nYou are able to effectively prepare for any mission on hand. At the end of a long rest, you may choose one of the discoveries you know and replace it with another discovery that you could learn at that level.\r\n\r\n### Knowledge Unbound\r\n_**Scholar:** 20th level_\r\nYou are the pinnacle of your pursuit. Your Intelligence score increases by 4. Your maximum for that score increases by 4. Additionally, you can use any maneuver you know without expending a superiority die, rolling a d4 instead.\r\n\r\n### Discoveries\r\nThe discoveries are presented in alphabetical order. \r\n\r\n#### Academic Memory\r\nYou can recall anything you have read in the past month that you understand. This includes but is not limited to books, maps, signs, and lists.\r\n\r\n#### Adaptive\r\n_**Prerequisite:** 15th level_\r\nWhen the target of your Critical Analysis feature is reduced to 0 hit points, you can use your reaction to change the target of your analysis to another creature within range.\r\n\r\n#### Ambassador\r\nYou learn three additional languages of your choice.\r\n\r\nYou may choose this discovery multiple times.\r\n\r\n#### Clever Applications\r\nYou gain proficiency with improvised weapons, and they gain the finesse property for you. Additionally, when you make an attack with an improvised weapon, it deals 1d6 damage.\r\n\r\nYou can use your Sage Advice feature to give friendly creatures improvised weapon proficiency if they don't already have it, following the same rules of that feature as if it were a skill or tool. The friendly creatures retain this proficiency for the entire duration instead.\r\n\r\n#### Expert's Advice\r\nWhen you use your Sage Advice feature, the first time each targeted creature makes the chosen skill check, they gain an additional bonus to the roll equal to half your Critical Analysis ability modifier.\r\n\r\n#### Hardened Mind\r\n_**Prerequisite:** 9th level_\r\nYou have advantage on saving throws against illusions and on Intelligence checks to discern them from reality.\r\n\r\nYou also gain resistance to psychic damage.\r\n\r\n#### Lifelong Learning\r\nYou gain proficiency in a skill and a tool, or two tools.\r\n\r\nYou can select this discovery multiple times, each time choosing a new skill and a tool, or two new tools.\r\n\r\n#### Lingering Advice\r\n_**Prerequisite:** 5th level_\r\nWhen you use your Sage Advice feature, the targeted creatures retain the benefit from your instruction for the full duration.\r\n\r\n#### Malleable Maneuvering\r\nYou learn two additional maneuvers. When you complete a short rest, you can replace one of these maneuvers with another one. When you complete a long rest, you can replace both of these maneuvers with other ones.\r\n\r\n#### Master's Advice\r\n_**Prerequisite:** 11th level, Expert's Advice_\r\nWhen you use your Sage Advice feature, the first time each targeted creature makes the chosen skill check, they gain an additional bonus to the roll equal to your Critical Analysis ability modifier.\r\n\r\n#### Mental Prowess\r\nWhen you make a Strength (Athletics) or Dexterity (Acrobatics) check to grapple a creature or break out of a grapple, net, and other restraining equipment, you can use your Critical Analysis ability modifier instead of Strength or Dexterity. \r\n\r\n#### Moderately Armored\r\n_**Prerequisite:** 5th level_\r\nYou gain proficiency in medium armor.\r\n\r\n#### Perfect Maneuver\r\nYour superiority die rolls gain a minimum roll threshold, discussed in chapter 7.\r\n\r\n#### Quick Analysis\r\n_**Prerequisite:** 9th level_\r\nWhen you roll initiative and aren't surprised, you can use your reaction to use your Critical Analysis feature.\r\n\r\n#### Rancor's Discipline\r\nYou can substitute Wisdom or Charisma (chosen when you study this discipline) for Intelligence for your scholar class features, except for other discoveries and Academic Pursuit features.\r\n\r\n#### Reliable Sources\r\n_**Prerequisite:** 9th level_\r\nIntelligence (Lore) or Intelligence (Nature) skill check that lets you add your proficiency bonus gain a minimum roll threshold, discussed in chapter 7.\r\n\r\n#### Resolute\r\nWhen you make a saving throw to resist charm and fear effects, you may add your Intelligence modifier to the roll.\r\n\r\n#### Running on Fumes\r\nYou only need 3 hours of sleep during a long rest to gain its benefits, instead of 6. Additionally, if your long rest would be interrupted, you only need to complete the long rest instead of restarting it to gain its benefits. Lastly, you have advantage on saving throws against exhaustion.\r\n\r\n#### Survival Expert\r\nWhen you make a Survival skill check, you may use your Critical Analysis ability modifier instead of your Wisdom modifier.\r\n\r\nAdditionally, you have advantage on saving throws against poison.\r\n\r\n#### Targeted Analysis\r\n_**Prerequisite:** 5th level_\r\nYour attack rolls against the target of your Critical Analysis feature cannot suffer from disadvantage.\r\n\r\n#### Tech Amateur\r\nYou learn and can cast one 1st-level tech power once per long rest. Your techcasting ability is Intelligence. You require use of a wristpad for this power.\r\n\r\nYou can select this discovery multiple times. Each time you do so, you must choose a different power.\r\n\r\n#### Universal Language\r\nYou can communicate simple ideas with any creature with an Intelligence score of 6 or higher through basic expressions and gestures.\r\n\r\n#### Versatile Maneuvers\r\nChoose two maneuvers you know. The chosen maneuvers count as general maneuvers for you. You can choose another maneuver at 5th, 9th, 13th, and 17th level. Whenever you gain a level in this class, you can replace one of these maneuvers with another maneuver you know.\r\n", + "classFeatureText2": null, + "archetypeFlavorText": "Your pursuit is a representation of which fields you have studied or how you practically apply your knowledge. Your pursuit grants you features at 3rd, 6th, 9th, and 17th level.", + "archetypeFlavorName": "Academic Pursuits", + "archetypes": null, + "imageUrls": [ + "https://starwars5ecentral.blob.core.windows.net/site-images/classes/scholar_01.png", + "https://starwars5ecentral.blob.core.windows.net/site-images/classes/scholar_02.png" + ], + "imageUrlsJson": "[\"https://starwars5ecentral.blob.core.windows.net/site-images/classes/scholar_01.png\",\"https://starwars5ecentral.blob.core.windows.net/site-images/classes/scholar_02.png\"]", + "casterRatio": 0.0, + "casterTypeEnum": 0, + "casterType": "None", + "multiClassProficiencies": [ + "Light armor" + ], + "multiClassProficienciesJson": "[\"Light armor\"]", + "features": null, + "featureRowKeys": null, + "featureRowKeysJson": "", + "contentTypeEnum": 1, + "contentType": "Core", + "contentSourceEnum": 1, + "contentSource": "PHB", + "partitionKey": "Core", + "rowKey": "Scholar", + "timestamp": "2023-05-30T20:15:42.4990758+00:00", + "eTag": "W/\"datetime'2023-05-30T20%3A15%3A42.4990758Z'\"" + }, + { + "name": "Scout", + "summary": "Versatile combatant who blends tech powers with weapons", + "primaryAbility": "Dexterity", + "flavorText": "Rough and grizzled looking, a human stalks alone through the shadows of trees, hunting the quarry he knows is planning a raid on a nearby settlement. Clutching a techblade in each hand, he becomes a whirlwind of steel, cutting down one enemy after another.\r\n\r\nAfter tumbling away from the shrapnel of a missile's explosion, a bothan finds her feet and quick-fires two shots from her carbine at the oncoming tank. Shrugging off the wave of fear that threatens to permeate her entire being, she strafes around her foe, firing shot after shot to try to penetrate the tank's thick armor.\r\n\r\nGlancing at his wristpad, a sullustan looks through the eyes of his tracker droid. Transmitting instructions, he sends his droid to distract the houk he's been tracking while he readies his sniper rifle for the shot.\r\n\r\nScouts are the first on the trail and the last to lose it, tracking their quarry for miles unimpeded. They are adaptable, wielding both tech powers and their weaponry to overcome their foes.\r\n\r\n### Deadly Hunters\r\nWarriors in their own right, scouts specialize in tracking and hunting the monsters that threaten civilization�humanoid raiders, rampaging beasts and monstrosities, terrible Force-wielders, and renegade droids. They learn to track their quarry as a predator does, moving stealthily through any terrain and hiding themselves in brush and rubble. Scouts focus their combat training on techniques that are particularly useful against their specific favored foes.\r\n\r\nScouts acquire the ability to cast tech powers through utilization of a wristpad. Their powers, like their combat abilities, emphasize speed, stealth, and the hunt. A scout's talents and abilities are honed with deadly focus on the grim task of protecting the civilization.\r\n\r\n### Independent Adventurers\r\nThough a scout might make a living as a bounty hunter, a guide, or a tracker, a scout's true calling is to defend civilization from the ravages of monsters and humanoid hordes that press in. In some places, scouts gather in secretive orders, though many scouts are independent almost to a fault, knowing that, when a rancor or a band of pirates attacks, a scout might be the first�and possibly the last�line of defense. This fierce independence makes scouts well suited to adventuring, since they are accustomed to life far from the comforts of a dry bed and a hot bath. Faced with city-bred adventurers who grouse and whine about the hardships of the wild, scouts respond with some mixture of amusement, frustration, and compassion. But they quickly learn that other adventurers who can carry their own weight in a fight against civilization's foes are worth any extra burden. Coddled city folk might not know how to feed themselves or find fresh water in the wild, but they make up for it in other ways.\r\n", + "creatingText": "As you create your scout character, consider the nature of the training that gave you your particular capabilities. Did you train with a single mentor, tracking together until you mastered the scout's ways? Did you leave your apprenticeship, or was your mentor slain�perhaps by some kind of bestial monstrosity on which you've sworn revenge? Or perhaps you learned your skills as part of a band of mercenaries. \r\n\r\nWhat's the source of your particular hatred of a certain kind of enemy? Did a monster kill someone you loved or destroy your home village? Or did you see too much of the destruction these monsters cause and commit yourself to reining in their depredations? Is your adventuring career a continuation of your work, or a significant change?\r\n\r\nWhat made you join up with a band of adventurers? Do you find it challenging to teach new allies the ways of the wild, or do you welcome the relief from solitude that they offer?\r\n", + "quickBuildText": "You can make a scout quickly by following these suggestions. First, make Strength or Dexterity your highest ability modifier, depending on whether you want to focus on melee combat or on ranged weapons (or finesse weapons). Your next-highest score should be Intelligence. Second, choose the bounty hunter background.\r\n", + "levelChangeHeadersJson": "[\"Level\",\"Proficiency Bonus\",\"Features\",\"Ranger's Quarry\",\"Tech Powers Known\",\"Tech Points\",\"Max Power Level\",\"Routines Known\",\"Routine Radius\"]", + "levelChanges": { + "1": { + "Level": "1st", + "Proficiency Bonus": "+2", + "Features": "Ranger's Quarry, Pathfinder", + "Ranger's Quarry": "d4", + "Tech Powers Known": "�", + "Tech Points": "�", + "Max Power Level": "�", + "Routines Known": "�", + "Routine Radius": "�" + }, + "2": { + "Level": "2nd", + "Proficiency Bonus": "+2", + "Features": "Techcasting, Fighting Style", + "Ranger's Quarry": "d4", + "Tech Powers Known": "4", + "Tech Points": "2", + "Max Power Level": "1st", + "Routines Known": "�", + "Routine Radius": "�" + }, + "3": { + "Level": "3rd", + "Proficiency Bonus": "+2", + "Features": "Scout Routine, Scout Technique", + "Ranger's Quarry": "d4", + "Tech Powers Known": "5", + "Tech Points": "3", + "Max Power Level": "1st", + "Routines Known": "1", + "Routine Radius": "5 ft." + }, + "4": { + "Level": "4th", + "Proficiency Bonus": "+2", + "Features": "Ability Score Improvement", + "Ranger's Quarry": "d4", + "Tech Powers Known": "6", + "Tech Points": "4", + "Max Power Level": "1st", + "Routines Known": "1", + "Routine Radius": "5 ft." + }, + "5": { + "Level": "5th", + "Proficiency Bonus": "+3", + "Features": "Extra Attack", + "Ranger's Quarry": "d6", + "Tech Powers Known": "7", + "Tech Points": "5", + "Max Power Level": "2nd", + "Routines Known": "1", + "Routine Radius": "5 ft." + }, + "6": { + "Level": "6th", + "Proficiency Bonus": "+3", + "Features": "Expertise", + "Ranger's Quarry": "d6", + "Tech Powers Known": "8", + "Tech Points": "6", + "Max Power Level": "2nd", + "Routines Known": "1", + "Routine Radius": "5 ft." + }, + "7": { + "Level": "7th", + "Proficiency Bonus": "+3", + "Features": "Technique feature", + "Ranger's Quarry": "d6", + "Tech Powers Known": "9", + "Tech Points": "7", + "Max Power Level": "2nd", + "Routines Known": "2", + "Routine Radius": "5 ft." + }, + "8": { + "Level": "8th", + "Proficiency Bonus": "+3", + "Features": "Ability Score Improvement", + "Ranger's Quarry": "d6", + "Tech Powers Known": "10", + "Tech Points": "8", + "Max Power Level": "2nd", + "Routines Known": "2", + "Routine Radius": "5 ft." + }, + "9": { + "Level": "9th", + "Proficiency Bonus": "+4", + "Features": "�", + "Ranger's Quarry": "d8", + "Tech Powers Known": "12", + "Tech Points": "9", + "Max Power Level": "3rd", + "Routines Known": "2", + "Routine Radius": "15 ft." + }, + "10": { + "Level": "10th", + "Proficiency Bonus": "+4", + "Features": "Commando", + "Ranger's Quarry": "d8", + "Tech Powers Known": "13", + "Tech Points": "10", + "Max Power Level": "3rd", + "Routines Known": "2", + "Routine Radius": "15 ft." + }, + "11": { + "Level": "11th", + "Proficiency Bonus": "+4", + "Features": "Technique feature", + "Ranger's Quarry": "d8", + "Tech Powers Known": "14", + "Tech Points": "11", + "Max Power Level": "3rd", + "Routines Known": "2", + "Routine Radius": "15 ft." + }, + "12": { + "Level": "12th", + "Proficiency Bonus": "+4", + "Features": "Ability Score Improvement", + "Ranger's Quarry": "d8", + "Tech Powers Known": "15", + "Tech Points": "12", + "Max Power Level": "3rd", + "Routines Known": "2", + "Routine Radius": "15 ft." + }, + "13": { + "Level": "13th", + "Proficiency Bonus": "+5", + "Features": "�", + "Ranger's Quarry": "d10", + "Tech Powers Known": "16", + "Tech Points": "13", + "Max Power Level": "4th", + "Routines Known": "2", + "Routine Radius": "15 ft." + }, + "14": { + "Level": "14th", + "Proficiency Bonus": "+5", + "Features": "Expertise, Combat Tech", + "Ranger's Quarry": "d10", + "Tech Powers Known": "17", + "Tech Points": "14", + "Max Power Level": "4th", + "Routines Known": "2", + "Routine Radius": "15 ft." + }, + "15": { + "Level": "15th", + "Proficiency Bonus": "+5", + "Features": "Technique feature", + "Ranger's Quarry": "d10", + "Tech Powers Known": "18", + "Tech Points": "15", + "Max Power Level": "4th", + "Routines Known": "3", + "Routine Radius": "15 ft." + }, + "16": { + "Level": "16th", + "Proficiency Bonus": "+5", + "Features": "Ability Score Improvement", + "Ranger's Quarry": "d10", + "Tech Powers Known": "19", + "Tech Points": "16", + "Max Power Level": "4th", + "Routines Known": "3", + "Routine Radius": "15 ft." + }, + "17": { + "Level": "17th", + "Proficiency Bonus": "+6", + "Features": "�", + "Ranger's Quarry": "d12", + "Tech Powers Known": "20", + "Tech Points": "17", + "Max Power Level": "5th", + "Routines Known": "3", + "Routine Radius": "30 ft." + }, + "18": { + "Level": "18th", + "Proficiency Bonus": "+6", + "Features": "Supreme Awareness", + "Ranger's Quarry": "d12", + "Tech Powers Known": "21", + "Tech Points": "18", + "Max Power Level": "5th", + "Routines Known": "3", + "Routine Radius": "30 ft." + }, + "19": { + "Level": "19th", + "Proficiency Bonus": "+6", + "Features": "Ability Score Improvement", + "Ranger's Quarry": "d12", + "Tech Powers Known": "22", + "Tech Points": "19", + "Max Power Level": "5th", + "Routines Known": "3", + "Routine Radius": "30 ft." + }, + "20": { + "Level": "20th", + "Proficiency Bonus": "+6", + "Features": "Foe Slayer", + "Ranger's Quarry": "d12", + "Tech Powers Known": "23", + "Tech Points": "20", + "Max Power Level": "5th", + "Routines Known": "3", + "Routine Radius": "30 ft." + } + }, + "levelChangesJson": "{\"1\":{\"Level\":\"1st\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Ranger's Quarry, Pathfinder\",\"Ranger's Quarry\":\"d4\",\"Tech Powers Known\":\"�\",\"Tech Points\":\"�\",\"Max Power Level\":\"�\",\"Routines Known\":\"�\",\"Routine Radius\":\"�\"},\"2\":{\"Level\":\"2nd\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Techcasting, Fighting Style\",\"Ranger's Quarry\":\"d4\",\"Tech Powers Known\":\"4\",\"Tech Points\":\"2\",\"Max Power Level\":\"1st\",\"Routines Known\":\"�\",\"Routine Radius\":\"�\"},\"3\":{\"Level\":\"3rd\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Scout Routine, Scout Technique\",\"Ranger's Quarry\":\"d4\",\"Tech Powers Known\":\"5\",\"Tech Points\":\"3\",\"Max Power Level\":\"1st\",\"Routines Known\":\"1\",\"Routine Radius\":\"5 ft.\"},\"4\":{\"Level\":\"4th\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Ability Score Improvement\",\"Ranger's Quarry\":\"d4\",\"Tech Powers Known\":\"6\",\"Tech Points\":\"4\",\"Max Power Level\":\"1st\",\"Routines Known\":\"1\",\"Routine Radius\":\"5 ft.\"},\"5\":{\"Level\":\"5th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Extra Attack\",\"Ranger's Quarry\":\"d6\",\"Tech Powers Known\":\"7\",\"Tech Points\":\"5\",\"Max Power Level\":\"2nd\",\"Routines Known\":\"1\",\"Routine Radius\":\"5 ft.\"},\"6\":{\"Level\":\"6th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Expertise\",\"Ranger's Quarry\":\"d6\",\"Tech Powers Known\":\"8\",\"Tech Points\":\"6\",\"Max Power Level\":\"2nd\",\"Routines Known\":\"1\",\"Routine Radius\":\"5 ft.\"},\"7\":{\"Level\":\"7th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Technique feature\",\"Ranger's Quarry\":\"d6\",\"Tech Powers Known\":\"9\",\"Tech Points\":\"7\",\"Max Power Level\":\"2nd\",\"Routines Known\":\"2\",\"Routine Radius\":\"5 ft.\"},\"8\":{\"Level\":\"8th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Ability Score Improvement\",\"Ranger's Quarry\":\"d6\",\"Tech Powers Known\":\"10\",\"Tech Points\":\"8\",\"Max Power Level\":\"2nd\",\"Routines Known\":\"2\",\"Routine Radius\":\"5 ft.\"},\"9\":{\"Level\":\"9th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"�\",\"Ranger's Quarry\":\"d8\",\"Tech Powers Known\":\"12\",\"Tech Points\":\"9\",\"Max Power Level\":\"3rd\",\"Routines Known\":\"2\",\"Routine Radius\":\"15 ft.\"},\"10\":{\"Level\":\"10th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Commando\",\"Ranger's Quarry\":\"d8\",\"Tech Powers Known\":\"13\",\"Tech Points\":\"10\",\"Max Power Level\":\"3rd\",\"Routines Known\":\"2\",\"Routine Radius\":\"15 ft.\"},\"11\":{\"Level\":\"11th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Technique feature\",\"Ranger's Quarry\":\"d8\",\"Tech Powers Known\":\"14\",\"Tech Points\":\"11\",\"Max Power Level\":\"3rd\",\"Routines Known\":\"2\",\"Routine Radius\":\"15 ft.\"},\"12\":{\"Level\":\"12th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Ability Score Improvement\",\"Ranger's Quarry\":\"d8\",\"Tech Powers Known\":\"15\",\"Tech Points\":\"12\",\"Max Power Level\":\"3rd\",\"Routines Known\":\"2\",\"Routine Radius\":\"15 ft.\"},\"13\":{\"Level\":\"13th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"�\",\"Ranger's Quarry\":\"d10\",\"Tech Powers Known\":\"16\",\"Tech Points\":\"13\",\"Max Power Level\":\"4th\",\"Routines Known\":\"2\",\"Routine Radius\":\"15 ft.\"},\"14\":{\"Level\":\"14th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Expertise, Combat Tech\",\"Ranger's Quarry\":\"d10\",\"Tech Powers Known\":\"17\",\"Tech Points\":\"14\",\"Max Power Level\":\"4th\",\"Routines Known\":\"2\",\"Routine Radius\":\"15 ft.\"},\"15\":{\"Level\":\"15th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Technique feature\",\"Ranger's Quarry\":\"d10\",\"Tech Powers Known\":\"18\",\"Tech Points\":\"15\",\"Max Power Level\":\"4th\",\"Routines Known\":\"3\",\"Routine Radius\":\"15 ft.\"},\"16\":{\"Level\":\"16th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Ability Score Improvement\",\"Ranger's Quarry\":\"d10\",\"Tech Powers Known\":\"19\",\"Tech Points\":\"16\",\"Max Power Level\":\"4th\",\"Routines Known\":\"3\",\"Routine Radius\":\"15 ft.\"},\"17\":{\"Level\":\"17th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"�\",\"Ranger's Quarry\":\"d12\",\"Tech Powers Known\":\"20\",\"Tech Points\":\"17\",\"Max Power Level\":\"5th\",\"Routines Known\":\"3\",\"Routine Radius\":\"30 ft.\"},\"18\":{\"Level\":\"18th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Supreme Awareness\",\"Ranger's Quarry\":\"d12\",\"Tech Powers Known\":\"21\",\"Tech Points\":\"18\",\"Max Power Level\":\"5th\",\"Routines Known\":\"3\",\"Routine Radius\":\"30 ft.\"},\"19\":{\"Level\":\"19th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Ability Score Improvement\",\"Ranger's Quarry\":\"d12\",\"Tech Powers Known\":\"22\",\"Tech Points\":\"19\",\"Max Power Level\":\"5th\",\"Routines Known\":\"3\",\"Routine Radius\":\"30 ft.\"},\"20\":{\"Level\":\"20th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Foe Slayer\",\"Ranger's Quarry\":\"d12\",\"Tech Powers Known\":\"23\",\"Tech Points\":\"20\",\"Max Power Level\":\"5th\",\"Routines Known\":\"3\",\"Routine Radius\":\"30 ft.\"}}", + "hitDiceDieTypeEnum": 10, + "hitDiceDieType": 10, + "hitPointsAtFirstLevel": "10 + your Constitution modifier", + "hitPointsAtHigherLevels": "1d10 (or 6) + your Constitution modifier per scout level after 1st", + "hitPointsAtFirstLevelNumber": 10, + "hitPointsAtHigherLevelsNumber": 6, + "armorProficiencies": [ + "Light armor", + "medium armor" + ], + "armorProficienciesJson": "[\"Light armor\",\"medium armor\"]", + "weaponProficiencies": [ + "All blasters", + "all vibroweapons" + ], + "weaponProficienciesJson": "[\"All blasters\",\"all vibroweapons\"]", + "toolProficiencies": [ + "None" + ], + "toolProficienciesJson": "[\"None\"]", + "toolProficienciesList": [ + "None" + ], + "toolProficienciesListJson": "[\"None\"]", + "savingThrows": [ + "Strength", + "Dexterity" + ], + "savingThrowsJson": "[\"Strength\",\"Dexterity\"]", + "skillChoices": "Choose three from Animal Handling, Athletics, Insight, Investigation, Perception, Piloting, Stealth, Survival, and Technology", + "numSkillChoices": 3, + "skillChoicesList": [ + "Animal Handling", + "Athletics", + "Insight", + "Investigation", + "Perception", + "Piloting", + "Stealth", + "Survival", + "Technology" + ], + "skillChoicesListJson": "[\"Animal Handling\",\"Athletics\",\"Insight\",\"Investigation\",\"Perception\",\"Piloting\",\"Stealth\",\"Survival\",\"Technology\"]", + "equipmentLines": [ + "- *(a)* mesh armor or *(b)* a combat suit, blaster rifle or simple blaster, and two power cells", + "- *(a)* a vibroweapon and a light physical shield or *(b)* two simple vibroweapons", + "- *(a)* a hold-out and a power cell or *(b)* two vibrodaggers", + "- *(a)* a dungeoneer's pack or *(b)* an explorer's pack", + "- A wristpad" + ], + "equipmentLinesJson": "[\"- *(a)* mesh armor or *(b)* a combat suit, blaster rifle or simple blaster, and two power cells\",\"- *(a)* a vibroweapon and a light physical shield or *(b)* two simple vibroweapons\",\"- *(a)* a hold-out and a power cell or *(b)* two vibrodaggers\",\"- *(a)* a dungeoneer's pack or *(b)* an explorer's pack\",\"- A wristpad\"]", + "startingWealthVariant": "8d4 x 100 cr", + "classFeatureText": "\r\n### Ranger's Quarry\r\n_**Scout:** 1st, 5th, 9th, and 17th level_\r\nYou learn how to effectively read and track your prey. Once on each of your turns, you can choose a creature you can see within 120 feet and mark it as your quarry (no action required). For the next hour, you gain the following benefits:\r\n- Once per turn, when you hit the target with a weapon attack, you can deal 1d4 additional damage to it of the same type as the weapon's damage. This die changes as you gain scout levels, as shown in the Ranger's Quarry column of the scout table.\r\n- You have advantage on any Wisdom (Perception) or Wisdom (Survival) check you make to find it while it's on the same planet as you.\r\n\r\nYou can only have one creature marked in this way at a time. Beginning at 5th level, you can use your reaction to mark a creature when it enters your line of sight, provided it is within range of your Ranger's Quarry.\r\n\r\nThe duration increases to 8 hours at 9th level and 24 hours at 17th level.\r\n\r\n### Pathfinder\r\n_**Scout:** 1st level_\r\nYou are skilled at navigating the untamed wilds. You ignore difficult terrain, and when traveling for an hour or more, you gain the following benefits:\r\n- Difficult terrain doesn't slow your group, provided they can see and hear you.\r\n- You can't become lost by unenhanced means.\r\n- Even when you are engaged in another activity while traveling (such as foraging, navigating, or tracking), you remain alert to danger.\r\n- If you are traveling alone, you can move stealthily at a normal pace.\r\n- When you forage, you find twice as much food.\r\n- You have advantage on Survival checks.\r\n\r\n### Techcasting\r\n_**Scout:** 2nd level_\r\nYou have derived powers from schematics with the aid of your wristpad. See chapter 10 for the general rules of techcasting and chapter 12 for the tech powers list.\r\n\r\n#### Tech Powers Known\r\nYou learn 4 tech powers of your choice, and you learn more at higher levels, as shown in the Tech Powers Known column of the scout table. You may not learn a tech power of a level higher than your Max Power Level.\r\n\r\n#### Tech Points\r\nYou have a number of tech points equal to your scout level, as shown in the Tech Points column of the scout table, + your Intelligence modifier. You use these tech points to cast tech powers. You regain all expended tech points when you finish a short or long rest.\r\n\r\n#### Max Power Level\r\nMany tech powers can be overcharged, consuming \r\n\r\nmore tech points to create a greater effect. You can overcharge these powers to a maximum level, which increases at higher levels, as shown in the Max Power Level column of the scout table.\r\n\r\nYou may only cast tech powers at 4th and 5th-level once. You regain the ability to do so after a long rest.\r\n\r\n#### Techcasting Ability\r\nIntelligence is your techcasting ability for your tech powers. You use your Intelligence whenever a power refers to your techcasting ability. Additionally, you use your Intelligence modifier when setting the saving throw DC for a tech power you cast and when making an attack roll with one.\r\n\r\n___\r\n\r\n**Tech save DC** = 8 + your proficiency bonus + your Intelligence modifier\r\n\r\n___\r\n\r\n**Tech attack modifier** = your proficiency bonus + your Intelligence modifier\r\n\r\n___\r\n\r\n#### Techcasting Focus\r\nYou use a wristpad (found in chapter 5) as a tech focus for your tech powers.\r\n\r\n### Fighting Style\r\n_**Scout:** 2nd level_\r\nYou adopt a particular style of fighting as your specialty. Choose one of the fighting style options, detailed in Chapter 6. \r\n\r\n### Scout Routine\r\n_**Scout:** 3rd level_\r\nYou've developed one routine, as detailed at the end of the class description, and you gain more at higher levels, as shown in the Routines Known column of the scout table. Your routine has a radius of 5 feet, which increases at higher levels, as shown in the Routine Radius column of the scout table.\r\n\r\n### Scout Technique \r\n_**Scout:** 3rd, 7th, 11th, and 15th level_\r\nYou choose to focus on a specific scout technique, which is detailed at the end of the class description.\r\n\r\n### Ability Score Improvement \r\n_**Scout:** 4th, 8th, 12th, 16th, and 19th level_\r\nYou can increase one ability score by 2, or you can increase two ability scores by 1. You can't increase an ability score above 20 using this feature.\r\n\r\n### Extra Attack\r\n_**Scout:** 5th level_\r\nYou can attack twice, instead of once, whenever you take the Attack action on your turn.\r\n\r\n### Expertise\r\n_**Scout:** 6th and 14th level_\r\nChoose two of your skill proficiencies, or one of skill proficiencies and one of your tool proficiencies, or two of your tool proficiencies. You gain expertise in those skills or tools.\r\n\r\nAt 14th level, you can choose another two proficiencies (in skills or tools) to gain this benefit.\r\n\r\n### Commando \r\n_**Scout:** 10th level_\r\nYou can take the Dash or Hide actions as a bonus action on each of your turns. Additionally, you can remain perfectly still for long periods of time to set up ambushes. \r\n\r\nWhen you attempt to hide on your turn, you can opt to not move on that turn. If you avoid moving, creatures that attempt to detect you take a -10 penalty to their Wisdom (Perception) checks until the start of your next turn. You lose this benefit if you move or fall prone, either voluntarily or because of some external effect. You are still automatically detected if any effect or action causes you to no longer be hidden. \r\n\r\nIf you are still hidden on your next turn, you can continue to remain motionless and gain this benefit until you are detected.\r\n\r\nFinally, you can no longer be tracked by unenhanced means, unless you choose to leave a trail.\r\n\r\n### Combat Tech\r\n_**Scout:** 14th level_\r\nWhen you use your action to cast a tech power, you can make one weapon attack as a bonus action.\r\n\r\n### Supreme Awareness \r\n_**Scout:** 18th level_\r\nYou gain preternatural senses that help you fight creatures you can't see. When you attack a creature you can't see, your inability to see it doesn't impose disadvantage on your attack rolls against it. \r\n\r\nYou are also aware of the location of any invisible creature within 30 feet of you, provided that the creature isn't hidden from you and you aren't blinded or deafened.\r\n\r\n### Foe Slayer \r\n_**Scout:** 20th level_\r\nYou become an unparalleled hunter. Your Strength or Dexterity score increases by 2, and your Intelligence score increases by 2. Your maximum for those scores increases by 2.\r\n\r\nAdditionally, once on each of your turns, you can add your Intelligence modifier to the attack roll or the damage roll of an attack you make. \r\n\r\n### Scout Routines\r\nThe routines are presented in alphabetical order. If multiple scouts grant the same routine, affected creatures can only benefit from it once. You must be conscious to grant the benefit of your routines.\r\n\r\n#### Adaptability Routine\r\nAt the start of each of your turns, you can choose an ability score with a saving throw in which you are not proficient. Until the start of your next turn, you add half your proficiency bonus to saving throws you make with the chosen ability. Alternatively, \r\n\r\nyou can choose to extend this benefit to allies within 5 feet of you.\r\n\r\n#### Maven's Routine\r\nAt the start of each of your turns, you can choose to gain resistance to damage from tech powers until the start of your next turn. Alternatively, you can choose to extend this benefit to allies within 5 feet of you.\r\n\r\n#### Mesmer's Routine\r\nAt the start of each of your turns, you can choose to have advantage on saving throws against effects that would incapacitate you or put you to sleep until the start of your next turn. Alternatively, you can choose to extend this benefit to allies within 5 feet of you.\r\n\r\n#### Nomad's Routine\r\nAt the start of each of your turns, you can choose to gain advantage on Constitution saving throws to avoid exhaustion from unenhanced sources, as well as being naturally adapted to both hot and cold climates. Alternatively, you can choose to extend this benefit to allies within 5 feet of you.\r\n\r\n#### Responder's Routine\r\nWhen you roll initiative, you can choose to add your proficiency bonus to the initiative check and have advantage on attack rolls against creatures that have not yet acted. Alternatively, you can choose to allow each friendly creature within 5 feet of you to add half your proficiency bonus to the initiative check and have advantage on the first attack roll they make against a creature that has not yet acted.\r\n\r\n#### Sharpshooter's Routine\r\nAt the start of each of your turns, you can choose to gain a bonus to the first weapon attack roll you make before the start of your next turn equal to your Intelligence modifier. Alternatively, you can choose to allow each friendly creature within 5 feet of you to add half your Intelligence modifier to the first weapon attack roll they make before the start of your next turn.\r\n\r\n#### Strider's Routine\r\nAt the start of each of your turns, you can choose to have each slowed level only reduce your speed by 5 feet, unless it would reduce your speed to 0 until the start of your next turn. Alternatively, you can choose to extend this benefit to allies within 5 feet of you.\r\n\r\n#### Warden's Routine\r\nAt the start of each of your turns, you can choose to gain a crawling, climbing, and swimming speed equal to your walking speed until the start of your next turn. Alternatively, you can choose to extend this benefit to allies within 5 feet of you.\r\n", + "classFeatureText2": null, + "archetypeFlavorText": "Scouts tend to share knowledge amongst them selves, focusing on specific techniques and honing them to perfection. Your technique grants you features at 3rd, 7th, 11th, and 15th level.", + "archetypeFlavorName": "Scout Techniques", + "archetypes": null, + "imageUrls": [ + "https://starwars5ecentral.blob.core.windows.net/site-images/classes/scout_01.png", + "https://starwars5ecentral.blob.core.windows.net/site-images/classes/scout_02.png" + ], + "imageUrlsJson": "[\"https://starwars5ecentral.blob.core.windows.net/site-images/classes/scout_01.png\",\"https://starwars5ecentral.blob.core.windows.net/site-images/classes/scout_02.png\"]", + "casterRatio": 0.5, + "casterTypeEnum": 2, + "casterType": "Tech", + "multiClassProficiencies": [ + "Light armor", + "all blasters", + "all vibroweapons", + "medium armor" + ], + "multiClassProficienciesJson": "[\"Light armor\",\"all blasters\",\"all vibroweapons\",\"medium armor\"]", + "features": null, + "featureRowKeys": null, + "featureRowKeysJson": "", + "contentTypeEnum": 1, + "contentType": "Core", + "contentSourceEnum": 1, + "contentSource": "PHB", + "partitionKey": "Core", + "rowKey": "Scout", + "timestamp": "2023-05-30T20:15:42.4990758+00:00", + "eTag": "W/\"datetime'2023-05-30T20%3A15%3A42.4990758Z'\"" + }, + { + "name": "Sentinel", + "summary": "Force-wielder who blends melee combat with the Force", + "primaryAbility": "Dexterity", + "flavorText": "Clad in black robes, the rattataki pulls his hood forward and steps into the shadowy alcove, only to reappear further down the hall. As his quarry walks past, he presses the hilt of his lightsaber to the back of their head, quickly toggling it on-and-off. He is gone before the corpse hits the ground.\r\n\r\nThe togruta dashes across the battlefield, doublesaber deflecting blaster shots to the ground. She pulls her wounded padawan to her feet, and guides her away from the warzone.\r\n\r\nGreen-bladed lightsaber a blur, the cathar ferociously presses the attack. With each strike, she guides her opponent closer to the ravine's edge. A flurry of blows followed by a quick *force push* and her foe tumbles over the edge.\r\n\r\nSentinels are the masters of blending force powers with weapon attacks. They weave the two together so expertly that their foes have trouble predicting them.\r\n\r\n### The Middle of the Road\r\nThe sentinel uses stealth and subterfuge to accomplish the will of the Force. Where the consular focuses on mastery of the Force and the guardian focuses on the mastery of the lightsaber, the sentinel focuses on merging the two. \r\n\r\n### Solitary Action\r\nSentinels are notoriously independent, most comfortable acting alone and without backup; where some use a team to make up for their weaknesses, the sentinel uses the Force to overcome theirs. While some take this independent streak to the extreme, they are usually accepting of authority, as long as they are allowed to carry out directions using their preferred methods.\r\n", + "creatingText": "While creating your sentinel, consider your personal philosophy in regards to the Force and its most famous practitioners � the Jedi and the Sith. Are you a member of one of the two orders, or do you walk a different path? Are you an operative tapping into a latent Force-sensitivity? Were you trained in the force from a young age, or did you discover it as an adult? How do you treat those weaker than you? What was your family like? Do you see the Force as light and dark, or an impartial river of gray?\r\n", + "quickBuildText": "You can make a sentinel quickly by following these suggestions. First, make Dexterity your highest ability score, followed by Wisdom or Charisma. Second, choose the Jedi or Sith background.\r\n", + "levelChangeHeadersJson": "[\"Level\",\"Proficiency Bonus\",\"Features\",\"Force Powers Known\",\"Force Points\",\"Max Power Level\",\"Kinetic Combat\",\"Ideals Known\",\"Ideal Manifests\"]", + "levelChanges": { + "1": { + "Level": "1st", + "Proficiency Bonus": "+2", + "Features": "Forcecasting, Led by the Force", + "Force Powers Known": "7", + "Force Points": "3", + "Max Power Level": "1st", + "Kinetic Combat": "�", + "Ideals Known": "�", + "Ideal Manifests": "�" + }, + "2": { + "Level": "2nd", + "Proficiency Bonus": "+2", + "Features": "Force-Empowered Self, Sentinel Ideals", + "Force Powers Known": "9", + "Force Points": "6", + "Max Power Level": "1st", + "Kinetic Combat": "d4", + "Ideals Known": "2", + "Ideal Manifests": "2" + }, + "3": { + "Level": "3rd", + "Proficiency Bonus": "+2", + "Features": "Sentinel Calling", + "Force Powers Known": "11", + "Force Points": "9", + "Max Power Level": "2nd", + "Kinetic Combat": "d4", + "Ideals Known": "2", + "Ideal Manifests": "2" + }, + "4": { + "Level": "4th", + "Proficiency Bonus": "+2", + "Features": "Ability Score Improvement", + "Force Powers Known": "13", + "Force Points": "12", + "Max Power Level": "2nd", + "Kinetic Combat": "d4", + "Ideals Known": "2", + "Ideal Manifests": "2" + }, + "5": { + "Level": "5th", + "Proficiency Bonus": "+3", + "Features": "Extra Attack", + "Force Powers Known": "15", + "Force Points": "15", + "Max Power Level": "2nd", + "Kinetic Combat": "d6", + "Ideals Known": "2", + "Ideal Manifests": "2" + }, + "6": { + "Level": "6th", + "Proficiency Bonus": "+3", + "Features": "�", + "Force Powers Known": "17", + "Force Points": "18", + "Max Power Level": "3rd", + "Kinetic Combat": "d6", + "Ideals Known": "3", + "Ideal Manifests": "2" + }, + "7": { + "Level": "7th", + "Proficiency Bonus": "+3", + "Features": "Calling feature", + "Force Powers Known": "18", + "Force Points": "21", + "Max Power Level": "3rd", + "Kinetic Combat": "d6", + "Ideals Known": "3", + "Ideal Manifests": "2" + }, + "8": { + "Level": "8th", + "Proficiency Bonus": "+3", + "Features": "Ability Score Improvement", + "Force Powers Known": "19", + "Force Points": "24", + "Max Power Level": "3rd", + "Kinetic Combat": "d6", + "Ideals Known": "3", + "Ideal Manifests": "2" + }, + "9": { + "Level": "9th", + "Proficiency Bonus": "+4", + "Features": "3", + "Force Powers Known": "21", + "Force Points": "27", + "Max Power Level": "4th", + "Kinetic Combat": "d8", + "Ideals Known": "3", + "Ideal Manifests": "3" + }, + "10": { + "Level": "10th", + "Proficiency Bonus": "+4", + "Features": "Battle Readiness", + "Force Powers Known": "22", + "Force Points": "30", + "Max Power Level": "4th", + "Kinetic Combat": "d8", + "Ideals Known": "3", + "Ideal Manifests": "3" + }, + "11": { + "Level": "11th", + "Proficiency Bonus": "+4", + "Features": "�", + "Force Powers Known": "24", + "Force Points": "33", + "Max Power Level": "5th", + "Kinetic Combat": "d8", + "Ideals Known": "4", + "Ideal Manifests": "3" + }, + "12": { + "Level": "12th", + "Proficiency Bonus": "+4", + "Features": "Ability Score Improvement", + "Force Powers Known": "25", + "Force Points": "36", + "Max Power Level": "5th", + "Kinetic Combat": "d8", + "Ideals Known": "4", + "Ideal Manifests": "3" + }, + "13": { + "Level": "13th", + "Proficiency Bonus": "+5", + "Features": "Calling feature", + "Force Powers Known": "26", + "Force Points": "39", + "Max Power Level": "5th", + "Kinetic Combat": "d10", + "Ideals Known": "4", + "Ideal Manifests": "3" + }, + "14": { + "Level": "14th", + "Proficiency Bonus": "+5", + "Features": "�", + "Force Powers Known": "28", + "Force Points": "42", + "Max Power Level": "6th", + "Kinetic Combat": "d10", + "Ideals Known": "4", + "Ideal Manifests": "3" + }, + "15": { + "Level": "15th", + "Proficiency Bonus": "+5", + "Features": "Enlightened Evasion", + "Force Powers Known": "29", + "Force Points": "45", + "Max Power Level": "6th", + "Kinetic Combat": "d10", + "Ideals Known": "4", + "Ideal Manifests": "3" + }, + "16": { + "Level": "16th", + "Proficiency Bonus": "+5", + "Features": "Ability Score Improvement", + "Force Powers Known": "30", + "Force Points": "48", + "Max Power Level": "6th", + "Kinetic Combat": "d10", + "Ideals Known": "4", + "Ideal Manifests": "3" + }, + "17": { + "Level": "17th", + "Proficiency Bonus": "+6", + "Features": "�", + "Force Powers Known": "32", + "Force Points": "51", + "Max Power Level": "7th", + "Kinetic Combat": "d12", + "Ideals Known": "4", + "Ideal Manifests": "4" + }, + "18": { + "Level": "18th", + "Proficiency Bonus": "+6", + "Features": "Calling feature", + "Force Powers Known": "33", + "Force Points": "54", + "Max Power Level": "7th", + "Kinetic Combat": "d12", + "Ideals Known": "4", + "Ideal Manifests": "4" + }, + "19": { + "Level": "19th", + "Proficiency Bonus": "+6", + "Features": "Ability Score Improvement", + "Force Powers Known": "34", + "Force Points": "57", + "Max Power Level": "7th", + "Kinetic Combat": "d12", + "Ideals Known": "4", + "Ideal Manifests": "4" + }, + "20": { + "Level": "20th", + "Proficiency Bonus": "+6", + "Features": "Center of the Force", + "Force Powers Known": "35", + "Force Points": "60", + "Max Power Level": "7th", + "Kinetic Combat": "d12", + "Ideals Known": "4", + "Ideal Manifests": "4" + } + }, + "levelChangesJson": "{\"1\":{\"Level\":\"1st\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Forcecasting, Led by the Force\",\"Force Powers Known\":\"7\",\"Force Points\":\"3\",\"Max Power Level\":\"1st\",\"Kinetic Combat\":\"�\",\"Ideals Known\":\"�\",\"Ideal Manifests\":\"�\"},\"2\":{\"Level\":\"2nd\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Force-Empowered Self, Sentinel Ideals\",\"Force Powers Known\":\"9\",\"Force Points\":\"6\",\"Max Power Level\":\"1st\",\"Kinetic Combat\":\"d4\",\"Ideals Known\":\"2\",\"Ideal Manifests\":\"2\"},\"3\":{\"Level\":\"3rd\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Sentinel Calling\",\"Force Powers Known\":\"11\",\"Force Points\":\"9\",\"Max Power Level\":\"2nd\",\"Kinetic Combat\":\"d4\",\"Ideals Known\":\"2\",\"Ideal Manifests\":\"2\"},\"4\":{\"Level\":\"4th\",\"Proficiency Bonus\":\"+2\",\"Features\":\"Ability Score Improvement\",\"Force Powers Known\":\"13\",\"Force Points\":\"12\",\"Max Power Level\":\"2nd\",\"Kinetic Combat\":\"d4\",\"Ideals Known\":\"2\",\"Ideal Manifests\":\"2\"},\"5\":{\"Level\":\"5th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Extra Attack\",\"Force Powers Known\":\"15\",\"Force Points\":\"15\",\"Max Power Level\":\"2nd\",\"Kinetic Combat\":\"d6\",\"Ideals Known\":\"2\",\"Ideal Manifests\":\"2\"},\"6\":{\"Level\":\"6th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"�\",\"Force Powers Known\":\"17\",\"Force Points\":\"18\",\"Max Power Level\":\"3rd\",\"Kinetic Combat\":\"d6\",\"Ideals Known\":\"3\",\"Ideal Manifests\":\"2\"},\"7\":{\"Level\":\"7th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Calling feature\",\"Force Powers Known\":\"18\",\"Force Points\":\"21\",\"Max Power Level\":\"3rd\",\"Kinetic Combat\":\"d6\",\"Ideals Known\":\"3\",\"Ideal Manifests\":\"2\"},\"8\":{\"Level\":\"8th\",\"Proficiency Bonus\":\"+3\",\"Features\":\"Ability Score Improvement\",\"Force Powers Known\":\"19\",\"Force Points\":\"24\",\"Max Power Level\":\"3rd\",\"Kinetic Combat\":\"d6\",\"Ideals Known\":\"3\",\"Ideal Manifests\":\"2\"},\"9\":{\"Level\":\"9th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"3\",\"Force Powers Known\":\"21\",\"Force Points\":\"27\",\"Max Power Level\":\"4th\",\"Kinetic Combat\":\"d8\",\"Ideals Known\":\"3\",\"Ideal Manifests\":\"3\"},\"10\":{\"Level\":\"10th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Battle Readiness\",\"Force Powers Known\":\"22\",\"Force Points\":\"30\",\"Max Power Level\":\"4th\",\"Kinetic Combat\":\"d8\",\"Ideals Known\":\"3\",\"Ideal Manifests\":\"3\"},\"11\":{\"Level\":\"11th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"�\",\"Force Powers Known\":\"24\",\"Force Points\":\"33\",\"Max Power Level\":\"5th\",\"Kinetic Combat\":\"d8\",\"Ideals Known\":\"4\",\"Ideal Manifests\":\"3\"},\"12\":{\"Level\":\"12th\",\"Proficiency Bonus\":\"+4\",\"Features\":\"Ability Score Improvement\",\"Force Powers Known\":\"25\",\"Force Points\":\"36\",\"Max Power Level\":\"5th\",\"Kinetic Combat\":\"d8\",\"Ideals Known\":\"4\",\"Ideal Manifests\":\"3\"},\"13\":{\"Level\":\"13th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Calling feature\",\"Force Powers Known\":\"26\",\"Force Points\":\"39\",\"Max Power Level\":\"5th\",\"Kinetic Combat\":\"d10\",\"Ideals Known\":\"4\",\"Ideal Manifests\":\"3\"},\"14\":{\"Level\":\"14th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"�\",\"Force Powers Known\":\"28\",\"Force Points\":\"42\",\"Max Power Level\":\"6th\",\"Kinetic Combat\":\"d10\",\"Ideals Known\":\"4\",\"Ideal Manifests\":\"3\"},\"15\":{\"Level\":\"15th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Enlightened Evasion\",\"Force Powers Known\":\"29\",\"Force Points\":\"45\",\"Max Power Level\":\"6th\",\"Kinetic Combat\":\"d10\",\"Ideals Known\":\"4\",\"Ideal Manifests\":\"3\"},\"16\":{\"Level\":\"16th\",\"Proficiency Bonus\":\"+5\",\"Features\":\"Ability Score Improvement\",\"Force Powers Known\":\"30\",\"Force Points\":\"48\",\"Max Power Level\":\"6th\",\"Kinetic Combat\":\"d10\",\"Ideals Known\":\"4\",\"Ideal Manifests\":\"3\"},\"17\":{\"Level\":\"17th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"�\",\"Force Powers Known\":\"32\",\"Force Points\":\"51\",\"Max Power Level\":\"7th\",\"Kinetic Combat\":\"d12\",\"Ideals Known\":\"4\",\"Ideal Manifests\":\"4\"},\"18\":{\"Level\":\"18th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Calling feature\",\"Force Powers Known\":\"33\",\"Force Points\":\"54\",\"Max Power Level\":\"7th\",\"Kinetic Combat\":\"d12\",\"Ideals Known\":\"4\",\"Ideal Manifests\":\"4\"},\"19\":{\"Level\":\"19th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Ability Score Improvement\",\"Force Powers Known\":\"34\",\"Force Points\":\"57\",\"Max Power Level\":\"7th\",\"Kinetic Combat\":\"d12\",\"Ideals Known\":\"4\",\"Ideal Manifests\":\"4\"},\"20\":{\"Level\":\"20th\",\"Proficiency Bonus\":\"+6\",\"Features\":\"Center of the Force\",\"Force Powers Known\":\"35\",\"Force Points\":\"60\",\"Max Power Level\":\"7th\",\"Kinetic Combat\":\"d12\",\"Ideals Known\":\"4\",\"Ideal Manifests\":\"4\"}}", + "hitDiceDieTypeEnum": 8, + "hitDiceDieType": 8, + "hitPointsAtFirstLevel": "8 + your Constitution modifier", + "hitPointsAtHigherLevels": "1d8 (or 5) + your Constitution modifier per sentinel level after 1st", + "hitPointsAtFirstLevelNumber": 8, + "hitPointsAtHigherLevelsNumber": 5, + "armorProficiencies": [ + "Light armor" + ], + "armorProficienciesJson": "[\"Light armor\"]", + "weaponProficiencies": [ + "Simple lightweapons", + "simple vibroweapons", + "martial lightweapons with the finesse property", + "martial vibroweapons with the finesse property" + ], + "weaponProficienciesJson": "[\"Simple lightweapons\",\"simple vibroweapons\",\"martial lightweapons with the finesse property\",\"martial vibroweapons with the finesse property\"]", + "toolProficiencies": [ + "One specialist's kit of your choice" + ], + "toolProficienciesJson": "[\"One specialist's kit of your choice\"]", + "toolProficienciesList": [ + "One specialist's kit of your choice" + ], + "toolProficienciesListJson": "[\"One specialist's kit of your choice\"]", + "savingThrows": [ + "Dexterity", + "Charisma" + ], + "savingThrowsJson": "[\"Dexterity\",\"Charisma\"]", + "skillChoices": "Choose three from Acrobatics, Animal Handling, Insight, Intimidation, Perception, Persuasion, Piloting, Stealth, and Technology", + "numSkillChoices": 3, + "skillChoicesList": [ + "Acrobatics", + "Animal Handling", + "Insight", + "Intimidation", + "Perception", + "Persuasion", + "Piloting", + "Stealth", + "Technology" + ], + "skillChoicesListJson": "[\"Acrobatics\",\"Animal Handling\",\"Insight\",\"Intimidation\",\"Perception\",\"Persuasion\",\"Piloting\",\"Stealth\",\"Technology\"]", + "equipmentLines": [ + "- *(a)* two simple lightweapons or vibroweapons or *(b)* one lightweapon or vibroweapon with which you are proficient", + "- *(a)* a dungeoneer's pack or *(b)* an explorer's pack", + "- A specialist's kit with which you are proficient", + "- A combat suit and a light physical shield" + ], + "equipmentLinesJson": "[\"- *(a)* two simple lightweapons or vibroweapons or *(b)* one lightweapon or vibroweapon with which you are proficient\",\"- *(a)* a dungeoneer's pack or *(b)* an explorer's pack\",\"- A specialist's kit with which you are proficient\",\"- A combat suit and a light physical shield\"]", + "startingWealthVariant": "6d4 x 100 cr", + "classFeatureText": "\r\n### Forcecasting\r\n_**Sentinel:** 1st level_\r\nIn your meditations on the force, you have learned powers, fragments of knowledge that imbue you with an abiding force ability. See chapter 10 for the general rules of forcecasting and chapter 11 for the force powers list.\r\n\r\n#### Force Powers Known\r\nYou learn 7 force powers of your choice, and you learn more at higher levels, as shown in the Force Powers Known column of the sentinel table. You may not learn a force power of a level higher than your Max Power Level, and you may learn a force power at the same time you learn its prerequisite.\r\n\r\n#### Force Points\r\nYou have a number of force points equal to your sentinel level x 3, as shown in the Force Points column of the sentinel table, + your Wisdom or Charisma modifier (your choice). You use these force points to cast force powers. You regain all expended force points when you finish a long rest.\r\n\r\n#### Max Power Level\r\nMany force powers can be overpowered, consuming more force points to create a greater effect. You can overpower these abilities to a maximum level, which increases at higher levels, as shown in the Max Power Level column of the sentinel table.\r\n\r\nYou may only cast force powers at 5th, 6th, and 7th-level once. You regain the ability to do so after a long rest.\r\n\r\n#### Forcecasting Ability\r\nYour forcecasting ability varies based on the alignment of the powers you cast. You use Wisdom for light side powers, Charisma for dark side powers, and Wisdom or Charisma for universal powers (your choice). You use this ability whenever a power refers to your forcecasting ability. Additionally, you use this ability modifier when setting the saving throw DC for a force power you cast and when making an attack roll with one.\r\n\r\n___\r\n\r\n**Force save DC** = 8 + your proficiency bonus + your forcecasting ability modifier\r\n\r\n___\r\n\r\n**Force attack modifier** = your proficiency bonus + your forcecasting ability modifier\r\n\r\n___\r\n\r\n### Led by the Force\r\n_**Sentinel:** 1st level_\r\nYou can add half your proficiency bonus to any ability check you make that doesn't already include your proficiency bonus.\r\n\r\n### Force-Empowered Self\r\n_**Sentinel:** 2nd level_\r\nYour training allows you to harness the mystical energy of the Force throughout your body. You learn three effects: Deflection, Double Strike, and Slow Time. Each effect costs 1 force point and uses a d4, which changes as you gain sentinel levels, as shown in the Kinetic Combat column of the sentinel table. You can only use each effect once per round.\r\n\r\n#### Deflection\r\nWhen you are the target of an attack, you can roll a Kinetic Combat die and add it to your AC (no action required). You can do so before or after the attack is made, but you must choose to do so before the GM determines if the attack hits.\r\n\r\n#### Double Strike\r\nWhen you hit a creature with a weapon attack, you can roll a Kinetic Combat die and deal additional damage of the same type equal to the amount rolled.\r\n\r\n#### Slow Time\r\nWhen you move on your turn, you can roll a Kinetic Combat die to increase your speed by 5 x the amount rolled until the end of your turn.\r\n\r\n### Sentinel Ideals\r\n_**Sentinel:** 2nd level_\r\nYou adopt ideals that exemplify your bond with the Force. You adopt two ideals of your choice, as detailed at the end of the class description, and you adopt more at higher levels, as shown in the Ideals Known column of the sentinel table.\r\n\r\nYou can manifest your ideals a combined total of twice, and you can manifest them more times at higher levels as shown in the Ideal Manifests column of the sentinel table.\r\n\r\n### Sentinel Calling\r\n_**Sentinel:** 3rd, 7th, 13th, and 18th level_\r\nYou choose a sentinel calling, which is detailed at the end of the class description. \r\n\r\n### Ability Score Improvement\r\n_**Sentinel:** 4th, 8th, 12th, 16th, and 19th level_\r\nYou can increase one ability score by 2, or you can increase two ability scores by 1. You can't increase an ability score above 20 using this feature.\r\n\r\n### Extra Attack\r\n_**Sentinel:** 5th level_\r\nYou can attack twice, instead of once, whenever you take the Attack action on your turn.\r\n\r\n### Battle Readiness\r\n_**Sentinel:** 10th level_\r\nYou have fully learned how to meld your physical self with the Force. When you take the Dodge or Disengage actions, or use your action to cast a force power, you can make one weapon attack as a bonus action.\r\n\r\n### Enlightened Evasion\r\n_**Sentinel:** 15th level_\r\nWhen you are subjected to an effect that forces you to make a saving throw, you can spend 2 force points to add your Wisdom or Charisma modifier (your choice, minimum of one) to the saving throw. If you do so, you instead take no damage if you succeed on the saving throw, and only half damage if you fail. \r\n\r\n### Center of the Force\r\n_**Sentinel:** 20th level_\r\nYou are perfectly centered with the Force. Your Dexterity and Wisdom or Charisma scores (your choice) increase by 2. Your maximum for those scores increases by 2.\r\n\r\nAdditionally, once per turn, when you would roll a Kinetic Combat die, you can instead choose the maximum.\r\n\r\n### Sentinel Ideals\r\nThe ideals are presented in alphabetical order.\r\n\r\n#### Ideal of the Agile\r\nYou gain a swimming speed and a climbing speed equal to your walking speed. When you make a long jump, you can cover a number of feet up to twice your Wisdom or Charisma score (your choice). When you make a high jump, you can leap a number of feet up into the air equal to 3 + twice your Wisdom or Charisma modifier (your choice).\r\n\r\nAdditionally, as a bonus action, you can manifest this ideal in a brief surge of energy. For the next minute, opportunity attacks against you are made with disadvantage.\r\n\r\n#### Ideal of the Artisan\r\nChoose one of your skill or tool proficiencies. When you make an ability check with the chosen skill or tool, you can add half your Wisdom or Charisma modifier (your choice, minimum of one).\r\n\r\nAdditionally, as an action, you can manifest this ideal in a brief surge of energy. For the next 10 minutes, the bonus increases to your Wisdom or Charisma modifier, and you can choose a second skill or tool to extend this feature to.\r\n\r\n#### Ideal of the Contender\r\nYour unarmed strike damage increases by one step (from 1 to d4, d4 to d6, or d6 to d8), and your unarmed strikes gain the finesse property.\r\n\r\nAdditionally, as a bonus action, you can manifest this ideal in a brief surge of energy. For the next minute, your unarmed strikes count as enhanced for the purpose of overcoming resistance and immunity to unenhanced attacks and damage, and you can use your Wisdom or Charisma modifier (your choice) instead of Strength for checks made to grapple a target or escape a grapple.\r\n\r\n#### Ideal of the Fighter\r\nYou adopt a particular style of fighting as your specialty. Choose one of the fighting style options, detailed in Chapter 6. \r\n\r\nAdditionally, as a bonus action, you can manifest this ideal in a brief surge of energy. For the next minute, you know the fighting mastery that corresponds with the fighting style you chose with this feature. If you already know that fighting mastery, you instead learn another of your choice for the duration.\r\n\r\n#### Ideal of the Hunter\r\nYou gain darkvision out to a range of 60 feet. If you already have darkvision, this ideal increases its range by 30 feet.\r\n\r\nAdditionally, as a bonus action, you can manifest this ideal in a brief surge of energy. For the next minute, you can see normally in enhanced darkness, and you gain blindsight to 10 feet.\r\n\r\n#### Ideal of the Steadfast\r\nWhen you would make a melee weapon attack roll, you can instead force the target to make a Dexterity saving throw (DC = 8 + your bonus to attacks with the weapon). If you would have advantage on your attack roll, the creature instead has disadvantage on their saving throw, and if you would have disadvantage on your attack roll, the creature instead has advantage on their saving throw. On a failed save, the target takes normal weapon damage and is subjected to any additional effects that would occur on a hit.\r\n\r\nAdditionally, as a bonus action, you can manifest this ideal in a brief surge of energy. For the next minute, when a creature succeeds on the saving throw, they take half the normal weapon damage, and when a creature rolls a 1 on the saving throw, they treat the damage as if you had rolled the maximum.\r\n\r\n#### Ideal of the Titan\r\nYou gain proficiency in medium armor.\r\n\r\nAdditionally, as a bonus action, you can manifest this ideal in a brief surge of energy. For the next minute, you have advantage on ability checks and attack rolls that would forcefully move another creature, and the distance they would be moved increases by 5 feet.\r\n\r\n#### Ideal of the Tranquil\r\nWhen you finish a short or long rest, you gain a number of temporary force points equal to half your Wisdom or Charisma modifier (your choice, minimum of one). When you would spend a force point while you have temporary force points, the temporary force points are spent first. All temporary force points are lost at the end of your next short or long rest.\r\n\r\nAdditionally, as an action, you can manifest this ideal in a brief surge of energy. You regain a number of force points equal to half your Wisdom or Charisma modifier (your choice, minimum of one).\r\n\r\n#### Ideal of the Vigorous\r\nWhen you roll a Hit Die to regain hit points, you may use your Wisdom or Charisma modifier in place of your Constitution modifier when determining the number of hit points you regain.\r\n\r\nAdditionally, as an action, you can manifest this ideal in a brief surge of energy. You gain a number of temporary hit points equal to half your sentinel level + your Wisdom or Charisma modifier (your choice, minimum of one).\r\n", + "classFeatureText2": null, + "archetypeFlavorText": "Different sentinels select different callings, called Paths, to follow as they hone their powers. Your calling grants you features at 3rd, 7th, 13th, and 18th level.", + "archetypeFlavorName": "Sentinel Callings", + "archetypes": null, + "imageUrls": [ + "https://starwars5ecentral.blob.core.windows.net/site-images/classes/sentinel_01.png", + "https://starwars5ecentral.blob.core.windows.net/site-images/classes/sentinel_02.png" + ], + "imageUrlsJson": "[\"https://starwars5ecentral.blob.core.windows.net/site-images/classes/sentinel_01.png\",\"https://starwars5ecentral.blob.core.windows.net/site-images/classes/sentinel_02.png\"]", + "casterRatio": 0.6666666666666666, + "casterTypeEnum": 1, + "casterType": "Force", + "multiClassProficiencies": [ + "Light armor", + "simple lightweapons", + "simple vibroweapons" + ], + "multiClassProficienciesJson": "[\"Light armor\",\"simple lightweapons\",\"simple vibroweapons\"]", + "features": null, + "featureRowKeys": null, + "featureRowKeysJson": "", + "contentTypeEnum": 1, + "contentType": "Core", + "contentSourceEnum": 1, + "contentSource": "PHB", + "partitionKey": "Core", + "rowKey": "Sentinel", + "timestamp": "2023-05-30T20:15:42.4990758+00:00", + "eTag": "W/\"datetime'2023-05-30T20%3A15%3A42.4990758Z'\"" + } +] \ No newline at end of file