diff --git a/.gitignore b/.gitignore index 0582639..ca41d04 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,5 @@ *legends_plus.xml legendsbrowser *.pprof -*.png \ No newline at end of file +*.png +/*.json \ No newline at end of file diff --git a/analyze/analyze.go b/analyze/analyze.go index e224876..bd60a0a 100644 --- a/analyze/analyze.go +++ b/analyze/analyze.go @@ -19,59 +19,83 @@ import ( ) func Analyze(filex string) { - files, err := filepath.Glob("*.xml") + fmt.Println("Search...", filex) + files, err := filepath.Glob(filex + "/*.xml") if err != nil { log.Fatal(err) } fmt.Println(files) - files = []string{filex} - a := NewAnalyzeData() for _, file := range files { - xmlFile, err := os.Open(file) - if err != nil { - fmt.Println(err) - } - - fmt.Println("Successfully Opened", file) - defer xmlFile.Close() - - converter := util.NewConvertReader(xmlFile) - analyze(converter, a) + analyze(file, a) } + file, _ := json.MarshalIndent(a, "", " ") + _ = ioutil.WriteFile("analyze.json", file, 0644) + createMetadata(a) } -type analyzeData struct { - path []string - types *map[string]bool - fields *map[string]bool - isString *map[string]bool - multiple *map[string]bool +func Generate() { + data, err := ioutil.ReadFile("analyze.json") + if err != nil { + return + } + + a := NewAnalyzeData() + json.Unmarshal(data, a) + createMetadata(a) } -func NewAnalyzeData() analyzeData { - path := make([]string, 0) - types := make(map[string]bool, 0) - fields := make(map[string]bool, 0) - isString := make(map[string]bool, 0) - multiple := make(map[string]bool, 0) +type AnalyzeData struct { + Types map[string]bool + Fields map[string]bool + IsString map[string]bool + Multiple map[string]bool + Base map[string]bool + Plus map[string]bool +} - return analyzeData{ - path: path, - types: &types, - fields: &fields, - isString: &isString, - multiple: &multiple, +func NewAnalyzeData() *AnalyzeData { + return &AnalyzeData{ + Types: make(map[string]bool, 0), + Fields: make(map[string]bool, 0), + IsString: make(map[string]bool, 0), + Multiple: make(map[string]bool, 0), + Base: make(map[string]bool, 0), + Plus: make(map[string]bool, 0), } } -func analyzeElement(d *xml.Decoder, a analyzeData) error { - if len(a.path) > 1 { - (*a.fields)[strings.Join(a.path, ">")] = true +func analyze(file string, a *AnalyzeData) error { + xmlFile, err := os.Open(file) + if err != nil { + fmt.Println(err) + } + + plus := strings.HasSuffix(file, "_plus.xml") + + fmt.Println("Successfully Opened", file) + defer xmlFile.Close() + + converter := util.NewConvertReader(xmlFile) + + return analyzeElement(xml.NewDecoder(converter), a, make([]string, 0), plus) +} + +const PATH_SEPARATOR = "|" + +func analyzeElement(d *xml.Decoder, a *AnalyzeData, path []string, plus bool) error { + if len(path) > 1 { + s := strings.Join(path, PATH_SEPARATOR) + a.Fields[s] = true + if plus { + a.Plus[s] = true + } else { + a.Base[s] = true + } } var ( @@ -93,17 +117,16 @@ Loop: case xml.StartElement: value = false - (*a.types)[strings.Join(a.path, ">")] = true + a.Types[strings.Join(path, PATH_SEPARATOR)] = true - a2 := a - a2.path = append(a.path, t.Name.Local) + newPath := append(path, t.Name.Local) if _, ok := fields[t.Name.Local]; ok { - (*a.multiple)[strings.Join(a2.path, ">")] = true + a.Multiple[strings.Join(newPath, PATH_SEPARATOR)] = true } fields[t.Name.Local] = true - analyzeElement(d, a2) + analyzeElement(d, a, newPath, plus) case xml.CharData: data = append(data, t...) @@ -111,14 +134,13 @@ Loop: case xml.EndElement: if value { if _, err := strconv.Atoi(string(data)); err != nil { - (*a.isString)[strings.Join(a.path, ">")] = true + a.IsString[strings.Join(path, PATH_SEPARATOR)] = true } } - if t.Name.Local == "type" { - a.path[len(a.path)-2] = a.path[len(a.path)-2] + strcase.ToCamel(string(data)) - fmt.Println(a.path) - } + // if t.Name.Local == "type" { + // path[len(path)-2] = path[len(path)-2] + "+" + strcase.ToCamel(string(data)) + // } return nil } @@ -126,25 +148,49 @@ Loop: return nil } -func analyze(r io.Reader, a analyzeData) error { - d := xml.NewDecoder(r) - return analyzeElement(d, a) +func filterSubtypes(data map[string]bool) []string { + allowed := map[string]bool{ + "df_world|historical_events|historical_event": true, + "df_world|historical_event_collections|historical_event_collection": true, + } + + filtered := make(map[string]bool) + for k, v := range data { + if !v { + continue + } + path := strings.Split(k, PATH_SEPARATOR) + for index, seg := range path { + if strings.Contains(seg, "+") { + base := seg[:strings.Index(seg, "+")] + basePath := strings.Join(append(path[:index], base), PATH_SEPARATOR) + if allowed[basePath] { + path[index] = seg + } + } + } + filtered[strings.Join(path, PATH_SEPARATOR)] = true + } + list := util.Keys(filtered) + sort.Strings(list) + return list } -func createMetadata(a analyzeData) { - ts := util.Keys(*a.types) - sort.Strings(ts) +func createMetadata(a *AnalyzeData) { + ts := filterSubtypes(a.Types) + fs := filterSubtypes(a.Fields) - fs := util.Keys(*a.fields) - sort.Strings(fs) + // for _, s := range fs { + // fmt.Println(s) + // } objects := make(map[string]Object, 0) for _, k := range ts { if ok, _ := isArray(k, fs); !ok { n := k - if strings.Contains(k, ">") { - n = k[strings.LastIndex(k, ">")+1:] + if strings.Contains(k, PATH_SEPARATOR) { + n = k[strings.LastIndex(k, PATH_SEPARATOR)+1:] } if n == "" { @@ -153,48 +199,49 @@ func createMetadata(a analyzeData) { objFields := make(map[string]Field, 0) - fmt.Println("\n", n) for _, f := range fs { - if strings.HasPrefix(f, k+">") { + if strings.HasPrefix(f, k+PATH_SEPARATOR) { fn := f[len(k)+1:] - if !strings.Contains(fn, ">") { - fmt.Println(" ", fn) - - if ok, elements := isArray(f, fs); ok { - el := elements[strings.LastIndex(elements, ">")+1:] - objFields[fn] = Field{ - Name: strcase.ToCamel(fn), - Type: "array", - ElementType: &(el), - } - } else if ok, _ := isObject(f, fs); ok { - objFields[fn] = Field{ - Name: strcase.ToCamel(fn), - Type: "object", - Multiple: (*a.multiple)[f], - } - } else if (*a.isString)[f] { - objFields[fn] = Field{ - Name: strcase.ToCamel(fn), - Type: "string", - Multiple: (*a.multiple)[f], - } - } else { - objFields[fn] = Field{ - Name: strcase.ToCamel(fn), - Type: "int", - Multiple: (*a.multiple)[f], - } + if !strings.Contains(fn, PATH_SEPARATOR) { + legend := "" + if a.Base[f] && a.Plus[f] { + legend = "both" + } else if a.Base[f] { + legend = "base" + } else if a.Plus[f] { + legend = "plus" } + + field := Field{ + Name: strcase.ToCamel(fn), + Type: "int", + Multiple: a.Multiple[f], + Legend: legend, + } + if ok, elements := isArray(f, fs); ok { + el := elements[strings.LastIndex(elements, PATH_SEPARATOR)+1:] + fmt.Println(f + PATH_SEPARATOR + elements + PATH_SEPARATOR + "id") + if a.Fields[elements+PATH_SEPARATOR+"id"] { + field.Type = "map" + } else { + field.Type = "array" + } + field.ElementType = &(el) + } else if ok, _ := isObject(f, fs); ok { + field.Type = "object" + } else if a.IsString[f] { + field.Type = "string" + } + objFields[fn] = field } } } objects[n] = Object{ Name: strcase.ToCamel(n), - Id: (*a.fields)[k+">id"], - Named: (*a.fields)[k+">name"], - Typed: (*a.fields)[k+">type"], + Id: a.Fields[k+PATH_SEPARATOR+"id"], + Named: a.Fields[k+PATH_SEPARATOR+"name"], + Typed: a.Fields[k+PATH_SEPARATOR+"type"], Fields: objFields, } } @@ -203,7 +250,7 @@ func createMetadata(a analyzeData) { file, _ := json.MarshalIndent(objects, "", " ") _ = ioutil.WriteFile("model.json", file, 0644) - f, err := os.Create("contributors.go") + f, err := os.Create("df/model.go") defer f.Close() err = packageTemplate.Execute(f, struct { @@ -221,11 +268,11 @@ func isArray(typ string, types []string) (bool, string) { elements := "" for _, t := range types { - if !strings.HasPrefix(t, typ+">") { + if !strings.HasPrefix(t, typ+PATH_SEPARATOR) { continue } f := t[len(typ)+1:] - if strings.Contains(f, ">") { + if strings.Contains(f, PATH_SEPARATOR) { continue } fc++ @@ -238,7 +285,7 @@ func isObject(typ string, types []string) (bool, string) { fc := 0 for _, t := range types { - if !strings.HasPrefix(t, typ+">") { + if !strings.HasPrefix(t, typ+PATH_SEPARATOR) { continue } fc++ @@ -259,6 +306,7 @@ type Field struct { Type string `json:"type"` Multiple bool `json:"multiple,omitempty"` ElementType *string `json:"elements,omitempty"` + Legend string `json:"legend"` } func (f Field) TypeLine(objects map[string]Object) string { @@ -274,17 +322,85 @@ func (f Field) TypeLine(objects map[string]Object) string { } t := f.Type if f.Type == "array" { + t = "[]*" + objects[*f.ElementType].Name + } + if f.Type == "map" { t = "map[int]*" + objects[*f.ElementType].Name } if f.Type == "object" { t = f.Name } - j := "`json:\"" + strcase.ToLowerCamel(f.Name) + "\"`" + j := fmt.Sprintf("`json:\"%s\" legend:\"%s\"`", strcase.ToLowerCamel(f.Name), f.Legend) return fmt.Sprintf("%s %s%s %s", n, m, t, j) } +func (f Field) StartAction() string { + n := f.Name + + if n == "Id" || n == "Name" { + n = n + "_" + } + + if f.Type == "object" { + p := fmt.Sprintf("v := %s{}\nv.Parse(d, &t)", f.Name) + if !f.Multiple { + return fmt.Sprintf("%s\nobj.%s = v", p, n) + } else { + return fmt.Sprintf("%s\nobj.%s = append(obj.%s, v)", p, n, n) + } + } + + if f.Type == "array" || f.Type == "map" { + el := strcase.ToCamel(*f.ElementType) + gen := fmt.Sprintf("New%s", el) + + if f.Type == "array" { + return fmt.Sprintf("parseArray(d, &obj.%s, %s)", f.Name, gen) + } + + if f.Type == "map" { + return fmt.Sprintf("obj.%s = make(map[int]*%s)\nparseMap(d, &obj.%s, %s)", f.Name, el, f.Name, gen) + } + } + + if f.Type == "int" || f.Type == "string" { + return "data = nil" + } + + return "" +} + +func (f Field) EndAction() string { + n := f.Name + + if n == "Id" || n == "Name" { + n = n + "_" + } + + if !f.Multiple { + if f.Type == "int" { + return fmt.Sprintf("obj.%s = n(data)", n) + } else if f.Type == "string" { + return fmt.Sprintf("obj.%s = string(data)", n) + } + } else { + if f.Type == "int" { + return fmt.Sprintf("obj.%s = append(obj.%s, n(data))", n, n) + } else if f.Type == "string" { + return fmt.Sprintf("obj.%s = append(obj.%s, string(data))", n, n) + } + } + + return "" +} + var packageTemplate = template.Must(template.New("").Parse(`// Code generated by go generate; DO NOT EDIT. -package generate +package df + +import ( + "encoding/xml" + "strconv" +) {{- range $name, $obj := .Objects }} type {{ $obj.Name }} struct { @@ -293,6 +409,7 @@ type {{ $obj.Name }} struct { {{- end }} } +func New{{ $obj.Name }}() *{{ $obj.Name }} { return &{{ $obj.Name }}{} } {{- if $obj.Id }} func (x *{{ $obj.Name }}) Id() int { return x.Id_ } {{- end }} @@ -300,5 +417,57 @@ func (x *{{ $obj.Name }}) Id() int { return x.Id_ } func (x *{{ $obj.Name }}) Name() string { return x.Name_ } {{- end }} + + +{{- end }} + +// Parser + +func n(d []byte) int { + v, _ := strconv.Atoi(string(d)) + return v +} + +{{- range $name, $obj := .Objects }} +func (obj *{{ $obj.Name }}) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + {{- range $fname, $field := $obj.Fields }} + case "{{ $fname }}": + {{ $field.StartAction }} + {{- end }} + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + {{- range $fname, $field := $obj.Fields }} + case "{{ $fname }}": + {{ $field.EndAction }} + {{- end }} + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} + {{- end }} `)) diff --git a/contributors.go b/contributors.go index 732f100..fac27cc 100644 --- a/contributors.go +++ b/contributors.go @@ -1,745 +1,12097 @@ // Code generated by go generate; DO NOT EDIT. -package generate +package main + +import ( + "encoding/xml" + "fmt" + "strconv" +) type Artifact struct { - AbsTileX int `json:"absTileX"` - AbsTileY int `json:"absTileY"` - AbsTileZ int `json:"absTileZ"` - HolderHfid int `json:"holderHfid"` - Id_ int `json:"id"` - Item Item `json:"item"` - Name_ string `json:"name"` - SiteId int `json:"siteId"` - StructureLocalId int `json:"structureLocalId"` - SubregionId int `json:"subregionId"` + AbsTileX int `json:"absTileX" legend:"base"` + AbsTileY int `json:"absTileY" legend:"base"` + AbsTileZ int `json:"absTileZ" legend:"base"` + HolderHfid int `json:"holderHfid" legend:"base"` + Id_ int `json:"id" legend:"both"` + Item Item `json:"item" legend:"base"` + ItemDescription string `json:"itemDescription" legend:"plus"` + ItemSubtype string `json:"itemSubtype" legend:"plus"` + ItemType string `json:"itemType" legend:"plus"` + Mat string `json:"mat" legend:"plus"` + Name_ string `json:"name" legend:"base"` + PageCount int `json:"pageCount" legend:"plus"` + SiteId int `json:"siteId" legend:"base"` + StructureLocalId int `json:"structureLocalId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` + Writing int `json:"writing" legend:"plus"` +} +type Circumstance struct { + Defeated int `json:"defeated" legend:"plus"` + HistEventCollection int `json:"histEventCollection" legend:"plus"` + Murdered int `json:"murdered" legend:"plus"` + Type string `json:"type" legend:"plus"` +} +type Creature struct { + AllCastesAlive string `json:"allCastesAlive" legend:"plus"` + ArtificialHiveable string `json:"artificialHiveable" legend:"plus"` + BiomeDesertBadland string `json:"biomeDesertBadland" legend:"plus"` + BiomeDesertRock string `json:"biomeDesertRock" legend:"plus"` + BiomeDesertSand string `json:"biomeDesertSand" legend:"plus"` + BiomeForestTaiga string `json:"biomeForestTaiga" legend:"plus"` + BiomeForestTemperateBroadleaf string `json:"biomeForestTemperateBroadleaf" legend:"plus"` + BiomeForestTemperateConifer string `json:"biomeForestTemperateConifer" legend:"plus"` + BiomeForestTropicalConifer string `json:"biomeForestTropicalConifer" legend:"plus"` + BiomeForestTropicalDryBroadleaf string `json:"biomeForestTropicalDryBroadleaf" legend:"plus"` + BiomeForestTropicalMoistBroadleaf string `json:"biomeForestTropicalMoistBroadleaf" legend:"plus"` + BiomeGlacier string `json:"biomeGlacier" legend:"plus"` + BiomeGrasslandTemperate string `json:"biomeGrasslandTemperate" legend:"plus"` + BiomeGrasslandTropical string `json:"biomeGrasslandTropical" legend:"plus"` + BiomeLakeTemperateBrackishwater string `json:"biomeLakeTemperateBrackishwater" legend:"plus"` + BiomeLakeTemperateFreshwater string `json:"biomeLakeTemperateFreshwater" legend:"plus"` + BiomeLakeTemperateSaltwater string `json:"biomeLakeTemperateSaltwater" legend:"plus"` + BiomeLakeTropicalBrackishwater string `json:"biomeLakeTropicalBrackishwater" legend:"plus"` + BiomeLakeTropicalFreshwater string `json:"biomeLakeTropicalFreshwater" legend:"plus"` + BiomeLakeTropicalSaltwater string `json:"biomeLakeTropicalSaltwater" legend:"plus"` + BiomeMarshTemperateFreshwater string `json:"biomeMarshTemperateFreshwater" legend:"plus"` + BiomeMarshTemperateSaltwater string `json:"biomeMarshTemperateSaltwater" legend:"plus"` + BiomeMarshTropicalFreshwater string `json:"biomeMarshTropicalFreshwater" legend:"plus"` + BiomeMarshTropicalSaltwater string `json:"biomeMarshTropicalSaltwater" legend:"plus"` + BiomeMountain string `json:"biomeMountain" legend:"plus"` + BiomeOceanArctic string `json:"biomeOceanArctic" legend:"plus"` + BiomeOceanTemperate string `json:"biomeOceanTemperate" legend:"plus"` + BiomeOceanTropical string `json:"biomeOceanTropical" legend:"plus"` + BiomePoolTemperateBrackishwater string `json:"biomePoolTemperateBrackishwater" legend:"plus"` + BiomePoolTemperateFreshwater string `json:"biomePoolTemperateFreshwater" legend:"plus"` + BiomePoolTemperateSaltwater string `json:"biomePoolTemperateSaltwater" legend:"plus"` + BiomePoolTropicalBrackishwater string `json:"biomePoolTropicalBrackishwater" legend:"plus"` + BiomePoolTropicalFreshwater string `json:"biomePoolTropicalFreshwater" legend:"plus"` + BiomePoolTropicalSaltwater string `json:"biomePoolTropicalSaltwater" legend:"plus"` + BiomeRiverTemperateBrackishwater string `json:"biomeRiverTemperateBrackishwater" legend:"plus"` + BiomeRiverTemperateFreshwater string `json:"biomeRiverTemperateFreshwater" legend:"plus"` + BiomeRiverTemperateSaltwater string `json:"biomeRiverTemperateSaltwater" legend:"plus"` + BiomeRiverTropicalBrackishwater string `json:"biomeRiverTropicalBrackishwater" legend:"plus"` + BiomeRiverTropicalFreshwater string `json:"biomeRiverTropicalFreshwater" legend:"plus"` + BiomeRiverTropicalSaltwater string `json:"biomeRiverTropicalSaltwater" legend:"plus"` + BiomeSavannaTemperate string `json:"biomeSavannaTemperate" legend:"plus"` + BiomeSavannaTropical string `json:"biomeSavannaTropical" legend:"plus"` + BiomeShrublandTemperate string `json:"biomeShrublandTemperate" legend:"plus"` + BiomeShrublandTropical string `json:"biomeShrublandTropical" legend:"plus"` + BiomeSubterraneanChasm string `json:"biomeSubterraneanChasm" legend:"plus"` + BiomeSubterraneanLava string `json:"biomeSubterraneanLava" legend:"plus"` + BiomeSubterraneanWater string `json:"biomeSubterraneanWater" legend:"plus"` + BiomeSwampMangrove string `json:"biomeSwampMangrove" legend:"plus"` + BiomeSwampTemperateFreshwater string `json:"biomeSwampTemperateFreshwater" legend:"plus"` + BiomeSwampTemperateSaltwater string `json:"biomeSwampTemperateSaltwater" legend:"plus"` + BiomeSwampTropicalFreshwater string `json:"biomeSwampTropicalFreshwater" legend:"plus"` + BiomeSwampTropicalSaltwater string `json:"biomeSwampTropicalSaltwater" legend:"plus"` + BiomeTundra string `json:"biomeTundra" legend:"plus"` + CreatureId string `json:"creatureId" legend:"plus"` + DoesNotExist string `json:"doesNotExist" legend:"plus"` + Equipment string `json:"equipment" legend:"plus"` + EquipmentWagon string `json:"equipmentWagon" legend:"plus"` + Evil string `json:"evil" legend:"plus"` + Fanciful string `json:"fanciful" legend:"plus"` + Generated string `json:"generated" legend:"plus"` + Good string `json:"good" legend:"plus"` + HasAnyBenign string `json:"hasAnyBenign" legend:"plus"` + HasAnyCanSwim string `json:"hasAnyCanSwim" legend:"plus"` + HasAnyCannotBreatheAir string `json:"hasAnyCannotBreatheAir" legend:"plus"` + HasAnyCannotBreatheWater string `json:"hasAnyCannotBreatheWater" legend:"plus"` + HasAnyCarnivore string `json:"hasAnyCarnivore" legend:"plus"` + HasAnyCommonDomestic string `json:"hasAnyCommonDomestic" legend:"plus"` + HasAnyCuriousBeast string `json:"hasAnyCuriousBeast" legend:"plus"` + HasAnyDemon string `json:"hasAnyDemon" legend:"plus"` + HasAnyFeatureBeast string `json:"hasAnyFeatureBeast" legend:"plus"` + HasAnyFlier string `json:"hasAnyFlier" legend:"plus"` + HasAnyFlyRaceGait string `json:"hasAnyFlyRaceGait" legend:"plus"` + HasAnyGrasp string `json:"hasAnyGrasp" legend:"plus"` + HasAnyGrazer string `json:"hasAnyGrazer" legend:"plus"` + HasAnyHasBlood string `json:"hasAnyHasBlood" legend:"plus"` + HasAnyImmobile string `json:"hasAnyImmobile" legend:"plus"` + HasAnyIntelligentLearns string `json:"hasAnyIntelligentLearns" legend:"plus"` + HasAnyIntelligentSpeaks string `json:"hasAnyIntelligentSpeaks" legend:"plus"` + HasAnyLargePredator string `json:"hasAnyLargePredator" legend:"plus"` + HasAnyLocalPopsControllable string `json:"hasAnyLocalPopsControllable" legend:"plus"` + HasAnyLocalPopsProduceHeroes string `json:"hasAnyLocalPopsProduceHeroes" legend:"plus"` + HasAnyMegabeast string `json:"hasAnyMegabeast" legend:"plus"` + HasAnyMischievous string `json:"hasAnyMischievous" legend:"plus"` + HasAnyNaturalAnimal string `json:"hasAnyNaturalAnimal" legend:"plus"` + HasAnyNightCreature string `json:"hasAnyNightCreature" legend:"plus"` + HasAnyNightCreatureBogeyman string `json:"hasAnyNightCreatureBogeyman" legend:"plus"` + HasAnyNightCreatureHunter string `json:"hasAnyNightCreatureHunter" legend:"plus"` + HasAnyNightCreatureNightmare string `json:"hasAnyNightCreatureNightmare" legend:"plus"` + HasAnyNotFireimmune string `json:"hasAnyNotFireimmune" legend:"plus"` + HasAnyNotLiving string `json:"hasAnyNotLiving" legend:"plus"` + HasAnyOutsiderControllable string `json:"hasAnyOutsiderControllable" legend:"plus"` + HasAnyRaceGait string `json:"hasAnyRaceGait" legend:"plus"` + HasAnySemimegabeast string `json:"hasAnySemimegabeast" legend:"plus"` + HasAnySlowLearner string `json:"hasAnySlowLearner" legend:"plus"` + HasAnySupernatural string `json:"hasAnySupernatural" legend:"plus"` + HasAnyTitan string `json:"hasAnyTitan" legend:"plus"` + HasAnyUniqueDemon string `json:"hasAnyUniqueDemon" legend:"plus"` + HasAnyUtterances string `json:"hasAnyUtterances" legend:"plus"` + HasAnyVerminHateable string `json:"hasAnyVerminHateable" legend:"plus"` + HasAnyVerminMicro string `json:"hasAnyVerminMicro" legend:"plus"` + HasFemale string `json:"hasFemale" legend:"plus"` + HasMale string `json:"hasMale" legend:"plus"` + LargeRoaming string `json:"largeRoaming" legend:"plus"` + LooseClusters string `json:"looseClusters" legend:"plus"` + MatesToBreed string `json:"matesToBreed" legend:"plus"` + Mundane string `json:"mundane" legend:"plus"` + NamePlural string `json:"namePlural" legend:"plus"` + NameSingular string `json:"nameSingular" legend:"plus"` + OccursAsEntityRace string `json:"occursAsEntityRace" legend:"plus"` + Savage string `json:"savage" legend:"plus"` + SmallRace string `json:"smallRace" legend:"plus"` + TwoGenders string `json:"twoGenders" legend:"plus"` + Ubiquitous string `json:"ubiquitous" legend:"plus"` + VerminEater string `json:"verminEater" legend:"plus"` + VerminFish string `json:"verminFish" legend:"plus"` + VerminGrounder string `json:"verminGrounder" legend:"plus"` + VerminRotter string `json:"verminRotter" legend:"plus"` + VerminSoil string `json:"verminSoil" legend:"plus"` + VerminSoilColony string `json:"verminSoilColony" legend:"plus"` } -func (x *Artifact) Id() int { return x.Id_ } -func (x *Artifact) Name() string { return x.Name_ } type DanceForm struct { - Description string `json:"description"` - Id_ int `json:"id"` + Description string `json:"description" legend:"base"` + Id_ int `json:"id" legend:"both"` + Name_ string `json:"name" legend:"plus"` } -func (x *DanceForm) Id() int { return x.Id_ } type DfWorld struct { - Artifacts map[int]*Artifact `json:"artifacts"` - DanceForms map[int]*DanceForm `json:"danceForms"` - Entities map[int]*Entity `json:"entities"` - EntityPopulations map[int]* `json:"entityPopulations"` - HistoricalEras map[int]*HistoricalEra `json:"historicalEras"` - HistoricalEventCollections map[int]*HistoricalEventCollection `json:"historicalEventCollections"` - HistoricalEvents map[int]*HistoricalEvent `json:"historicalEvents"` - HistoricalFigures map[int]*HistoricalFigure `json:"historicalFigures"` - MusicalForms map[int]*MusicalForm `json:"musicalForms"` - PoeticForms map[int]*PoeticForm `json:"poeticForms"` - Regions map[int]*Region `json:"regions"` - Sites map[int]*Site `json:"sites"` - UndergroundRegions map[int]*UndergroundRegion `json:"undergroundRegions"` - WorldConstructions string `json:"worldConstructions"` - WrittenContents map[int]*WrittenContent `json:"writtenContents"` + Altname string `json:"altname" legend:"plus"` + Artifacts map[int]*Artifact `json:"artifacts" legend:"both"` + CreatureRaw map[int]*Creature `json:"creatureRaw" legend:"plus"` + DanceForms map[int]*DanceForm `json:"danceForms" legend:"both"` + Entities map[int]*Entity `json:"entities" legend:"both"` + EntityPopulations map[int]*EntityPopulation `json:"entityPopulations" legend:"both"` + HistoricalEras map[int]*HistoricalEra `json:"historicalEras" legend:"both"` + HistoricalEventCollections map[int]*HistoricalEventCollection `json:"historicalEventCollections" legend:"both"` + HistoricalEventRelationshipSupplements map[int]*HistoricalEventRelationshipSupplement `json:"historicalEventRelationshipSupplements" legend:"plus"` + HistoricalEventRelationships map[int]*HistoricalEventRelationship `json:"historicalEventRelationships" legend:"plus"` + HistoricalEvents map[int]*HistoricalEvent `json:"historicalEvents" legend:"both"` + HistoricalFigures map[int]*HistoricalFigure `json:"historicalFigures" legend:"both"` + Identities map[int]*Identity `json:"identities" legend:"plus"` + Landmasses map[int]*Landmass `json:"landmasses" legend:"plus"` + MountainPeaks map[int]*MountainPeak `json:"mountainPeaks" legend:"plus"` + MusicalForms map[int]*MusicalForm `json:"musicalForms" legend:"both"` + Name_ string `json:"name" legend:"plus"` + PoeticForms map[int]*PoeticForm `json:"poeticForms" legend:"both"` + Regions map[int]*Region `json:"regions" legend:"both"` + Rivers map[int]*River `json:"rivers" legend:"plus"` + Sites map[int]*Site `json:"sites" legend:"both"` + UndergroundRegions map[int]*UndergroundRegion `json:"undergroundRegions" legend:"both"` + WorldConstructions map[int]*WorldConstruction `json:"worldConstructions" legend:"both"` + WrittenContents map[int]*WrittenContent `json:"writtenContents" legend:"both"` } type Entity struct { - Id_ int `json:"id"` - Name_ string `json:"name"` + Child int `json:"child" legend:""` + Claims int `json:"claims" legend:""` + EntityLink EntityLink `json:"entityLink" legend:""` + EntityPosition EntityPosition `json:"entityPosition" legend:""` + EntityPositionAssignment EntityPositionAssignment `json:"entityPositionAssignment" legend:""` + HistfigId int `json:"histfigId" legend:""` + Honor []Honor `json:"honor" legend:"base"` + Id_ int `json:"id" legend:"both"` + Name_ string `json:"name" legend:"base"` + Occasion Occasion `json:"occasion" legend:""` + Profession int `json:"profession" legend:""` + Race string `json:"race" legend:"plus"` + Type string `json:"type" legend:"plus"` + Weapon int `json:"weapon" legend:""` + WorshipId int `json:"worshipId" legend:""` } -func (x *Entity) Id() int { return x.Id_ } -func (x *Entity) Name() string { return x.Name_ } type EntityFormerPositionLink struct { - EndYear int `json:"endYear"` - EntityId int `json:"entityId"` - PositionProfileId int `json:"positionProfileId"` - StartYear int `json:"startYear"` + EndYear int `json:"endYear" legend:"base"` + EntityId int `json:"entityId" legend:"base"` + PositionProfileId int `json:"positionProfileId" legend:"base"` + StartYear int `json:"startYear" legend:"base"` } type EntityLink struct { - EntityId int `json:"entityId"` - LinkStrength int `json:"linkStrength"` - LinkType string `json:"linkType"` + EntityId int `json:"entityId" legend:"base"` + LinkStrength int `json:"linkStrength" legend:"base"` + LinkType string `json:"linkType" legend:"base"` +} +type EntityPopulation struct { + CivId int `json:"civId" legend:"plus"` + Id_ int `json:"id" legend:"both"` + Race string `json:"race" legend:"plus"` +} +type EntityPosition struct { + Id_ int `json:"id" legend:""` + Name_ int `json:"name" legend:""` + NameFemale int `json:"nameFemale" legend:""` + NameMale int `json:"nameMale" legend:""` + Spouse int `json:"spouse" legend:""` + SpouseFemale int `json:"spouseFemale" legend:""` + SpouseMale int `json:"spouseMale" legend:""` +} +type EntityPositionAssignment struct { + Histfig int `json:"histfig" legend:""` + Id_ int `json:"id" legend:""` + PositionId int `json:"positionId" legend:""` + SquadId int `json:"squadId" legend:""` } type EntityPositionLink struct { - EntityId int `json:"entityId"` - PositionProfileId int `json:"positionProfileId"` - StartYear int `json:"startYear"` + EntityId int `json:"entityId" legend:"base"` + PositionProfileId int `json:"positionProfileId" legend:"base"` + StartYear int `json:"startYear" legend:"base"` +} +type EntityReputation struct { + EntityId int `json:"entityId" legend:"base"` + FirstAgelessSeasonCount int `json:"firstAgelessSeasonCount" legend:"base"` + FirstAgelessYear int `json:"firstAgelessYear" legend:"base"` + UnsolvedMurders int `json:"unsolvedMurders" legend:"base"` } type EntitySquadLink struct { - EntityId int `json:"entityId"` - SquadId int `json:"squadId"` - SquadPosition int `json:"squadPosition"` - StartYear int `json:"startYear"` + EntityId int `json:"entityId" legend:"base"` + SquadId int `json:"squadId" legend:"base"` + SquadPosition int `json:"squadPosition" legend:"base"` + StartYear int `json:"startYear" legend:"base"` +} +type Feature struct { + Reference int `json:"reference" legend:""` + Type int `json:"type" legend:""` } type HfLink struct { - Hfid int `json:"hfid"` - LinkStrength int `json:"linkStrength"` - LinkType string `json:"linkType"` + Hfid int `json:"hfid" legend:"base"` + LinkStrength int `json:"linkStrength" legend:"base"` + LinkType string `json:"linkType" legend:"base"` } type HfSkill struct { - Skill string `json:"skill"` - TotalIp int `json:"totalIp"` + Skill string `json:"skill" legend:"base"` + TotalIp int `json:"totalIp" legend:"base"` } type HistoricalEra struct { - Name_ string `json:"name"` - StartYear int `json:"startYear"` + Name_ string `json:"name" legend:"base"` + StartYear int `json:"startYear" legend:"base"` } -func (x *HistoricalEra) Name() string { return x.Name_ } type HistoricalEvent struct { - Id_ int `json:"id"` - Seconds72 int `json:"seconds72"` - Type string `json:"type"` - Year int `json:"year"` + Id_ int `json:"id" legend:"both"` + Seconds72 int `json:"seconds72" legend:"base"` + Type string `json:"type" legend:"both"` + Year int `json:"year" legend:"base"` +} +type HistoricalEventAddHfEntityHonor struct { + EntityId int `json:"entityId" legend:"base"` + Hfid int `json:"hfid" legend:"base"` + HonorId int `json:"honorId" legend:"base"` } -func (x *HistoricalEvent) Id() int { return x.Id_ } type HistoricalEventAddHfEntityLink struct { - CivId int `json:"civId"` - Hfid int `json:"hfid"` - Link string `json:"link"` - PositionId int `json:"positionId"` + AppointerHfid int `json:"appointerHfid" legend:"both"` + Civ int `json:"civ" legend:"plus"` + CivId int `json:"civId" legend:"base"` + Hfid int `json:"hfid" legend:"base"` + Histfig int `json:"histfig" legend:"plus"` + Link string `json:"link" legend:"base"` + LinkType string `json:"linkType" legend:"plus"` + Position string `json:"position" legend:"plus"` + PositionId int `json:"positionId" legend:"base"` + PromiseToHfid int `json:"promiseToHfid" legend:"both"` } type HistoricalEventAddHfHfLink struct { - Hfid int `json:"hfid"` - HfidTarget int `json:"hfidTarget"` + Hf int `json:"hf" legend:"plus"` + HfTarget int `json:"hfTarget" legend:"plus"` + Hfid int `json:"hfid" legend:"base"` + HfidTarget int `json:"hfidTarget" legend:"base"` + LinkType string `json:"linkType" legend:"plus"` +} +type HistoricalEventAddHfSiteLink struct { + Civ int `json:"civ" legend:"plus"` + Histfig int `json:"histfig" legend:"plus"` + LinkType string `json:"linkType" legend:"plus"` + Site int `json:"site" legend:"plus"` + SiteId int `json:"siteId" legend:"base"` + Structure int `json:"structure" legend:"plus"` +} +type HistoricalEventAgreementFormed struct { + Action string `json:"action" legend:"base"` + AgreementId int `json:"agreementId" legend:"base"` + AllyDefenseBonus int `json:"allyDefenseBonus" legend:"base"` + CoconspiratorBonus int `json:"coconspiratorBonus" legend:"base"` + Delegated string `json:"delegated" legend:"base"` + FailedJudgmentTest string `json:"failedJudgmentTest" legend:"base"` + Method string `json:"method" legend:"base"` + RelevantEntityId int `json:"relevantEntityId" legend:"base"` + RelevantIdForMethod int `json:"relevantIdForMethod" legend:"base"` + RelevantPositionProfileId int `json:"relevantPositionProfileId" legend:"base"` + Successful string `json:"successful" legend:"base"` + TopFacet string `json:"topFacet" legend:"base"` + TopFacetModifier int `json:"topFacetModifier" legend:"base"` + TopFacetRating int `json:"topFacetRating" legend:"base"` + TopRelationshipFactor string `json:"topRelationshipFactor" legend:"base"` + TopRelationshipModifier int `json:"topRelationshipModifier" legend:"base"` + TopRelationshipRating int `json:"topRelationshipRating" legend:"base"` + TopValue string `json:"topValue" legend:"base"` + TopValueModifier int `json:"topValueModifier" legend:"base"` + TopValueRating int `json:"topValueRating" legend:"base"` } type HistoricalEventArtifactClaimFormed struct { - ArtifactId int `json:"artifactId"` - Circumstance string `json:"circumstance"` - Claim string `json:"claim"` - EntityId int `json:"entityId"` - HistFigureId int `json:"histFigureId"` - PositionProfileId int `json:"positionProfileId"` + ArtifactId int `json:"artifactId" legend:"base"` + Circumstance string `json:"circumstance" legend:"base"` + Claim string `json:"claim" legend:"base"` + EntityId int `json:"entityId" legend:"base"` + HistFigureId int `json:"histFigureId" legend:"base"` + PositionProfileId int `json:"positionProfileId" legend:"base"` +} +type HistoricalEventArtifactCopied struct { + ArtifactId int `json:"artifactId" legend:"base"` + DestEntityId int `json:"destEntityId" legend:"base"` + DestSiteId int `json:"destSiteId" legend:"base"` + DestStructureId int `json:"destStructureId" legend:"base"` + FromOriginal string `json:"fromOriginal" legend:"base"` + SourceEntityId int `json:"sourceEntityId" legend:"base"` + SourceSiteId int `json:"sourceSiteId" legend:"base"` + SourceStructureId int `json:"sourceStructureId" legend:"base"` } type HistoricalEventArtifactCreated struct { - ArtifactId int `json:"artifactId"` - HistFigureId int `json:"histFigureId"` - SiteId int `json:"siteId"` - UnitId int `json:"unitId"` + ArtifactId int `json:"artifactId" legend:"both"` + Circumstance Circumstance `json:"circumstance" legend:"plus"` + CreatorHfid int `json:"creatorHfid" legend:"plus"` + CreatorUnitId int `json:"creatorUnitId" legend:"plus"` + HistFigureId int `json:"histFigureId" legend:"base"` + NameOnly string `json:"nameOnly" legend:"base"` + Reason string `json:"reason" legend:"plus"` + SanctifyHf int `json:"sanctifyHf" legend:"plus"` + Site int `json:"site" legend:"plus"` + SiteId int `json:"siteId" legend:"base"` + UnitId int `json:"unitId" legend:"base"` +} +type HistoricalEventArtifactDestroyed struct { + ArtifactId int `json:"artifactId" legend:"base"` + DestroyerEnid int `json:"destroyerEnid" legend:"base"` + SiteId int `json:"siteId" legend:"base"` +} +type HistoricalEventArtifactFound struct { + ArtifactId int `json:"artifactId" legend:"base"` + HistFigureId int `json:"histFigureId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + UnitId int `json:"unitId" legend:"base"` +} +type HistoricalEventArtifactGiven struct { + ArtifactId int `json:"artifactId" legend:"base"` + GiverEntityId int `json:"giverEntityId" legend:"base"` + GiverHistFigureId int `json:"giverHistFigureId" legend:"base"` + ReceiverEntityId int `json:"receiverEntityId" legend:"base"` + ReceiverHistFigureId int `json:"receiverHistFigureId" legend:"base"` } type HistoricalEventArtifactLost struct { - ArtifactId int `json:"artifactId"` - SiteId int `json:"siteId"` - SubregionId int `json:"subregionId"` + ArtifactId int `json:"artifactId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SitePropertyId int `json:"sitePropertyId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` +} +type HistoricalEventArtifactPossessed struct { + ArtifactId int `json:"artifactId" legend:"base"` + Circumstance string `json:"circumstance" legend:"base"` + CircumstanceId int `json:"circumstanceId" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + HistFigureId int `json:"histFigureId" legend:"base"` + Reason string `json:"reason" legend:"base"` + ReasonId int `json:"reasonId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` + UnitId int `json:"unitId" legend:"base"` +} +type HistoricalEventArtifactRecovered struct { + ArtifactId int `json:"artifactId" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + HistFigureId int `json:"histFigureId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + StructureId int `json:"structureId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` + UnitId int `json:"unitId" legend:"base"` } type HistoricalEventArtifactStored struct { - ArtifactId int `json:"artifactId"` - HistFigureId int `json:"histFigureId"` - SiteId int `json:"siteId"` - UnitId int `json:"unitId"` + ArtifactId int `json:"artifactId" legend:"base"` + HistFigureId int `json:"histFigureId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + UnitId int `json:"unitId" legend:"base"` } type HistoricalEventAssumeIdentity struct { - IdentityId int `json:"identityId"` - TargetEnid int `json:"targetEnid"` - TricksterHfid int `json:"tricksterHfid"` + IdentityCaste string `json:"identityCaste" legend:"plus"` + IdentityHistfigId int `json:"identityHistfigId" legend:"plus"` + IdentityId int `json:"identityId" legend:"base"` + IdentityName string `json:"identityName" legend:"plus"` + IdentityNemesisId int `json:"identityNemesisId" legend:"plus"` + IdentityRace string `json:"identityRace" legend:"plus"` + Target int `json:"target" legend:"plus"` + TargetEnid int `json:"targetEnid" legend:"base"` + Trickster int `json:"trickster" legend:"plus"` + TricksterHfid int `json:"tricksterHfid" legend:"base"` } type HistoricalEventAttackedSite struct { - AttackerCivId int `json:"attackerCivId"` - AttackerGeneralHfid int `json:"attackerGeneralHfid"` - DefenderCivId int `json:"defenderCivId"` - DefenderGeneralHfid int `json:"defenderGeneralHfid"` - SiteCivId int `json:"siteCivId"` - SiteId int `json:"siteId"` + ASupportMercEnid int `json:"aSupportMercEnid" legend:"base"` + AttackerCivId int `json:"attackerCivId" legend:"base"` + AttackerGeneralHfid int `json:"attackerGeneralHfid" legend:"base"` + AttackerMercEnid int `json:"attackerMercEnid" legend:"base"` + DSupportMercEnid int `json:"dSupportMercEnid" legend:"base"` + DefenderCivId int `json:"defenderCivId" legend:"base"` + DefenderGeneralHfid int `json:"defenderGeneralHfid" legend:"base"` + DefenderMercEnid int `json:"defenderMercEnid" legend:"base"` + SiteCivId int `json:"siteCivId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` } type HistoricalEventBodyAbused struct { - Coords string `json:"coords"` - FeatureLayerId int `json:"featureLayerId"` - SiteId int `json:"siteId"` - SubregionId int `json:"subregionId"` + AbuseType string `json:"abuseType" legend:"plus"` + Bodies []int `json:"bodies" legend:"plus"` + Civ int `json:"civ" legend:"plus"` + Coords string `json:"coords" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + Histfig int `json:"histfig" legend:"plus"` + Interaction int `json:"interaction" legend:"plus"` + ItemMat string `json:"itemMat" legend:"plus"` + ItemSubtype string `json:"itemSubtype" legend:"plus"` + ItemType string `json:"itemType" legend:"plus"` + PileType string `json:"pileType" legend:"plus"` + Site int `json:"site" legend:"plus"` + SiteId int `json:"siteId" legend:"base"` + Structure int `json:"structure" legend:"plus"` + SubregionId int `json:"subregionId" legend:"base"` + Tree int `json:"tree" legend:"plus"` + VictimEntity int `json:"victimEntity" legend:"plus"` +} +type HistoricalEventBuildingProfileAcquired struct { + AcquirerEnid int `json:"acquirerEnid" legend:"base"` + AcquirerHfid int `json:"acquirerHfid" legend:"base"` + BuildingProfileId int `json:"buildingProfileId" legend:"base"` + Inherited string `json:"inherited" legend:"base"` + LastOwnerHfid int `json:"lastOwnerHfid" legend:"base"` + PurchasedUnowned string `json:"purchasedUnowned" legend:"base"` + RebuiltRuined string `json:"rebuiltRuined" legend:"base"` + SiteId int `json:"siteId" legend:"base"` } type HistoricalEventCeremony struct { - CivId int `json:"civId"` - FeatureLayerId int `json:"featureLayerId"` - OccasionId int `json:"occasionId"` - ScheduleId int `json:"scheduleId"` - SiteId int `json:"siteId"` - SubregionId int `json:"subregionId"` + CivId int `json:"civId" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + OccasionId int `json:"occasionId" legend:"base"` + ScheduleId int `json:"scheduleId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` +} +type HistoricalEventChangeCreatureType struct { + Changee int `json:"changee" legend:"plus"` + Changer int `json:"changer" legend:"plus"` + NewCaste int `json:"newCaste" legend:"plus"` + NewRace string `json:"newRace" legend:"plus"` + OldCaste int `json:"oldCaste" legend:"plus"` + OldRace string `json:"oldRace" legend:"plus"` +} +type HistoricalEventChangeHfBodyState struct { + BodyState string `json:"bodyState" legend:"base"` + Coords string `json:"coords" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + Hfid int `json:"hfid" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + StructureId int `json:"structureId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` } type HistoricalEventChangeHfJob struct { - FeatureLayerId int `json:"featureLayerId"` - Hfid int `json:"hfid"` - SiteId int `json:"siteId"` - SubregionId int `json:"subregionId"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + Hfid int `json:"hfid" legend:"both"` + NewJob string `json:"newJob" legend:"plus"` + OldJob string `json:"oldJob" legend:"plus"` + Site int `json:"site" legend:"plus"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` } type HistoricalEventChangeHfState struct { - Coords string `json:"coords"` - FeatureLayerId int `json:"featureLayerId"` - Hfid int `json:"hfid"` - Mood string `json:"mood"` - Reason string `json:"reason"` - SiteId int `json:"siteId"` - State string `json:"state"` - SubregionId int `json:"subregionId"` + Coords string `json:"coords" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + Hfid int `json:"hfid" legend:"both"` + Mood string `json:"mood" legend:"base"` + Reason string `json:"reason" legend:"both"` + Site int `json:"site" legend:"plus"` + SiteId int `json:"siteId" legend:"base"` + State string `json:"state" legend:"both"` + SubregionId int `json:"subregionId" legend:"base"` } type HistoricalEventChangedCreatureType struct { - ChangeeHfid int `json:"changeeHfid"` - ChangerHfid int `json:"changerHfid"` - NewCaste string `json:"newCaste"` - NewRace string `json:"newRace"` - OldCaste string `json:"oldCaste"` - OldRace string `json:"oldRace"` + ChangeeHfid int `json:"changeeHfid" legend:"base"` + ChangerHfid int `json:"changerHfid" legend:"base"` + NewCaste string `json:"newCaste" legend:"base"` + NewRace string `json:"newRace" legend:"base"` + OldCaste string `json:"oldCaste" legend:"base"` + OldRace string `json:"oldRace" legend:"base"` } type HistoricalEventCompetition struct { - CivId int `json:"civId"` - CompetitorHfid []int `json:"competitorHfid"` - FeatureLayerId int `json:"featureLayerId"` - OccasionId int `json:"occasionId"` - ScheduleId int `json:"scheduleId"` - SiteId int `json:"siteId"` - SubregionId int `json:"subregionId"` - WinnerHfid int `json:"winnerHfid"` + CivId int `json:"civId" legend:"base"` + CompetitorHfid []int `json:"competitorHfid" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + OccasionId int `json:"occasionId" legend:"base"` + ScheduleId int `json:"scheduleId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` + WinnerHfid int `json:"winnerHfid" legend:"base"` +} +type HistoricalEventCreateEntityPosition struct { + Civ int `json:"civ" legend:"plus"` + Histfig int `json:"histfig" legend:"plus"` + Position string `json:"position" legend:"plus"` + Reason string `json:"reason" legend:"plus"` + SiteCiv int `json:"siteCiv" legend:"plus"` +} +type HistoricalEventCreatedBuilding struct { + BuilderHf int `json:"builderHf" legend:"plus"` + Civ int `json:"civ" legend:"plus"` + Rebuild string `json:"rebuild" legend:"plus"` + Site int `json:"site" legend:"plus"` + SiteCiv int `json:"siteCiv" legend:"plus"` + Structure int `json:"structure" legend:"plus"` } type HistoricalEventCreatedSite struct { - BuilderHfid int `json:"builderHfid"` - CivId int `json:"civId"` - SiteCivId int `json:"siteCivId"` - SiteId int `json:"siteId"` + BuilderHfid int `json:"builderHfid" legend:"base"` + CivId int `json:"civId" legend:"base"` + ResidentCivId int `json:"residentCivId" legend:"base"` + SiteCivId int `json:"siteCivId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` } type HistoricalEventCreatedStructure struct { - BuilderHfid int `json:"builderHfid"` - CivId int `json:"civId"` - SiteCivId int `json:"siteCivId"` - SiteId int `json:"siteId"` - StructureId int `json:"structureId"` + BuilderHfid int `json:"builderHfid" legend:"base"` + CivId int `json:"civId" legend:"base"` + Rebuilt string `json:"rebuilt" legend:"base"` + SiteCivId int `json:"siteCivId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + StructureId int `json:"structureId" legend:"base"` } type HistoricalEventCreatedWorldConstruction struct { - CivId int `json:"civId"` - MasterWcid int `json:"masterWcid"` - SiteCivId int `json:"siteCivId"` - SiteId1 int `json:"siteId1"` - SiteId2 int `json:"siteId2"` - Wcid int `json:"wcid"` + CivId int `json:"civId" legend:"base"` + MasterWcid int `json:"masterWcid" legend:"base"` + SiteCivId int `json:"siteCivId" legend:"base"` + SiteId1 int `json:"siteId1" legend:"base"` + SiteId2 int `json:"siteId2" legend:"base"` + Wcid int `json:"wcid" legend:"base"` } type HistoricalEventCreatureDevoured struct { - FeatureLayerId int `json:"featureLayerId"` - SiteId int `json:"siteId"` - SubregionId int `json:"subregionId"` + Caste string `json:"caste" legend:"plus"` + Eater int `json:"eater" legend:"plus"` + Entity int `json:"entity" legend:"plus"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + Race string `json:"race" legend:"plus"` + Site int `json:"site" legend:"plus"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` + Victim int `json:"victim" legend:"plus"` +} +type HistoricalEventDanceFormCreated struct { + Circumstance string `json:"circumstance" legend:"base"` + CircumstanceId int `json:"circumstanceId" legend:"base"` + FormId int `json:"formId" legend:"base"` + HistFigureId int `json:"histFigureId" legend:"base"` + Reason string `json:"reason" legend:"base"` + ReasonId int `json:"reasonId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` +} +type HistoricalEventDestroyedSite struct { + AttackerCivId int `json:"attackerCivId" legend:"base"` + DefenderCivId int `json:"defenderCivId" legend:"base"` + SiteCivId int `json:"siteCivId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` +} +type HistoricalEventEntityAction struct { + Action string `json:"action" legend:"plus"` + Entity int `json:"entity" legend:"plus"` + Site int `json:"site" legend:"plus"` + Structure int `json:"structure" legend:"plus"` } type HistoricalEventEntityAllianceFormed struct { - InitiatingEnid int `json:"initiatingEnid"` - JoiningEnid int `json:"joiningEnid"` + InitiatingEnid int `json:"initiatingEnid" legend:"base"` + JoiningEnid []int `json:"joiningEnid" legend:"base"` } type HistoricalEventEntityBreachFeatureLayer struct { - CivEntityId int `json:"civEntityId"` - FeatureLayerId int `json:"featureLayerId"` - SiteEntityId int `json:"siteEntityId"` - SiteId int `json:"siteId"` + CivEntityId int `json:"civEntityId" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + SiteEntityId int `json:"siteEntityId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` } type HistoricalEventEntityCreated struct { - EntityId int `json:"entityId"` - SiteId int `json:"siteId"` - StructureId int `json:"structureId"` + CreatorHfid int `json:"creatorHfid" legend:"base"` + EntityId int `json:"entityId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + StructureId int `json:"structureId" legend:"base"` +} +type HistoricalEventEntityDissolved struct { + EntityId int `json:"entityId" legend:"base"` + Reason string `json:"reason" legend:"base"` +} +type HistoricalEventEntityEquipmentPurchase struct { + EntityId int `json:"entityId" legend:"base"` + Hfid []int `json:"hfid" legend:"base"` + NewEquipmentLevel int `json:"newEquipmentLevel" legend:"base"` +} +type HistoricalEventEntityIncorporated struct { + JoinedEntityId int `json:"joinedEntityId" legend:"base"` + JoinerEntityId int `json:"joinerEntityId" legend:"base"` + LeaderHfid int `json:"leaderHfid" legend:"base"` + PartialIncorporation string `json:"partialIncorporation" legend:"base"` + SiteId int `json:"siteId" legend:"base"` +} +type HistoricalEventEntityLaw struct { + EntityId int `json:"entityId" legend:"base"` + HistFigureId int `json:"histFigureId" legend:"base"` + LawAdd string `json:"lawAdd" legend:"base"` + LawRemove string `json:"lawRemove" legend:"base"` +} +type HistoricalEventEntityOverthrown struct { + ConspiratorHfid []int `json:"conspiratorHfid" legend:"base"` + EntityId int `json:"entityId" legend:"base"` + InstigatorHfid int `json:"instigatorHfid" legend:"base"` + OverthrownHfid int `json:"overthrownHfid" legend:"base"` + PosTakerHfid int `json:"posTakerHfid" legend:"base"` + PositionProfileId int `json:"positionProfileId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` +} +type HistoricalEventEntityPersecuted struct { + DestroyedStructureId int `json:"destroyedStructureId" legend:"base"` + ExpelledCreature []int `json:"expelledCreature" legend:"base"` + ExpelledHfid []int `json:"expelledHfid" legend:"base"` + ExpelledNumber []int `json:"expelledNumber" legend:"base"` + ExpelledPopId []int `json:"expelledPopId" legend:"base"` + PersecutorEnid int `json:"persecutorEnid" legend:"base"` + PersecutorHfid int `json:"persecutorHfid" legend:"base"` + PropertyConfiscatedFromHfid []int `json:"propertyConfiscatedFromHfid" legend:"base"` + ShrineAmountDestroyed int `json:"shrineAmountDestroyed" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + TargetEnid int `json:"targetEnid" legend:"base"` +} +type HistoricalEventEntityPrimaryCriminals struct { + EntityId int `json:"entityId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + StructureId int `json:"structureId" legend:"base"` +} +type HistoricalEventEntityRelocate struct { + EntityId int `json:"entityId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + StructureId int `json:"structureId" legend:"base"` } type HistoricalEventFailedFrameAttempt struct { - ConvicterEnid int `json:"convicterEnid"` - Crime string `json:"crime"` - FooledHfid int `json:"fooledHfid"` - FramerHfid int `json:"framerHfid"` - TargetHfid int `json:"targetHfid"` + ConvicterEnid int `json:"convicterEnid" legend:"base"` + Crime string `json:"crime" legend:"base"` + FooledHfid int `json:"fooledHfid" legend:"base"` + FramerHfid int `json:"framerHfid" legend:"base"` + PlotterHfid int `json:"plotterHfid" legend:"base"` + TargetHfid int `json:"targetHfid" legend:"base"` +} +type HistoricalEventFailedIntrigueCorruption struct { + Action string `json:"action" legend:"base"` + AllyDefenseBonus int `json:"allyDefenseBonus" legend:"base"` + CoconspiratorBonus int `json:"coconspiratorBonus" legend:"base"` + CorruptorHfid int `json:"corruptorHfid" legend:"base"` + CorruptorIdentity int `json:"corruptorIdentity" legend:"base"` + FailedJudgmentTest string `json:"failedJudgmentTest" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + LureHfid int `json:"lureHfid" legend:"base"` + Method string `json:"method" legend:"base"` + RelevantEntityId int `json:"relevantEntityId" legend:"base"` + RelevantIdForMethod int `json:"relevantIdForMethod" legend:"base"` + RelevantPositionProfileId int `json:"relevantPositionProfileId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` + TargetHfid int `json:"targetHfid" legend:"base"` + TargetIdentity int `json:"targetIdentity" legend:"base"` + TopFacet string `json:"topFacet" legend:"base"` + TopFacetModifier int `json:"topFacetModifier" legend:"base"` + TopFacetRating int `json:"topFacetRating" legend:"base"` + TopRelationshipFactor string `json:"topRelationshipFactor" legend:"base"` + TopRelationshipModifier int `json:"topRelationshipModifier" legend:"base"` + TopRelationshipRating int `json:"topRelationshipRating" legend:"base"` + TopValue string `json:"topValue" legend:"base"` + TopValueModifier int `json:"topValueModifier" legend:"base"` + TopValueRating int `json:"topValueRating" legend:"base"` } type HistoricalEventFieldBattle struct { - AttackerCivId int `json:"attackerCivId"` - AttackerGeneralHfid int `json:"attackerGeneralHfid"` - Coords string `json:"coords"` - DefenderCivId int `json:"defenderCivId"` - DefenderGeneralHfid int `json:"defenderGeneralHfid"` - FeatureLayerId int `json:"featureLayerId"` - SubregionId int `json:"subregionId"` + ASupportMercEnid int `json:"aSupportMercEnid" legend:"base"` + AttackerCivId int `json:"attackerCivId" legend:"base"` + AttackerGeneralHfid int `json:"attackerGeneralHfid" legend:"base"` + AttackerMercEnid int `json:"attackerMercEnid" legend:"base"` + Coords string `json:"coords" legend:"base"` + DSupportMercEnid int `json:"dSupportMercEnid" legend:"base"` + DefenderCivId int `json:"defenderCivId" legend:"base"` + DefenderGeneralHfid int `json:"defenderGeneralHfid" legend:"base"` + DefenderMercEnid int `json:"defenderMercEnid" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` } type HistoricalEventGamble struct { - GamblerHfid int `json:"gamblerHfid"` - NewAccount int `json:"newAccount"` - OldAccount int `json:"oldAccount"` - SiteId int `json:"siteId"` - StructureId int `json:"structureId"` + GamblerHfid int `json:"gamblerHfid" legend:"base"` + NewAccount int `json:"newAccount" legend:"base"` + OldAccount int `json:"oldAccount" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + StructureId int `json:"structureId" legend:"base"` } type HistoricalEventHfAbducted struct { - FeatureLayerId int `json:"featureLayerId"` - SiteId int `json:"siteId"` - SnatcherHfid int `json:"snatcherHfid"` - SubregionId int `json:"subregionId"` - TargetHfid int `json:"targetHfid"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SnatcherHfid int `json:"snatcherHfid" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` + TargetHfid int `json:"targetHfid" legend:"base"` +} +type HistoricalEventHfActOnBuilding struct { + Action string `json:"action" legend:"plus"` + Histfig int `json:"histfig" legend:"plus"` + Site int `json:"site" legend:"plus"` + Structure int `json:"structure" legend:"plus"` } type HistoricalEventHfAttackedSite struct { - AttackerHfid int `json:"attackerHfid"` - DefenderCivId int `json:"defenderCivId"` - SiteCivId int `json:"siteCivId"` - SiteId int `json:"siteId"` + AttackerHfid int `json:"attackerHfid" legend:"base"` + DefenderCivId int `json:"defenderCivId" legend:"base"` + SiteCivId int `json:"siteCivId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` +} +type HistoricalEventHfConfronted struct { + Coords string `json:"coords" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + Hfid int `json:"hfid" legend:"base"` + Reason []string `json:"reason" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + Situation string `json:"situation" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` } type HistoricalEventHfConvicted struct { - ConvictedHfid int `json:"convictedHfid"` - ConvicterEnid int `json:"convicterEnid"` - Crime string `json:"crime"` - PrisonMonths int `json:"prisonMonths"` + CoconspiratorHfid int `json:"coconspiratorHfid" legend:"base"` + ConfessedAfterApbArrestEnid int `json:"confessedAfterApbArrestEnid" legend:"base"` + ContactHfid int `json:"contactHfid" legend:"base"` + ConvictIsContact string `json:"convictIsContact" legend:"base"` + ConvictedHfid int `json:"convictedHfid" legend:"base"` + ConvicterEnid int `json:"convicterEnid" legend:"base"` + CorruptConvicterHfid int `json:"corruptConvicterHfid" legend:"base"` + Crime string `json:"crime" legend:"base"` + DeathPenalty string `json:"deathPenalty" legend:"base"` + DidNotRevealAllInInterrogation string `json:"didNotRevealAllInInterrogation" legend:"base"` + Exiled string `json:"exiled" legend:"base"` + FooledHfid int `json:"fooledHfid" legend:"base"` + FramerHfid int `json:"framerHfid" legend:"base"` + HeldFirmInInterrogation string `json:"heldFirmInInterrogation" legend:"base"` + ImplicatedHfid []int `json:"implicatedHfid" legend:"base"` + InterrogatorHfid int `json:"interrogatorHfid" legend:"base"` + PlotterHfid int `json:"plotterHfid" legend:"base"` + PrisonMonths int `json:"prisonMonths" legend:"base"` + SurveiledCoconspirator string `json:"surveiledCoconspirator" legend:"base"` + SurveiledContact string `json:"surveiledContact" legend:"base"` + SurveiledConvicted string `json:"surveiledConvicted" legend:"base"` + SurveiledTarget string `json:"surveiledTarget" legend:"base"` + TargetHfid int `json:"targetHfid" legend:"base"` + WrongfulConviction string `json:"wrongfulConviction" legend:"base"` } type HistoricalEventHfDestroyedSite struct { - AttackerHfid int `json:"attackerHfid"` - DefenderCivId int `json:"defenderCivId"` - SiteCivId int `json:"siteCivId"` - SiteId int `json:"siteId"` + AttackerHfid int `json:"attackerHfid" legend:"base"` + DefenderCivId int `json:"defenderCivId" legend:"base"` + SiteCivId int `json:"siteCivId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` } type HistoricalEventHfDied struct { - Cause string `json:"cause"` - FeatureLayerId int `json:"featureLayerId"` - Hfid int `json:"hfid"` - SiteId int `json:"siteId"` - SlayerCaste string `json:"slayerCaste"` - SlayerHfid int `json:"slayerHfid"` - SlayerItemId int `json:"slayerItemId"` - SlayerRace string `json:"slayerRace"` - SlayerShooterItemId int `json:"slayerShooterItemId"` - SubregionId int `json:"subregionId"` + Cause string `json:"cause" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + Hfid int `json:"hfid" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SlayerCaste string `json:"slayerCaste" legend:"base"` + SlayerHfid int `json:"slayerHfid" legend:"base"` + SlayerItemId int `json:"slayerItemId" legend:"base"` + SlayerRace string `json:"slayerRace" legend:"base"` + SlayerShooterItemId int `json:"slayerShooterItemId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` +} +type HistoricalEventHfDisturbedStructure struct { + HistFigId int `json:"histFigId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + StructureId int `json:"structureId" legend:"base"` +} +type HistoricalEventHfDoesInteraction struct { + Doer int `json:"doer" legend:"plus"` + DoerHfid int `json:"doerHfid" legend:"base"` + Interaction string `json:"interaction" legend:"base"` + InteractionAction string `json:"interactionAction" legend:"plus"` + Region int `json:"region" legend:"plus"` + Site int `json:"site" legend:"plus"` + Source int `json:"source" legend:"plus"` + Target int `json:"target" legend:"plus"` + TargetHfid int `json:"targetHfid" legend:"base"` +} +type HistoricalEventHfEnslaved struct { + EnslavedHfid int `json:"enslavedHfid" legend:"base"` + MovedToSiteId int `json:"movedToSiteId" legend:"base"` + PayerEntityId int `json:"payerEntityId" legend:"base"` + SellerHfid int `json:"sellerHfid" legend:"base"` +} +type HistoricalEventHfEquipmentPurchase struct { + FeatureLayerId int `json:"featureLayerId" legend:"base"` + GroupHfid int `json:"groupHfid" legend:"base"` + Quality int `json:"quality" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + StructureId int `json:"structureId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` } type HistoricalEventHfGainsSecretGoal struct { - Hfid int `json:"hfid"` - SecretGoal string `json:"secretGoal"` + Hfid int `json:"hfid" legend:"base"` + SecretGoal string `json:"secretGoal" legend:"base"` +} +type HistoricalEventHfInterrogated struct { + ArrestingEnid int `json:"arrestingEnid" legend:"base"` + HeldFirmInInterrogation string `json:"heldFirmInInterrogation" legend:"base"` + InterrogatorHfid int `json:"interrogatorHfid" legend:"base"` + TargetHfid int `json:"targetHfid" legend:"base"` + WantedAndRecognized string `json:"wantedAndRecognized" legend:"base"` +} +type HistoricalEventHfLearnsSecret struct { + Artifact int `json:"artifact" legend:"plus"` + ArtifactId int `json:"artifactId" legend:"base"` + Interaction string `json:"interaction" legend:"base"` + SecretText string `json:"secretText" legend:"plus"` + Student int `json:"student" legend:"plus"` + StudentHfid int `json:"studentHfid" legend:"base"` + Teacher int `json:"teacher" legend:"plus"` + TeacherHfid int `json:"teacherHfid" legend:"base"` } type HistoricalEventHfNewPet struct { - Coords string `json:"coords"` - FeatureLayerId int `json:"featureLayerId"` - GroupHfid int `json:"groupHfid"` - SiteId int `json:"siteId"` - SubregionId int `json:"subregionId"` + Coords string `json:"coords" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + GroupHfid int `json:"groupHfid" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` +} +type HistoricalEventHfPerformedHorribleExperiments struct { + FeatureLayerId int `json:"featureLayerId" legend:"base"` + GroupHfid int `json:"groupHfid" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + StructureId int `json:"structureId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` +} +type HistoricalEventHfPrayedInsideStructure struct { + HistFigId int `json:"histFigId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + StructureId int `json:"structureId" legend:"base"` +} +type HistoricalEventHfPreach struct { + Entity1 int `json:"entity1" legend:"base"` + Entity2 int `json:"entity2" legend:"base"` + SiteHfid int `json:"siteHfid" legend:"base"` + SpeakerHfid int `json:"speakerHfid" legend:"base"` + Topic string `json:"topic" legend:"base"` +} +type HistoricalEventHfProfanedStructure struct { + HistFigId int `json:"histFigId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + StructureId int `json:"structureId" legend:"base"` +} +type HistoricalEventHfRecruitedUnitTypeForEntity struct { + EntityId int `json:"entityId" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + Hfid int `json:"hfid" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` + UnitType string `json:"unitType" legend:"base"` } type HistoricalEventHfRelationshipDenied struct { - FeatureLayerId int `json:"featureLayerId"` - Reason string `json:"reason"` - ReasonId int `json:"reasonId"` - Relationship string `json:"relationship"` - SeekerHfid int `json:"seekerHfid"` - SiteId int `json:"siteId"` - SubregionId int `json:"subregionId"` - TargetHfid int `json:"targetHfid"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + Reason string `json:"reason" legend:"base"` + ReasonId int `json:"reasonId" legend:"base"` + Relationship string `json:"relationship" legend:"base"` + SeekerHfid int `json:"seekerHfid" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` + TargetHfid int `json:"targetHfid" legend:"base"` +} +type HistoricalEventHfReunion struct { + FeatureLayerId int `json:"featureLayerId" legend:"base"` + Group1Hfid int `json:"group1Hfid" legend:"base"` + Group2Hfid []int `json:"group2Hfid" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` +} +type HistoricalEventHfRevived struct { + ActorHfid int `json:"actorHfid" legend:"base"` + Disturbance string `json:"disturbance" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + Hfid int `json:"hfid" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` } type HistoricalEventHfSimpleBattleEvent struct { - FeatureLayerId int `json:"featureLayerId"` - Group1Hfid int `json:"group1Hfid"` - Group2Hfid int `json:"group2Hfid"` - SiteId int `json:"siteId"` - SubregionId int `json:"subregionId"` - Subtype string `json:"subtype"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + Group1Hfid int `json:"group1Hfid" legend:"base"` + Group2Hfid int `json:"group2Hfid" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` + Subtype string `json:"subtype" legend:"base"` } type HistoricalEventHfTravel struct { - Coords string `json:"coords"` - FeatureLayerId int `json:"featureLayerId"` - GroupHfid int `json:"groupHfid"` - Return string `json:"return"` - SiteId int `json:"siteId"` - SubregionId int `json:"subregionId"` + Coords string `json:"coords" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + GroupHfid []int `json:"groupHfid" legend:"base"` + Return string `json:"return" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` +} +type HistoricalEventHfViewedArtifact struct { + ArtifactId int `json:"artifactId" legend:"base"` + HistFigId int `json:"histFigId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + StructureId int `json:"structureId" legend:"base"` } type HistoricalEventHfWounded struct { - FeatureLayerId int `json:"featureLayerId"` - SiteId int `json:"siteId"` - SubregionId int `json:"subregionId"` - WoundeeHfid int `json:"woundeeHfid"` - WounderHfid int `json:"wounderHfid"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` + WoundeeHfid int `json:"woundeeHfid" legend:"base"` + WounderHfid int `json:"wounderHfid" legend:"base"` +} +type HistoricalEventHfsFormedIntrigueRelationship struct { + Action string `json:"action" legend:"base"` + AllyDefenseBonus int `json:"allyDefenseBonus" legend:"base"` + Circumstance string `json:"circumstance" legend:"base"` + CircumstanceId int `json:"circumstanceId" legend:"base"` + CoconspiratorBonus int `json:"coconspiratorBonus" legend:"base"` + CorruptorHfid int `json:"corruptorHfid" legend:"base"` + CorruptorIdentity int `json:"corruptorIdentity" legend:"base"` + CorruptorSeenAs string `json:"corruptorSeenAs" legend:"base"` + FailedJudgmentTest string `json:"failedJudgmentTest" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + LureHfid int `json:"lureHfid" legend:"base"` + Method string `json:"method" legend:"base"` + RelevantEntityId int `json:"relevantEntityId" legend:"base"` + RelevantIdForMethod int `json:"relevantIdForMethod" legend:"base"` + RelevantPositionProfileId int `json:"relevantPositionProfileId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` + Successful string `json:"successful" legend:"base"` + TargetHfid int `json:"targetHfid" legend:"base"` + TargetIdentity int `json:"targetIdentity" legend:"base"` + TargetSeenAs string `json:"targetSeenAs" legend:"base"` + TopFacet string `json:"topFacet" legend:"base"` + TopFacetModifier int `json:"topFacetModifier" legend:"base"` + TopFacetRating int `json:"topFacetRating" legend:"base"` + TopRelationshipFactor string `json:"topRelationshipFactor" legend:"base"` + TopRelationshipModifier int `json:"topRelationshipModifier" legend:"base"` + TopRelationshipRating int `json:"topRelationshipRating" legend:"base"` + TopValue string `json:"topValue" legend:"base"` + TopValueModifier int `json:"topValueModifier" legend:"base"` + TopValueRating int `json:"topValueRating" legend:"base"` } type HistoricalEventHfsFormedReputationRelationship struct { - FeatureLayerId int `json:"featureLayerId"` - HfRep1Of2 string `json:"hfRep1Of2"` - HfRep2Of1 string `json:"hfRep2Of1"` - Hfid1 int `json:"hfid1"` - Hfid2 int `json:"hfid2"` - IdentityId1 int `json:"identityId1"` - IdentityId2 int `json:"identityId2"` - SiteId int `json:"siteId"` - SubregionId int `json:"subregionId"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + HfRep1Of2 string `json:"hfRep1Of2" legend:"base"` + HfRep2Of1 string `json:"hfRep2Of1" legend:"base"` + Hfid1 int `json:"hfid1" legend:"base"` + Hfid2 int `json:"hfid2" legend:"base"` + IdentityId1 int `json:"identityId1" legend:"base"` + IdentityId2 int `json:"identityId2" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` +} +type HistoricalEventHistFigureDied struct { + ArtifactId int `json:"artifactId" legend:"plus"` + DeathCause string `json:"deathCause" legend:"plus"` + Item int `json:"item" legend:"plus"` + ItemSubtype string `json:"itemSubtype" legend:"plus"` + ItemType string `json:"itemType" legend:"plus"` + Mat string `json:"mat" legend:"plus"` + Site int `json:"site" legend:"plus"` + SlayerCaste int `json:"slayerCaste" legend:"plus"` + SlayerHf int `json:"slayerHf" legend:"plus"` + SlayerRace int `json:"slayerRace" legend:"plus"` + VictimHf int `json:"victimHf" legend:"plus"` +} +type HistoricalEventHistFigureNewPet struct { + Group int `json:"group" legend:"plus"` + Pets string `json:"pets" legend:"plus"` + Site int `json:"site" legend:"plus"` +} +type HistoricalEventHistFigureWounded struct { + BodyPart int `json:"bodyPart" legend:"plus"` + InjuryType string `json:"injuryType" legend:"plus"` + PartLost string `json:"partLost" legend:"plus"` + Site int `json:"site" legend:"plus"` + Woundee int `json:"woundee" legend:"plus"` + WoundeeCaste int `json:"woundeeCaste" legend:"plus"` + WoundeeRace int `json:"woundeeRace" legend:"plus"` + Wounder int `json:"wounder" legend:"plus"` +} +type HistoricalEventHolyCityDeclaration struct { + ReligionId int `json:"religionId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` } type HistoricalEventItemStolen struct { - Circumstance string `json:"circumstance"` - CircumstanceId int `json:"circumstanceId"` + Circumstance Circumstance `json:"circumstance" legend:"both"` + CircumstanceId int `json:"circumstanceId" legend:"base"` + Entity int `json:"entity" legend:"plus"` + Histfig int `json:"histfig" legend:"plus"` + Item int `json:"item" legend:"plus"` + ItemSubtype string `json:"itemSubtype" legend:"plus"` + ItemType string `json:"itemType" legend:"plus"` + Mat string `json:"mat" legend:"plus"` + Matindex int `json:"matindex" legend:"plus"` + Mattype int `json:"mattype" legend:"plus"` + Site int `json:"site" legend:"plus"` + StashSite int `json:"stashSite" legend:"plus"` + Structure int `json:"structure" legend:"plus"` + TheftMethod string `json:"theftMethod" legend:"plus"` } type HistoricalEventKnowledgeDiscovered struct { - First string `json:"first"` - Hfid int `json:"hfid"` - Knowledge string `json:"knowledge"` + First string `json:"first" legend:"base"` + Hfid int `json:"hfid" legend:"base"` + Knowledge string `json:"knowledge" legend:"base"` +} +type HistoricalEventMasterpieceCreatedItem struct { + ItemId int `json:"itemId" legend:"plus"` + ItemType string `json:"itemType" legend:"plus"` + Maker int `json:"maker" legend:"plus"` + MakerEntity int `json:"makerEntity" legend:"plus"` + Mat string `json:"mat" legend:"plus"` + Site int `json:"site" legend:"plus"` + SkillAtTime string `json:"skillAtTime" legend:"plus"` } type HistoricalEventMasterpieceItem struct { - EntityId int `json:"entityId"` - Hfid int `json:"hfid"` - SiteId int `json:"siteId"` - SkillAtTime int `json:"skillAtTime"` + EntityId int `json:"entityId" legend:"base"` + Hfid int `json:"hfid" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SkillAtTime int `json:"skillAtTime" legend:"base"` } type HistoricalEventMerchant struct { - DepotEntityId int `json:"depotEntityId"` - SiteId int `json:"siteId"` - TraderEntityId int `json:"traderEntityId"` + DepotEntityId int `json:"depotEntityId" legend:"base"` + Destination int `json:"destination" legend:"plus"` + Site int `json:"site" legend:"plus"` + SiteId int `json:"siteId" legend:"base"` + Source int `json:"source" legend:"plus"` + TraderEntityId int `json:"traderEntityId" legend:"base"` +} +type HistoricalEventModifiedBuilding struct { + Modification string `json:"modification" legend:"base"` + ModifierHfid int `json:"modifierHfid" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + StructureId int `json:"structureId" legend:"base"` +} +type HistoricalEventMusicalFormCreated struct { + Circumstance string `json:"circumstance" legend:"base"` + CircumstanceId int `json:"circumstanceId" legend:"base"` + FormId int `json:"formId" legend:"base"` + HistFigureId int `json:"histFigureId" legend:"base"` + Reason string `json:"reason" legend:"base"` + ReasonId int `json:"reasonId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` +} +type HistoricalEventNewSiteLeader struct { + AttackerCivId int `json:"attackerCivId" legend:"base"` + DefenderCivId int `json:"defenderCivId" legend:"base"` + NewLeaderHfid int `json:"newLeaderHfid" legend:"base"` + NewSiteCivId int `json:"newSiteCivId" legend:"base"` + SiteCivId int `json:"siteCivId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` } type HistoricalEventPerformance struct { - CivId int `json:"civId"` - FeatureLayerId int `json:"featureLayerId"` - OccasionId int `json:"occasionId"` - ScheduleId int `json:"scheduleId"` - SiteId int `json:"siteId"` - SubregionId int `json:"subregionId"` + CivId int `json:"civId" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + OccasionId int `json:"occasionId" legend:"base"` + ScheduleId int `json:"scheduleId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` } type HistoricalEventPlunderedSite struct { - AttackerCivId int `json:"attackerCivId"` - DefenderCivId int `json:"defenderCivId"` - Detected string `json:"detected"` - SiteCivId int `json:"siteCivId"` - SiteId int `json:"siteId"` + AttackerCivId int `json:"attackerCivId" legend:"base"` + DefenderCivId int `json:"defenderCivId" legend:"base"` + Detected string `json:"detected" legend:"base"` + SiteCivId int `json:"siteCivId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` +} +type HistoricalEventPoeticFormCreated struct { + Circumstance string `json:"circumstance" legend:"base"` + FormId int `json:"formId" legend:"base"` + HistFigureId int `json:"histFigureId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` } type HistoricalEventProcession struct { - CivId int `json:"civId"` - FeatureLayerId int `json:"featureLayerId"` - OccasionId int `json:"occasionId"` - ScheduleId int `json:"scheduleId"` - SiteId int `json:"siteId"` - SubregionId int `json:"subregionId"` + CivId int `json:"civId" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + OccasionId int `json:"occasionId" legend:"base"` + ScheduleId int `json:"scheduleId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` } type HistoricalEventRazedStructure struct { - CivId int `json:"civId"` - SiteId int `json:"siteId"` - StructureId int `json:"structureId"` + CivId int `json:"civId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + StructureId int `json:"structureId" legend:"base"` } type HistoricalEventReclaimSite struct { - CivId int `json:"civId"` - SiteCivId int `json:"siteCivId"` - SiteId int `json:"siteId"` + CivId int `json:"civId" legend:"base"` + SiteCivId int `json:"siteCivId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` +} +type HistoricalEventRegionpopIncorporatedIntoEntity struct { + JoinEntityId int `json:"joinEntityId" legend:"base"` + PopFlid int `json:"popFlid" legend:"base"` + PopNumberMoved int `json:"popNumberMoved" legend:"base"` + PopRace int `json:"popRace" legend:"base"` + PopSrid int `json:"popSrid" legend:"base"` + SiteId int `json:"siteId" legend:"base"` } type HistoricalEventRemoveHfEntityLink struct { - CivId int `json:"civId"` - Hfid int `json:"hfid"` - Link string `json:"link"` - PositionId int `json:"positionId"` + Civ int `json:"civ" legend:"plus"` + CivId int `json:"civId" legend:"base"` + Hfid int `json:"hfid" legend:"base"` + Histfig int `json:"histfig" legend:"plus"` + Link string `json:"link" legend:"base"` + LinkType string `json:"linkType" legend:"plus"` + Position string `json:"position" legend:"plus"` + PositionId int `json:"positionId" legend:"base"` } type HistoricalEventRemoveHfHfLink struct { - Hfid int `json:"hfid"` - HfidTarget int `json:"hfidTarget"` + Hfid int `json:"hfid" legend:"base"` + HfidTarget int `json:"hfidTarget" legend:"base"` +} +type HistoricalEventRemoveHfSiteLink struct { + Civ int `json:"civ" legend:"plus"` + Histfig int `json:"histfig" legend:"plus"` + LinkType string `json:"linkType" legend:"plus"` + Site int `json:"site" legend:"plus"` + SiteId int `json:"siteId" legend:"base"` + Structure int `json:"structure" legend:"plus"` +} +type HistoricalEventReplacedBuilding struct { + Civ int `json:"civ" legend:"plus"` + NewStructure int `json:"newStructure" legend:"plus"` + OldStructure int `json:"oldStructure" legend:"plus"` + Site int `json:"site" legend:"plus"` + SiteCiv int `json:"siteCiv" legend:"plus"` +} +type HistoricalEventReplacedStructure struct { + CivId int `json:"civId" legend:"base"` + NewAbId int `json:"newAbId" legend:"base"` + OldAbId int `json:"oldAbId" legend:"base"` + SiteCivId int `json:"siteCivId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` } type HistoricalEventSiteDispute struct { - Dispute string `json:"dispute"` - EntityId1 int `json:"entityId1"` - EntityId2 int `json:"entityId2"` - SiteId1 int `json:"siteId1"` - SiteId2 int `json:"siteId2"` + Dispute string `json:"dispute" legend:"base"` + EntityId1 int `json:"entityId1" legend:"base"` + EntityId2 int `json:"entityId2" legend:"base"` + SiteId1 int `json:"siteId1" legend:"base"` + SiteId2 int `json:"siteId2" legend:"base"` } type HistoricalEventSiteTakenOver struct { - AttackerCivId int `json:"attackerCivId"` - DefenderCivId int `json:"defenderCivId"` - NewSiteCivId int `json:"newSiteCivId"` - SiteCivId int `json:"siteCivId"` - SiteId int `json:"siteId"` + AttackerCivId int `json:"attackerCivId" legend:"base"` + DefenderCivId int `json:"defenderCivId" legend:"base"` + NewSiteCivId int `json:"newSiteCivId" legend:"base"` + SiteCivId int `json:"siteCivId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` } type HistoricalEventSquadVsSquad struct { - AHfid int `json:"aHfid"` - ASquadId int `json:"aSquadId"` - DEffect int `json:"dEffect"` - DInteraction int `json:"dInteraction"` - DNumber int `json:"dNumber"` - DRace int `json:"dRace"` - DSlain int `json:"dSlain"` - DSquadId int `json:"dSquadId"` - FeatureLayerId int `json:"featureLayerId"` - SiteId int `json:"siteId"` - StructureId int `json:"structureId"` - SubregionId int `json:"subregionId"` + AHfid int `json:"aHfid" legend:"base"` + ASquadId int `json:"aSquadId" legend:"base"` + DEffect int `json:"dEffect" legend:"base"` + DInteraction int `json:"dInteraction" legend:"base"` + DNumber int `json:"dNumber" legend:"base"` + DRace int `json:"dRace" legend:"base"` + DSlain int `json:"dSlain" legend:"base"` + DSquadId int `json:"dSquadId" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + StructureId int `json:"structureId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` } type HistoricalEventTacticalSituation struct { - ATacticianHfid int `json:"aTacticianHfid"` - ATacticsRoll int `json:"aTacticsRoll"` - DTacticianHfid int `json:"dTacticianHfid"` - DTacticsRoll int `json:"dTacticsRoll"` - FeatureLayerId int `json:"featureLayerId"` - SiteId int `json:"siteId"` - Situation string `json:"situation"` - Start string `json:"start"` - StructureId int `json:"structureId"` - SubregionId int `json:"subregionId"` + ATacticianHfid int `json:"aTacticianHfid" legend:"base"` + ATacticsRoll int `json:"aTacticsRoll" legend:"base"` + DTacticianHfid int `json:"dTacticianHfid" legend:"base"` + DTacticsRoll int `json:"dTacticsRoll" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + Situation string `json:"situation" legend:"base"` + Start string `json:"start" legend:"base"` + StructureId int `json:"structureId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` +} +type HistoricalEventTrade struct { + AccountShift int `json:"accountShift" legend:"base"` + Allotment int `json:"allotment" legend:"base"` + AllotmentIndex int `json:"allotmentIndex" legend:"base"` + DestSiteId int `json:"destSiteId" legend:"base"` + ProductionZoneId int `json:"productionZoneId" legend:"base"` + SourceSiteId int `json:"sourceSiteId" legend:"base"` + TraderEntityId int `json:"traderEntityId" legend:"base"` + TraderHfid int `json:"traderHfid" legend:"base"` +} +type HistoricalEventWarPeaceAccepted struct { + Destination int `json:"destination" legend:"plus"` + Site int `json:"site" legend:"plus"` + Source int `json:"source" legend:"plus"` + Topic string `json:"topic" legend:"plus"` +} +type HistoricalEventWarPeaceRejected struct { + Destination int `json:"destination" legend:"plus"` + Site int `json:"site" legend:"plus"` + Source int `json:"source" legend:"plus"` + Topic string `json:"topic" legend:"plus"` } type HistoricalEventWrittenContentComposed struct { - Circumstance string `json:"circumstance"` - CircumstanceId int `json:"circumstanceId"` - HistFigureId int `json:"histFigureId"` - Reason string `json:"reason"` - ReasonId int `json:"reasonId"` - SiteId int `json:"siteId"` - WcId int `json:"wcId"` + Circumstance string `json:"circumstance" legend:"base"` + CircumstanceId int `json:"circumstanceId" legend:"base"` + HistFigureId int `json:"histFigureId" legend:"base"` + Reason string `json:"reason" legend:"base"` + ReasonId int `json:"reasonId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` + WcId int `json:"wcId" legend:"base"` } type HistoricalEventCollection struct { - EndSeconds72 int `json:"endSeconds72"` - EndYear int `json:"endYear"` - Event []int `json:"event"` - Eventcol []int `json:"eventcol"` - Id_ int `json:"id"` - StartSeconds72 int `json:"startSeconds72"` - StartYear int `json:"startYear"` - Type string `json:"type"` + EndSeconds72 int `json:"endSeconds72" legend:"base"` + EndYear int `json:"endYear" legend:"base"` + Event []int `json:"event" legend:"base"` + Eventcol []int `json:"eventcol" legend:"base"` + Id_ int `json:"id" legend:"base"` + StartSeconds72 int `json:"startSeconds72" legend:"base"` + StartYear int `json:"startYear" legend:"base"` + Type string `json:"type" legend:"base"` +} +type HistoricalEventCollectionAbduction struct { + AttackingEnid int `json:"attackingEnid" legend:"base"` + Coords string `json:"coords" legend:"base"` + DefendingEnid int `json:"defendingEnid" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + Ordinal int `json:"ordinal" legend:"base"` + ParentEventcol int `json:"parentEventcol" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` } -func (x *HistoricalEventCollection) Id() int { return x.Id_ } type HistoricalEventCollectionBattle struct { - AttackingHfid []int `json:"attackingHfid"` - AttackingSquadDeaths []int `json:"attackingSquadDeaths"` - AttackingSquadEntityPop []int `json:"attackingSquadEntityPop"` - AttackingSquadNumber []int `json:"attackingSquadNumber"` - AttackingSquadRace []string `json:"attackingSquadRace"` - AttackingSquadSite []int `json:"attackingSquadSite"` - Coords string `json:"coords"` - DefendingHfid []int `json:"defendingHfid"` - DefendingSquadDeaths []int `json:"defendingSquadDeaths"` - DefendingSquadEntityPop []int `json:"defendingSquadEntityPop"` - DefendingSquadNumber []int `json:"defendingSquadNumber"` - DefendingSquadRace []string `json:"defendingSquadRace"` - DefendingSquadSite []int `json:"defendingSquadSite"` - FeatureLayerId int `json:"featureLayerId"` - IndividualMerc []string `json:"individualMerc"` - Name_ string `json:"name"` - NoncomHfid []int `json:"noncomHfid"` - Outcome string `json:"outcome"` - SiteId int `json:"siteId"` - SubregionId int `json:"subregionId"` - WarEventcol int `json:"warEventcol"` + ASupportMercEnid int `json:"aSupportMercEnid" legend:"base"` + ASupportMercHfid []int `json:"aSupportMercHfid" legend:"base"` + AttackingHfid []int `json:"attackingHfid" legend:"base"` + AttackingMercEnid int `json:"attackingMercEnid" legend:"base"` + AttackingSquadAnimated []string `json:"attackingSquadAnimated" legend:"base"` + AttackingSquadDeaths []int `json:"attackingSquadDeaths" legend:"base"` + AttackingSquadEntityPop []int `json:"attackingSquadEntityPop" legend:"base"` + AttackingSquadNumber []int `json:"attackingSquadNumber" legend:"base"` + AttackingSquadRace []string `json:"attackingSquadRace" legend:"base"` + AttackingSquadSite []int `json:"attackingSquadSite" legend:"base"` + CompanyMerc []string `json:"companyMerc" legend:"base"` + Coords string `json:"coords" legend:"base"` + DSupportMercEnid int `json:"dSupportMercEnid" legend:"base"` + DSupportMercHfid []int `json:"dSupportMercHfid" legend:"base"` + DefendingHfid []int `json:"defendingHfid" legend:"base"` + DefendingMercEnid int `json:"defendingMercEnid" legend:"base"` + DefendingSquadAnimated []string `json:"defendingSquadAnimated" legend:"base"` + DefendingSquadDeaths []int `json:"defendingSquadDeaths" legend:"base"` + DefendingSquadEntityPop []int `json:"defendingSquadEntityPop" legend:"base"` + DefendingSquadNumber []int `json:"defendingSquadNumber" legend:"base"` + DefendingSquadRace []string `json:"defendingSquadRace" legend:"base"` + DefendingSquadSite []int `json:"defendingSquadSite" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + IndividualMerc []string `json:"individualMerc" legend:"base"` + Name_ string `json:"name" legend:"base"` + NoncomHfid []int `json:"noncomHfid" legend:"base"` + Outcome string `json:"outcome" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` + WarEventcol int `json:"warEventcol" legend:"base"` } -func (x *HistoricalEventCollectionBattle) Name() string { return x.Name_ } type HistoricalEventCollectionBeastAttack struct { - Coords string `json:"coords"` - DefendingEnid int `json:"defendingEnid"` - FeatureLayerId int `json:"featureLayerId"` - Ordinal int `json:"ordinal"` - ParentEventcol int `json:"parentEventcol"` - SiteId int `json:"siteId"` - SubregionId int `json:"subregionId"` + Coords string `json:"coords" legend:"base"` + DefendingEnid int `json:"defendingEnid" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + Ordinal int `json:"ordinal" legend:"base"` + ParentEventcol int `json:"parentEventcol" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` } type HistoricalEventCollectionDuel struct { - AttackingHfid int `json:"attackingHfid"` - Coords string `json:"coords"` - DefendingHfid int `json:"defendingHfid"` - FeatureLayerId int `json:"featureLayerId"` - Ordinal int `json:"ordinal"` - ParentEventcol int `json:"parentEventcol"` - SiteId int `json:"siteId"` - SubregionId int `json:"subregionId"` + AttackingHfid int `json:"attackingHfid" legend:"base"` + Coords string `json:"coords" legend:"base"` + DefendingHfid int `json:"defendingHfid" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + Ordinal int `json:"ordinal" legend:"base"` + ParentEventcol int `json:"parentEventcol" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` +} +type HistoricalEventCollectionEntityOverthrown struct { + Ordinal int `json:"ordinal" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + TargetEntityId int `json:"targetEntityId" legend:"base"` } type HistoricalEventCollectionOccasion struct { - CivId int `json:"civId"` - OccasionId int `json:"occasionId"` - Ordinal int `json:"ordinal"` + CivId int `json:"civId" legend:"base"` + OccasionId int `json:"occasionId" legend:"base"` + Ordinal int `json:"ordinal" legend:"base"` +} +type HistoricalEventCollectionPersecution struct { + Ordinal int `json:"ordinal" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + TargetEntityId int `json:"targetEntityId" legend:"base"` +} +type HistoricalEventCollectionPurge struct { + Adjective string `json:"adjective" legend:"base"` + Ordinal int `json:"ordinal" legend:"base"` + SiteId int `json:"siteId" legend:"base"` } type HistoricalEventCollectionSiteConquered struct { - AttackingEnid int `json:"attackingEnid"` - DefendingEnid int `json:"defendingEnid"` - Ordinal int `json:"ordinal"` - SiteId int `json:"siteId"` - WarEventcol int `json:"warEventcol"` + AttackingEnid int `json:"attackingEnid" legend:"base"` + DefendingEnid int `json:"defendingEnid" legend:"base"` + Ordinal int `json:"ordinal" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + WarEventcol int `json:"warEventcol" legend:"base"` +} +type HistoricalEventCollectionTheft struct { + AttackingEnid int `json:"attackingEnid" legend:"base"` + Coords string `json:"coords" legend:"base"` + DefendingEnid int `json:"defendingEnid" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + Ordinal int `json:"ordinal" legend:"base"` + ParentEventcol int `json:"parentEventcol" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` } type HistoricalEventCollectionWar struct { - AggressorEntId int `json:"aggressorEntId"` - DefenderEntId int `json:"defenderEntId"` - Name_ string `json:"name"` + AggressorEntId int `json:"aggressorEntId" legend:"base"` + DefenderEntId int `json:"defenderEntId" legend:"base"` + Name_ string `json:"name" legend:"base"` +} +type HistoricalEventRelationship struct { + Event int `json:"event" legend:"plus"` + Relationship string `json:"relationship" legend:"plus"` + SourceHf int `json:"sourceHf" legend:"plus"` + TargetHf int `json:"targetHf" legend:"plus"` + Year int `json:"year" legend:"plus"` +} +type HistoricalEventRelationshipSupplement struct { + Event int `json:"event" legend:"plus"` + OccasionType int `json:"occasionType" legend:"plus"` + Site int `json:"site" legend:"plus"` + Unk1 int `json:"unk1" legend:"plus"` } -func (x *HistoricalEventCollectionWar) Name() string { return x.Name_ } type HistoricalFigure struct { - Appeared int `json:"appeared"` - AssociatedType string `json:"associatedType"` - BirthSeconds72 int `json:"birthSeconds72"` - BirthYear int `json:"birthYear"` - Caste string `json:"caste"` - CurrentIdentityId int `json:"currentIdentityId"` - DeathSeconds72 int `json:"deathSeconds72"` - DeathYear int `json:"deathYear"` - Deity string `json:"deity"` - EntPopId int `json:"entPopId"` - EntityFormerPositionLink []EntityFormerPositionLink `json:"entityFormerPositionLink"` - EntityLink []EntityLink `json:"entityLink"` - EntityPositionLink []EntityPositionLink `json:"entityPositionLink"` - EntityReputation map[int]* `json:"entityReputation"` - EntitySquadLink EntitySquadLink `json:"entitySquadLink"` - Force string `json:"force"` - Goal []string `json:"goal"` - HfLink []HfLink `json:"hfLink"` - HfSkill []HfSkill `json:"hfSkill"` - HoldsArtifact int `json:"holdsArtifact"` - Id_ int `json:"id"` - InteractionKnowledge []string `json:"interactionKnowledge"` - IntrigueActor IntrigueActor `json:"intrigueActor"` - IntriguePlot []IntriguePlot `json:"intriguePlot"` - JourneyPet []string `json:"journeyPet"` - Name_ string `json:"name"` - Race string `json:"race"` - RelationshipProfileHfHistorical RelationshipProfileHfHistorical `json:"relationshipProfileHfHistorical"` - RelationshipProfileHfVisual []RelationshipProfileHfVisual `json:"relationshipProfileHfVisual"` - SiteLink SiteLink `json:"siteLink"` - Sphere []string `json:"sphere"` - UsedIdentityId int `json:"usedIdentityId"` - VagueRelationship []VagueRelationship `json:"vagueRelationship"` + ActiveInteraction []string `json:"activeInteraction" legend:"base"` + Animated string `json:"animated" legend:"base"` + AnimatedString string `json:"animatedString" legend:"base"` + Appeared int `json:"appeared" legend:"base"` + AssociatedType string `json:"associatedType" legend:"base"` + BirthSeconds72 int `json:"birthSeconds72" legend:"base"` + BirthYear int `json:"birthYear" legend:"base"` + Caste string `json:"caste" legend:"base"` + CurrentIdentityId int `json:"currentIdentityId" legend:"base"` + DeathSeconds72 int `json:"deathSeconds72" legend:"base"` + DeathYear int `json:"deathYear" legend:"base"` + Deity string `json:"deity" legend:"base"` + EntPopId int `json:"entPopId" legend:"base"` + EntityFormerPositionLink []EntityFormerPositionLink `json:"entityFormerPositionLink" legend:"base"` + EntityLink []EntityLink `json:"entityLink" legend:"base"` + EntityPositionLink []EntityPositionLink `json:"entityPositionLink" legend:"base"` + EntityReputation []EntityReputation `json:"entityReputation" legend:"base"` + EntitySquadLink EntitySquadLink `json:"entitySquadLink" legend:"base"` + Force string `json:"force" legend:"base"` + Goal []string `json:"goal" legend:"base"` + HfLink []HfLink `json:"hfLink" legend:"base"` + HfSkill []HfSkill `json:"hfSkill" legend:"base"` + HoldsArtifact []int `json:"holdsArtifact" legend:"base"` + HonorEntity []HonorEntity `json:"honorEntity" legend:"base"` + Id_ int `json:"id" legend:"both"` + InteractionKnowledge []string `json:"interactionKnowledge" legend:"base"` + IntrigueActor []IntrigueActor `json:"intrigueActor" legend:"base"` + IntriguePlot []IntriguePlot `json:"intriguePlot" legend:"base"` + JourneyPet []string `json:"journeyPet" legend:"base"` + Name_ string `json:"name" legend:"base"` + Race string `json:"race" legend:"both"` + RelationshipProfileHfHistorical []RelationshipProfileHfHistorical `json:"relationshipProfileHfHistorical" legend:"base"` + RelationshipProfileHfVisual []RelationshipProfileHfVisual `json:"relationshipProfileHfVisual" legend:"base"` + Sex int `json:"sex" legend:"plus"` + SiteLink []SiteLink `json:"siteLink" legend:"base"` + SiteProperty []SiteProperty `json:"siteProperty" legend:"base"` + Sphere []string `json:"sphere" legend:"base"` + UsedIdentityId []int `json:"usedIdentityId" legend:"base"` + VagueRelationship []VagueRelationship `json:"vagueRelationship" legend:"base"` +} +type Honor struct { + ExemptEpid int `json:"exemptEpid" legend:"base"` + ExemptFormerEpid int `json:"exemptFormerEpid" legend:"base"` + GivesPrecedence int `json:"givesPrecedence" legend:"base"` + GrantedToEverybody string `json:"grantedToEverybody" legend:"base"` + Id_ int `json:"id" legend:"base"` + Name_ string `json:"name" legend:"base"` + RequiredBattles int `json:"requiredBattles" legend:"base"` + RequiredKills int `json:"requiredKills" legend:"base"` + RequiredSkill string `json:"requiredSkill" legend:"base"` + RequiredSkillIpTotal int `json:"requiredSkillIpTotal" legend:"base"` + RequiredYears int `json:"requiredYears" legend:"base"` + RequiresAnyMeleeOrRangedSkill string `json:"requiresAnyMeleeOrRangedSkill" legend:"base"` +} +type HonorEntity struct { + Battles int `json:"battles" legend:"base"` + Entity int `json:"entity" legend:"base"` + HonorId []int `json:"honorId" legend:"base"` + Kills int `json:"kills" legend:"base"` +} +type Identity struct { + BirthSecond int `json:"birthSecond" legend:"plus"` + BirthYear int `json:"birthYear" legend:"plus"` + Caste string `json:"caste" legend:"plus"` + EntityId int `json:"entityId" legend:"plus"` + HistfigId int `json:"histfigId" legend:"plus"` + Id_ int `json:"id" legend:"plus"` + Name_ string `json:"name" legend:"plus"` + NemesisId int `json:"nemesisId" legend:"plus"` + Profession string `json:"profession" legend:"plus"` + Race string `json:"race" legend:"plus"` } -func (x *HistoricalFigure) Id() int { return x.Id_ } -func (x *HistoricalFigure) Name() string { return x.Name_ } type IntrigueActor struct { - Hfid int `json:"hfid"` - LocalId int `json:"localId"` - Role string `json:"role"` - Strategy string `json:"strategy"` + EntityId int `json:"entityId" legend:"base"` + HandleActorId int `json:"handleActorId" legend:"base"` + Hfid int `json:"hfid" legend:"base"` + LocalId int `json:"localId" legend:"base"` + PromisedActorImmortality string `json:"promisedActorImmortality" legend:"base"` + PromisedMeImmortality string `json:"promisedMeImmortality" legend:"base"` + Role string `json:"role" legend:"base"` + Strategy string `json:"strategy" legend:"base"` + StrategyEnid int `json:"strategyEnid" legend:"base"` + StrategyEppid int `json:"strategyEppid" legend:"base"` } type IntriguePlot struct { - ActorId int `json:"actorId"` - ArtifactId int `json:"artifactId"` - EntityId int `json:"entityId"` - LocalId int `json:"localId"` - OnHold string `json:"onHold"` - Type string `json:"type"` + ActorId int `json:"actorId" legend:"base"` + ArtifactId int `json:"artifactId" legend:"base"` + DelegatedPlotHfid int `json:"delegatedPlotHfid" legend:"base"` + DelegatedPlotId int `json:"delegatedPlotId" legend:"base"` + EntityId int `json:"entityId" legend:"base"` + LocalId int `json:"localId" legend:"base"` + OnHold string `json:"onHold" legend:"base"` + ParentPlotHfid int `json:"parentPlotHfid" legend:"base"` + ParentPlotId int `json:"parentPlotId" legend:"base"` + PlotActor []PlotActor `json:"plotActor" legend:"base"` + Type string `json:"type" legend:"base"` } type Item struct { - NameString string `json:"nameString"` - PageNumber int `json:"pageNumber"` - PageWrittenContentId int `json:"pageWrittenContentId"` - WritingWrittenContentId int `json:"writingWrittenContentId"` + NameString string `json:"nameString" legend:"base"` + PageNumber int `json:"pageNumber" legend:"base"` + PageWrittenContentId int `json:"pageWrittenContentId" legend:"base"` + WritingWrittenContentId int `json:"writingWrittenContentId" legend:"base"` +} +type Landmass struct { + Coord1 string `json:"coord1" legend:"plus"` + Coord2 string `json:"coord2" legend:"plus"` + Id_ int `json:"id" legend:"plus"` + Name_ string `json:"name" legend:"plus"` +} +type MountainPeak struct { + Coords string `json:"coords" legend:"plus"` + Height int `json:"height" legend:"plus"` + Id_ int `json:"id" legend:"plus"` + IsVolcano string `json:"isVolcano" legend:"plus"` + Name_ string `json:"name" legend:"plus"` } type MusicalForm struct { - Description string `json:"description"` - Id_ int `json:"id"` + Description string `json:"description" legend:"base"` + Id_ int `json:"id" legend:"both"` + Name_ string `json:"name" legend:"plus"` +} +type Occasion struct { + Event int `json:"event" legend:""` + Id_ int `json:"id" legend:""` + Name_ int `json:"name" legend:""` + Schedule Schedule `json:"schedule" legend:""` +} +type PlotActor struct { + ActorId int `json:"actorId" legend:"base"` + AgreementHasMessenger string `json:"agreementHasMessenger" legend:"base"` + AgreementId int `json:"agreementId" legend:"base"` + PlotRole string `json:"plotRole" legend:"base"` } -func (x *MusicalForm) Id() int { return x.Id_ } type PoeticForm struct { - Description string `json:"description"` - Id_ int `json:"id"` + Description string `json:"description" legend:"base"` + Id_ int `json:"id" legend:"both"` + Name_ string `json:"name" legend:"plus"` +} +type Reference struct { + Id_ int `json:"id" legend:"plus"` + Type string `json:"type" legend:"plus"` } -func (x *PoeticForm) Id() int { return x.Id_ } type Region struct { - Id_ int `json:"id"` - Name_ string `json:"name"` - Type string `json:"type"` + Coords string `json:"coords" legend:"plus"` + Evilness string `json:"evilness" legend:"plus"` + ForceId int `json:"forceId" legend:"plus"` + Id_ int `json:"id" legend:"both"` + Name_ string `json:"name" legend:"base"` + Type string `json:"type" legend:"base"` } -func (x *Region) Id() int { return x.Id_ } -func (x *Region) Name() string { return x.Name_ } type RelationshipProfileHfHistorical struct { - Fear int `json:"fear"` - HfId int `json:"hfId"` - Love int `json:"love"` - Loyalty int `json:"loyalty"` - Respect int `json:"respect"` - Trust int `json:"trust"` + Fear int `json:"fear" legend:"base"` + HfId int `json:"hfId" legend:"base"` + Love int `json:"love" legend:"base"` + Loyalty int `json:"loyalty" legend:"base"` + Respect int `json:"respect" legend:"base"` + Trust int `json:"trust" legend:"base"` } type RelationshipProfileHfVisual struct { - Fear int `json:"fear"` - HfId int `json:"hfId"` - KnownIdentityId int `json:"knownIdentityId"` - LastMeetSeconds72 int `json:"lastMeetSeconds72"` - LastMeetYear int `json:"lastMeetYear"` - Love int `json:"love"` - Loyalty int `json:"loyalty"` - MeetCount int `json:"meetCount"` - RepFriendly int `json:"repFriendly"` - RepInformationSource int `json:"repInformationSource"` - Respect int `json:"respect"` - Trust int `json:"trust"` + Fear int `json:"fear" legend:"base"` + HfId int `json:"hfId" legend:"base"` + KnownIdentityId int `json:"knownIdentityId" legend:"base"` + LastMeetSeconds72 int `json:"lastMeetSeconds72" legend:"base"` + LastMeetYear int `json:"lastMeetYear" legend:"base"` + Love int `json:"love" legend:"base"` + Loyalty int `json:"loyalty" legend:"base"` + MeetCount int `json:"meetCount" legend:"base"` + RepFriendly int `json:"repFriendly" legend:"base"` + RepInformationSource int `json:"repInformationSource" legend:"base"` + Respect int `json:"respect" legend:"base"` + Trust int `json:"trust" legend:"base"` +} +type River struct { + EndPos string `json:"endPos" legend:"plus"` + Name_ string `json:"name" legend:"plus"` + Path string `json:"path" legend:"plus"` +} +type Schedule struct { + Feature Feature `json:"feature" legend:""` + Id_ int `json:"id" legend:""` + ItemSubtype int `json:"itemSubtype" legend:""` + ItemType int `json:"itemType" legend:""` + Reference int `json:"reference" legend:""` + Reference2 int `json:"reference2" legend:""` + Type int `json:"type" legend:""` } type Site struct { - Id_ int `json:"id"` - Type string `json:"type"` + CivId int `json:"civId" legend:"plus"` + Coords int `json:"coords" legend:""` + CurOwnerId int `json:"curOwnerId" legend:"plus"` + Id_ int `json:"id" legend:"both"` + Name_ int `json:"name" legend:""` + Rectangle int `json:"rectangle" legend:""` + SiteProperties map[int]*SiteProperty `json:"siteProperties" legend:""` + Structures map[int]*Structure `json:"structures" legend:"plus"` + Type string `json:"type" legend:"base"` } -func (x *Site) Id() int { return x.Id_ } -type SiteCamp struct { - Coords string `json:"coords"` - Name_ string `json:"name"` - Rectangle string `json:"rectangle"` -} -func (x *SiteCamp) Name() string { return x.Name_ } -type SiteCave struct { - Coords string `json:"coords"` - Name_ string `json:"name"` - Rectangle string `json:"rectangle"` - Structures map[int]*Structure `json:"structures"` -} -func (x *SiteCave) Name() string { return x.Name_ } -type SiteDarkFortress struct { - Coords string `json:"coords"` - Name_ string `json:"name"` - Rectangle string `json:"rectangle"` - Structures map[int]*Structure `json:"structures"` -} -func (x *SiteDarkFortress) Name() string { return x.Name_ } -type SiteDarkPits struct { - Coords string `json:"coords"` - Name_ string `json:"name"` - Rectangle string `json:"rectangle"` -} -func (x *SiteDarkPits) Name() string { return x.Name_ } -type SiteForestRetreat struct { - Coords string `json:"coords"` - Name_ string `json:"name"` - Rectangle string `json:"rectangle"` - Structures map[int]*Structure `json:"structures"` -} -func (x *SiteForestRetreat) Name() string { return x.Name_ } -type SiteFortress struct { - Coords string `json:"coords"` - Name_ string `json:"name"` - Rectangle string `json:"rectangle"` - Structures map[int]*Structure `json:"structures"` -} -func (x *SiteFortress) Name() string { return x.Name_ } -type SiteHamlet struct { - Coords string `json:"coords"` - Name_ string `json:"name"` - Rectangle string `json:"rectangle"` - Structures map[int]*Structure `json:"structures"` -} -func (x *SiteHamlet) Name() string { return x.Name_ } -type SiteHillocks struct { - Coords string `json:"coords"` - Name_ string `json:"name"` - Rectangle string `json:"rectangle"` -} -func (x *SiteHillocks) Name() string { return x.Name_ } -type SiteLabyrinth struct { - Coords string `json:"coords"` - Name_ string `json:"name"` - Rectangle string `json:"rectangle"` -} -func (x *SiteLabyrinth) Name() string { return x.Name_ } -type SiteLair struct { - Coords string `json:"coords"` - Name_ string `json:"name"` - Rectangle string `json:"rectangle"` -} -func (x *SiteLair) Name() string { return x.Name_ } -type SiteShrine struct { - Coords string `json:"coords"` - Name_ string `json:"name"` - Rectangle string `json:"rectangle"` -} -func (x *SiteShrine) Name() string { return x.Name_ } -type SiteTown struct { - Coords string `json:"coords"` - Name_ string `json:"name"` - Rectangle string `json:"rectangle"` - Structures map[int]*Structure `json:"structures"` -} -func (x *SiteTown) Name() string { return x.Name_ } -type SiteVault struct { - Coords string `json:"coords"` - Name_ string `json:"name"` - Rectangle string `json:"rectangle"` -} -func (x *SiteVault) Name() string { return x.Name_ } type SiteLink struct { - EntityId int `json:"entityId"` - LinkType string `json:"linkType"` - OccupationId int `json:"occupationId"` - SiteId int `json:"siteId"` - SubId int `json:"subId"` + EntityId int `json:"entityId" legend:"base"` + LinkType string `json:"linkType" legend:"base"` + OccupationId int `json:"occupationId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubId int `json:"subId" legend:"base"` +} +type SiteProperty struct { + Id_ int `json:"id" legend:""` + OwnerHfid int `json:"ownerHfid" legend:""` + StructureId int `json:"structureId" legend:""` + Type int `json:"type" legend:""` } type Structure struct { - LocalId int `json:"localId"` - Type string `json:"type"` + CopiedArtifactId int `json:"copiedArtifactId" legend:""` + Deity int `json:"deity" legend:""` + DeityType int `json:"deityType" legend:""` + DungeonType int `json:"dungeonType" legend:""` + EntityId int `json:"entityId" legend:""` + Id_ int `json:"id" legend:"plus"` + Inhabitant int `json:"inhabitant" legend:""` + LocalId int `json:"localId" legend:""` + Name_ int `json:"name" legend:""` + Name2 int `json:"name2" legend:""` + Religion int `json:"religion" legend:""` + Subtype int `json:"subtype" legend:""` + Type string `json:"type" legend:"plus"` + WorshipHfid int `json:"worshipHfid" legend:""` } -type StructureTemple struct { - EntityId int `json:"entityId"` - Name_ string `json:"name"` -} -func (x *StructureTemple) Name() string { return x.Name_ } type UndergroundRegion struct { - Id_ int `json:"id"` - Type string `json:"type"` + Coords string `json:"coords" legend:"plus"` + Depth int `json:"depth" legend:""` + Id_ int `json:"id" legend:"both"` + Type string `json:"type" legend:"base"` } -func (x *UndergroundRegion) Id() int { return x.Id_ } type VagueRelationship struct { - ChildhoodFriend string `json:"childhoodFriend"` - Hfid int `json:"hfid"` - JealousObsession string `json:"jealousObsession"` - WarBuddy string `json:"warBuddy"` + ArtisticBuddy string `json:"artisticBuddy" legend:"base"` + AtheleticRival string `json:"atheleticRival" legend:"base"` + AthleteBuddy string `json:"athleteBuddy" legend:"base"` + BusinessRival string `json:"businessRival" legend:"base"` + ChildhoodFriend string `json:"childhoodFriend" legend:"base"` + Grudge string `json:"grudge" legend:"base"` + Hfid int `json:"hfid" legend:"base"` + JealousObsession string `json:"jealousObsession" legend:"base"` + JealousRelationshipGrudge string `json:"jealousRelationshipGrudge" legend:"base"` + PersecutionGrudge string `json:"persecutionGrudge" legend:"base"` + ReligiousPersecutionGrudge string `json:"religiousPersecutionGrudge" legend:"base"` + ScholarBuddy string `json:"scholarBuddy" legend:"base"` + SupernaturalGrudge string `json:"supernaturalGrudge" legend:"base"` + WarBuddy string `json:"warBuddy" legend:"base"` +} +type WorldConstruction struct { + Coords int `json:"coords" legend:""` + Id_ int `json:"id" legend:"plus"` + Name_ string `json:"name" legend:"plus"` + Type string `json:"type" legend:"plus"` } type WrittenContent struct { - AuthorHfid int `json:"authorHfid"` - AuthorRoll int `json:"authorRoll"` - Form string `json:"form"` - FormId int `json:"formId"` - Id_ int `json:"id"` - Style []string `json:"style"` - Title string `json:"title"` + Author int `json:"author" legend:""` + AuthorHfid int `json:"authorHfid" legend:"base"` + AuthorRoll int `json:"authorRoll" legend:"base"` + Form string `json:"form" legend:"base"` + FormId int `json:"formId" legend:"base"` + Id_ int `json:"id" legend:"both"` + PageEnd int `json:"pageEnd" legend:"plus"` + PageStart int `json:"pageStart" legend:"plus"` + Reference []Reference `json:"reference" legend:"plus"` + Style []string `json:"style" legend:"base"` + Title string `json:"title" legend:"both"` + Type string `json:"type" legend:"plus"` +} + +// Parser + +func n(d []byte) int { + v, _ := strconv.Atoi(string(d)) + return v +} +func (obj *Artifact) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "abs_tile_x": + data = nil + case "abs_tile_y": + data = nil + case "abs_tile_z": + data = nil + case "holder_hfid": + data = nil + case "id": + data = nil + case "item": + v := Item{} +v.Parse(d, &t) +obj.Item = v + case "item_description": + data = nil + case "item_subtype": + data = nil + case "item_type": + data = nil + case "mat": + data = nil + case "name": + data = nil + case "page_count": + data = nil + case "site_id": + data = nil + case "structure_local_id": + data = nil + case "subregion_id": + data = nil + case "writing": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "abs_tile_x": + obj.AbsTileX = n(data) + case "abs_tile_y": + obj.AbsTileY = n(data) + case "abs_tile_z": + obj.AbsTileZ = n(data) + case "holder_hfid": + obj.HolderHfid = n(data) + case "id": + obj.Id_ = n(data) + case "item": + + case "item_description": + obj.ItemDescription = string(data) + case "item_subtype": + obj.ItemSubtype = string(data) + case "item_type": + obj.ItemType = string(data) + case "mat": + obj.Mat = string(data) + case "name": + obj.Name_ = string(data) + case "page_count": + obj.PageCount = n(data) + case "site_id": + obj.SiteId = n(data) + case "structure_local_id": + obj.StructureLocalId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + case "writing": + obj.Writing = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Circumstance) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "defeated": + data = nil + case "hist_event_collection": + data = nil + case "murdered": + data = nil + case "type": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "defeated": + obj.Defeated = n(data) + case "hist_event_collection": + obj.HistEventCollection = n(data) + case "murdered": + obj.Murdered = n(data) + case "type": + obj.Type = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Creature) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "all_castes_alive": + data = nil + case "artificial_hiveable": + data = nil + case "biome_desert_badland": + data = nil + case "biome_desert_rock": + data = nil + case "biome_desert_sand": + data = nil + case "biome_forest_taiga": + data = nil + case "biome_forest_temperate_broadleaf": + data = nil + case "biome_forest_temperate_conifer": + data = nil + case "biome_forest_tropical_conifer": + data = nil + case "biome_forest_tropical_dry_broadleaf": + data = nil + case "biome_forest_tropical_moist_broadleaf": + data = nil + case "biome_glacier": + data = nil + case "biome_grassland_temperate": + data = nil + case "biome_grassland_tropical": + data = nil + case "biome_lake_temperate_brackishwater": + data = nil + case "biome_lake_temperate_freshwater": + data = nil + case "biome_lake_temperate_saltwater": + data = nil + case "biome_lake_tropical_brackishwater": + data = nil + case "biome_lake_tropical_freshwater": + data = nil + case "biome_lake_tropical_saltwater": + data = nil + case "biome_marsh_temperate_freshwater": + data = nil + case "biome_marsh_temperate_saltwater": + data = nil + case "biome_marsh_tropical_freshwater": + data = nil + case "biome_marsh_tropical_saltwater": + data = nil + case "biome_mountain": + data = nil + case "biome_ocean_arctic": + data = nil + case "biome_ocean_temperate": + data = nil + case "biome_ocean_tropical": + data = nil + case "biome_pool_temperate_brackishwater": + data = nil + case "biome_pool_temperate_freshwater": + data = nil + case "biome_pool_temperate_saltwater": + data = nil + case "biome_pool_tropical_brackishwater": + data = nil + case "biome_pool_tropical_freshwater": + data = nil + case "biome_pool_tropical_saltwater": + data = nil + case "biome_river_temperate_brackishwater": + data = nil + case "biome_river_temperate_freshwater": + data = nil + case "biome_river_temperate_saltwater": + data = nil + case "biome_river_tropical_brackishwater": + data = nil + case "biome_river_tropical_freshwater": + data = nil + case "biome_river_tropical_saltwater": + data = nil + case "biome_savanna_temperate": + data = nil + case "biome_savanna_tropical": + data = nil + case "biome_shrubland_temperate": + data = nil + case "biome_shrubland_tropical": + data = nil + case "biome_subterranean_chasm": + data = nil + case "biome_subterranean_lava": + data = nil + case "biome_subterranean_water": + data = nil + case "biome_swamp_mangrove": + data = nil + case "biome_swamp_temperate_freshwater": + data = nil + case "biome_swamp_temperate_saltwater": + data = nil + case "biome_swamp_tropical_freshwater": + data = nil + case "biome_swamp_tropical_saltwater": + data = nil + case "biome_tundra": + data = nil + case "creature_id": + data = nil + case "does_not_exist": + data = nil + case "equipment": + data = nil + case "equipment_wagon": + data = nil + case "evil": + data = nil + case "fanciful": + data = nil + case "generated": + data = nil + case "good": + data = nil + case "has_any_benign": + data = nil + case "has_any_can_swim": + data = nil + case "has_any_cannot_breathe_air": + data = nil + case "has_any_cannot_breathe_water": + data = nil + case "has_any_carnivore": + data = nil + case "has_any_common_domestic": + data = nil + case "has_any_curious_beast": + data = nil + case "has_any_demon": + data = nil + case "has_any_feature_beast": + data = nil + case "has_any_flier": + data = nil + case "has_any_fly_race_gait": + data = nil + case "has_any_grasp": + data = nil + case "has_any_grazer": + data = nil + case "has_any_has_blood": + data = nil + case "has_any_immobile": + data = nil + case "has_any_intelligent_learns": + data = nil + case "has_any_intelligent_speaks": + data = nil + case "has_any_large_predator": + data = nil + case "has_any_local_pops_controllable": + data = nil + case "has_any_local_pops_produce_heroes": + data = nil + case "has_any_megabeast": + data = nil + case "has_any_mischievous": + data = nil + case "has_any_natural_animal": + data = nil + case "has_any_night_creature": + data = nil + case "has_any_night_creature_bogeyman": + data = nil + case "has_any_night_creature_hunter": + data = nil + case "has_any_night_creature_nightmare": + data = nil + case "has_any_not_fireimmune": + data = nil + case "has_any_not_living": + data = nil + case "has_any_outsider_controllable": + data = nil + case "has_any_race_gait": + data = nil + case "has_any_semimegabeast": + data = nil + case "has_any_slow_learner": + data = nil + case "has_any_supernatural": + data = nil + case "has_any_titan": + data = nil + case "has_any_unique_demon": + data = nil + case "has_any_utterances": + data = nil + case "has_any_vermin_hateable": + data = nil + case "has_any_vermin_micro": + data = nil + case "has_female": + data = nil + case "has_male": + data = nil + case "large_roaming": + data = nil + case "loose_clusters": + data = nil + case "mates_to_breed": + data = nil + case "mundane": + data = nil + case "name_plural": + data = nil + case "name_singular": + data = nil + case "occurs_as_entity_race": + data = nil + case "savage": + data = nil + case "small_race": + data = nil + case "two_genders": + data = nil + case "ubiquitous": + data = nil + case "vermin_eater": + data = nil + case "vermin_fish": + data = nil + case "vermin_grounder": + data = nil + case "vermin_rotter": + data = nil + case "vermin_soil": + data = nil + case "vermin_soil_colony": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "all_castes_alive": + obj.AllCastesAlive = string(data) + case "artificial_hiveable": + obj.ArtificialHiveable = string(data) + case "biome_desert_badland": + obj.BiomeDesertBadland = string(data) + case "biome_desert_rock": + obj.BiomeDesertRock = string(data) + case "biome_desert_sand": + obj.BiomeDesertSand = string(data) + case "biome_forest_taiga": + obj.BiomeForestTaiga = string(data) + case "biome_forest_temperate_broadleaf": + obj.BiomeForestTemperateBroadleaf = string(data) + case "biome_forest_temperate_conifer": + obj.BiomeForestTemperateConifer = string(data) + case "biome_forest_tropical_conifer": + obj.BiomeForestTropicalConifer = string(data) + case "biome_forest_tropical_dry_broadleaf": + obj.BiomeForestTropicalDryBroadleaf = string(data) + case "biome_forest_tropical_moist_broadleaf": + obj.BiomeForestTropicalMoistBroadleaf = string(data) + case "biome_glacier": + obj.BiomeGlacier = string(data) + case "biome_grassland_temperate": + obj.BiomeGrasslandTemperate = string(data) + case "biome_grassland_tropical": + obj.BiomeGrasslandTropical = string(data) + case "biome_lake_temperate_brackishwater": + obj.BiomeLakeTemperateBrackishwater = string(data) + case "biome_lake_temperate_freshwater": + obj.BiomeLakeTemperateFreshwater = string(data) + case "biome_lake_temperate_saltwater": + obj.BiomeLakeTemperateSaltwater = string(data) + case "biome_lake_tropical_brackishwater": + obj.BiomeLakeTropicalBrackishwater = string(data) + case "biome_lake_tropical_freshwater": + obj.BiomeLakeTropicalFreshwater = string(data) + case "biome_lake_tropical_saltwater": + obj.BiomeLakeTropicalSaltwater = string(data) + case "biome_marsh_temperate_freshwater": + obj.BiomeMarshTemperateFreshwater = string(data) + case "biome_marsh_temperate_saltwater": + obj.BiomeMarshTemperateSaltwater = string(data) + case "biome_marsh_tropical_freshwater": + obj.BiomeMarshTropicalFreshwater = string(data) + case "biome_marsh_tropical_saltwater": + obj.BiomeMarshTropicalSaltwater = string(data) + case "biome_mountain": + obj.BiomeMountain = string(data) + case "biome_ocean_arctic": + obj.BiomeOceanArctic = string(data) + case "biome_ocean_temperate": + obj.BiomeOceanTemperate = string(data) + case "biome_ocean_tropical": + obj.BiomeOceanTropical = string(data) + case "biome_pool_temperate_brackishwater": + obj.BiomePoolTemperateBrackishwater = string(data) + case "biome_pool_temperate_freshwater": + obj.BiomePoolTemperateFreshwater = string(data) + case "biome_pool_temperate_saltwater": + obj.BiomePoolTemperateSaltwater = string(data) + case "biome_pool_tropical_brackishwater": + obj.BiomePoolTropicalBrackishwater = string(data) + case "biome_pool_tropical_freshwater": + obj.BiomePoolTropicalFreshwater = string(data) + case "biome_pool_tropical_saltwater": + obj.BiomePoolTropicalSaltwater = string(data) + case "biome_river_temperate_brackishwater": + obj.BiomeRiverTemperateBrackishwater = string(data) + case "biome_river_temperate_freshwater": + obj.BiomeRiverTemperateFreshwater = string(data) + case "biome_river_temperate_saltwater": + obj.BiomeRiverTemperateSaltwater = string(data) + case "biome_river_tropical_brackishwater": + obj.BiomeRiverTropicalBrackishwater = string(data) + case "biome_river_tropical_freshwater": + obj.BiomeRiverTropicalFreshwater = string(data) + case "biome_river_tropical_saltwater": + obj.BiomeRiverTropicalSaltwater = string(data) + case "biome_savanna_temperate": + obj.BiomeSavannaTemperate = string(data) + case "biome_savanna_tropical": + obj.BiomeSavannaTropical = string(data) + case "biome_shrubland_temperate": + obj.BiomeShrublandTemperate = string(data) + case "biome_shrubland_tropical": + obj.BiomeShrublandTropical = string(data) + case "biome_subterranean_chasm": + obj.BiomeSubterraneanChasm = string(data) + case "biome_subterranean_lava": + obj.BiomeSubterraneanLava = string(data) + case "biome_subterranean_water": + obj.BiomeSubterraneanWater = string(data) + case "biome_swamp_mangrove": + obj.BiomeSwampMangrove = string(data) + case "biome_swamp_temperate_freshwater": + obj.BiomeSwampTemperateFreshwater = string(data) + case "biome_swamp_temperate_saltwater": + obj.BiomeSwampTemperateSaltwater = string(data) + case "biome_swamp_tropical_freshwater": + obj.BiomeSwampTropicalFreshwater = string(data) + case "biome_swamp_tropical_saltwater": + obj.BiomeSwampTropicalSaltwater = string(data) + case "biome_tundra": + obj.BiomeTundra = string(data) + case "creature_id": + obj.CreatureId = string(data) + case "does_not_exist": + obj.DoesNotExist = string(data) + case "equipment": + obj.Equipment = string(data) + case "equipment_wagon": + obj.EquipmentWagon = string(data) + case "evil": + obj.Evil = string(data) + case "fanciful": + obj.Fanciful = string(data) + case "generated": + obj.Generated = string(data) + case "good": + obj.Good = string(data) + case "has_any_benign": + obj.HasAnyBenign = string(data) + case "has_any_can_swim": + obj.HasAnyCanSwim = string(data) + case "has_any_cannot_breathe_air": + obj.HasAnyCannotBreatheAir = string(data) + case "has_any_cannot_breathe_water": + obj.HasAnyCannotBreatheWater = string(data) + case "has_any_carnivore": + obj.HasAnyCarnivore = string(data) + case "has_any_common_domestic": + obj.HasAnyCommonDomestic = string(data) + case "has_any_curious_beast": + obj.HasAnyCuriousBeast = string(data) + case "has_any_demon": + obj.HasAnyDemon = string(data) + case "has_any_feature_beast": + obj.HasAnyFeatureBeast = string(data) + case "has_any_flier": + obj.HasAnyFlier = string(data) + case "has_any_fly_race_gait": + obj.HasAnyFlyRaceGait = string(data) + case "has_any_grasp": + obj.HasAnyGrasp = string(data) + case "has_any_grazer": + obj.HasAnyGrazer = string(data) + case "has_any_has_blood": + obj.HasAnyHasBlood = string(data) + case "has_any_immobile": + obj.HasAnyImmobile = string(data) + case "has_any_intelligent_learns": + obj.HasAnyIntelligentLearns = string(data) + case "has_any_intelligent_speaks": + obj.HasAnyIntelligentSpeaks = string(data) + case "has_any_large_predator": + obj.HasAnyLargePredator = string(data) + case "has_any_local_pops_controllable": + obj.HasAnyLocalPopsControllable = string(data) + case "has_any_local_pops_produce_heroes": + obj.HasAnyLocalPopsProduceHeroes = string(data) + case "has_any_megabeast": + obj.HasAnyMegabeast = string(data) + case "has_any_mischievous": + obj.HasAnyMischievous = string(data) + case "has_any_natural_animal": + obj.HasAnyNaturalAnimal = string(data) + case "has_any_night_creature": + obj.HasAnyNightCreature = string(data) + case "has_any_night_creature_bogeyman": + obj.HasAnyNightCreatureBogeyman = string(data) + case "has_any_night_creature_hunter": + obj.HasAnyNightCreatureHunter = string(data) + case "has_any_night_creature_nightmare": + obj.HasAnyNightCreatureNightmare = string(data) + case "has_any_not_fireimmune": + obj.HasAnyNotFireimmune = string(data) + case "has_any_not_living": + obj.HasAnyNotLiving = string(data) + case "has_any_outsider_controllable": + obj.HasAnyOutsiderControllable = string(data) + case "has_any_race_gait": + obj.HasAnyRaceGait = string(data) + case "has_any_semimegabeast": + obj.HasAnySemimegabeast = string(data) + case "has_any_slow_learner": + obj.HasAnySlowLearner = string(data) + case "has_any_supernatural": + obj.HasAnySupernatural = string(data) + case "has_any_titan": + obj.HasAnyTitan = string(data) + case "has_any_unique_demon": + obj.HasAnyUniqueDemon = string(data) + case "has_any_utterances": + obj.HasAnyUtterances = string(data) + case "has_any_vermin_hateable": + obj.HasAnyVerminHateable = string(data) + case "has_any_vermin_micro": + obj.HasAnyVerminMicro = string(data) + case "has_female": + obj.HasFemale = string(data) + case "has_male": + obj.HasMale = string(data) + case "large_roaming": + obj.LargeRoaming = string(data) + case "loose_clusters": + obj.LooseClusters = string(data) + case "mates_to_breed": + obj.MatesToBreed = string(data) + case "mundane": + obj.Mundane = string(data) + case "name_plural": + obj.NamePlural = string(data) + case "name_singular": + obj.NameSingular = string(data) + case "occurs_as_entity_race": + obj.OccursAsEntityRace = string(data) + case "savage": + obj.Savage = string(data) + case "small_race": + obj.SmallRace = string(data) + case "two_genders": + obj.TwoGenders = string(data) + case "ubiquitous": + obj.Ubiquitous = string(data) + case "vermin_eater": + obj.VerminEater = string(data) + case "vermin_fish": + obj.VerminFish = string(data) + case "vermin_grounder": + obj.VerminGrounder = string(data) + case "vermin_rotter": + obj.VerminRotter = string(data) + case "vermin_soil": + obj.VerminSoil = string(data) + case "vermin_soil_colony": + obj.VerminSoilColony = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *DanceForm) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "description": + data = nil + case "id": + data = nil + case "name": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "description": + obj.Description = string(data) + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *DfWorld) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "altname": + data = nil + case "artifacts": + + case "creature_raw": + + case "dance_forms": + + case "entities": + + case "entity_populations": + + case "historical_eras": + + case "historical_event_collections": + + case "historical_event_relationship_supplements": + + case "historical_event_relationships": + + case "historical_events": + + case "historical_figures": + + case "identities": + + case "landmasses": + + case "mountain_peaks": + + case "musical_forms": + + case "name": + data = nil + case "poetic_forms": + + case "regions": + + case "rivers": + + case "sites": + + case "underground_regions": + + case "world_constructions": + + case "written_contents": + + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "altname": + obj.Altname = string(data) + case "artifacts": + + case "creature_raw": + + case "dance_forms": + + case "entities": + + case "entity_populations": + + case "historical_eras": + + case "historical_event_collections": + + case "historical_event_relationship_supplements": + + case "historical_event_relationships": + + case "historical_events": + + case "historical_figures": + + case "identities": + + case "landmasses": + + case "mountain_peaks": + + case "musical_forms": + + case "name": + obj.Name_ = string(data) + case "poetic_forms": + + case "regions": + + case "rivers": + + case "sites": + + case "underground_regions": + + case "world_constructions": + + case "written_contents": + + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Entity) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "child": + data = nil + case "claims": + data = nil + case "entity_link": + v := EntityLink{} +v.Parse(d, &t) +obj.EntityLink = v + case "entity_position": + v := EntityPosition{} +v.Parse(d, &t) +obj.EntityPosition = v + case "entity_position_assignment": + v := EntityPositionAssignment{} +v.Parse(d, &t) +obj.EntityPositionAssignment = v + case "histfig_id": + data = nil + case "honor": + v := Honor{} +v.Parse(d, &t) +obj.Honor = append(obj.Honor, v) + case "id": + data = nil + case "name": + data = nil + case "occasion": + v := Occasion{} +v.Parse(d, &t) +obj.Occasion = v + case "profession": + data = nil + case "race": + data = nil + case "type": + data = nil + case "weapon": + data = nil + case "worship_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "child": + obj.Child = n(data) + case "claims": + obj.Claims = n(data) + case "entity_link": + + case "entity_position": + + case "entity_position_assignment": + + case "histfig_id": + obj.HistfigId = n(data) + case "honor": + + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = string(data) + case "occasion": + + case "profession": + obj.Profession = n(data) + case "race": + obj.Race = string(data) + case "type": + obj.Type = string(data) + case "weapon": + obj.Weapon = n(data) + case "worship_id": + obj.WorshipId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *EntityFormerPositionLink) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "end_year": + data = nil + case "entity_id": + data = nil + case "position_profile_id": + data = nil + case "start_year": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "end_year": + obj.EndYear = n(data) + case "entity_id": + obj.EntityId = n(data) + case "position_profile_id": + obj.PositionProfileId = n(data) + case "start_year": + obj.StartYear = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *EntityLink) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "entity_id": + data = nil + case "link_strength": + data = nil + case "link_type": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "entity_id": + obj.EntityId = n(data) + case "link_strength": + obj.LinkStrength = n(data) + case "link_type": + obj.LinkType = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *EntityPopulation) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "civ_id": + data = nil + case "id": + data = nil + case "race": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "civ_id": + obj.CivId = n(data) + case "id": + obj.Id_ = n(data) + case "race": + obj.Race = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *EntityPosition) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "id": + data = nil + case "name": + data = nil + case "name_female": + data = nil + case "name_male": + data = nil + case "spouse": + data = nil + case "spouse_female": + data = nil + case "spouse_male": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = n(data) + case "name_female": + obj.NameFemale = n(data) + case "name_male": + obj.NameMale = n(data) + case "spouse": + obj.Spouse = n(data) + case "spouse_female": + obj.SpouseFemale = n(data) + case "spouse_male": + obj.SpouseMale = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *EntityPositionAssignment) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "histfig": + data = nil + case "id": + data = nil + case "position_id": + data = nil + case "squad_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "histfig": + obj.Histfig = n(data) + case "id": + obj.Id_ = n(data) + case "position_id": + obj.PositionId = n(data) + case "squad_id": + obj.SquadId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *EntityPositionLink) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "entity_id": + data = nil + case "position_profile_id": + data = nil + case "start_year": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "entity_id": + obj.EntityId = n(data) + case "position_profile_id": + obj.PositionProfileId = n(data) + case "start_year": + obj.StartYear = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *EntityReputation) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "entity_id": + data = nil + case "first_ageless_season_count": + data = nil + case "first_ageless_year": + data = nil + case "unsolved_murders": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "entity_id": + obj.EntityId = n(data) + case "first_ageless_season_count": + obj.FirstAgelessSeasonCount = n(data) + case "first_ageless_year": + obj.FirstAgelessYear = n(data) + case "unsolved_murders": + obj.UnsolvedMurders = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *EntitySquadLink) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "entity_id": + data = nil + case "squad_id": + data = nil + case "squad_position": + data = nil + case "start_year": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "entity_id": + obj.EntityId = n(data) + case "squad_id": + obj.SquadId = n(data) + case "squad_position": + obj.SquadPosition = n(data) + case "start_year": + obj.StartYear = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Feature) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "reference": + data = nil + case "type": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "reference": + obj.Reference = n(data) + case "type": + obj.Type = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HfLink) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "hfid": + data = nil + case "link_strength": + data = nil + case "link_type": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "hfid": + obj.Hfid = n(data) + case "link_strength": + obj.LinkStrength = n(data) + case "link_type": + obj.LinkType = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HfSkill) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "skill": + data = nil + case "total_ip": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "skill": + obj.Skill = string(data) + case "total_ip": + obj.TotalIp = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEra) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "name": + data = nil + case "start_year": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "name": + obj.Name_ = string(data) + case "start_year": + obj.StartYear = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEvent) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "id": + data = nil + case "seconds72": + data = nil + case "type": + data = nil + case "year": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "id": + obj.Id_ = n(data) + case "seconds72": + obj.Seconds72 = n(data) + case "type": + obj.Type = string(data) + case "year": + obj.Year = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventAddHfEntityHonor) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "entity_id": + data = nil + case "hfid": + data = nil + case "honor_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "entity_id": + obj.EntityId = n(data) + case "hfid": + obj.Hfid = n(data) + case "honor_id": + obj.HonorId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventAddHfEntityLink) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "appointer_hfid": + data = nil + case "civ": + data = nil + case "civ_id": + data = nil + case "hfid": + data = nil + case "histfig": + data = nil + case "link": + data = nil + case "link_type": + data = nil + case "position": + data = nil + case "position_id": + data = nil + case "promise_to_hfid": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "appointer_hfid": + obj.AppointerHfid = n(data) + case "civ": + obj.Civ = n(data) + case "civ_id": + obj.CivId = n(data) + case "hfid": + obj.Hfid = n(data) + case "histfig": + obj.Histfig = n(data) + case "link": + obj.Link = string(data) + case "link_type": + obj.LinkType = string(data) + case "position": + obj.Position = string(data) + case "position_id": + obj.PositionId = n(data) + case "promise_to_hfid": + obj.PromiseToHfid = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventAddHfHfLink) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "hf": + data = nil + case "hf_target": + data = nil + case "hfid": + data = nil + case "hfid_target": + data = nil + case "link_type": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "hf": + obj.Hf = n(data) + case "hf_target": + obj.HfTarget = n(data) + case "hfid": + obj.Hfid = n(data) + case "hfid_target": + obj.HfidTarget = n(data) + case "link_type": + obj.LinkType = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventAddHfSiteLink) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "civ": + data = nil + case "histfig": + data = nil + case "link_type": + data = nil + case "site": + data = nil + case "site_id": + data = nil + case "structure": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "civ": + obj.Civ = n(data) + case "histfig": + obj.Histfig = n(data) + case "link_type": + obj.LinkType = string(data) + case "site": + obj.Site = n(data) + case "site_id": + obj.SiteId = n(data) + case "structure": + obj.Structure = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventAgreementFormed) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "action": + data = nil + case "agreement_id": + data = nil + case "ally_defense_bonus": + data = nil + case "coconspirator_bonus": + data = nil + case "delegated": + data = nil + case "failed_judgment_test": + data = nil + case "method": + data = nil + case "relevant_entity_id": + data = nil + case "relevant_id_for_method": + data = nil + case "relevant_position_profile_id": + data = nil + case "successful": + data = nil + case "top_facet": + data = nil + case "top_facet_modifier": + data = nil + case "top_facet_rating": + data = nil + case "top_relationship_factor": + data = nil + case "top_relationship_modifier": + data = nil + case "top_relationship_rating": + data = nil + case "top_value": + data = nil + case "top_value_modifier": + data = nil + case "top_value_rating": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "action": + obj.Action = string(data) + case "agreement_id": + obj.AgreementId = n(data) + case "ally_defense_bonus": + obj.AllyDefenseBonus = n(data) + case "coconspirator_bonus": + obj.CoconspiratorBonus = n(data) + case "delegated": + obj.Delegated = string(data) + case "failed_judgment_test": + obj.FailedJudgmentTest = string(data) + case "method": + obj.Method = string(data) + case "relevant_entity_id": + obj.RelevantEntityId = n(data) + case "relevant_id_for_method": + obj.RelevantIdForMethod = n(data) + case "relevant_position_profile_id": + obj.RelevantPositionProfileId = n(data) + case "successful": + obj.Successful = string(data) + case "top_facet": + obj.TopFacet = string(data) + case "top_facet_modifier": + obj.TopFacetModifier = n(data) + case "top_facet_rating": + obj.TopFacetRating = n(data) + case "top_relationship_factor": + obj.TopRelationshipFactor = string(data) + case "top_relationship_modifier": + obj.TopRelationshipModifier = n(data) + case "top_relationship_rating": + obj.TopRelationshipRating = n(data) + case "top_value": + obj.TopValue = string(data) + case "top_value_modifier": + obj.TopValueModifier = n(data) + case "top_value_rating": + obj.TopValueRating = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventArtifactClaimFormed) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "artifact_id": + data = nil + case "circumstance": + data = nil + case "claim": + data = nil + case "entity_id": + data = nil + case "hist_figure_id": + data = nil + case "position_profile_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "artifact_id": + obj.ArtifactId = n(data) + case "circumstance": + obj.Circumstance = string(data) + case "claim": + obj.Claim = string(data) + case "entity_id": + obj.EntityId = n(data) + case "hist_figure_id": + obj.HistFigureId = n(data) + case "position_profile_id": + obj.PositionProfileId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventArtifactCopied) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "artifact_id": + data = nil + case "dest_entity_id": + data = nil + case "dest_site_id": + data = nil + case "dest_structure_id": + data = nil + case "from_original": + data = nil + case "source_entity_id": + data = nil + case "source_site_id": + data = nil + case "source_structure_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "artifact_id": + obj.ArtifactId = n(data) + case "dest_entity_id": + obj.DestEntityId = n(data) + case "dest_site_id": + obj.DestSiteId = n(data) + case "dest_structure_id": + obj.DestStructureId = n(data) + case "from_original": + obj.FromOriginal = string(data) + case "source_entity_id": + obj.SourceEntityId = n(data) + case "source_site_id": + obj.SourceSiteId = n(data) + case "source_structure_id": + obj.SourceStructureId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventArtifactCreated) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "artifact_id": + data = nil + case "circumstance": + v := Circumstance{} +v.Parse(d, &t) +obj.Circumstance = v + case "creator_hfid": + data = nil + case "creator_unit_id": + data = nil + case "hist_figure_id": + data = nil + case "name_only": + data = nil + case "reason": + data = nil + case "sanctify_hf": + data = nil + case "site": + data = nil + case "site_id": + data = nil + case "unit_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "artifact_id": + obj.ArtifactId = n(data) + case "circumstance": + + case "creator_hfid": + obj.CreatorHfid = n(data) + case "creator_unit_id": + obj.CreatorUnitId = n(data) + case "hist_figure_id": + obj.HistFigureId = n(data) + case "name_only": + obj.NameOnly = string(data) + case "reason": + obj.Reason = string(data) + case "sanctify_hf": + obj.SanctifyHf = n(data) + case "site": + obj.Site = n(data) + case "site_id": + obj.SiteId = n(data) + case "unit_id": + obj.UnitId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventArtifactDestroyed) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "artifact_id": + data = nil + case "destroyer_enid": + data = nil + case "site_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "artifact_id": + obj.ArtifactId = n(data) + case "destroyer_enid": + obj.DestroyerEnid = n(data) + case "site_id": + obj.SiteId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventArtifactFound) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "artifact_id": + data = nil + case "hist_figure_id": + data = nil + case "site_id": + data = nil + case "unit_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "artifact_id": + obj.ArtifactId = n(data) + case "hist_figure_id": + obj.HistFigureId = n(data) + case "site_id": + obj.SiteId = n(data) + case "unit_id": + obj.UnitId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventArtifactGiven) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "artifact_id": + data = nil + case "giver_entity_id": + data = nil + case "giver_hist_figure_id": + data = nil + case "receiver_entity_id": + data = nil + case "receiver_hist_figure_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "artifact_id": + obj.ArtifactId = n(data) + case "giver_entity_id": + obj.GiverEntityId = n(data) + case "giver_hist_figure_id": + obj.GiverHistFigureId = n(data) + case "receiver_entity_id": + obj.ReceiverEntityId = n(data) + case "receiver_hist_figure_id": + obj.ReceiverHistFigureId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventArtifactLost) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "artifact_id": + data = nil + case "site_id": + data = nil + case "site_property_id": + data = nil + case "subregion_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "artifact_id": + obj.ArtifactId = n(data) + case "site_id": + obj.SiteId = n(data) + case "site_property_id": + obj.SitePropertyId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventArtifactPossessed) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "artifact_id": + data = nil + case "circumstance": + data = nil + case "circumstance_id": + data = nil + case "feature_layer_id": + data = nil + case "hist_figure_id": + data = nil + case "reason": + data = nil + case "reason_id": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + case "unit_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "artifact_id": + obj.ArtifactId = n(data) + case "circumstance": + obj.Circumstance = string(data) + case "circumstance_id": + obj.CircumstanceId = n(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "hist_figure_id": + obj.HistFigureId = n(data) + case "reason": + obj.Reason = string(data) + case "reason_id": + obj.ReasonId = n(data) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + case "unit_id": + obj.UnitId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventArtifactRecovered) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "artifact_id": + data = nil + case "feature_layer_id": + data = nil + case "hist_figure_id": + data = nil + case "site_id": + data = nil + case "structure_id": + data = nil + case "subregion_id": + data = nil + case "unit_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "artifact_id": + obj.ArtifactId = n(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "hist_figure_id": + obj.HistFigureId = n(data) + case "site_id": + obj.SiteId = n(data) + case "structure_id": + obj.StructureId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + case "unit_id": + obj.UnitId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventArtifactStored) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "artifact_id": + data = nil + case "hist_figure_id": + data = nil + case "site_id": + data = nil + case "unit_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "artifact_id": + obj.ArtifactId = n(data) + case "hist_figure_id": + obj.HistFigureId = n(data) + case "site_id": + obj.SiteId = n(data) + case "unit_id": + obj.UnitId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventAssumeIdentity) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "identity_caste": + data = nil + case "identity_histfig_id": + data = nil + case "identity_id": + data = nil + case "identity_name": + data = nil + case "identity_nemesis_id": + data = nil + case "identity_race": + data = nil + case "target": + data = nil + case "target_enid": + data = nil + case "trickster": + data = nil + case "trickster_hfid": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "identity_caste": + obj.IdentityCaste = string(data) + case "identity_histfig_id": + obj.IdentityHistfigId = n(data) + case "identity_id": + obj.IdentityId = n(data) + case "identity_name": + obj.IdentityName = string(data) + case "identity_nemesis_id": + obj.IdentityNemesisId = n(data) + case "identity_race": + obj.IdentityRace = string(data) + case "target": + obj.Target = n(data) + case "target_enid": + obj.TargetEnid = n(data) + case "trickster": + obj.Trickster = n(data) + case "trickster_hfid": + obj.TricksterHfid = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventAttackedSite) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "a_support_merc_enid": + data = nil + case "attacker_civ_id": + data = nil + case "attacker_general_hfid": + data = nil + case "attacker_merc_enid": + data = nil + case "d_support_merc_enid": + data = nil + case "defender_civ_id": + data = nil + case "defender_general_hfid": + data = nil + case "defender_merc_enid": + data = nil + case "site_civ_id": + data = nil + case "site_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "a_support_merc_enid": + obj.ASupportMercEnid = n(data) + case "attacker_civ_id": + obj.AttackerCivId = n(data) + case "attacker_general_hfid": + obj.AttackerGeneralHfid = n(data) + case "attacker_merc_enid": + obj.AttackerMercEnid = n(data) + case "d_support_merc_enid": + obj.DSupportMercEnid = n(data) + case "defender_civ_id": + obj.DefenderCivId = n(data) + case "defender_general_hfid": + obj.DefenderGeneralHfid = n(data) + case "defender_merc_enid": + obj.DefenderMercEnid = n(data) + case "site_civ_id": + obj.SiteCivId = n(data) + case "site_id": + obj.SiteId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventBodyAbused) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "abuse_type": + data = nil + case "bodies": + data = nil + case "civ": + data = nil + case "coords": + data = nil + case "feature_layer_id": + data = nil + case "histfig": + data = nil + case "interaction": + data = nil + case "item_mat": + data = nil + case "item_subtype": + data = nil + case "item_type": + data = nil + case "pile_type": + data = nil + case "site": + data = nil + case "site_id": + data = nil + case "structure": + data = nil + case "subregion_id": + data = nil + case "tree": + data = nil + case "victim_entity": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "abuse_type": + obj.AbuseType = string(data) + case "bodies": + obj.Bodies = append(obj.Bodies, n(data)) + case "civ": + obj.Civ = n(data) + case "coords": + obj.Coords = string(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "histfig": + obj.Histfig = n(data) + case "interaction": + obj.Interaction = n(data) + case "item_mat": + obj.ItemMat = string(data) + case "item_subtype": + obj.ItemSubtype = string(data) + case "item_type": + obj.ItemType = string(data) + case "pile_type": + obj.PileType = string(data) + case "site": + obj.Site = n(data) + case "site_id": + obj.SiteId = n(data) + case "structure": + obj.Structure = n(data) + case "subregion_id": + obj.SubregionId = n(data) + case "tree": + obj.Tree = n(data) + case "victim_entity": + obj.VictimEntity = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventBuildingProfileAcquired) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "acquirer_enid": + data = nil + case "acquirer_hfid": + data = nil + case "building_profile_id": + data = nil + case "inherited": + data = nil + case "last_owner_hfid": + data = nil + case "purchased_unowned": + data = nil + case "rebuilt_ruined": + data = nil + case "site_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "acquirer_enid": + obj.AcquirerEnid = n(data) + case "acquirer_hfid": + obj.AcquirerHfid = n(data) + case "building_profile_id": + obj.BuildingProfileId = n(data) + case "inherited": + obj.Inherited = string(data) + case "last_owner_hfid": + obj.LastOwnerHfid = n(data) + case "purchased_unowned": + obj.PurchasedUnowned = string(data) + case "rebuilt_ruined": + obj.RebuiltRuined = string(data) + case "site_id": + obj.SiteId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventCeremony) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "civ_id": + data = nil + case "feature_layer_id": + data = nil + case "occasion_id": + data = nil + case "schedule_id": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "civ_id": + obj.CivId = n(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "occasion_id": + obj.OccasionId = n(data) + case "schedule_id": + obj.ScheduleId = n(data) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventChangeCreatureType) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "changee": + data = nil + case "changer": + data = nil + case "new_caste": + data = nil + case "new_race": + data = nil + case "old_caste": + data = nil + case "old_race": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "changee": + obj.Changee = n(data) + case "changer": + obj.Changer = n(data) + case "new_caste": + obj.NewCaste = n(data) + case "new_race": + obj.NewRace = string(data) + case "old_caste": + obj.OldCaste = n(data) + case "old_race": + obj.OldRace = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventChangeHfBodyState) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "body_state": + data = nil + case "coords": + data = nil + case "feature_layer_id": + data = nil + case "hfid": + data = nil + case "site_id": + data = nil + case "structure_id": + data = nil + case "subregion_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "body_state": + obj.BodyState = string(data) + case "coords": + obj.Coords = string(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "hfid": + obj.Hfid = n(data) + case "site_id": + obj.SiteId = n(data) + case "structure_id": + obj.StructureId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventChangeHfJob) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "feature_layer_id": + data = nil + case "hfid": + data = nil + case "new_job": + data = nil + case "old_job": + data = nil + case "site": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "hfid": + obj.Hfid = n(data) + case "new_job": + obj.NewJob = string(data) + case "old_job": + obj.OldJob = string(data) + case "site": + obj.Site = n(data) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventChangeHfState) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "coords": + data = nil + case "feature_layer_id": + data = nil + case "hfid": + data = nil + case "mood": + data = nil + case "reason": + data = nil + case "site": + data = nil + case "site_id": + data = nil + case "state": + data = nil + case "subregion_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "coords": + obj.Coords = string(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "hfid": + obj.Hfid = n(data) + case "mood": + obj.Mood = string(data) + case "reason": + obj.Reason = string(data) + case "site": + obj.Site = n(data) + case "site_id": + obj.SiteId = n(data) + case "state": + obj.State = string(data) + case "subregion_id": + obj.SubregionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventChangedCreatureType) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "changee_hfid": + data = nil + case "changer_hfid": + data = nil + case "new_caste": + data = nil + case "new_race": + data = nil + case "old_caste": + data = nil + case "old_race": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "changee_hfid": + obj.ChangeeHfid = n(data) + case "changer_hfid": + obj.ChangerHfid = n(data) + case "new_caste": + obj.NewCaste = string(data) + case "new_race": + obj.NewRace = string(data) + case "old_caste": + obj.OldCaste = string(data) + case "old_race": + obj.OldRace = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventCompetition) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "civ_id": + data = nil + case "competitor_hfid": + data = nil + case "feature_layer_id": + data = nil + case "occasion_id": + data = nil + case "schedule_id": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + case "winner_hfid": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "civ_id": + obj.CivId = n(data) + case "competitor_hfid": + obj.CompetitorHfid = append(obj.CompetitorHfid, n(data)) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "occasion_id": + obj.OccasionId = n(data) + case "schedule_id": + obj.ScheduleId = n(data) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + case "winner_hfid": + obj.WinnerHfid = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventCreateEntityPosition) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "civ": + data = nil + case "histfig": + data = nil + case "position": + data = nil + case "reason": + data = nil + case "site_civ": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "civ": + obj.Civ = n(data) + case "histfig": + obj.Histfig = n(data) + case "position": + obj.Position = string(data) + case "reason": + obj.Reason = string(data) + case "site_civ": + obj.SiteCiv = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventCreatedBuilding) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "builder_hf": + data = nil + case "civ": + data = nil + case "rebuild": + data = nil + case "site": + data = nil + case "site_civ": + data = nil + case "structure": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "builder_hf": + obj.BuilderHf = n(data) + case "civ": + obj.Civ = n(data) + case "rebuild": + obj.Rebuild = string(data) + case "site": + obj.Site = n(data) + case "site_civ": + obj.SiteCiv = n(data) + case "structure": + obj.Structure = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventCreatedSite) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "builder_hfid": + data = nil + case "civ_id": + data = nil + case "resident_civ_id": + data = nil + case "site_civ_id": + data = nil + case "site_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "builder_hfid": + obj.BuilderHfid = n(data) + case "civ_id": + obj.CivId = n(data) + case "resident_civ_id": + obj.ResidentCivId = n(data) + case "site_civ_id": + obj.SiteCivId = n(data) + case "site_id": + obj.SiteId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventCreatedStructure) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "builder_hfid": + data = nil + case "civ_id": + data = nil + case "rebuilt": + data = nil + case "site_civ_id": + data = nil + case "site_id": + data = nil + case "structure_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "builder_hfid": + obj.BuilderHfid = n(data) + case "civ_id": + obj.CivId = n(data) + case "rebuilt": + obj.Rebuilt = string(data) + case "site_civ_id": + obj.SiteCivId = n(data) + case "site_id": + obj.SiteId = n(data) + case "structure_id": + obj.StructureId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventCreatedWorldConstruction) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "civ_id": + data = nil + case "master_wcid": + data = nil + case "site_civ_id": + data = nil + case "site_id1": + data = nil + case "site_id2": + data = nil + case "wcid": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "civ_id": + obj.CivId = n(data) + case "master_wcid": + obj.MasterWcid = n(data) + case "site_civ_id": + obj.SiteCivId = n(data) + case "site_id1": + obj.SiteId1 = n(data) + case "site_id2": + obj.SiteId2 = n(data) + case "wcid": + obj.Wcid = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventCreatureDevoured) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "caste": + data = nil + case "eater": + data = nil + case "entity": + data = nil + case "feature_layer_id": + data = nil + case "race": + data = nil + case "site": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + case "victim": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "caste": + obj.Caste = string(data) + case "eater": + obj.Eater = n(data) + case "entity": + obj.Entity = n(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "race": + obj.Race = string(data) + case "site": + obj.Site = n(data) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + case "victim": + obj.Victim = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventDanceFormCreated) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "circumstance": + data = nil + case "circumstance_id": + data = nil + case "form_id": + data = nil + case "hist_figure_id": + data = nil + case "reason": + data = nil + case "reason_id": + data = nil + case "site_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "circumstance": + obj.Circumstance = string(data) + case "circumstance_id": + obj.CircumstanceId = n(data) + case "form_id": + obj.FormId = n(data) + case "hist_figure_id": + obj.HistFigureId = n(data) + case "reason": + obj.Reason = string(data) + case "reason_id": + obj.ReasonId = n(data) + case "site_id": + obj.SiteId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventDestroyedSite) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "attacker_civ_id": + data = nil + case "defender_civ_id": + data = nil + case "site_civ_id": + data = nil + case "site_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "attacker_civ_id": + obj.AttackerCivId = n(data) + case "defender_civ_id": + obj.DefenderCivId = n(data) + case "site_civ_id": + obj.SiteCivId = n(data) + case "site_id": + obj.SiteId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventEntityAction) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "action": + data = nil + case "entity": + data = nil + case "site": + data = nil + case "structure": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "action": + obj.Action = string(data) + case "entity": + obj.Entity = n(data) + case "site": + obj.Site = n(data) + case "structure": + obj.Structure = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventEntityAllianceFormed) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "initiating_enid": + data = nil + case "joining_enid": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "initiating_enid": + obj.InitiatingEnid = n(data) + case "joining_enid": + obj.JoiningEnid = append(obj.JoiningEnid, n(data)) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventEntityBreachFeatureLayer) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "civ_entity_id": + data = nil + case "feature_layer_id": + data = nil + case "site_entity_id": + data = nil + case "site_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "civ_entity_id": + obj.CivEntityId = n(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "site_entity_id": + obj.SiteEntityId = n(data) + case "site_id": + obj.SiteId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventEntityCreated) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "creator_hfid": + data = nil + case "entity_id": + data = nil + case "site_id": + data = nil + case "structure_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "creator_hfid": + obj.CreatorHfid = n(data) + case "entity_id": + obj.EntityId = n(data) + case "site_id": + obj.SiteId = n(data) + case "structure_id": + obj.StructureId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventEntityDissolved) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "entity_id": + data = nil + case "reason": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "entity_id": + obj.EntityId = n(data) + case "reason": + obj.Reason = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventEntityEquipmentPurchase) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "entity_id": + data = nil + case "hfid": + data = nil + case "new_equipment_level": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "entity_id": + obj.EntityId = n(data) + case "hfid": + obj.Hfid = append(obj.Hfid, n(data)) + case "new_equipment_level": + obj.NewEquipmentLevel = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventEntityIncorporated) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "joined_entity_id": + data = nil + case "joiner_entity_id": + data = nil + case "leader_hfid": + data = nil + case "partial_incorporation": + data = nil + case "site_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "joined_entity_id": + obj.JoinedEntityId = n(data) + case "joiner_entity_id": + obj.JoinerEntityId = n(data) + case "leader_hfid": + obj.LeaderHfid = n(data) + case "partial_incorporation": + obj.PartialIncorporation = string(data) + case "site_id": + obj.SiteId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventEntityLaw) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "entity_id": + data = nil + case "hist_figure_id": + data = nil + case "law_add": + data = nil + case "law_remove": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "entity_id": + obj.EntityId = n(data) + case "hist_figure_id": + obj.HistFigureId = n(data) + case "law_add": + obj.LawAdd = string(data) + case "law_remove": + obj.LawRemove = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventEntityOverthrown) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "conspirator_hfid": + data = nil + case "entity_id": + data = nil + case "instigator_hfid": + data = nil + case "overthrown_hfid": + data = nil + case "pos_taker_hfid": + data = nil + case "position_profile_id": + data = nil + case "site_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "conspirator_hfid": + obj.ConspiratorHfid = append(obj.ConspiratorHfid, n(data)) + case "entity_id": + obj.EntityId = n(data) + case "instigator_hfid": + obj.InstigatorHfid = n(data) + case "overthrown_hfid": + obj.OverthrownHfid = n(data) + case "pos_taker_hfid": + obj.PosTakerHfid = n(data) + case "position_profile_id": + obj.PositionProfileId = n(data) + case "site_id": + obj.SiteId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventEntityPersecuted) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "destroyed_structure_id": + data = nil + case "expelled_creature": + data = nil + case "expelled_hfid": + data = nil + case "expelled_number": + data = nil + case "expelled_pop_id": + data = nil + case "persecutor_enid": + data = nil + case "persecutor_hfid": + data = nil + case "property_confiscated_from_hfid": + data = nil + case "shrine_amount_destroyed": + data = nil + case "site_id": + data = nil + case "target_enid": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "destroyed_structure_id": + obj.DestroyedStructureId = n(data) + case "expelled_creature": + obj.ExpelledCreature = append(obj.ExpelledCreature, n(data)) + case "expelled_hfid": + obj.ExpelledHfid = append(obj.ExpelledHfid, n(data)) + case "expelled_number": + obj.ExpelledNumber = append(obj.ExpelledNumber, n(data)) + case "expelled_pop_id": + obj.ExpelledPopId = append(obj.ExpelledPopId, n(data)) + case "persecutor_enid": + obj.PersecutorEnid = n(data) + case "persecutor_hfid": + obj.PersecutorHfid = n(data) + case "property_confiscated_from_hfid": + obj.PropertyConfiscatedFromHfid = append(obj.PropertyConfiscatedFromHfid, n(data)) + case "shrine_amount_destroyed": + obj.ShrineAmountDestroyed = n(data) + case "site_id": + obj.SiteId = n(data) + case "target_enid": + obj.TargetEnid = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventEntityPrimaryCriminals) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "entity_id": + data = nil + case "site_id": + data = nil + case "structure_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "entity_id": + obj.EntityId = n(data) + case "site_id": + obj.SiteId = n(data) + case "structure_id": + obj.StructureId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventEntityRelocate) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "entity_id": + data = nil + case "site_id": + data = nil + case "structure_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "entity_id": + obj.EntityId = n(data) + case "site_id": + obj.SiteId = n(data) + case "structure_id": + obj.StructureId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventFailedFrameAttempt) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "convicter_enid": + data = nil + case "crime": + data = nil + case "fooled_hfid": + data = nil + case "framer_hfid": + data = nil + case "plotter_hfid": + data = nil + case "target_hfid": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "convicter_enid": + obj.ConvicterEnid = n(data) + case "crime": + obj.Crime = string(data) + case "fooled_hfid": + obj.FooledHfid = n(data) + case "framer_hfid": + obj.FramerHfid = n(data) + case "plotter_hfid": + obj.PlotterHfid = n(data) + case "target_hfid": + obj.TargetHfid = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventFailedIntrigueCorruption) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "action": + data = nil + case "ally_defense_bonus": + data = nil + case "coconspirator_bonus": + data = nil + case "corruptor_hfid": + data = nil + case "corruptor_identity": + data = nil + case "failed_judgment_test": + data = nil + case "feature_layer_id": + data = nil + case "lure_hfid": + data = nil + case "method": + data = nil + case "relevant_entity_id": + data = nil + case "relevant_id_for_method": + data = nil + case "relevant_position_profile_id": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + case "target_hfid": + data = nil + case "target_identity": + data = nil + case "top_facet": + data = nil + case "top_facet_modifier": + data = nil + case "top_facet_rating": + data = nil + case "top_relationship_factor": + data = nil + case "top_relationship_modifier": + data = nil + case "top_relationship_rating": + data = nil + case "top_value": + data = nil + case "top_value_modifier": + data = nil + case "top_value_rating": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "action": + obj.Action = string(data) + case "ally_defense_bonus": + obj.AllyDefenseBonus = n(data) + case "coconspirator_bonus": + obj.CoconspiratorBonus = n(data) + case "corruptor_hfid": + obj.CorruptorHfid = n(data) + case "corruptor_identity": + obj.CorruptorIdentity = n(data) + case "failed_judgment_test": + obj.FailedJudgmentTest = string(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "lure_hfid": + obj.LureHfid = n(data) + case "method": + obj.Method = string(data) + case "relevant_entity_id": + obj.RelevantEntityId = n(data) + case "relevant_id_for_method": + obj.RelevantIdForMethod = n(data) + case "relevant_position_profile_id": + obj.RelevantPositionProfileId = n(data) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + case "target_hfid": + obj.TargetHfid = n(data) + case "target_identity": + obj.TargetIdentity = n(data) + case "top_facet": + obj.TopFacet = string(data) + case "top_facet_modifier": + obj.TopFacetModifier = n(data) + case "top_facet_rating": + obj.TopFacetRating = n(data) + case "top_relationship_factor": + obj.TopRelationshipFactor = string(data) + case "top_relationship_modifier": + obj.TopRelationshipModifier = n(data) + case "top_relationship_rating": + obj.TopRelationshipRating = n(data) + case "top_value": + obj.TopValue = string(data) + case "top_value_modifier": + obj.TopValueModifier = n(data) + case "top_value_rating": + obj.TopValueRating = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventFieldBattle) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "a_support_merc_enid": + data = nil + case "attacker_civ_id": + data = nil + case "attacker_general_hfid": + data = nil + case "attacker_merc_enid": + data = nil + case "coords": + data = nil + case "d_support_merc_enid": + data = nil + case "defender_civ_id": + data = nil + case "defender_general_hfid": + data = nil + case "defender_merc_enid": + data = nil + case "feature_layer_id": + data = nil + case "subregion_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "a_support_merc_enid": + obj.ASupportMercEnid = n(data) + case "attacker_civ_id": + obj.AttackerCivId = n(data) + case "attacker_general_hfid": + obj.AttackerGeneralHfid = n(data) + case "attacker_merc_enid": + obj.AttackerMercEnid = n(data) + case "coords": + obj.Coords = string(data) + case "d_support_merc_enid": + obj.DSupportMercEnid = n(data) + case "defender_civ_id": + obj.DefenderCivId = n(data) + case "defender_general_hfid": + obj.DefenderGeneralHfid = n(data) + case "defender_merc_enid": + obj.DefenderMercEnid = n(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventGamble) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "gambler_hfid": + data = nil + case "new_account": + data = nil + case "old_account": + data = nil + case "site_id": + data = nil + case "structure_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "gambler_hfid": + obj.GamblerHfid = n(data) + case "new_account": + obj.NewAccount = n(data) + case "old_account": + obj.OldAccount = n(data) + case "site_id": + obj.SiteId = n(data) + case "structure_id": + obj.StructureId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfAbducted) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "feature_layer_id": + data = nil + case "site_id": + data = nil + case "snatcher_hfid": + data = nil + case "subregion_id": + data = nil + case "target_hfid": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "site_id": + obj.SiteId = n(data) + case "snatcher_hfid": + obj.SnatcherHfid = n(data) + case "subregion_id": + obj.SubregionId = n(data) + case "target_hfid": + obj.TargetHfid = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfActOnBuilding) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "action": + data = nil + case "histfig": + data = nil + case "site": + data = nil + case "structure": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "action": + obj.Action = string(data) + case "histfig": + obj.Histfig = n(data) + case "site": + obj.Site = n(data) + case "structure": + obj.Structure = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfAttackedSite) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "attacker_hfid": + data = nil + case "defender_civ_id": + data = nil + case "site_civ_id": + data = nil + case "site_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "attacker_hfid": + obj.AttackerHfid = n(data) + case "defender_civ_id": + obj.DefenderCivId = n(data) + case "site_civ_id": + obj.SiteCivId = n(data) + case "site_id": + obj.SiteId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfConfronted) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "coords": + data = nil + case "feature_layer_id": + data = nil + case "hfid": + data = nil + case "reason": + data = nil + case "site_id": + data = nil + case "situation": + data = nil + case "subregion_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "coords": + obj.Coords = string(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "hfid": + obj.Hfid = n(data) + case "reason": + obj.Reason = append(obj.Reason, string(data)) + case "site_id": + obj.SiteId = n(data) + case "situation": + obj.Situation = string(data) + case "subregion_id": + obj.SubregionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfConvicted) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "coconspirator_hfid": + data = nil + case "confessed_after_apb_arrest_enid": + data = nil + case "contact_hfid": + data = nil + case "convict_is_contact": + data = nil + case "convicted_hfid": + data = nil + case "convicter_enid": + data = nil + case "corrupt_convicter_hfid": + data = nil + case "crime": + data = nil + case "death_penalty": + data = nil + case "did_not_reveal_all_in_interrogation": + data = nil + case "exiled": + data = nil + case "fooled_hfid": + data = nil + case "framer_hfid": + data = nil + case "held_firm_in_interrogation": + data = nil + case "implicated_hfid": + data = nil + case "interrogator_hfid": + data = nil + case "plotter_hfid": + data = nil + case "prison_months": + data = nil + case "surveiled_coconspirator": + data = nil + case "surveiled_contact": + data = nil + case "surveiled_convicted": + data = nil + case "surveiled_target": + data = nil + case "target_hfid": + data = nil + case "wrongful_conviction": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "coconspirator_hfid": + obj.CoconspiratorHfid = n(data) + case "confessed_after_apb_arrest_enid": + obj.ConfessedAfterApbArrestEnid = n(data) + case "contact_hfid": + obj.ContactHfid = n(data) + case "convict_is_contact": + obj.ConvictIsContact = string(data) + case "convicted_hfid": + obj.ConvictedHfid = n(data) + case "convicter_enid": + obj.ConvicterEnid = n(data) + case "corrupt_convicter_hfid": + obj.CorruptConvicterHfid = n(data) + case "crime": + obj.Crime = string(data) + case "death_penalty": + obj.DeathPenalty = string(data) + case "did_not_reveal_all_in_interrogation": + obj.DidNotRevealAllInInterrogation = string(data) + case "exiled": + obj.Exiled = string(data) + case "fooled_hfid": + obj.FooledHfid = n(data) + case "framer_hfid": + obj.FramerHfid = n(data) + case "held_firm_in_interrogation": + obj.HeldFirmInInterrogation = string(data) + case "implicated_hfid": + obj.ImplicatedHfid = append(obj.ImplicatedHfid, n(data)) + case "interrogator_hfid": + obj.InterrogatorHfid = n(data) + case "plotter_hfid": + obj.PlotterHfid = n(data) + case "prison_months": + obj.PrisonMonths = n(data) + case "surveiled_coconspirator": + obj.SurveiledCoconspirator = string(data) + case "surveiled_contact": + obj.SurveiledContact = string(data) + case "surveiled_convicted": + obj.SurveiledConvicted = string(data) + case "surveiled_target": + obj.SurveiledTarget = string(data) + case "target_hfid": + obj.TargetHfid = n(data) + case "wrongful_conviction": + obj.WrongfulConviction = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfDestroyedSite) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "attacker_hfid": + data = nil + case "defender_civ_id": + data = nil + case "site_civ_id": + data = nil + case "site_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "attacker_hfid": + obj.AttackerHfid = n(data) + case "defender_civ_id": + obj.DefenderCivId = n(data) + case "site_civ_id": + obj.SiteCivId = n(data) + case "site_id": + obj.SiteId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfDied) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "cause": + data = nil + case "feature_layer_id": + data = nil + case "hfid": + data = nil + case "site_id": + data = nil + case "slayer_caste": + data = nil + case "slayer_hfid": + data = nil + case "slayer_item_id": + data = nil + case "slayer_race": + data = nil + case "slayer_shooter_item_id": + data = nil + case "subregion_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "cause": + obj.Cause = string(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "hfid": + obj.Hfid = n(data) + case "site_id": + obj.SiteId = n(data) + case "slayer_caste": + obj.SlayerCaste = string(data) + case "slayer_hfid": + obj.SlayerHfid = n(data) + case "slayer_item_id": + obj.SlayerItemId = n(data) + case "slayer_race": + obj.SlayerRace = string(data) + case "slayer_shooter_item_id": + obj.SlayerShooterItemId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfDisturbedStructure) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "hist_fig_id": + data = nil + case "site_id": + data = nil + case "structure_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "hist_fig_id": + obj.HistFigId = n(data) + case "site_id": + obj.SiteId = n(data) + case "structure_id": + obj.StructureId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfDoesInteraction) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "doer": + data = nil + case "doer_hfid": + data = nil + case "interaction": + data = nil + case "interaction_action": + data = nil + case "region": + data = nil + case "site": + data = nil + case "source": + data = nil + case "target": + data = nil + case "target_hfid": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "doer": + obj.Doer = n(data) + case "doer_hfid": + obj.DoerHfid = n(data) + case "interaction": + obj.Interaction = string(data) + case "interaction_action": + obj.InteractionAction = string(data) + case "region": + obj.Region = n(data) + case "site": + obj.Site = n(data) + case "source": + obj.Source = n(data) + case "target": + obj.Target = n(data) + case "target_hfid": + obj.TargetHfid = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfEnslaved) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "enslaved_hfid": + data = nil + case "moved_to_site_id": + data = nil + case "payer_entity_id": + data = nil + case "seller_hfid": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "enslaved_hfid": + obj.EnslavedHfid = n(data) + case "moved_to_site_id": + obj.MovedToSiteId = n(data) + case "payer_entity_id": + obj.PayerEntityId = n(data) + case "seller_hfid": + obj.SellerHfid = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfEquipmentPurchase) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "feature_layer_id": + data = nil + case "group_hfid": + data = nil + case "quality": + data = nil + case "site_id": + data = nil + case "structure_id": + data = nil + case "subregion_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "group_hfid": + obj.GroupHfid = n(data) + case "quality": + obj.Quality = n(data) + case "site_id": + obj.SiteId = n(data) + case "structure_id": + obj.StructureId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfGainsSecretGoal) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "hfid": + data = nil + case "secret_goal": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "hfid": + obj.Hfid = n(data) + case "secret_goal": + obj.SecretGoal = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfInterrogated) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "arresting_enid": + data = nil + case "held_firm_in_interrogation": + data = nil + case "interrogator_hfid": + data = nil + case "target_hfid": + data = nil + case "wanted_and_recognized": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "arresting_enid": + obj.ArrestingEnid = n(data) + case "held_firm_in_interrogation": + obj.HeldFirmInInterrogation = string(data) + case "interrogator_hfid": + obj.InterrogatorHfid = n(data) + case "target_hfid": + obj.TargetHfid = n(data) + case "wanted_and_recognized": + obj.WantedAndRecognized = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfLearnsSecret) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "artifact": + data = nil + case "artifact_id": + data = nil + case "interaction": + data = nil + case "secret_text": + data = nil + case "student": + data = nil + case "student_hfid": + data = nil + case "teacher": + data = nil + case "teacher_hfid": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "artifact": + obj.Artifact = n(data) + case "artifact_id": + obj.ArtifactId = n(data) + case "interaction": + obj.Interaction = string(data) + case "secret_text": + obj.SecretText = string(data) + case "student": + obj.Student = n(data) + case "student_hfid": + obj.StudentHfid = n(data) + case "teacher": + obj.Teacher = n(data) + case "teacher_hfid": + obj.TeacherHfid = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfNewPet) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "coords": + data = nil + case "feature_layer_id": + data = nil + case "group_hfid": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "coords": + obj.Coords = string(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "group_hfid": + obj.GroupHfid = n(data) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfPerformedHorribleExperiments) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "feature_layer_id": + data = nil + case "group_hfid": + data = nil + case "site_id": + data = nil + case "structure_id": + data = nil + case "subregion_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "group_hfid": + obj.GroupHfid = n(data) + case "site_id": + obj.SiteId = n(data) + case "structure_id": + obj.StructureId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfPrayedInsideStructure) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "hist_fig_id": + data = nil + case "site_id": + data = nil + case "structure_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "hist_fig_id": + obj.HistFigId = n(data) + case "site_id": + obj.SiteId = n(data) + case "structure_id": + obj.StructureId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfPreach) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "entity_1": + data = nil + case "entity_2": + data = nil + case "site_hfid": + data = nil + case "speaker_hfid": + data = nil + case "topic": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "entity_1": + obj.Entity1 = n(data) + case "entity_2": + obj.Entity2 = n(data) + case "site_hfid": + obj.SiteHfid = n(data) + case "speaker_hfid": + obj.SpeakerHfid = n(data) + case "topic": + obj.Topic = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfProfanedStructure) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "hist_fig_id": + data = nil + case "site_id": + data = nil + case "structure_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "hist_fig_id": + obj.HistFigId = n(data) + case "site_id": + obj.SiteId = n(data) + case "structure_id": + obj.StructureId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfRecruitedUnitTypeForEntity) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "entity_id": + data = nil + case "feature_layer_id": + data = nil + case "hfid": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + case "unit_type": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "entity_id": + obj.EntityId = n(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "hfid": + obj.Hfid = n(data) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + case "unit_type": + obj.UnitType = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfRelationshipDenied) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "feature_layer_id": + data = nil + case "reason": + data = nil + case "reason_id": + data = nil + case "relationship": + data = nil + case "seeker_hfid": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + case "target_hfid": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "reason": + obj.Reason = string(data) + case "reason_id": + obj.ReasonId = n(data) + case "relationship": + obj.Relationship = string(data) + case "seeker_hfid": + obj.SeekerHfid = n(data) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + case "target_hfid": + obj.TargetHfid = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfReunion) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "feature_layer_id": + data = nil + case "group_1_hfid": + data = nil + case "group_2_hfid": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "group_1_hfid": + obj.Group1Hfid = n(data) + case "group_2_hfid": + obj.Group2Hfid = append(obj.Group2Hfid, n(data)) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfRevived) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "actor_hfid": + data = nil + case "disturbance": + data = nil + case "feature_layer_id": + data = nil + case "hfid": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "actor_hfid": + obj.ActorHfid = n(data) + case "disturbance": + obj.Disturbance = string(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "hfid": + obj.Hfid = n(data) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfSimpleBattleEvent) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "feature_layer_id": + data = nil + case "group_1_hfid": + data = nil + case "group_2_hfid": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + case "subtype": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "group_1_hfid": + obj.Group1Hfid = n(data) + case "group_2_hfid": + obj.Group2Hfid = n(data) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + case "subtype": + obj.Subtype = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfTravel) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "coords": + data = nil + case "feature_layer_id": + data = nil + case "group_hfid": + data = nil + case "return": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "coords": + obj.Coords = string(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "group_hfid": + obj.GroupHfid = append(obj.GroupHfid, n(data)) + case "return": + obj.Return = string(data) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfViewedArtifact) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "artifact_id": + data = nil + case "hist_fig_id": + data = nil + case "site_id": + data = nil + case "structure_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "artifact_id": + obj.ArtifactId = n(data) + case "hist_fig_id": + obj.HistFigId = n(data) + case "site_id": + obj.SiteId = n(data) + case "structure_id": + obj.StructureId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfWounded) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "feature_layer_id": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + case "woundee_hfid": + data = nil + case "wounder_hfid": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + case "woundee_hfid": + obj.WoundeeHfid = n(data) + case "wounder_hfid": + obj.WounderHfid = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfsFormedIntrigueRelationship) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "action": + data = nil + case "ally_defense_bonus": + data = nil + case "circumstance": + data = nil + case "circumstance_id": + data = nil + case "coconspirator_bonus": + data = nil + case "corruptor_hfid": + data = nil + case "corruptor_identity": + data = nil + case "corruptor_seen_as": + data = nil + case "failed_judgment_test": + data = nil + case "feature_layer_id": + data = nil + case "lure_hfid": + data = nil + case "method": + data = nil + case "relevant_entity_id": + data = nil + case "relevant_id_for_method": + data = nil + case "relevant_position_profile_id": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + case "successful": + data = nil + case "target_hfid": + data = nil + case "target_identity": + data = nil + case "target_seen_as": + data = nil + case "top_facet": + data = nil + case "top_facet_modifier": + data = nil + case "top_facet_rating": + data = nil + case "top_relationship_factor": + data = nil + case "top_relationship_modifier": + data = nil + case "top_relationship_rating": + data = nil + case "top_value": + data = nil + case "top_value_modifier": + data = nil + case "top_value_rating": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "action": + obj.Action = string(data) + case "ally_defense_bonus": + obj.AllyDefenseBonus = n(data) + case "circumstance": + obj.Circumstance = string(data) + case "circumstance_id": + obj.CircumstanceId = n(data) + case "coconspirator_bonus": + obj.CoconspiratorBonus = n(data) + case "corruptor_hfid": + obj.CorruptorHfid = n(data) + case "corruptor_identity": + obj.CorruptorIdentity = n(data) + case "corruptor_seen_as": + obj.CorruptorSeenAs = string(data) + case "failed_judgment_test": + obj.FailedJudgmentTest = string(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "lure_hfid": + obj.LureHfid = n(data) + case "method": + obj.Method = string(data) + case "relevant_entity_id": + obj.RelevantEntityId = n(data) + case "relevant_id_for_method": + obj.RelevantIdForMethod = n(data) + case "relevant_position_profile_id": + obj.RelevantPositionProfileId = n(data) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + case "successful": + obj.Successful = string(data) + case "target_hfid": + obj.TargetHfid = n(data) + case "target_identity": + obj.TargetIdentity = n(data) + case "target_seen_as": + obj.TargetSeenAs = string(data) + case "top_facet": + obj.TopFacet = string(data) + case "top_facet_modifier": + obj.TopFacetModifier = n(data) + case "top_facet_rating": + obj.TopFacetRating = n(data) + case "top_relationship_factor": + obj.TopRelationshipFactor = string(data) + case "top_relationship_modifier": + obj.TopRelationshipModifier = n(data) + case "top_relationship_rating": + obj.TopRelationshipRating = n(data) + case "top_value": + obj.TopValue = string(data) + case "top_value_modifier": + obj.TopValueModifier = n(data) + case "top_value_rating": + obj.TopValueRating = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHfsFormedReputationRelationship) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "feature_layer_id": + data = nil + case "hf_rep_1_of_2": + data = nil + case "hf_rep_2_of_1": + data = nil + case "hfid1": + data = nil + case "hfid2": + data = nil + case "identity_id1": + data = nil + case "identity_id2": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "hf_rep_1_of_2": + obj.HfRep1Of2 = string(data) + case "hf_rep_2_of_1": + obj.HfRep2Of1 = string(data) + case "hfid1": + obj.Hfid1 = n(data) + case "hfid2": + obj.Hfid2 = n(data) + case "identity_id1": + obj.IdentityId1 = n(data) + case "identity_id2": + obj.IdentityId2 = n(data) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHistFigureDied) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "artifact_id": + data = nil + case "death_cause": + data = nil + case "item": + data = nil + case "item_subtype": + data = nil + case "item_type": + data = nil + case "mat": + data = nil + case "site": + data = nil + case "slayer_caste": + data = nil + case "slayer_hf": + data = nil + case "slayer_race": + data = nil + case "victim_hf": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "artifact_id": + obj.ArtifactId = n(data) + case "death_cause": + obj.DeathCause = string(data) + case "item": + obj.Item = n(data) + case "item_subtype": + obj.ItemSubtype = string(data) + case "item_type": + obj.ItemType = string(data) + case "mat": + obj.Mat = string(data) + case "site": + obj.Site = n(data) + case "slayer_caste": + obj.SlayerCaste = n(data) + case "slayer_hf": + obj.SlayerHf = n(data) + case "slayer_race": + obj.SlayerRace = n(data) + case "victim_hf": + obj.VictimHf = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHistFigureNewPet) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "group": + data = nil + case "pets": + data = nil + case "site": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "group": + obj.Group = n(data) + case "pets": + obj.Pets = string(data) + case "site": + obj.Site = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHistFigureWounded) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "body_part": + data = nil + case "injury_type": + data = nil + case "part_lost": + data = nil + case "site": + data = nil + case "woundee": + data = nil + case "woundee_caste": + data = nil + case "woundee_race": + data = nil + case "wounder": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "body_part": + obj.BodyPart = n(data) + case "injury_type": + obj.InjuryType = string(data) + case "part_lost": + obj.PartLost = string(data) + case "site": + obj.Site = n(data) + case "woundee": + obj.Woundee = n(data) + case "woundee_caste": + obj.WoundeeCaste = n(data) + case "woundee_race": + obj.WoundeeRace = n(data) + case "wounder": + obj.Wounder = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventHolyCityDeclaration) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "religion_id": + data = nil + case "site_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "religion_id": + obj.ReligionId = n(data) + case "site_id": + obj.SiteId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventItemStolen) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "circumstance": + v := Circumstance{} +v.Parse(d, &t) +obj.Circumstance = v + case "circumstance_id": + data = nil + case "entity": + data = nil + case "histfig": + data = nil + case "item": + data = nil + case "item_subtype": + data = nil + case "item_type": + data = nil + case "mat": + data = nil + case "matindex": + data = nil + case "mattype": + data = nil + case "site": + data = nil + case "stash_site": + data = nil + case "structure": + data = nil + case "theft_method": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "circumstance": + + case "circumstance_id": + obj.CircumstanceId = n(data) + case "entity": + obj.Entity = n(data) + case "histfig": + obj.Histfig = n(data) + case "item": + obj.Item = n(data) + case "item_subtype": + obj.ItemSubtype = string(data) + case "item_type": + obj.ItemType = string(data) + case "mat": + obj.Mat = string(data) + case "matindex": + obj.Matindex = n(data) + case "mattype": + obj.Mattype = n(data) + case "site": + obj.Site = n(data) + case "stash_site": + obj.StashSite = n(data) + case "structure": + obj.Structure = n(data) + case "theft_method": + obj.TheftMethod = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventKnowledgeDiscovered) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "first": + data = nil + case "hfid": + data = nil + case "knowledge": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "first": + obj.First = string(data) + case "hfid": + obj.Hfid = n(data) + case "knowledge": + obj.Knowledge = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventMasterpieceCreatedItem) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "item_id": + data = nil + case "item_type": + data = nil + case "maker": + data = nil + case "maker_entity": + data = nil + case "mat": + data = nil + case "site": + data = nil + case "skill_at_time": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "item_id": + obj.ItemId = n(data) + case "item_type": + obj.ItemType = string(data) + case "maker": + obj.Maker = n(data) + case "maker_entity": + obj.MakerEntity = n(data) + case "mat": + obj.Mat = string(data) + case "site": + obj.Site = n(data) + case "skill_at_time": + obj.SkillAtTime = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventMasterpieceItem) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "entity_id": + data = nil + case "hfid": + data = nil + case "site_id": + data = nil + case "skill_at_time": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "entity_id": + obj.EntityId = n(data) + case "hfid": + obj.Hfid = n(data) + case "site_id": + obj.SiteId = n(data) + case "skill_at_time": + obj.SkillAtTime = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventMerchant) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "depot_entity_id": + data = nil + case "destination": + data = nil + case "site": + data = nil + case "site_id": + data = nil + case "source": + data = nil + case "trader_entity_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "depot_entity_id": + obj.DepotEntityId = n(data) + case "destination": + obj.Destination = n(data) + case "site": + obj.Site = n(data) + case "site_id": + obj.SiteId = n(data) + case "source": + obj.Source = n(data) + case "trader_entity_id": + obj.TraderEntityId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventModifiedBuilding) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "modification": + data = nil + case "modifier_hfid": + data = nil + case "site_id": + data = nil + case "structure_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "modification": + obj.Modification = string(data) + case "modifier_hfid": + obj.ModifierHfid = n(data) + case "site_id": + obj.SiteId = n(data) + case "structure_id": + obj.StructureId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventMusicalFormCreated) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "circumstance": + data = nil + case "circumstance_id": + data = nil + case "form_id": + data = nil + case "hist_figure_id": + data = nil + case "reason": + data = nil + case "reason_id": + data = nil + case "site_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "circumstance": + obj.Circumstance = string(data) + case "circumstance_id": + obj.CircumstanceId = n(data) + case "form_id": + obj.FormId = n(data) + case "hist_figure_id": + obj.HistFigureId = n(data) + case "reason": + obj.Reason = string(data) + case "reason_id": + obj.ReasonId = n(data) + case "site_id": + obj.SiteId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventNewSiteLeader) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "attacker_civ_id": + data = nil + case "defender_civ_id": + data = nil + case "new_leader_hfid": + data = nil + case "new_site_civ_id": + data = nil + case "site_civ_id": + data = nil + case "site_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "attacker_civ_id": + obj.AttackerCivId = n(data) + case "defender_civ_id": + obj.DefenderCivId = n(data) + case "new_leader_hfid": + obj.NewLeaderHfid = n(data) + case "new_site_civ_id": + obj.NewSiteCivId = n(data) + case "site_civ_id": + obj.SiteCivId = n(data) + case "site_id": + obj.SiteId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventPerformance) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "civ_id": + data = nil + case "feature_layer_id": + data = nil + case "occasion_id": + data = nil + case "schedule_id": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "civ_id": + obj.CivId = n(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "occasion_id": + obj.OccasionId = n(data) + case "schedule_id": + obj.ScheduleId = n(data) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventPlunderedSite) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "attacker_civ_id": + data = nil + case "defender_civ_id": + data = nil + case "detected": + data = nil + case "site_civ_id": + data = nil + case "site_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "attacker_civ_id": + obj.AttackerCivId = n(data) + case "defender_civ_id": + obj.DefenderCivId = n(data) + case "detected": + obj.Detected = string(data) + case "site_civ_id": + obj.SiteCivId = n(data) + case "site_id": + obj.SiteId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventPoeticFormCreated) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "circumstance": + data = nil + case "form_id": + data = nil + case "hist_figure_id": + data = nil + case "site_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "circumstance": + obj.Circumstance = string(data) + case "form_id": + obj.FormId = n(data) + case "hist_figure_id": + obj.HistFigureId = n(data) + case "site_id": + obj.SiteId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventProcession) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "civ_id": + data = nil + case "feature_layer_id": + data = nil + case "occasion_id": + data = nil + case "schedule_id": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "civ_id": + obj.CivId = n(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "occasion_id": + obj.OccasionId = n(data) + case "schedule_id": + obj.ScheduleId = n(data) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventRazedStructure) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "civ_id": + data = nil + case "site_id": + data = nil + case "structure_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "civ_id": + obj.CivId = n(data) + case "site_id": + obj.SiteId = n(data) + case "structure_id": + obj.StructureId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventReclaimSite) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "civ_id": + data = nil + case "site_civ_id": + data = nil + case "site_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "civ_id": + obj.CivId = n(data) + case "site_civ_id": + obj.SiteCivId = n(data) + case "site_id": + obj.SiteId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventRegionpopIncorporatedIntoEntity) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "join_entity_id": + data = nil + case "pop_flid": + data = nil + case "pop_number_moved": + data = nil + case "pop_race": + data = nil + case "pop_srid": + data = nil + case "site_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "join_entity_id": + obj.JoinEntityId = n(data) + case "pop_flid": + obj.PopFlid = n(data) + case "pop_number_moved": + obj.PopNumberMoved = n(data) + case "pop_race": + obj.PopRace = n(data) + case "pop_srid": + obj.PopSrid = n(data) + case "site_id": + obj.SiteId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventRemoveHfEntityLink) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "civ": + data = nil + case "civ_id": + data = nil + case "hfid": + data = nil + case "histfig": + data = nil + case "link": + data = nil + case "link_type": + data = nil + case "position": + data = nil + case "position_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "civ": + obj.Civ = n(data) + case "civ_id": + obj.CivId = n(data) + case "hfid": + obj.Hfid = n(data) + case "histfig": + obj.Histfig = n(data) + case "link": + obj.Link = string(data) + case "link_type": + obj.LinkType = string(data) + case "position": + obj.Position = string(data) + case "position_id": + obj.PositionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventRemoveHfHfLink) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "hfid": + data = nil + case "hfid_target": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "hfid": + obj.Hfid = n(data) + case "hfid_target": + obj.HfidTarget = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventRemoveHfSiteLink) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "civ": + data = nil + case "histfig": + data = nil + case "link_type": + data = nil + case "site": + data = nil + case "site_id": + data = nil + case "structure": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "civ": + obj.Civ = n(data) + case "histfig": + obj.Histfig = n(data) + case "link_type": + obj.LinkType = string(data) + case "site": + obj.Site = n(data) + case "site_id": + obj.SiteId = n(data) + case "structure": + obj.Structure = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventReplacedBuilding) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "civ": + data = nil + case "new_structure": + data = nil + case "old_structure": + data = nil + case "site": + data = nil + case "site_civ": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "civ": + obj.Civ = n(data) + case "new_structure": + obj.NewStructure = n(data) + case "old_structure": + obj.OldStructure = n(data) + case "site": + obj.Site = n(data) + case "site_civ": + obj.SiteCiv = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventReplacedStructure) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "civ_id": + data = nil + case "new_ab_id": + data = nil + case "old_ab_id": + data = nil + case "site_civ_id": + data = nil + case "site_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "civ_id": + obj.CivId = n(data) + case "new_ab_id": + obj.NewAbId = n(data) + case "old_ab_id": + obj.OldAbId = n(data) + case "site_civ_id": + obj.SiteCivId = n(data) + case "site_id": + obj.SiteId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventSiteDispute) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "dispute": + data = nil + case "entity_id_1": + data = nil + case "entity_id_2": + data = nil + case "site_id_1": + data = nil + case "site_id_2": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "dispute": + obj.Dispute = string(data) + case "entity_id_1": + obj.EntityId1 = n(data) + case "entity_id_2": + obj.EntityId2 = n(data) + case "site_id_1": + obj.SiteId1 = n(data) + case "site_id_2": + obj.SiteId2 = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventSiteTakenOver) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "attacker_civ_id": + data = nil + case "defender_civ_id": + data = nil + case "new_site_civ_id": + data = nil + case "site_civ_id": + data = nil + case "site_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "attacker_civ_id": + obj.AttackerCivId = n(data) + case "defender_civ_id": + obj.DefenderCivId = n(data) + case "new_site_civ_id": + obj.NewSiteCivId = n(data) + case "site_civ_id": + obj.SiteCivId = n(data) + case "site_id": + obj.SiteId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventSquadVsSquad) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "a_hfid": + data = nil + case "a_squad_id": + data = nil + case "d_effect": + data = nil + case "d_interaction": + data = nil + case "d_number": + data = nil + case "d_race": + data = nil + case "d_slain": + data = nil + case "d_squad_id": + data = nil + case "feature_layer_id": + data = nil + case "site_id": + data = nil + case "structure_id": + data = nil + case "subregion_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "a_hfid": + obj.AHfid = n(data) + case "a_squad_id": + obj.ASquadId = n(data) + case "d_effect": + obj.DEffect = n(data) + case "d_interaction": + obj.DInteraction = n(data) + case "d_number": + obj.DNumber = n(data) + case "d_race": + obj.DRace = n(data) + case "d_slain": + obj.DSlain = n(data) + case "d_squad_id": + obj.DSquadId = n(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "site_id": + obj.SiteId = n(data) + case "structure_id": + obj.StructureId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventTacticalSituation) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "a_tactician_hfid": + data = nil + case "a_tactics_roll": + data = nil + case "d_tactician_hfid": + data = nil + case "d_tactics_roll": + data = nil + case "feature_layer_id": + data = nil + case "site_id": + data = nil + case "situation": + data = nil + case "start": + data = nil + case "structure_id": + data = nil + case "subregion_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "a_tactician_hfid": + obj.ATacticianHfid = n(data) + case "a_tactics_roll": + obj.ATacticsRoll = n(data) + case "d_tactician_hfid": + obj.DTacticianHfid = n(data) + case "d_tactics_roll": + obj.DTacticsRoll = n(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "site_id": + obj.SiteId = n(data) + case "situation": + obj.Situation = string(data) + case "start": + obj.Start = string(data) + case "structure_id": + obj.StructureId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventTrade) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "account_shift": + data = nil + case "allotment": + data = nil + case "allotment_index": + data = nil + case "dest_site_id": + data = nil + case "production_zone_id": + data = nil + case "source_site_id": + data = nil + case "trader_entity_id": + data = nil + case "trader_hfid": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "account_shift": + obj.AccountShift = n(data) + case "allotment": + obj.Allotment = n(data) + case "allotment_index": + obj.AllotmentIndex = n(data) + case "dest_site_id": + obj.DestSiteId = n(data) + case "production_zone_id": + obj.ProductionZoneId = n(data) + case "source_site_id": + obj.SourceSiteId = n(data) + case "trader_entity_id": + obj.TraderEntityId = n(data) + case "trader_hfid": + obj.TraderHfid = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventWarPeaceAccepted) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "destination": + data = nil + case "site": + data = nil + case "source": + data = nil + case "topic": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "destination": + obj.Destination = n(data) + case "site": + obj.Site = n(data) + case "source": + obj.Source = n(data) + case "topic": + obj.Topic = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventWarPeaceRejected) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "destination": + data = nil + case "site": + data = nil + case "source": + data = nil + case "topic": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "destination": + obj.Destination = n(data) + case "site": + obj.Site = n(data) + case "source": + obj.Source = n(data) + case "topic": + obj.Topic = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventWrittenContentComposed) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "circumstance": + data = nil + case "circumstance_id": + data = nil + case "hist_figure_id": + data = nil + case "reason": + data = nil + case "reason_id": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + case "wc_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "circumstance": + obj.Circumstance = string(data) + case "circumstance_id": + obj.CircumstanceId = n(data) + case "hist_figure_id": + obj.HistFigureId = n(data) + case "reason": + obj.Reason = string(data) + case "reason_id": + obj.ReasonId = n(data) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + case "wc_id": + obj.WcId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventCollection) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "end_seconds72": + data = nil + case "end_year": + data = nil + case "event": + data = nil + case "eventcol": + data = nil + case "id": + data = nil + case "start_seconds72": + data = nil + case "start_year": + data = nil + case "type": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "end_seconds72": + obj.EndSeconds72 = n(data) + case "end_year": + obj.EndYear = n(data) + case "event": + obj.Event = append(obj.Event, n(data)) + case "eventcol": + obj.Eventcol = append(obj.Eventcol, n(data)) + case "id": + obj.Id_ = n(data) + case "start_seconds72": + obj.StartSeconds72 = n(data) + case "start_year": + obj.StartYear = n(data) + case "type": + obj.Type = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventCollectionAbduction) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "attacking_enid": + data = nil + case "coords": + data = nil + case "defending_enid": + data = nil + case "feature_layer_id": + data = nil + case "ordinal": + data = nil + case "parent_eventcol": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "attacking_enid": + obj.AttackingEnid = n(data) + case "coords": + obj.Coords = string(data) + case "defending_enid": + obj.DefendingEnid = n(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "ordinal": + obj.Ordinal = n(data) + case "parent_eventcol": + obj.ParentEventcol = n(data) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventCollectionBattle) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "a_support_merc_enid": + data = nil + case "a_support_merc_hfid": + data = nil + case "attacking_hfid": + data = nil + case "attacking_merc_enid": + data = nil + case "attacking_squad_animated": + data = nil + case "attacking_squad_deaths": + data = nil + case "attacking_squad_entity_pop": + data = nil + case "attacking_squad_number": + data = nil + case "attacking_squad_race": + data = nil + case "attacking_squad_site": + data = nil + case "company_merc": + data = nil + case "coords": + data = nil + case "d_support_merc_enid": + data = nil + case "d_support_merc_hfid": + data = nil + case "defending_hfid": + data = nil + case "defending_merc_enid": + data = nil + case "defending_squad_animated": + data = nil + case "defending_squad_deaths": + data = nil + case "defending_squad_entity_pop": + data = nil + case "defending_squad_number": + data = nil + case "defending_squad_race": + data = nil + case "defending_squad_site": + data = nil + case "feature_layer_id": + data = nil + case "individual_merc": + data = nil + case "name": + data = nil + case "noncom_hfid": + data = nil + case "outcome": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + case "war_eventcol": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "a_support_merc_enid": + obj.ASupportMercEnid = n(data) + case "a_support_merc_hfid": + obj.ASupportMercHfid = append(obj.ASupportMercHfid, n(data)) + case "attacking_hfid": + obj.AttackingHfid = append(obj.AttackingHfid, n(data)) + case "attacking_merc_enid": + obj.AttackingMercEnid = n(data) + case "attacking_squad_animated": + obj.AttackingSquadAnimated = append(obj.AttackingSquadAnimated, string(data)) + case "attacking_squad_deaths": + obj.AttackingSquadDeaths = append(obj.AttackingSquadDeaths, n(data)) + case "attacking_squad_entity_pop": + obj.AttackingSquadEntityPop = append(obj.AttackingSquadEntityPop, n(data)) + case "attacking_squad_number": + obj.AttackingSquadNumber = append(obj.AttackingSquadNumber, n(data)) + case "attacking_squad_race": + obj.AttackingSquadRace = append(obj.AttackingSquadRace, string(data)) + case "attacking_squad_site": + obj.AttackingSquadSite = append(obj.AttackingSquadSite, n(data)) + case "company_merc": + obj.CompanyMerc = append(obj.CompanyMerc, string(data)) + case "coords": + obj.Coords = string(data) + case "d_support_merc_enid": + obj.DSupportMercEnid = n(data) + case "d_support_merc_hfid": + obj.DSupportMercHfid = append(obj.DSupportMercHfid, n(data)) + case "defending_hfid": + obj.DefendingHfid = append(obj.DefendingHfid, n(data)) + case "defending_merc_enid": + obj.DefendingMercEnid = n(data) + case "defending_squad_animated": + obj.DefendingSquadAnimated = append(obj.DefendingSquadAnimated, string(data)) + case "defending_squad_deaths": + obj.DefendingSquadDeaths = append(obj.DefendingSquadDeaths, n(data)) + case "defending_squad_entity_pop": + obj.DefendingSquadEntityPop = append(obj.DefendingSquadEntityPop, n(data)) + case "defending_squad_number": + obj.DefendingSquadNumber = append(obj.DefendingSquadNumber, n(data)) + case "defending_squad_race": + obj.DefendingSquadRace = append(obj.DefendingSquadRace, string(data)) + case "defending_squad_site": + obj.DefendingSquadSite = append(obj.DefendingSquadSite, n(data)) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "individual_merc": + obj.IndividualMerc = append(obj.IndividualMerc, string(data)) + case "name": + obj.Name_ = string(data) + case "noncom_hfid": + obj.NoncomHfid = append(obj.NoncomHfid, n(data)) + case "outcome": + obj.Outcome = string(data) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + case "war_eventcol": + obj.WarEventcol = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventCollectionBeastAttack) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "coords": + data = nil + case "defending_enid": + data = nil + case "feature_layer_id": + data = nil + case "ordinal": + data = nil + case "parent_eventcol": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "coords": + obj.Coords = string(data) + case "defending_enid": + obj.DefendingEnid = n(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "ordinal": + obj.Ordinal = n(data) + case "parent_eventcol": + obj.ParentEventcol = n(data) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventCollectionDuel) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "attacking_hfid": + data = nil + case "coords": + data = nil + case "defending_hfid": + data = nil + case "feature_layer_id": + data = nil + case "ordinal": + data = nil + case "parent_eventcol": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "attacking_hfid": + obj.AttackingHfid = n(data) + case "coords": + obj.Coords = string(data) + case "defending_hfid": + obj.DefendingHfid = n(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "ordinal": + obj.Ordinal = n(data) + case "parent_eventcol": + obj.ParentEventcol = n(data) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventCollectionEntityOverthrown) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "ordinal": + data = nil + case "site_id": + data = nil + case "target_entity_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "ordinal": + obj.Ordinal = n(data) + case "site_id": + obj.SiteId = n(data) + case "target_entity_id": + obj.TargetEntityId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventCollectionOccasion) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "civ_id": + data = nil + case "occasion_id": + data = nil + case "ordinal": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "civ_id": + obj.CivId = n(data) + case "occasion_id": + obj.OccasionId = n(data) + case "ordinal": + obj.Ordinal = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventCollectionPersecution) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "ordinal": + data = nil + case "site_id": + data = nil + case "target_entity_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "ordinal": + obj.Ordinal = n(data) + case "site_id": + obj.SiteId = n(data) + case "target_entity_id": + obj.TargetEntityId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventCollectionPurge) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "adjective": + data = nil + case "ordinal": + data = nil + case "site_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "adjective": + obj.Adjective = string(data) + case "ordinal": + obj.Ordinal = n(data) + case "site_id": + obj.SiteId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventCollectionSiteConquered) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "attacking_enid": + data = nil + case "defending_enid": + data = nil + case "ordinal": + data = nil + case "site_id": + data = nil + case "war_eventcol": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "attacking_enid": + obj.AttackingEnid = n(data) + case "defending_enid": + obj.DefendingEnid = n(data) + case "ordinal": + obj.Ordinal = n(data) + case "site_id": + obj.SiteId = n(data) + case "war_eventcol": + obj.WarEventcol = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventCollectionTheft) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "attacking_enid": + data = nil + case "coords": + data = nil + case "defending_enid": + data = nil + case "feature_layer_id": + data = nil + case "ordinal": + data = nil + case "parent_eventcol": + data = nil + case "site_id": + data = nil + case "subregion_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "attacking_enid": + obj.AttackingEnid = n(data) + case "coords": + obj.Coords = string(data) + case "defending_enid": + obj.DefendingEnid = n(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "ordinal": + obj.Ordinal = n(data) + case "parent_eventcol": + obj.ParentEventcol = n(data) + case "site_id": + obj.SiteId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventCollectionWar) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "aggressor_ent_id": + data = nil + case "defender_ent_id": + data = nil + case "name": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "aggressor_ent_id": + obj.AggressorEntId = n(data) + case "defender_ent_id": + obj.DefenderEntId = n(data) + case "name": + obj.Name_ = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventRelationship) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "event": + data = nil + case "relationship": + data = nil + case "source_hf": + data = nil + case "target_hf": + data = nil + case "year": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "event": + obj.Event = n(data) + case "relationship": + obj.Relationship = string(data) + case "source_hf": + obj.SourceHf = n(data) + case "target_hf": + obj.TargetHf = n(data) + case "year": + obj.Year = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventRelationshipSupplement) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "event": + data = nil + case "occasion_type": + data = nil + case "site": + data = nil + case "unk_1": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "event": + obj.Event = n(data) + case "occasion_type": + obj.OccasionType = n(data) + case "site": + obj.Site = n(data) + case "unk_1": + obj.Unk1 = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalFigure) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "active_interaction": + data = nil + case "animated": + data = nil + case "animated_string": + data = nil + case "appeared": + data = nil + case "associated_type": + data = nil + case "birth_seconds72": + data = nil + case "birth_year": + data = nil + case "caste": + data = nil + case "current_identity_id": + data = nil + case "death_seconds72": + data = nil + case "death_year": + data = nil + case "deity": + data = nil + case "ent_pop_id": + data = nil + case "entity_former_position_link": + v := EntityFormerPositionLink{} +v.Parse(d, &t) +obj.EntityFormerPositionLink = append(obj.EntityFormerPositionLink, v) + case "entity_link": + v := EntityLink{} +v.Parse(d, &t) +obj.EntityLink = append(obj.EntityLink, v) + case "entity_position_link": + v := EntityPositionLink{} +v.Parse(d, &t) +obj.EntityPositionLink = append(obj.EntityPositionLink, v) + case "entity_reputation": + v := EntityReputation{} +v.Parse(d, &t) +obj.EntityReputation = append(obj.EntityReputation, v) + case "entity_squad_link": + v := EntitySquadLink{} +v.Parse(d, &t) +obj.EntitySquadLink = v + case "force": + data = nil + case "goal": + data = nil + case "hf_link": + v := HfLink{} +v.Parse(d, &t) +obj.HfLink = append(obj.HfLink, v) + case "hf_skill": + v := HfSkill{} +v.Parse(d, &t) +obj.HfSkill = append(obj.HfSkill, v) + case "holds_artifact": + data = nil + case "honor_entity": + v := HonorEntity{} +v.Parse(d, &t) +obj.HonorEntity = append(obj.HonorEntity, v) + case "id": + data = nil + case "interaction_knowledge": + data = nil + case "intrigue_actor": + v := IntrigueActor{} +v.Parse(d, &t) +obj.IntrigueActor = append(obj.IntrigueActor, v) + case "intrigue_plot": + v := IntriguePlot{} +v.Parse(d, &t) +obj.IntriguePlot = append(obj.IntriguePlot, v) + case "journey_pet": + data = nil + case "name": + data = nil + case "race": + data = nil + case "relationship_profile_hf_historical": + v := RelationshipProfileHfHistorical{} +v.Parse(d, &t) +obj.RelationshipProfileHfHistorical = append(obj.RelationshipProfileHfHistorical, v) + case "relationship_profile_hf_visual": + v := RelationshipProfileHfVisual{} +v.Parse(d, &t) +obj.RelationshipProfileHfVisual = append(obj.RelationshipProfileHfVisual, v) + case "sex": + data = nil + case "site_link": + v := SiteLink{} +v.Parse(d, &t) +obj.SiteLink = append(obj.SiteLink, v) + case "site_property": + v := SiteProperty{} +v.Parse(d, &t) +obj.SiteProperty = append(obj.SiteProperty, v) + case "sphere": + data = nil + case "used_identity_id": + data = nil + case "vague_relationship": + v := VagueRelationship{} +v.Parse(d, &t) +obj.VagueRelationship = append(obj.VagueRelationship, v) + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "active_interaction": + obj.ActiveInteraction = append(obj.ActiveInteraction, string(data)) + case "animated": + obj.Animated = string(data) + case "animated_string": + obj.AnimatedString = string(data) + case "appeared": + obj.Appeared = n(data) + case "associated_type": + obj.AssociatedType = string(data) + case "birth_seconds72": + obj.BirthSeconds72 = n(data) + case "birth_year": + obj.BirthYear = n(data) + case "caste": + obj.Caste = string(data) + case "current_identity_id": + obj.CurrentIdentityId = n(data) + case "death_seconds72": + obj.DeathSeconds72 = n(data) + case "death_year": + obj.DeathYear = n(data) + case "deity": + obj.Deity = string(data) + case "ent_pop_id": + obj.EntPopId = n(data) + case "entity_former_position_link": + + case "entity_link": + + case "entity_position_link": + + case "entity_reputation": + + case "entity_squad_link": + + case "force": + obj.Force = string(data) + case "goal": + obj.Goal = append(obj.Goal, string(data)) + case "hf_link": + + case "hf_skill": + + case "holds_artifact": + obj.HoldsArtifact = append(obj.HoldsArtifact, n(data)) + case "honor_entity": + + case "id": + obj.Id_ = n(data) + case "interaction_knowledge": + obj.InteractionKnowledge = append(obj.InteractionKnowledge, string(data)) + case "intrigue_actor": + + case "intrigue_plot": + + case "journey_pet": + obj.JourneyPet = append(obj.JourneyPet, string(data)) + case "name": + obj.Name_ = string(data) + case "race": + obj.Race = string(data) + case "relationship_profile_hf_historical": + + case "relationship_profile_hf_visual": + + case "sex": + obj.Sex = n(data) + case "site_link": + + case "site_property": + + case "sphere": + obj.Sphere = append(obj.Sphere, string(data)) + case "used_identity_id": + obj.UsedIdentityId = append(obj.UsedIdentityId, n(data)) + case "vague_relationship": + + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Honor) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "exempt_epid": + data = nil + case "exempt_former_epid": + data = nil + case "gives_precedence": + data = nil + case "granted_to_everybody": + data = nil + case "id": + data = nil + case "name": + data = nil + case "required_battles": + data = nil + case "required_kills": + data = nil + case "required_skill": + data = nil + case "required_skill_ip_total": + data = nil + case "required_years": + data = nil + case "requires_any_melee_or_ranged_skill": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "exempt_epid": + obj.ExemptEpid = n(data) + case "exempt_former_epid": + obj.ExemptFormerEpid = n(data) + case "gives_precedence": + obj.GivesPrecedence = n(data) + case "granted_to_everybody": + obj.GrantedToEverybody = string(data) + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = string(data) + case "required_battles": + obj.RequiredBattles = n(data) + case "required_kills": + obj.RequiredKills = n(data) + case "required_skill": + obj.RequiredSkill = string(data) + case "required_skill_ip_total": + obj.RequiredSkillIpTotal = n(data) + case "required_years": + obj.RequiredYears = n(data) + case "requires_any_melee_or_ranged_skill": + obj.RequiresAnyMeleeOrRangedSkill = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HonorEntity) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "battles": + data = nil + case "entity": + data = nil + case "honor_id": + data = nil + case "kills": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "battles": + obj.Battles = n(data) + case "entity": + obj.Entity = n(data) + case "honor_id": + obj.HonorId = append(obj.HonorId, n(data)) + case "kills": + obj.Kills = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Identity) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "birth_second": + data = nil + case "birth_year": + data = nil + case "caste": + data = nil + case "entity_id": + data = nil + case "histfig_id": + data = nil + case "id": + data = nil + case "name": + data = nil + case "nemesis_id": + data = nil + case "profession": + data = nil + case "race": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "birth_second": + obj.BirthSecond = n(data) + case "birth_year": + obj.BirthYear = n(data) + case "caste": + obj.Caste = string(data) + case "entity_id": + obj.EntityId = n(data) + case "histfig_id": + obj.HistfigId = n(data) + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = string(data) + case "nemesis_id": + obj.NemesisId = n(data) + case "profession": + obj.Profession = string(data) + case "race": + obj.Race = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *IntrigueActor) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "entity_id": + data = nil + case "handle_actor_id": + data = nil + case "hfid": + data = nil + case "local_id": + data = nil + case "promised_actor_immortality": + data = nil + case "promised_me_immortality": + data = nil + case "role": + data = nil + case "strategy": + data = nil + case "strategy_enid": + data = nil + case "strategy_eppid": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "entity_id": + obj.EntityId = n(data) + case "handle_actor_id": + obj.HandleActorId = n(data) + case "hfid": + obj.Hfid = n(data) + case "local_id": + obj.LocalId = n(data) + case "promised_actor_immortality": + obj.PromisedActorImmortality = string(data) + case "promised_me_immortality": + obj.PromisedMeImmortality = string(data) + case "role": + obj.Role = string(data) + case "strategy": + obj.Strategy = string(data) + case "strategy_enid": + obj.StrategyEnid = n(data) + case "strategy_eppid": + obj.StrategyEppid = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *IntriguePlot) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "actor_id": + data = nil + case "artifact_id": + data = nil + case "delegated_plot_hfid": + data = nil + case "delegated_plot_id": + data = nil + case "entity_id": + data = nil + case "local_id": + data = nil + case "on_hold": + data = nil + case "parent_plot_hfid": + data = nil + case "parent_plot_id": + data = nil + case "plot_actor": + v := PlotActor{} +v.Parse(d, &t) +obj.PlotActor = append(obj.PlotActor, v) + case "type": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "actor_id": + obj.ActorId = n(data) + case "artifact_id": + obj.ArtifactId = n(data) + case "delegated_plot_hfid": + obj.DelegatedPlotHfid = n(data) + case "delegated_plot_id": + obj.DelegatedPlotId = n(data) + case "entity_id": + obj.EntityId = n(data) + case "local_id": + obj.LocalId = n(data) + case "on_hold": + obj.OnHold = string(data) + case "parent_plot_hfid": + obj.ParentPlotHfid = n(data) + case "parent_plot_id": + obj.ParentPlotId = n(data) + case "plot_actor": + + case "type": + obj.Type = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Item) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "name_string": + data = nil + case "page_number": + data = nil + case "page_written_content_id": + data = nil + case "writing_written_content_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "name_string": + obj.NameString = string(data) + case "page_number": + obj.PageNumber = n(data) + case "page_written_content_id": + obj.PageWrittenContentId = n(data) + case "writing_written_content_id": + obj.WritingWrittenContentId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Landmass) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "coord_1": + data = nil + case "coord_2": + data = nil + case "id": + data = nil + case "name": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "coord_1": + obj.Coord1 = string(data) + case "coord_2": + obj.Coord2 = string(data) + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *MountainPeak) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "coords": + data = nil + case "height": + data = nil + case "id": + data = nil + case "is_volcano": + data = nil + case "name": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "coords": + obj.Coords = string(data) + case "height": + obj.Height = n(data) + case "id": + obj.Id_ = n(data) + case "is_volcano": + obj.IsVolcano = string(data) + case "name": + obj.Name_ = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *MusicalForm) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "description": + data = nil + case "id": + data = nil + case "name": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "description": + obj.Description = string(data) + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Occasion) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "event": + data = nil + case "id": + data = nil + case "name": + data = nil + case "schedule": + v := Schedule{} +v.Parse(d, &t) +obj.Schedule = v + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "event": + obj.Event = n(data) + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = n(data) + case "schedule": + + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *PlotActor) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "actor_id": + data = nil + case "agreement_has_messenger": + data = nil + case "agreement_id": + data = nil + case "plot_role": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "actor_id": + obj.ActorId = n(data) + case "agreement_has_messenger": + obj.AgreementHasMessenger = string(data) + case "agreement_id": + obj.AgreementId = n(data) + case "plot_role": + obj.PlotRole = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *PoeticForm) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "description": + data = nil + case "id": + data = nil + case "name": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "description": + obj.Description = string(data) + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Reference) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "id": + data = nil + case "type": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "id": + obj.Id_ = n(data) + case "type": + obj.Type = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Region) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "coords": + data = nil + case "evilness": + data = nil + case "force_id": + data = nil + case "id": + data = nil + case "name": + data = nil + case "type": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "coords": + obj.Coords = string(data) + case "evilness": + obj.Evilness = string(data) + case "force_id": + obj.ForceId = n(data) + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = string(data) + case "type": + obj.Type = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *RelationshipProfileHfHistorical) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "fear": + data = nil + case "hf_id": + data = nil + case "love": + data = nil + case "loyalty": + data = nil + case "respect": + data = nil + case "trust": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "fear": + obj.Fear = n(data) + case "hf_id": + obj.HfId = n(data) + case "love": + obj.Love = n(data) + case "loyalty": + obj.Loyalty = n(data) + case "respect": + obj.Respect = n(data) + case "trust": + obj.Trust = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *RelationshipProfileHfVisual) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "fear": + data = nil + case "hf_id": + data = nil + case "known_identity_id": + data = nil + case "last_meet_seconds72": + data = nil + case "last_meet_year": + data = nil + case "love": + data = nil + case "loyalty": + data = nil + case "meet_count": + data = nil + case "rep_friendly": + data = nil + case "rep_information_source": + data = nil + case "respect": + data = nil + case "trust": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "fear": + obj.Fear = n(data) + case "hf_id": + obj.HfId = n(data) + case "known_identity_id": + obj.KnownIdentityId = n(data) + case "last_meet_seconds72": + obj.LastMeetSeconds72 = n(data) + case "last_meet_year": + obj.LastMeetYear = n(data) + case "love": + obj.Love = n(data) + case "loyalty": + obj.Loyalty = n(data) + case "meet_count": + obj.MeetCount = n(data) + case "rep_friendly": + obj.RepFriendly = n(data) + case "rep_information_source": + obj.RepInformationSource = n(data) + case "respect": + obj.Respect = n(data) + case "trust": + obj.Trust = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *River) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "end_pos": + data = nil + case "name": + data = nil + case "path": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "end_pos": + obj.EndPos = string(data) + case "name": + obj.Name_ = string(data) + case "path": + obj.Path = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Schedule) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "feature": + v := Feature{} +v.Parse(d, &t) +obj.Feature = v + case "id": + data = nil + case "item_subtype": + data = nil + case "item_type": + data = nil + case "reference": + data = nil + case "reference2": + data = nil + case "type": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "feature": + + case "id": + obj.Id_ = n(data) + case "item_subtype": + obj.ItemSubtype = n(data) + case "item_type": + obj.ItemType = n(data) + case "reference": + obj.Reference = n(data) + case "reference2": + obj.Reference2 = n(data) + case "type": + obj.Type = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Site) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "civ_id": + data = nil + case "coords": + data = nil + case "cur_owner_id": + data = nil + case "id": + data = nil + case "name": + data = nil + case "rectangle": + data = nil + case "site_properties": + + case "structures": + + case "type": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "civ_id": + obj.CivId = n(data) + case "coords": + obj.Coords = n(data) + case "cur_owner_id": + obj.CurOwnerId = n(data) + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = n(data) + case "rectangle": + obj.Rectangle = n(data) + case "site_properties": + + case "structures": + + case "type": + obj.Type = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *SiteLink) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "entity_id": + data = nil + case "link_type": + data = nil + case "occupation_id": + data = nil + case "site_id": + data = nil + case "sub_id": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "entity_id": + obj.EntityId = n(data) + case "link_type": + obj.LinkType = string(data) + case "occupation_id": + obj.OccupationId = n(data) + case "site_id": + obj.SiteId = n(data) + case "sub_id": + obj.SubId = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *SiteProperty) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "id": + data = nil + case "owner_hfid": + data = nil + case "structure_id": + data = nil + case "type": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "id": + obj.Id_ = n(data) + case "owner_hfid": + obj.OwnerHfid = n(data) + case "structure_id": + obj.StructureId = n(data) + case "type": + obj.Type = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Structure) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "copied_artifact_id": + data = nil + case "deity": + data = nil + case "deity_type": + data = nil + case "dungeon_type": + data = nil + case "entity_id": + data = nil + case "id": + data = nil + case "inhabitant": + data = nil + case "local_id": + data = nil + case "name": + data = nil + case "name2": + data = nil + case "religion": + data = nil + case "subtype": + data = nil + case "type": + data = nil + case "worship_hfid": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "copied_artifact_id": + obj.CopiedArtifactId = n(data) + case "deity": + obj.Deity = n(data) + case "deity_type": + obj.DeityType = n(data) + case "dungeon_type": + obj.DungeonType = n(data) + case "entity_id": + obj.EntityId = n(data) + case "id": + obj.Id_ = n(data) + case "inhabitant": + obj.Inhabitant = n(data) + case "local_id": + obj.LocalId = n(data) + case "name": + obj.Name_ = n(data) + case "name2": + obj.Name2 = n(data) + case "religion": + obj.Religion = n(data) + case "subtype": + obj.Subtype = n(data) + case "type": + obj.Type = string(data) + case "worship_hfid": + obj.WorshipHfid = n(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *UndergroundRegion) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "coords": + data = nil + case "depth": + data = nil + case "id": + data = nil + case "type": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "coords": + obj.Coords = string(data) + case "depth": + obj.Depth = n(data) + case "id": + obj.Id_ = n(data) + case "type": + obj.Type = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *VagueRelationship) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "artistic_buddy": + data = nil + case "atheletic_rival": + data = nil + case "athlete_buddy": + data = nil + case "business_rival": + data = nil + case "childhood_friend": + data = nil + case "grudge": + data = nil + case "hfid": + data = nil + case "jealous_obsession": + data = nil + case "jealous_relationship_grudge": + data = nil + case "persecution_grudge": + data = nil + case "religious_persecution_grudge": + data = nil + case "scholar_buddy": + data = nil + case "supernatural_grudge": + data = nil + case "war_buddy": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "artistic_buddy": + obj.ArtisticBuddy = string(data) + case "atheletic_rival": + obj.AtheleticRival = string(data) + case "athlete_buddy": + obj.AthleteBuddy = string(data) + case "business_rival": + obj.BusinessRival = string(data) + case "childhood_friend": + obj.ChildhoodFriend = string(data) + case "grudge": + obj.Grudge = string(data) + case "hfid": + obj.Hfid = n(data) + case "jealous_obsession": + obj.JealousObsession = string(data) + case "jealous_relationship_grudge": + obj.JealousRelationshipGrudge = string(data) + case "persecution_grudge": + obj.PersecutionGrudge = string(data) + case "religious_persecution_grudge": + obj.ReligiousPersecutionGrudge = string(data) + case "scholar_buddy": + obj.ScholarBuddy = string(data) + case "supernatural_grudge": + obj.SupernaturalGrudge = string(data) + case "war_buddy": + obj.WarBuddy = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *WorldConstruction) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "coords": + data = nil + case "id": + data = nil + case "name": + data = nil + case "type": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "coords": + obj.Coords = n(data) + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = string(data) + case "type": + obj.Type = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *WrittenContent) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "author": + data = nil + case "author_hfid": + data = nil + case "author_roll": + data = nil + case "form": + data = nil + case "form_id": + data = nil + case "id": + data = nil + case "page_end": + data = nil + case "page_start": + data = nil + case "reference": + v := Reference{} +v.Parse(d, &t) +obj.Reference = append(obj.Reference, v) + case "style": + data = nil + case "title": + data = nil + case "type": + data = nil + default: + fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "author": + obj.Author = n(data) + case "author_hfid": + obj.AuthorHfid = n(data) + case "author_roll": + obj.AuthorRoll = n(data) + case "form": + obj.Form = string(data) + case "form_id": + obj.FormId = n(data) + case "id": + obj.Id_ = n(data) + case "page_end": + obj.PageEnd = n(data) + case "page_start": + obj.PageStart = n(data) + case "reference": + + case "style": + obj.Style = append(obj.Style, string(data)) + case "title": + obj.Title = string(data) + case "type": + obj.Type = string(data) + default: + fmt.Println("unknown field", t.Name.Local) + } + } + } } -func (x *WrittenContent) Id() int { return x.Id_ } diff --git a/df/model.go b/df/model.go new file mode 100644 index 0000000..0a40f78 --- /dev/null +++ b/df/model.go @@ -0,0 +1,5888 @@ +// Code generated by go generate; DO NOT EDIT. +package df + +import ( + "encoding/xml" + "strconv" +) +type Artifact struct { + AbsTileX int `json:"absTileX" legend:"base"` + AbsTileY int `json:"absTileY" legend:"base"` + AbsTileZ int `json:"absTileZ" legend:"base"` + HolderHfid int `json:"holderHfid" legend:"base"` + Id_ int `json:"id" legend:"both"` + Item Item `json:"item" legend:"base"` + ItemDescription string `json:"itemDescription" legend:"plus"` + ItemSubtype string `json:"itemSubtype" legend:"plus"` + ItemType string `json:"itemType" legend:"plus"` + Mat string `json:"mat" legend:"plus"` + Name_ string `json:"name" legend:"base"` + PageCount int `json:"pageCount" legend:"plus"` + SiteId int `json:"siteId" legend:"base"` + StructureLocalId int `json:"structureLocalId" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` + Writing int `json:"writing" legend:"plus"` +} + +func NewArtifact() *Artifact { return &Artifact{} } +func (x *Artifact) Id() int { return x.Id_ } +func (x *Artifact) Name() string { return x.Name_ } +type Circumstance struct { + Defeated int `json:"defeated" legend:"plus"` + HistEventCollection int `json:"histEventCollection" legend:"plus"` + Murdered int `json:"murdered" legend:"plus"` + Type string `json:"type" legend:"plus"` +} + +func NewCircumstance() *Circumstance { return &Circumstance{} } +type Creature struct { + AllCastesAlive string `json:"allCastesAlive" legend:"plus"` + ArtificialHiveable string `json:"artificialHiveable" legend:"plus"` + BiomeDesertBadland string `json:"biomeDesertBadland" legend:"plus"` + BiomeDesertRock string `json:"biomeDesertRock" legend:"plus"` + BiomeDesertSand string `json:"biomeDesertSand" legend:"plus"` + BiomeForestTaiga string `json:"biomeForestTaiga" legend:"plus"` + BiomeForestTemperateBroadleaf string `json:"biomeForestTemperateBroadleaf" legend:"plus"` + BiomeForestTemperateConifer string `json:"biomeForestTemperateConifer" legend:"plus"` + BiomeForestTropicalConifer string `json:"biomeForestTropicalConifer" legend:"plus"` + BiomeForestTropicalDryBroadleaf string `json:"biomeForestTropicalDryBroadleaf" legend:"plus"` + BiomeForestTropicalMoistBroadleaf string `json:"biomeForestTropicalMoistBroadleaf" legend:"plus"` + BiomeGlacier string `json:"biomeGlacier" legend:"plus"` + BiomeGrasslandTemperate string `json:"biomeGrasslandTemperate" legend:"plus"` + BiomeGrasslandTropical string `json:"biomeGrasslandTropical" legend:"plus"` + BiomeLakeTemperateBrackishwater string `json:"biomeLakeTemperateBrackishwater" legend:"plus"` + BiomeLakeTemperateFreshwater string `json:"biomeLakeTemperateFreshwater" legend:"plus"` + BiomeLakeTemperateSaltwater string `json:"biomeLakeTemperateSaltwater" legend:"plus"` + BiomeLakeTropicalBrackishwater string `json:"biomeLakeTropicalBrackishwater" legend:"plus"` + BiomeLakeTropicalFreshwater string `json:"biomeLakeTropicalFreshwater" legend:"plus"` + BiomeLakeTropicalSaltwater string `json:"biomeLakeTropicalSaltwater" legend:"plus"` + BiomeMarshTemperateFreshwater string `json:"biomeMarshTemperateFreshwater" legend:"plus"` + BiomeMarshTemperateSaltwater string `json:"biomeMarshTemperateSaltwater" legend:"plus"` + BiomeMarshTropicalFreshwater string `json:"biomeMarshTropicalFreshwater" legend:"plus"` + BiomeMarshTropicalSaltwater string `json:"biomeMarshTropicalSaltwater" legend:"plus"` + BiomeMountain string `json:"biomeMountain" legend:"plus"` + BiomeOceanArctic string `json:"biomeOceanArctic" legend:"plus"` + BiomeOceanTemperate string `json:"biomeOceanTemperate" legend:"plus"` + BiomeOceanTropical string `json:"biomeOceanTropical" legend:"plus"` + BiomePoolTemperateBrackishwater string `json:"biomePoolTemperateBrackishwater" legend:"plus"` + BiomePoolTemperateFreshwater string `json:"biomePoolTemperateFreshwater" legend:"plus"` + BiomePoolTemperateSaltwater string `json:"biomePoolTemperateSaltwater" legend:"plus"` + BiomePoolTropicalBrackishwater string `json:"biomePoolTropicalBrackishwater" legend:"plus"` + BiomePoolTropicalFreshwater string `json:"biomePoolTropicalFreshwater" legend:"plus"` + BiomePoolTropicalSaltwater string `json:"biomePoolTropicalSaltwater" legend:"plus"` + BiomeRiverTemperateBrackishwater string `json:"biomeRiverTemperateBrackishwater" legend:"plus"` + BiomeRiverTemperateFreshwater string `json:"biomeRiverTemperateFreshwater" legend:"plus"` + BiomeRiverTemperateSaltwater string `json:"biomeRiverTemperateSaltwater" legend:"plus"` + BiomeRiverTropicalBrackishwater string `json:"biomeRiverTropicalBrackishwater" legend:"plus"` + BiomeRiverTropicalFreshwater string `json:"biomeRiverTropicalFreshwater" legend:"plus"` + BiomeRiverTropicalSaltwater string `json:"biomeRiverTropicalSaltwater" legend:"plus"` + BiomeSavannaTemperate string `json:"biomeSavannaTemperate" legend:"plus"` + BiomeSavannaTropical string `json:"biomeSavannaTropical" legend:"plus"` + BiomeShrublandTemperate string `json:"biomeShrublandTemperate" legend:"plus"` + BiomeShrublandTropical string `json:"biomeShrublandTropical" legend:"plus"` + BiomeSubterraneanChasm string `json:"biomeSubterraneanChasm" legend:"plus"` + BiomeSubterraneanLava string `json:"biomeSubterraneanLava" legend:"plus"` + BiomeSubterraneanWater string `json:"biomeSubterraneanWater" legend:"plus"` + BiomeSwampMangrove string `json:"biomeSwampMangrove" legend:"plus"` + BiomeSwampTemperateFreshwater string `json:"biomeSwampTemperateFreshwater" legend:"plus"` + BiomeSwampTemperateSaltwater string `json:"biomeSwampTemperateSaltwater" legend:"plus"` + BiomeSwampTropicalFreshwater string `json:"biomeSwampTropicalFreshwater" legend:"plus"` + BiomeSwampTropicalSaltwater string `json:"biomeSwampTropicalSaltwater" legend:"plus"` + BiomeTundra string `json:"biomeTundra" legend:"plus"` + CreatureId string `json:"creatureId" legend:"plus"` + DoesNotExist string `json:"doesNotExist" legend:"plus"` + Equipment string `json:"equipment" legend:"plus"` + EquipmentWagon string `json:"equipmentWagon" legend:"plus"` + Evil string `json:"evil" legend:"plus"` + Fanciful string `json:"fanciful" legend:"plus"` + Generated string `json:"generated" legend:"plus"` + Good string `json:"good" legend:"plus"` + HasAnyBenign string `json:"hasAnyBenign" legend:"plus"` + HasAnyCanSwim string `json:"hasAnyCanSwim" legend:"plus"` + HasAnyCannotBreatheAir string `json:"hasAnyCannotBreatheAir" legend:"plus"` + HasAnyCannotBreatheWater string `json:"hasAnyCannotBreatheWater" legend:"plus"` + HasAnyCarnivore string `json:"hasAnyCarnivore" legend:"plus"` + HasAnyCommonDomestic string `json:"hasAnyCommonDomestic" legend:"plus"` + HasAnyCuriousBeast string `json:"hasAnyCuriousBeast" legend:"plus"` + HasAnyDemon string `json:"hasAnyDemon" legend:"plus"` + HasAnyFeatureBeast string `json:"hasAnyFeatureBeast" legend:"plus"` + HasAnyFlier string `json:"hasAnyFlier" legend:"plus"` + HasAnyFlyRaceGait string `json:"hasAnyFlyRaceGait" legend:"plus"` + HasAnyGrasp string `json:"hasAnyGrasp" legend:"plus"` + HasAnyGrazer string `json:"hasAnyGrazer" legend:"plus"` + HasAnyHasBlood string `json:"hasAnyHasBlood" legend:"plus"` + HasAnyImmobile string `json:"hasAnyImmobile" legend:"plus"` + HasAnyIntelligentLearns string `json:"hasAnyIntelligentLearns" legend:"plus"` + HasAnyIntelligentSpeaks string `json:"hasAnyIntelligentSpeaks" legend:"plus"` + HasAnyLargePredator string `json:"hasAnyLargePredator" legend:"plus"` + HasAnyLocalPopsControllable string `json:"hasAnyLocalPopsControllable" legend:"plus"` + HasAnyLocalPopsProduceHeroes string `json:"hasAnyLocalPopsProduceHeroes" legend:"plus"` + HasAnyMegabeast string `json:"hasAnyMegabeast" legend:"plus"` + HasAnyMischievous string `json:"hasAnyMischievous" legend:"plus"` + HasAnyNaturalAnimal string `json:"hasAnyNaturalAnimal" legend:"plus"` + HasAnyNightCreature string `json:"hasAnyNightCreature" legend:"plus"` + HasAnyNightCreatureBogeyman string `json:"hasAnyNightCreatureBogeyman" legend:"plus"` + HasAnyNightCreatureHunter string `json:"hasAnyNightCreatureHunter" legend:"plus"` + HasAnyNightCreatureNightmare string `json:"hasAnyNightCreatureNightmare" legend:"plus"` + HasAnyNotFireimmune string `json:"hasAnyNotFireimmune" legend:"plus"` + HasAnyNotLiving string `json:"hasAnyNotLiving" legend:"plus"` + HasAnyOutsiderControllable string `json:"hasAnyOutsiderControllable" legend:"plus"` + HasAnyRaceGait string `json:"hasAnyRaceGait" legend:"plus"` + HasAnySemimegabeast string `json:"hasAnySemimegabeast" legend:"plus"` + HasAnySlowLearner string `json:"hasAnySlowLearner" legend:"plus"` + HasAnySupernatural string `json:"hasAnySupernatural" legend:"plus"` + HasAnyTitan string `json:"hasAnyTitan" legend:"plus"` + HasAnyUniqueDemon string `json:"hasAnyUniqueDemon" legend:"plus"` + HasAnyUtterances string `json:"hasAnyUtterances" legend:"plus"` + HasAnyVerminHateable string `json:"hasAnyVerminHateable" legend:"plus"` + HasAnyVerminMicro string `json:"hasAnyVerminMicro" legend:"plus"` + HasFemale string `json:"hasFemale" legend:"plus"` + HasMale string `json:"hasMale" legend:"plus"` + LargeRoaming string `json:"largeRoaming" legend:"plus"` + LooseClusters string `json:"looseClusters" legend:"plus"` + MatesToBreed string `json:"matesToBreed" legend:"plus"` + Mundane string `json:"mundane" legend:"plus"` + NamePlural string `json:"namePlural" legend:"plus"` + NameSingular string `json:"nameSingular" legend:"plus"` + OccursAsEntityRace string `json:"occursAsEntityRace" legend:"plus"` + Savage string `json:"savage" legend:"plus"` + SmallRace string `json:"smallRace" legend:"plus"` + TwoGenders string `json:"twoGenders" legend:"plus"` + Ubiquitous string `json:"ubiquitous" legend:"plus"` + VerminEater string `json:"verminEater" legend:"plus"` + VerminFish string `json:"verminFish" legend:"plus"` + VerminGrounder string `json:"verminGrounder" legend:"plus"` + VerminRotter string `json:"verminRotter" legend:"plus"` + VerminSoil string `json:"verminSoil" legend:"plus"` + VerminSoilColony string `json:"verminSoilColony" legend:"plus"` +} + +func NewCreature() *Creature { return &Creature{} } +type DanceForm struct { + Description string `json:"description" legend:"base"` + Id_ int `json:"id" legend:"both"` + Name_ string `json:"name" legend:"plus"` +} + +func NewDanceForm() *DanceForm { return &DanceForm{} } +func (x *DanceForm) Id() int { return x.Id_ } +func (x *DanceForm) Name() string { return x.Name_ } +type DfWorld struct { + Altname string `json:"altname" legend:"plus"` + Artifacts map[int]*Artifact `json:"artifacts" legend:"both"` + CreatureRaw []*Creature `json:"creatureRaw" legend:"plus"` + DanceForms map[int]*DanceForm `json:"danceForms" legend:"both"` + Entities map[int]*Entity `json:"entities" legend:"both"` + EntityPopulations map[int]*EntityPopulation `json:"entityPopulations" legend:"both"` + HistoricalEras []*HistoricalEra `json:"historicalEras" legend:"both"` + HistoricalEventCollections map[int]*HistoricalEventCollection `json:"historicalEventCollections" legend:"both"` + HistoricalEventRelationshipSupplements []*HistoricalEventRelationshipSupplement `json:"historicalEventRelationshipSupplements" legend:"plus"` + HistoricalEventRelationships []*HistoricalEventRelationship `json:"historicalEventRelationships" legend:"plus"` + HistoricalEvents map[int]*HistoricalEvent `json:"historicalEvents" legend:"both"` + HistoricalFigures map[int]*HistoricalFigure `json:"historicalFigures" legend:"both"` + Identities map[int]*Identity `json:"identities" legend:"plus"` + Landmasses map[int]*Landmass `json:"landmasses" legend:"plus"` + MountainPeaks map[int]*MountainPeak `json:"mountainPeaks" legend:"plus"` + MusicalForms map[int]*MusicalForm `json:"musicalForms" legend:"both"` + Name_ string `json:"name" legend:"plus"` + PoeticForms map[int]*PoeticForm `json:"poeticForms" legend:"both"` + Regions map[int]*Region `json:"regions" legend:"both"` + Rivers []*River `json:"rivers" legend:"plus"` + Sites map[int]*Site `json:"sites" legend:"both"` + UndergroundRegions map[int]*UndergroundRegion `json:"undergroundRegions" legend:"both"` + WorldConstructions map[int]*WorldConstruction `json:"worldConstructions" legend:"both"` + WrittenContents map[int]*WrittenContent `json:"writtenContents" legend:"both"` +} + +func NewDfWorld() *DfWorld { return &DfWorld{} } +func (x *DfWorld) Name() string { return x.Name_ } +type Entity struct { + Child []int `json:"child" legend:"plus"` + Claims string `json:"claims" legend:"plus"` + EntityLink []EntityLink `json:"entityLink" legend:"plus"` + EntityPosition []EntityPosition `json:"entityPosition" legend:"plus"` + EntityPositionAssignment []EntityPositionAssignment `json:"entityPositionAssignment" legend:"plus"` + HistfigId []int `json:"histfigId" legend:"plus"` + Honor []Honor `json:"honor" legend:"base"` + Id_ int `json:"id" legend:"both"` + Name_ string `json:"name" legend:"base"` + Occasion []Occasion `json:"occasion" legend:"plus"` + Profession string `json:"profession" legend:"plus"` + Race string `json:"race" legend:"plus"` + Type string `json:"type" legend:"plus"` + Weapon []string `json:"weapon" legend:"plus"` + WorshipId []int `json:"worshipId" legend:"plus"` +} + +func NewEntity() *Entity { return &Entity{} } +func (x *Entity) Id() int { return x.Id_ } +func (x *Entity) Name() string { return x.Name_ } +type EntityFormerPositionLink struct { + EndYear int `json:"endYear" legend:"base"` + EntityId int `json:"entityId" legend:"base"` + PositionProfileId int `json:"positionProfileId" legend:"base"` + StartYear int `json:"startYear" legend:"base"` +} + +func NewEntityFormerPositionLink() *EntityFormerPositionLink { return &EntityFormerPositionLink{} } +type EntityLink struct { + EntityId int `json:"entityId" legend:"base"` + LinkStrength int `json:"linkStrength" legend:"base"` + LinkType string `json:"linkType" legend:"base"` +} + +func NewEntityLink() *EntityLink { return &EntityLink{} } +type EntityPopulation struct { + CivId int `json:"civId" legend:"plus"` + Id_ int `json:"id" legend:"both"` + Race string `json:"race" legend:"plus"` +} + +func NewEntityPopulation() *EntityPopulation { return &EntityPopulation{} } +func (x *EntityPopulation) Id() int { return x.Id_ } +type EntityPosition struct { + Id_ int `json:"id" legend:"plus"` + Name_ string `json:"name" legend:"plus"` + NameFemale string `json:"nameFemale" legend:"plus"` + NameMale string `json:"nameMale" legend:"plus"` + Spouse string `json:"spouse" legend:"plus"` + SpouseFemale string `json:"spouseFemale" legend:"plus"` + SpouseMale string `json:"spouseMale" legend:"plus"` +} + +func NewEntityPosition() *EntityPosition { return &EntityPosition{} } +func (x *EntityPosition) Id() int { return x.Id_ } +func (x *EntityPosition) Name() string { return x.Name_ } +type EntityPositionAssignment struct { + Histfig int `json:"histfig" legend:"plus"` + Id_ int `json:"id" legend:"plus"` + PositionId int `json:"positionId" legend:"plus"` + SquadId int `json:"squadId" legend:"plus"` +} + +func NewEntityPositionAssignment() *EntityPositionAssignment { return &EntityPositionAssignment{} } +func (x *EntityPositionAssignment) Id() int { return x.Id_ } +type EntityPositionLink struct { + EntityId int `json:"entityId" legend:"base"` + PositionProfileId int `json:"positionProfileId" legend:"base"` + StartYear int `json:"startYear" legend:"base"` +} + +func NewEntityPositionLink() *EntityPositionLink { return &EntityPositionLink{} } +type EntityReputation struct { + EntityId int `json:"entityId" legend:"base"` + FirstAgelessSeasonCount int `json:"firstAgelessSeasonCount" legend:"base"` + FirstAgelessYear int `json:"firstAgelessYear" legend:"base"` + UnsolvedMurders int `json:"unsolvedMurders" legend:"base"` +} + +func NewEntityReputation() *EntityReputation { return &EntityReputation{} } +type EntitySquadLink struct { + EntityId int `json:"entityId" legend:"base"` + SquadId int `json:"squadId" legend:"base"` + SquadPosition int `json:"squadPosition" legend:"base"` + StartYear int `json:"startYear" legend:"base"` +} + +func NewEntitySquadLink() *EntitySquadLink { return &EntitySquadLink{} } +type Feature struct { + Reference int `json:"reference" legend:"plus"` + Type string `json:"type" legend:"plus"` +} + +func NewFeature() *Feature { return &Feature{} } +type HfLink struct { + Hfid int `json:"hfid" legend:"base"` + LinkStrength int `json:"linkStrength" legend:"base"` + LinkType string `json:"linkType" legend:"base"` +} + +func NewHfLink() *HfLink { return &HfLink{} } +type HfSkill struct { + Skill string `json:"skill" legend:"base"` + TotalIp int `json:"totalIp" legend:"base"` +} + +func NewHfSkill() *HfSkill { return &HfSkill{} } +type HistoricalEra struct { + Name_ string `json:"name" legend:"base"` + StartYear int `json:"startYear" legend:"base"` +} + +func NewHistoricalEra() *HistoricalEra { return &HistoricalEra{} } +func (x *HistoricalEra) Name() string { return x.Name_ } +type HistoricalEvent struct { + AHfid int `json:"aHfid" legend:"base"` + ASquadId int `json:"aSquadId" legend:"base"` + ASupportMercEnid int `json:"aSupportMercEnid" legend:"base"` + ATacticianHfid int `json:"aTacticianHfid" legend:"base"` + ATacticsRoll int `json:"aTacticsRoll" legend:"base"` + AbuseType string `json:"abuseType" legend:"plus"` + AccountShift int `json:"accountShift" legend:"base"` + AcquirerEnid int `json:"acquirerEnid" legend:"base"` + AcquirerHfid int `json:"acquirerHfid" legend:"base"` + Action string `json:"action" legend:"both"` + ActorHfid int `json:"actorHfid" legend:"base"` + AgreementId int `json:"agreementId" legend:"base"` + Allotment int `json:"allotment" legend:"base"` + AllotmentIndex int `json:"allotmentIndex" legend:"base"` + AllyDefenseBonus int `json:"allyDefenseBonus" legend:"base"` + AppointerHfid int `json:"appointerHfid" legend:"both"` + ArrestingEnid int `json:"arrestingEnid" legend:"base"` + Artifact int `json:"artifact" legend:"plus"` + ArtifactId int `json:"artifactId" legend:"both"` + AttackerCivId int `json:"attackerCivId" legend:"base"` + AttackerGeneralHfid int `json:"attackerGeneralHfid" legend:"base"` + AttackerHfid int `json:"attackerHfid" legend:"base"` + AttackerMercEnid int `json:"attackerMercEnid" legend:"base"` + Bodies []int `json:"bodies" legend:"plus"` + BodyPart int `json:"bodyPart" legend:"plus"` + BodyState string `json:"bodyState" legend:"base"` + BuilderHf int `json:"builderHf" legend:"plus"` + BuilderHfid int `json:"builderHfid" legend:"base"` + BuildingProfileId int `json:"buildingProfileId" legend:"base"` + Caste string `json:"caste" legend:"plus"` + Cause string `json:"cause" legend:"base"` + Changee int `json:"changee" legend:"plus"` + ChangeeHfid int `json:"changeeHfid" legend:"base"` + Changer int `json:"changer" legend:"plus"` + ChangerHfid int `json:"changerHfid" legend:"base"` + Circumstance Circumstance `json:"circumstance" legend:"both"` + CircumstanceId int `json:"circumstanceId" legend:"base"` + Civ int `json:"civ" legend:"plus"` + CivEntityId int `json:"civEntityId" legend:"base"` + CivId int `json:"civId" legend:"base"` + Claim string `json:"claim" legend:"base"` + CoconspiratorBonus int `json:"coconspiratorBonus" legend:"base"` + CoconspiratorHfid int `json:"coconspiratorHfid" legend:"base"` + CompetitorHfid []int `json:"competitorHfid" legend:"base"` + ConfessedAfterApbArrestEnid int `json:"confessedAfterApbArrestEnid" legend:"base"` + ConspiratorHfid []int `json:"conspiratorHfid" legend:"base"` + ContactHfid int `json:"contactHfid" legend:"base"` + ConvictIsContact string `json:"convictIsContact" legend:"base"` + ConvictedHfid int `json:"convictedHfid" legend:"base"` + ConvicterEnid int `json:"convicterEnid" legend:"base"` + Coords string `json:"coords" legend:"base"` + CorruptConvicterHfid int `json:"corruptConvicterHfid" legend:"base"` + CorruptorHfid int `json:"corruptorHfid" legend:"base"` + CorruptorIdentity int `json:"corruptorIdentity" legend:"base"` + CorruptorSeenAs string `json:"corruptorSeenAs" legend:"base"` + CreatorHfid int `json:"creatorHfid" legend:"both"` + CreatorUnitId int `json:"creatorUnitId" legend:"plus"` + Crime string `json:"crime" legend:"base"` + DEffect int `json:"dEffect" legend:"base"` + DInteraction int `json:"dInteraction" legend:"base"` + DNumber int `json:"dNumber" legend:"base"` + DRace int `json:"dRace" legend:"base"` + DSlain int `json:"dSlain" legend:"base"` + DSquadId int `json:"dSquadId" legend:"base"` + DSupportMercEnid int `json:"dSupportMercEnid" legend:"base"` + DTacticianHfid int `json:"dTacticianHfid" legend:"base"` + DTacticsRoll int `json:"dTacticsRoll" legend:"base"` + DeathCause string `json:"deathCause" legend:"plus"` + DeathPenalty string `json:"deathPenalty" legend:"base"` + DefenderCivId int `json:"defenderCivId" legend:"base"` + DefenderGeneralHfid int `json:"defenderGeneralHfid" legend:"base"` + DefenderMercEnid int `json:"defenderMercEnid" legend:"base"` + Delegated string `json:"delegated" legend:"base"` + DepotEntityId int `json:"depotEntityId" legend:"base"` + DestEntityId int `json:"destEntityId" legend:"base"` + DestSiteId int `json:"destSiteId" legend:"base"` + DestStructureId int `json:"destStructureId" legend:"base"` + Destination int `json:"destination" legend:"plus"` + DestroyedStructureId int `json:"destroyedStructureId" legend:"base"` + DestroyerEnid int `json:"destroyerEnid" legend:"base"` + Detected string `json:"detected" legend:"base"` + DidNotRevealAllInInterrogation string `json:"didNotRevealAllInInterrogation" legend:"base"` + Dispute string `json:"dispute" legend:"base"` + Disturbance string `json:"disturbance" legend:"base"` + Doer int `json:"doer" legend:"plus"` + DoerHfid int `json:"doerHfid" legend:"base"` + Eater int `json:"eater" legend:"plus"` + EnslavedHfid int `json:"enslavedHfid" legend:"base"` + Entity int `json:"entity" legend:"plus"` + Entity1 int `json:"entity1" legend:"base"` + Entity2 int `json:"entity2" legend:"base"` + EntityId int `json:"entityId" legend:"base"` + EntityId1 int `json:"entityId1" legend:"base"` + EntityId2 int `json:"entityId2" legend:"base"` + Exiled string `json:"exiled" legend:"base"` + ExpelledCreature []int `json:"expelledCreature" legend:"base"` + ExpelledHfid []int `json:"expelledHfid" legend:"base"` + ExpelledNumber []int `json:"expelledNumber" legend:"base"` + ExpelledPopId []int `json:"expelledPopId" legend:"base"` + FailedJudgmentTest string `json:"failedJudgmentTest" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + First string `json:"first" legend:"base"` + FooledHfid int `json:"fooledHfid" legend:"base"` + FormId int `json:"formId" legend:"base"` + FramerHfid int `json:"framerHfid" legend:"base"` + FromOriginal string `json:"fromOriginal" legend:"base"` + GamblerHfid int `json:"gamblerHfid" legend:"base"` + GiverEntityId int `json:"giverEntityId" legend:"base"` + GiverHistFigureId int `json:"giverHistFigureId" legend:"base"` + Group int `json:"group" legend:"plus"` + Group1Hfid int `json:"group1Hfid" legend:"base"` + Group2Hfid []int `json:"group2Hfid" legend:"base"` + GroupHfid []int `json:"groupHfid" legend:"base"` + HeldFirmInInterrogation string `json:"heldFirmInInterrogation" legend:"base"` + Hf int `json:"hf" legend:"plus"` + HfRep1Of2 string `json:"hfRep1Of2" legend:"base"` + HfRep2Of1 string `json:"hfRep2Of1" legend:"base"` + HfTarget int `json:"hfTarget" legend:"plus"` + Hfid []int `json:"hfid" legend:"both"` + Hfid1 int `json:"hfid1" legend:"base"` + Hfid2 int `json:"hfid2" legend:"base"` + HfidTarget int `json:"hfidTarget" legend:"base"` + HistFigId int `json:"histFigId" legend:"base"` + HistFigureId int `json:"histFigureId" legend:"base"` + Histfig int `json:"histfig" legend:"plus"` + HonorId int `json:"honorId" legend:"base"` + Id_ int `json:"id" legend:"both"` + IdentityCaste string `json:"identityCaste" legend:"plus"` + IdentityHistfigId int `json:"identityHistfigId" legend:"plus"` + IdentityId int `json:"identityId" legend:"base"` + IdentityId1 int `json:"identityId1" legend:"base"` + IdentityId2 int `json:"identityId2" legend:"base"` + IdentityName string `json:"identityName" legend:"plus"` + IdentityNemesisId int `json:"identityNemesisId" legend:"plus"` + IdentityRace string `json:"identityRace" legend:"plus"` + ImplicatedHfid []int `json:"implicatedHfid" legend:"base"` + Inherited string `json:"inherited" legend:"base"` + InitiatingEnid int `json:"initiatingEnid" legend:"base"` + InjuryType string `json:"injuryType" legend:"plus"` + InstigatorHfid int `json:"instigatorHfid" legend:"base"` + Interaction string `json:"interaction" legend:"both"` + InteractionAction string `json:"interactionAction" legend:"plus"` + InterrogatorHfid int `json:"interrogatorHfid" legend:"base"` + Item int `json:"item" legend:"plus"` + ItemId int `json:"itemId" legend:"plus"` + ItemMat string `json:"itemMat" legend:"plus"` + ItemSubtype string `json:"itemSubtype" legend:"plus"` + ItemType string `json:"itemType" legend:"plus"` + JoinEntityId int `json:"joinEntityId" legend:"base"` + JoinedEntityId int `json:"joinedEntityId" legend:"base"` + JoinerEntityId int `json:"joinerEntityId" legend:"base"` + JoiningEnid []int `json:"joiningEnid" legend:"base"` + Knowledge string `json:"knowledge" legend:"base"` + LastOwnerHfid int `json:"lastOwnerHfid" legend:"base"` + LawAdd string `json:"lawAdd" legend:"base"` + LawRemove string `json:"lawRemove" legend:"base"` + LeaderHfid int `json:"leaderHfid" legend:"base"` + Link string `json:"link" legend:"base"` + LinkType string `json:"linkType" legend:"plus"` + LureHfid int `json:"lureHfid" legend:"base"` + Maker int `json:"maker" legend:"plus"` + MakerEntity int `json:"makerEntity" legend:"plus"` + MasterWcid int `json:"masterWcid" legend:"base"` + Mat string `json:"mat" legend:"plus"` + Matindex int `json:"matindex" legend:"plus"` + Mattype int `json:"mattype" legend:"plus"` + Method string `json:"method" legend:"base"` + Modification string `json:"modification" legend:"base"` + ModifierHfid int `json:"modifierHfid" legend:"base"` + Mood string `json:"mood" legend:"base"` + MovedToSiteId int `json:"movedToSiteId" legend:"base"` + NameOnly string `json:"nameOnly" legend:"base"` + NewAbId int `json:"newAbId" legend:"base"` + NewAccount int `json:"newAccount" legend:"base"` + NewCaste string `json:"newCaste" legend:"both"` + NewEquipmentLevel int `json:"newEquipmentLevel" legend:"base"` + NewJob string `json:"newJob" legend:"plus"` + NewLeaderHfid int `json:"newLeaderHfid" legend:"base"` + NewRace string `json:"newRace" legend:"both"` + NewSiteCivId int `json:"newSiteCivId" legend:"base"` + NewStructure int `json:"newStructure" legend:"plus"` + OccasionId int `json:"occasionId" legend:"base"` + OldAbId int `json:"oldAbId" legend:"base"` + OldAccount int `json:"oldAccount" legend:"base"` + OldCaste string `json:"oldCaste" legend:"both"` + OldJob string `json:"oldJob" legend:"plus"` + OldRace string `json:"oldRace" legend:"both"` + OldStructure int `json:"oldStructure" legend:"plus"` + OverthrownHfid int `json:"overthrownHfid" legend:"base"` + PartLost string `json:"partLost" legend:"plus"` + PartialIncorporation string `json:"partialIncorporation" legend:"base"` + PayerEntityId int `json:"payerEntityId" legend:"base"` + PersecutorEnid int `json:"persecutorEnid" legend:"base"` + PersecutorHfid int `json:"persecutorHfid" legend:"base"` + Pets string `json:"pets" legend:"plus"` + PileType string `json:"pileType" legend:"plus"` + PlotterHfid int `json:"plotterHfid" legend:"base"` + PopFlid int `json:"popFlid" legend:"base"` + PopNumberMoved int `json:"popNumberMoved" legend:"base"` + PopRace int `json:"popRace" legend:"base"` + PopSrid int `json:"popSrid" legend:"base"` + PosTakerHfid int `json:"posTakerHfid" legend:"base"` + Position string `json:"position" legend:"plus"` + PositionId int `json:"positionId" legend:"base"` + PositionProfileId int `json:"positionProfileId" legend:"base"` + PrisonMonths int `json:"prisonMonths" legend:"base"` + ProductionZoneId int `json:"productionZoneId" legend:"base"` + PromiseToHfid int `json:"promiseToHfid" legend:"both"` + PropertyConfiscatedFromHfid []int `json:"propertyConfiscatedFromHfid" legend:"base"` + PurchasedUnowned string `json:"purchasedUnowned" legend:"base"` + Quality int `json:"quality" legend:"base"` + Race string `json:"race" legend:"plus"` + Reason []string `json:"reason" legend:"both"` + ReasonId int `json:"reasonId" legend:"base"` + Rebuild string `json:"rebuild" legend:"plus"` + Rebuilt string `json:"rebuilt" legend:"base"` + RebuiltRuined string `json:"rebuiltRuined" legend:"base"` + ReceiverEntityId int `json:"receiverEntityId" legend:"base"` + ReceiverHistFigureId int `json:"receiverHistFigureId" legend:"base"` + Region int `json:"region" legend:"plus"` + Relationship string `json:"relationship" legend:"base"` + RelevantEntityId int `json:"relevantEntityId" legend:"base"` + RelevantIdForMethod int `json:"relevantIdForMethod" legend:"base"` + RelevantPositionProfileId int `json:"relevantPositionProfileId" legend:"base"` + ReligionId int `json:"religionId" legend:"base"` + ResidentCivId int `json:"residentCivId" legend:"base"` + Return string `json:"return" legend:"base"` + SanctifyHf int `json:"sanctifyHf" legend:"plus"` + ScheduleId int `json:"scheduleId" legend:"base"` + Seconds72 int `json:"seconds72" legend:"base"` + SecretGoal string `json:"secretGoal" legend:"base"` + SecretText string `json:"secretText" legend:"plus"` + SeekerHfid int `json:"seekerHfid" legend:"base"` + SellerHfid int `json:"sellerHfid" legend:"base"` + ShrineAmountDestroyed int `json:"shrineAmountDestroyed" legend:"base"` + Site int `json:"site" legend:"plus"` + SiteCiv int `json:"siteCiv" legend:"plus"` + SiteCivId int `json:"siteCivId" legend:"base"` + SiteEntityId int `json:"siteEntityId" legend:"base"` + SiteHfid int `json:"siteHfid" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SiteId1 int `json:"siteId1" legend:"base"` + SiteId2 int `json:"siteId2" legend:"base"` + SitePropertyId int `json:"sitePropertyId" legend:"base"` + Situation string `json:"situation" legend:"base"` + SkillAtTime string `json:"skillAtTime" legend:"both"` + SlayerCaste string `json:"slayerCaste" legend:"both"` + SlayerHf int `json:"slayerHf" legend:"plus"` + SlayerHfid int `json:"slayerHfid" legend:"base"` + SlayerItemId int `json:"slayerItemId" legend:"base"` + SlayerRace string `json:"slayerRace" legend:"both"` + SlayerShooterItemId int `json:"slayerShooterItemId" legend:"base"` + SnatcherHfid int `json:"snatcherHfid" legend:"base"` + Source int `json:"source" legend:"plus"` + SourceEntityId int `json:"sourceEntityId" legend:"base"` + SourceSiteId int `json:"sourceSiteId" legend:"base"` + SourceStructureId int `json:"sourceStructureId" legend:"base"` + SpeakerHfid int `json:"speakerHfid" legend:"base"` + Start string `json:"start" legend:"base"` + StashSite int `json:"stashSite" legend:"plus"` + State string `json:"state" legend:"both"` + Structure int `json:"structure" legend:"plus"` + StructureId int `json:"structureId" legend:"base"` + Student int `json:"student" legend:"plus"` + StudentHfid int `json:"studentHfid" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` + Subtype string `json:"subtype" legend:"base"` + Successful string `json:"successful" legend:"base"` + SurveiledCoconspirator string `json:"surveiledCoconspirator" legend:"base"` + SurveiledContact string `json:"surveiledContact" legend:"base"` + SurveiledConvicted string `json:"surveiledConvicted" legend:"base"` + SurveiledTarget string `json:"surveiledTarget" legend:"base"` + Target int `json:"target" legend:"plus"` + TargetEnid int `json:"targetEnid" legend:"base"` + TargetHfid int `json:"targetHfid" legend:"base"` + TargetIdentity int `json:"targetIdentity" legend:"base"` + TargetSeenAs string `json:"targetSeenAs" legend:"base"` + Teacher int `json:"teacher" legend:"plus"` + TeacherHfid int `json:"teacherHfid" legend:"base"` + TheftMethod string `json:"theftMethod" legend:"plus"` + TopFacet string `json:"topFacet" legend:"base"` + TopFacetModifier int `json:"topFacetModifier" legend:"base"` + TopFacetRating int `json:"topFacetRating" legend:"base"` + TopRelationshipFactor string `json:"topRelationshipFactor" legend:"base"` + TopRelationshipModifier int `json:"topRelationshipModifier" legend:"base"` + TopRelationshipRating int `json:"topRelationshipRating" legend:"base"` + TopValue string `json:"topValue" legend:"base"` + TopValueModifier int `json:"topValueModifier" legend:"base"` + TopValueRating int `json:"topValueRating" legend:"base"` + Topic string `json:"topic" legend:"both"` + TraderEntityId int `json:"traderEntityId" legend:"base"` + TraderHfid int `json:"traderHfid" legend:"base"` + Tree int `json:"tree" legend:"plus"` + Trickster int `json:"trickster" legend:"plus"` + TricksterHfid int `json:"tricksterHfid" legend:"base"` + Type string `json:"type" legend:"both"` + UnitId int `json:"unitId" legend:"base"` + UnitType string `json:"unitType" legend:"base"` + Victim int `json:"victim" legend:"plus"` + VictimEntity int `json:"victimEntity" legend:"plus"` + VictimHf int `json:"victimHf" legend:"plus"` + WantedAndRecognized string `json:"wantedAndRecognized" legend:"base"` + WcId int `json:"wcId" legend:"base"` + Wcid int `json:"wcid" legend:"base"` + WinnerHfid int `json:"winnerHfid" legend:"base"` + Woundee int `json:"woundee" legend:"plus"` + WoundeeCaste int `json:"woundeeCaste" legend:"plus"` + WoundeeHfid int `json:"woundeeHfid" legend:"base"` + WoundeeRace int `json:"woundeeRace" legend:"plus"` + Wounder int `json:"wounder" legend:"plus"` + WounderHfid int `json:"wounderHfid" legend:"base"` + WrongfulConviction string `json:"wrongfulConviction" legend:"base"` + Year int `json:"year" legend:"base"` +} + +func NewHistoricalEvent() *HistoricalEvent { return &HistoricalEvent{} } +func (x *HistoricalEvent) Id() int { return x.Id_ } +type HistoricalEventCollection struct { + ASupportMercEnid int `json:"aSupportMercEnid" legend:"base"` + ASupportMercHfid []int `json:"aSupportMercHfid" legend:"base"` + Adjective string `json:"adjective" legend:"base"` + AggressorEntId int `json:"aggressorEntId" legend:"base"` + AttackingEnid int `json:"attackingEnid" legend:"base"` + AttackingHfid []int `json:"attackingHfid" legend:"base"` + AttackingMercEnid int `json:"attackingMercEnid" legend:"base"` + AttackingSquadAnimated []string `json:"attackingSquadAnimated" legend:"base"` + AttackingSquadDeaths []int `json:"attackingSquadDeaths" legend:"base"` + AttackingSquadEntityPop []int `json:"attackingSquadEntityPop" legend:"base"` + AttackingSquadNumber []int `json:"attackingSquadNumber" legend:"base"` + AttackingSquadRace []string `json:"attackingSquadRace" legend:"base"` + AttackingSquadSite []int `json:"attackingSquadSite" legend:"base"` + CivId int `json:"civId" legend:"base"` + CompanyMerc []string `json:"companyMerc" legend:"base"` + Coords string `json:"coords" legend:"base"` + DSupportMercEnid int `json:"dSupportMercEnid" legend:"base"` + DSupportMercHfid []int `json:"dSupportMercHfid" legend:"base"` + DefenderEntId int `json:"defenderEntId" legend:"base"` + DefendingEnid int `json:"defendingEnid" legend:"base"` + DefendingHfid []int `json:"defendingHfid" legend:"base"` + DefendingMercEnid int `json:"defendingMercEnid" legend:"base"` + DefendingSquadAnimated []string `json:"defendingSquadAnimated" legend:"base"` + DefendingSquadDeaths []int `json:"defendingSquadDeaths" legend:"base"` + DefendingSquadEntityPop []int `json:"defendingSquadEntityPop" legend:"base"` + DefendingSquadNumber []int `json:"defendingSquadNumber" legend:"base"` + DefendingSquadRace []string `json:"defendingSquadRace" legend:"base"` + DefendingSquadSite []int `json:"defendingSquadSite" legend:"base"` + EndSeconds72 int `json:"endSeconds72" legend:"base"` + EndYear int `json:"endYear" legend:"base"` + Event []int `json:"event" legend:"base"` + Eventcol []int `json:"eventcol" legend:"base"` + FeatureLayerId int `json:"featureLayerId" legend:"base"` + Id_ int `json:"id" legend:"base"` + IndividualMerc []string `json:"individualMerc" legend:"base"` + Name_ string `json:"name" legend:"base"` + NoncomHfid []int `json:"noncomHfid" legend:"base"` + OccasionId int `json:"occasionId" legend:"base"` + Ordinal int `json:"ordinal" legend:"base"` + Outcome string `json:"outcome" legend:"base"` + ParentEventcol int `json:"parentEventcol" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + StartSeconds72 int `json:"startSeconds72" legend:"base"` + StartYear int `json:"startYear" legend:"base"` + SubregionId int `json:"subregionId" legend:"base"` + TargetEntityId int `json:"targetEntityId" legend:"base"` + Type string `json:"type" legend:"base"` + WarEventcol int `json:"warEventcol" legend:"base"` +} + +func NewHistoricalEventCollection() *HistoricalEventCollection { return &HistoricalEventCollection{} } +func (x *HistoricalEventCollection) Id() int { return x.Id_ } +func (x *HistoricalEventCollection) Name() string { return x.Name_ } +type HistoricalEventRelationship struct { + Event int `json:"event" legend:"plus"` + Relationship string `json:"relationship" legend:"plus"` + SourceHf int `json:"sourceHf" legend:"plus"` + TargetHf int `json:"targetHf" legend:"plus"` + Year int `json:"year" legend:"plus"` +} + +func NewHistoricalEventRelationship() *HistoricalEventRelationship { return &HistoricalEventRelationship{} } +type HistoricalEventRelationshipSupplement struct { + Event int `json:"event" legend:"plus"` + OccasionType int `json:"occasionType" legend:"plus"` + Site int `json:"site" legend:"plus"` + Unk1 int `json:"unk1" legend:"plus"` +} + +func NewHistoricalEventRelationshipSupplement() *HistoricalEventRelationshipSupplement { return &HistoricalEventRelationshipSupplement{} } +type HistoricalFigure struct { + ActiveInteraction []string `json:"activeInteraction" legend:"base"` + Animated string `json:"animated" legend:"base"` + AnimatedString string `json:"animatedString" legend:"base"` + Appeared int `json:"appeared" legend:"base"` + AssociatedType string `json:"associatedType" legend:"base"` + BirthSeconds72 int `json:"birthSeconds72" legend:"base"` + BirthYear int `json:"birthYear" legend:"base"` + Caste string `json:"caste" legend:"base"` + CurrentIdentityId int `json:"currentIdentityId" legend:"base"` + DeathSeconds72 int `json:"deathSeconds72" legend:"base"` + DeathYear int `json:"deathYear" legend:"base"` + Deity string `json:"deity" legend:"base"` + EntPopId int `json:"entPopId" legend:"base"` + EntityFormerPositionLink []EntityFormerPositionLink `json:"entityFormerPositionLink" legend:"base"` + EntityLink []EntityLink `json:"entityLink" legend:"base"` + EntityPositionLink []EntityPositionLink `json:"entityPositionLink" legend:"base"` + EntityReputation []EntityReputation `json:"entityReputation" legend:"base"` + EntitySquadLink EntitySquadLink `json:"entitySquadLink" legend:"base"` + Force string `json:"force" legend:"base"` + Goal []string `json:"goal" legend:"base"` + HfLink []HfLink `json:"hfLink" legend:"base"` + HfSkill []HfSkill `json:"hfSkill" legend:"base"` + HoldsArtifact []int `json:"holdsArtifact" legend:"base"` + HonorEntity []HonorEntity `json:"honorEntity" legend:"base"` + Id_ int `json:"id" legend:"both"` + InteractionKnowledge []string `json:"interactionKnowledge" legend:"base"` + IntrigueActor []IntrigueActor `json:"intrigueActor" legend:"base"` + IntriguePlot []IntriguePlot `json:"intriguePlot" legend:"base"` + JourneyPet []string `json:"journeyPet" legend:"base"` + Name_ string `json:"name" legend:"base"` + Race string `json:"race" legend:"both"` + RelationshipProfileHfHistorical []RelationshipProfileHfHistorical `json:"relationshipProfileHfHistorical" legend:"base"` + RelationshipProfileHfVisual []RelationshipProfileHfVisual `json:"relationshipProfileHfVisual" legend:"base"` + Sex int `json:"sex" legend:"plus"` + SiteLink []SiteLink `json:"siteLink" legend:"base"` + SiteProperty []SiteProperty `json:"siteProperty" legend:"base"` + Sphere []string `json:"sphere" legend:"base"` + UsedIdentityId []int `json:"usedIdentityId" legend:"base"` + VagueRelationship []VagueRelationship `json:"vagueRelationship" legend:"base"` +} + +func NewHistoricalFigure() *HistoricalFigure { return &HistoricalFigure{} } +func (x *HistoricalFigure) Id() int { return x.Id_ } +func (x *HistoricalFigure) Name() string { return x.Name_ } +type Honor struct { + ExemptEpid int `json:"exemptEpid" legend:"base"` + ExemptFormerEpid int `json:"exemptFormerEpid" legend:"base"` + GivesPrecedence int `json:"givesPrecedence" legend:"base"` + GrantedToEverybody string `json:"grantedToEverybody" legend:"base"` + Id_ int `json:"id" legend:"base"` + Name_ string `json:"name" legend:"base"` + RequiredBattles int `json:"requiredBattles" legend:"base"` + RequiredKills int `json:"requiredKills" legend:"base"` + RequiredSkill string `json:"requiredSkill" legend:"base"` + RequiredSkillIpTotal int `json:"requiredSkillIpTotal" legend:"base"` + RequiredYears int `json:"requiredYears" legend:"base"` + RequiresAnyMeleeOrRangedSkill string `json:"requiresAnyMeleeOrRangedSkill" legend:"base"` +} + +func NewHonor() *Honor { return &Honor{} } +func (x *Honor) Id() int { return x.Id_ } +func (x *Honor) Name() string { return x.Name_ } +type HonorEntity struct { + Battles int `json:"battles" legend:"base"` + Entity int `json:"entity" legend:"base"` + HonorId []int `json:"honorId" legend:"base"` + Kills int `json:"kills" legend:"base"` +} + +func NewHonorEntity() *HonorEntity { return &HonorEntity{} } +type Identity struct { + BirthSecond int `json:"birthSecond" legend:"plus"` + BirthYear int `json:"birthYear" legend:"plus"` + Caste string `json:"caste" legend:"plus"` + EntityId int `json:"entityId" legend:"plus"` + HistfigId int `json:"histfigId" legend:"plus"` + Id_ int `json:"id" legend:"plus"` + Name_ string `json:"name" legend:"plus"` + NemesisId int `json:"nemesisId" legend:"plus"` + Profession string `json:"profession" legend:"plus"` + Race string `json:"race" legend:"plus"` +} + +func NewIdentity() *Identity { return &Identity{} } +func (x *Identity) Id() int { return x.Id_ } +func (x *Identity) Name() string { return x.Name_ } +type IntrigueActor struct { + EntityId int `json:"entityId" legend:"base"` + HandleActorId int `json:"handleActorId" legend:"base"` + Hfid int `json:"hfid" legend:"base"` + LocalId int `json:"localId" legend:"base"` + PromisedActorImmortality string `json:"promisedActorImmortality" legend:"base"` + PromisedMeImmortality string `json:"promisedMeImmortality" legend:"base"` + Role string `json:"role" legend:"base"` + Strategy string `json:"strategy" legend:"base"` + StrategyEnid int `json:"strategyEnid" legend:"base"` + StrategyEppid int `json:"strategyEppid" legend:"base"` +} + +func NewIntrigueActor() *IntrigueActor { return &IntrigueActor{} } +type IntriguePlot struct { + ActorId int `json:"actorId" legend:"base"` + ArtifactId int `json:"artifactId" legend:"base"` + DelegatedPlotHfid int `json:"delegatedPlotHfid" legend:"base"` + DelegatedPlotId int `json:"delegatedPlotId" legend:"base"` + EntityId int `json:"entityId" legend:"base"` + LocalId int `json:"localId" legend:"base"` + OnHold string `json:"onHold" legend:"base"` + ParentPlotHfid int `json:"parentPlotHfid" legend:"base"` + ParentPlotId int `json:"parentPlotId" legend:"base"` + PlotActor []PlotActor `json:"plotActor" legend:"base"` + Type string `json:"type" legend:"base"` +} + +func NewIntriguePlot() *IntriguePlot { return &IntriguePlot{} } +type Item struct { + NameString string `json:"nameString" legend:"base"` + PageNumber int `json:"pageNumber" legend:"base"` + PageWrittenContentId int `json:"pageWrittenContentId" legend:"base"` + WritingWrittenContentId int `json:"writingWrittenContentId" legend:"base"` +} + +func NewItem() *Item { return &Item{} } +type Landmass struct { + Coord1 string `json:"coord1" legend:"plus"` + Coord2 string `json:"coord2" legend:"plus"` + Id_ int `json:"id" legend:"plus"` + Name_ string `json:"name" legend:"plus"` +} + +func NewLandmass() *Landmass { return &Landmass{} } +func (x *Landmass) Id() int { return x.Id_ } +func (x *Landmass) Name() string { return x.Name_ } +type MountainPeak struct { + Coords string `json:"coords" legend:"plus"` + Height int `json:"height" legend:"plus"` + Id_ int `json:"id" legend:"plus"` + IsVolcano string `json:"isVolcano" legend:"plus"` + Name_ string `json:"name" legend:"plus"` +} + +func NewMountainPeak() *MountainPeak { return &MountainPeak{} } +func (x *MountainPeak) Id() int { return x.Id_ } +func (x *MountainPeak) Name() string { return x.Name_ } +type MusicalForm struct { + Description string `json:"description" legend:"base"` + Id_ int `json:"id" legend:"both"` + Name_ string `json:"name" legend:"plus"` +} + +func NewMusicalForm() *MusicalForm { return &MusicalForm{} } +func (x *MusicalForm) Id() int { return x.Id_ } +func (x *MusicalForm) Name() string { return x.Name_ } +type Occasion struct { + Event int `json:"event" legend:"plus"` + Id_ int `json:"id" legend:"plus"` + Name_ string `json:"name" legend:"plus"` + Schedule []Schedule `json:"schedule" legend:"plus"` +} + +func NewOccasion() *Occasion { return &Occasion{} } +func (x *Occasion) Id() int { return x.Id_ } +func (x *Occasion) Name() string { return x.Name_ } +type PlotActor struct { + ActorId int `json:"actorId" legend:"base"` + AgreementHasMessenger string `json:"agreementHasMessenger" legend:"base"` + AgreementId int `json:"agreementId" legend:"base"` + PlotRole string `json:"plotRole" legend:"base"` +} + +func NewPlotActor() *PlotActor { return &PlotActor{} } +type PoeticForm struct { + Description string `json:"description" legend:"base"` + Id_ int `json:"id" legend:"both"` + Name_ string `json:"name" legend:"plus"` +} + +func NewPoeticForm() *PoeticForm { return &PoeticForm{} } +func (x *PoeticForm) Id() int { return x.Id_ } +func (x *PoeticForm) Name() string { return x.Name_ } +type Reference struct { + Id_ int `json:"id" legend:"plus"` + Type string `json:"type" legend:"plus"` +} + +func NewReference() *Reference { return &Reference{} } +func (x *Reference) Id() int { return x.Id_ } +type Region struct { + Coords string `json:"coords" legend:"plus"` + Evilness string `json:"evilness" legend:"plus"` + ForceId int `json:"forceId" legend:"plus"` + Id_ int `json:"id" legend:"both"` + Name_ string `json:"name" legend:"base"` + Type string `json:"type" legend:"base"` +} + +func NewRegion() *Region { return &Region{} } +func (x *Region) Id() int { return x.Id_ } +func (x *Region) Name() string { return x.Name_ } +type RelationshipProfileHfHistorical struct { + Fear int `json:"fear" legend:"base"` + HfId int `json:"hfId" legend:"base"` + Love int `json:"love" legend:"base"` + Loyalty int `json:"loyalty" legend:"base"` + Respect int `json:"respect" legend:"base"` + Trust int `json:"trust" legend:"base"` +} + +func NewRelationshipProfileHfHistorical() *RelationshipProfileHfHistorical { return &RelationshipProfileHfHistorical{} } +type RelationshipProfileHfVisual struct { + Fear int `json:"fear" legend:"base"` + HfId int `json:"hfId" legend:"base"` + KnownIdentityId int `json:"knownIdentityId" legend:"base"` + LastMeetSeconds72 int `json:"lastMeetSeconds72" legend:"base"` + LastMeetYear int `json:"lastMeetYear" legend:"base"` + Love int `json:"love" legend:"base"` + Loyalty int `json:"loyalty" legend:"base"` + MeetCount int `json:"meetCount" legend:"base"` + RepFriendly int `json:"repFriendly" legend:"base"` + RepInformationSource int `json:"repInformationSource" legend:"base"` + Respect int `json:"respect" legend:"base"` + Trust int `json:"trust" legend:"base"` +} + +func NewRelationshipProfileHfVisual() *RelationshipProfileHfVisual { return &RelationshipProfileHfVisual{} } +type River struct { + EndPos string `json:"endPos" legend:"plus"` + Name_ string `json:"name" legend:"plus"` + Path string `json:"path" legend:"plus"` +} + +func NewRiver() *River { return &River{} } +func (x *River) Name() string { return x.Name_ } +type Schedule struct { + Feature []Feature `json:"feature" legend:"plus"` + Id_ int `json:"id" legend:"plus"` + ItemSubtype string `json:"itemSubtype" legend:"plus"` + ItemType string `json:"itemType" legend:"plus"` + Reference int `json:"reference" legend:"plus"` + Reference2 int `json:"reference2" legend:"plus"` + Type string `json:"type" legend:"plus"` +} + +func NewSchedule() *Schedule { return &Schedule{} } +func (x *Schedule) Id() int { return x.Id_ } +type Site struct { + CivId int `json:"civId" legend:"plus"` + Coords string `json:"coords" legend:"base"` + CurOwnerId int `json:"curOwnerId" legend:"plus"` + Id_ int `json:"id" legend:"both"` + Name_ string `json:"name" legend:"base"` + Rectangle string `json:"rectangle" legend:"base"` + SiteProperties map[int]*SiteProperty `json:"siteProperties" legend:"base"` + Structures map[int]*Structure `json:"structures" legend:"both"` + Type string `json:"type" legend:"base"` +} + +func NewSite() *Site { return &Site{} } +func (x *Site) Id() int { return x.Id_ } +func (x *Site) Name() string { return x.Name_ } +type SiteLink struct { + EntityId int `json:"entityId" legend:"base"` + LinkType string `json:"linkType" legend:"base"` + OccupationId int `json:"occupationId" legend:"base"` + SiteId int `json:"siteId" legend:"base"` + SubId int `json:"subId" legend:"base"` +} + +func NewSiteLink() *SiteLink { return &SiteLink{} } +type SiteProperty struct { + Id_ int `json:"id" legend:"base"` + OwnerHfid int `json:"ownerHfid" legend:"base"` + StructureId int `json:"structureId" legend:"base"` + Type string `json:"type" legend:"base"` +} + +func NewSiteProperty() *SiteProperty { return &SiteProperty{} } +func (x *SiteProperty) Id() int { return x.Id_ } +type Structure struct { + CopiedArtifactId []int `json:"copiedArtifactId" legend:"base"` + Deity int `json:"deity" legend:"plus"` + DeityType int `json:"deityType" legend:"plus"` + DungeonType int `json:"dungeonType" legend:"plus"` + EntityId int `json:"entityId" legend:"base"` + Id_ int `json:"id" legend:"plus"` + Inhabitant []int `json:"inhabitant" legend:"plus"` + LocalId int `json:"localId" legend:"base"` + Name_ string `json:"name" legend:"both"` + Name2 string `json:"name2" legend:"plus"` + Religion int `json:"religion" legend:"plus"` + Subtype string `json:"subtype" legend:"base"` + Type string `json:"type" legend:"both"` + WorshipHfid int `json:"worshipHfid" legend:"base"` +} + +func NewStructure() *Structure { return &Structure{} } +func (x *Structure) Id() int { return x.Id_ } +func (x *Structure) Name() string { return x.Name_ } +type UndergroundRegion struct { + Coords string `json:"coords" legend:"plus"` + Depth int `json:"depth" legend:"base"` + Id_ int `json:"id" legend:"both"` + Type string `json:"type" legend:"base"` +} + +func NewUndergroundRegion() *UndergroundRegion { return &UndergroundRegion{} } +func (x *UndergroundRegion) Id() int { return x.Id_ } +type VagueRelationship struct { + ArtisticBuddy string `json:"artisticBuddy" legend:"base"` + AtheleticRival string `json:"atheleticRival" legend:"base"` + AthleteBuddy string `json:"athleteBuddy" legend:"base"` + BusinessRival string `json:"businessRival" legend:"base"` + ChildhoodFriend string `json:"childhoodFriend" legend:"base"` + Grudge string `json:"grudge" legend:"base"` + Hfid int `json:"hfid" legend:"base"` + JealousObsession string `json:"jealousObsession" legend:"base"` + JealousRelationshipGrudge string `json:"jealousRelationshipGrudge" legend:"base"` + PersecutionGrudge string `json:"persecutionGrudge" legend:"base"` + ReligiousPersecutionGrudge string `json:"religiousPersecutionGrudge" legend:"base"` + ScholarBuddy string `json:"scholarBuddy" legend:"base"` + SupernaturalGrudge string `json:"supernaturalGrudge" legend:"base"` + WarBuddy string `json:"warBuddy" legend:"base"` +} + +func NewVagueRelationship() *VagueRelationship { return &VagueRelationship{} } +type WorldConstruction struct { + Coords string `json:"coords" legend:"plus"` + Id_ int `json:"id" legend:"plus"` + Name_ string `json:"name" legend:"plus"` + Type string `json:"type" legend:"plus"` +} + +func NewWorldConstruction() *WorldConstruction { return &WorldConstruction{} } +func (x *WorldConstruction) Id() int { return x.Id_ } +func (x *WorldConstruction) Name() string { return x.Name_ } +type WrittenContent struct { + Author int `json:"author" legend:"plus"` + AuthorHfid int `json:"authorHfid" legend:"base"` + AuthorRoll int `json:"authorRoll" legend:"base"` + Form string `json:"form" legend:"base"` + FormId int `json:"formId" legend:"base"` + Id_ int `json:"id" legend:"both"` + PageEnd int `json:"pageEnd" legend:"plus"` + PageStart int `json:"pageStart" legend:"plus"` + Reference []Reference `json:"reference" legend:"plus"` + Style []string `json:"style" legend:"both"` + Title string `json:"title" legend:"both"` + Type string `json:"type" legend:"plus"` +} + +func NewWrittenContent() *WrittenContent { return &WrittenContent{} } +func (x *WrittenContent) Id() int { return x.Id_ } + +// Parser + +func n(d []byte) int { + v, _ := strconv.Atoi(string(d)) + return v +} +func (obj *Artifact) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "abs_tile_x": + data = nil + case "abs_tile_y": + data = nil + case "abs_tile_z": + data = nil + case "holder_hfid": + data = nil + case "id": + data = nil + case "item": + v := Item{} +v.Parse(d, &t) +obj.Item = v + case "item_description": + data = nil + case "item_subtype": + data = nil + case "item_type": + data = nil + case "mat": + data = nil + case "name": + data = nil + case "page_count": + data = nil + case "site_id": + data = nil + case "structure_local_id": + data = nil + case "subregion_id": + data = nil + case "writing": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "abs_tile_x": + obj.AbsTileX = n(data) + case "abs_tile_y": + obj.AbsTileY = n(data) + case "abs_tile_z": + obj.AbsTileZ = n(data) + case "holder_hfid": + obj.HolderHfid = n(data) + case "id": + obj.Id_ = n(data) + case "item": + + case "item_description": + obj.ItemDescription = string(data) + case "item_subtype": + obj.ItemSubtype = string(data) + case "item_type": + obj.ItemType = string(data) + case "mat": + obj.Mat = string(data) + case "name": + obj.Name_ = string(data) + case "page_count": + obj.PageCount = n(data) + case "site_id": + obj.SiteId = n(data) + case "structure_local_id": + obj.StructureLocalId = n(data) + case "subregion_id": + obj.SubregionId = n(data) + case "writing": + obj.Writing = n(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Circumstance) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "defeated": + data = nil + case "hist_event_collection": + data = nil + case "murdered": + data = nil + case "type": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "defeated": + obj.Defeated = n(data) + case "hist_event_collection": + obj.HistEventCollection = n(data) + case "murdered": + obj.Murdered = n(data) + case "type": + obj.Type = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Creature) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "all_castes_alive": + data = nil + case "artificial_hiveable": + data = nil + case "biome_desert_badland": + data = nil + case "biome_desert_rock": + data = nil + case "biome_desert_sand": + data = nil + case "biome_forest_taiga": + data = nil + case "biome_forest_temperate_broadleaf": + data = nil + case "biome_forest_temperate_conifer": + data = nil + case "biome_forest_tropical_conifer": + data = nil + case "biome_forest_tropical_dry_broadleaf": + data = nil + case "biome_forest_tropical_moist_broadleaf": + data = nil + case "biome_glacier": + data = nil + case "biome_grassland_temperate": + data = nil + case "biome_grassland_tropical": + data = nil + case "biome_lake_temperate_brackishwater": + data = nil + case "biome_lake_temperate_freshwater": + data = nil + case "biome_lake_temperate_saltwater": + data = nil + case "biome_lake_tropical_brackishwater": + data = nil + case "biome_lake_tropical_freshwater": + data = nil + case "biome_lake_tropical_saltwater": + data = nil + case "biome_marsh_temperate_freshwater": + data = nil + case "biome_marsh_temperate_saltwater": + data = nil + case "biome_marsh_tropical_freshwater": + data = nil + case "biome_marsh_tropical_saltwater": + data = nil + case "biome_mountain": + data = nil + case "biome_ocean_arctic": + data = nil + case "biome_ocean_temperate": + data = nil + case "biome_ocean_tropical": + data = nil + case "biome_pool_temperate_brackishwater": + data = nil + case "biome_pool_temperate_freshwater": + data = nil + case "biome_pool_temperate_saltwater": + data = nil + case "biome_pool_tropical_brackishwater": + data = nil + case "biome_pool_tropical_freshwater": + data = nil + case "biome_pool_tropical_saltwater": + data = nil + case "biome_river_temperate_brackishwater": + data = nil + case "biome_river_temperate_freshwater": + data = nil + case "biome_river_temperate_saltwater": + data = nil + case "biome_river_tropical_brackishwater": + data = nil + case "biome_river_tropical_freshwater": + data = nil + case "biome_river_tropical_saltwater": + data = nil + case "biome_savanna_temperate": + data = nil + case "biome_savanna_tropical": + data = nil + case "biome_shrubland_temperate": + data = nil + case "biome_shrubland_tropical": + data = nil + case "biome_subterranean_chasm": + data = nil + case "biome_subterranean_lava": + data = nil + case "biome_subterranean_water": + data = nil + case "biome_swamp_mangrove": + data = nil + case "biome_swamp_temperate_freshwater": + data = nil + case "biome_swamp_temperate_saltwater": + data = nil + case "biome_swamp_tropical_freshwater": + data = nil + case "biome_swamp_tropical_saltwater": + data = nil + case "biome_tundra": + data = nil + case "creature_id": + data = nil + case "does_not_exist": + data = nil + case "equipment": + data = nil + case "equipment_wagon": + data = nil + case "evil": + data = nil + case "fanciful": + data = nil + case "generated": + data = nil + case "good": + data = nil + case "has_any_benign": + data = nil + case "has_any_can_swim": + data = nil + case "has_any_cannot_breathe_air": + data = nil + case "has_any_cannot_breathe_water": + data = nil + case "has_any_carnivore": + data = nil + case "has_any_common_domestic": + data = nil + case "has_any_curious_beast": + data = nil + case "has_any_demon": + data = nil + case "has_any_feature_beast": + data = nil + case "has_any_flier": + data = nil + case "has_any_fly_race_gait": + data = nil + case "has_any_grasp": + data = nil + case "has_any_grazer": + data = nil + case "has_any_has_blood": + data = nil + case "has_any_immobile": + data = nil + case "has_any_intelligent_learns": + data = nil + case "has_any_intelligent_speaks": + data = nil + case "has_any_large_predator": + data = nil + case "has_any_local_pops_controllable": + data = nil + case "has_any_local_pops_produce_heroes": + data = nil + case "has_any_megabeast": + data = nil + case "has_any_mischievous": + data = nil + case "has_any_natural_animal": + data = nil + case "has_any_night_creature": + data = nil + case "has_any_night_creature_bogeyman": + data = nil + case "has_any_night_creature_hunter": + data = nil + case "has_any_night_creature_nightmare": + data = nil + case "has_any_not_fireimmune": + data = nil + case "has_any_not_living": + data = nil + case "has_any_outsider_controllable": + data = nil + case "has_any_race_gait": + data = nil + case "has_any_semimegabeast": + data = nil + case "has_any_slow_learner": + data = nil + case "has_any_supernatural": + data = nil + case "has_any_titan": + data = nil + case "has_any_unique_demon": + data = nil + case "has_any_utterances": + data = nil + case "has_any_vermin_hateable": + data = nil + case "has_any_vermin_micro": + data = nil + case "has_female": + data = nil + case "has_male": + data = nil + case "large_roaming": + data = nil + case "loose_clusters": + data = nil + case "mates_to_breed": + data = nil + case "mundane": + data = nil + case "name_plural": + data = nil + case "name_singular": + data = nil + case "occurs_as_entity_race": + data = nil + case "savage": + data = nil + case "small_race": + data = nil + case "two_genders": + data = nil + case "ubiquitous": + data = nil + case "vermin_eater": + data = nil + case "vermin_fish": + data = nil + case "vermin_grounder": + data = nil + case "vermin_rotter": + data = nil + case "vermin_soil": + data = nil + case "vermin_soil_colony": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "all_castes_alive": + obj.AllCastesAlive = string(data) + case "artificial_hiveable": + obj.ArtificialHiveable = string(data) + case "biome_desert_badland": + obj.BiomeDesertBadland = string(data) + case "biome_desert_rock": + obj.BiomeDesertRock = string(data) + case "biome_desert_sand": + obj.BiomeDesertSand = string(data) + case "biome_forest_taiga": + obj.BiomeForestTaiga = string(data) + case "biome_forest_temperate_broadleaf": + obj.BiomeForestTemperateBroadleaf = string(data) + case "biome_forest_temperate_conifer": + obj.BiomeForestTemperateConifer = string(data) + case "biome_forest_tropical_conifer": + obj.BiomeForestTropicalConifer = string(data) + case "biome_forest_tropical_dry_broadleaf": + obj.BiomeForestTropicalDryBroadleaf = string(data) + case "biome_forest_tropical_moist_broadleaf": + obj.BiomeForestTropicalMoistBroadleaf = string(data) + case "biome_glacier": + obj.BiomeGlacier = string(data) + case "biome_grassland_temperate": + obj.BiomeGrasslandTemperate = string(data) + case "biome_grassland_tropical": + obj.BiomeGrasslandTropical = string(data) + case "biome_lake_temperate_brackishwater": + obj.BiomeLakeTemperateBrackishwater = string(data) + case "biome_lake_temperate_freshwater": + obj.BiomeLakeTemperateFreshwater = string(data) + case "biome_lake_temperate_saltwater": + obj.BiomeLakeTemperateSaltwater = string(data) + case "biome_lake_tropical_brackishwater": + obj.BiomeLakeTropicalBrackishwater = string(data) + case "biome_lake_tropical_freshwater": + obj.BiomeLakeTropicalFreshwater = string(data) + case "biome_lake_tropical_saltwater": + obj.BiomeLakeTropicalSaltwater = string(data) + case "biome_marsh_temperate_freshwater": + obj.BiomeMarshTemperateFreshwater = string(data) + case "biome_marsh_temperate_saltwater": + obj.BiomeMarshTemperateSaltwater = string(data) + case "biome_marsh_tropical_freshwater": + obj.BiomeMarshTropicalFreshwater = string(data) + case "biome_marsh_tropical_saltwater": + obj.BiomeMarshTropicalSaltwater = string(data) + case "biome_mountain": + obj.BiomeMountain = string(data) + case "biome_ocean_arctic": + obj.BiomeOceanArctic = string(data) + case "biome_ocean_temperate": + obj.BiomeOceanTemperate = string(data) + case "biome_ocean_tropical": + obj.BiomeOceanTropical = string(data) + case "biome_pool_temperate_brackishwater": + obj.BiomePoolTemperateBrackishwater = string(data) + case "biome_pool_temperate_freshwater": + obj.BiomePoolTemperateFreshwater = string(data) + case "biome_pool_temperate_saltwater": + obj.BiomePoolTemperateSaltwater = string(data) + case "biome_pool_tropical_brackishwater": + obj.BiomePoolTropicalBrackishwater = string(data) + case "biome_pool_tropical_freshwater": + obj.BiomePoolTropicalFreshwater = string(data) + case "biome_pool_tropical_saltwater": + obj.BiomePoolTropicalSaltwater = string(data) + case "biome_river_temperate_brackishwater": + obj.BiomeRiverTemperateBrackishwater = string(data) + case "biome_river_temperate_freshwater": + obj.BiomeRiverTemperateFreshwater = string(data) + case "biome_river_temperate_saltwater": + obj.BiomeRiverTemperateSaltwater = string(data) + case "biome_river_tropical_brackishwater": + obj.BiomeRiverTropicalBrackishwater = string(data) + case "biome_river_tropical_freshwater": + obj.BiomeRiverTropicalFreshwater = string(data) + case "biome_river_tropical_saltwater": + obj.BiomeRiverTropicalSaltwater = string(data) + case "biome_savanna_temperate": + obj.BiomeSavannaTemperate = string(data) + case "biome_savanna_tropical": + obj.BiomeSavannaTropical = string(data) + case "biome_shrubland_temperate": + obj.BiomeShrublandTemperate = string(data) + case "biome_shrubland_tropical": + obj.BiomeShrublandTropical = string(data) + case "biome_subterranean_chasm": + obj.BiomeSubterraneanChasm = string(data) + case "biome_subterranean_lava": + obj.BiomeSubterraneanLava = string(data) + case "biome_subterranean_water": + obj.BiomeSubterraneanWater = string(data) + case "biome_swamp_mangrove": + obj.BiomeSwampMangrove = string(data) + case "biome_swamp_temperate_freshwater": + obj.BiomeSwampTemperateFreshwater = string(data) + case "biome_swamp_temperate_saltwater": + obj.BiomeSwampTemperateSaltwater = string(data) + case "biome_swamp_tropical_freshwater": + obj.BiomeSwampTropicalFreshwater = string(data) + case "biome_swamp_tropical_saltwater": + obj.BiomeSwampTropicalSaltwater = string(data) + case "biome_tundra": + obj.BiomeTundra = string(data) + case "creature_id": + obj.CreatureId = string(data) + case "does_not_exist": + obj.DoesNotExist = string(data) + case "equipment": + obj.Equipment = string(data) + case "equipment_wagon": + obj.EquipmentWagon = string(data) + case "evil": + obj.Evil = string(data) + case "fanciful": + obj.Fanciful = string(data) + case "generated": + obj.Generated = string(data) + case "good": + obj.Good = string(data) + case "has_any_benign": + obj.HasAnyBenign = string(data) + case "has_any_can_swim": + obj.HasAnyCanSwim = string(data) + case "has_any_cannot_breathe_air": + obj.HasAnyCannotBreatheAir = string(data) + case "has_any_cannot_breathe_water": + obj.HasAnyCannotBreatheWater = string(data) + case "has_any_carnivore": + obj.HasAnyCarnivore = string(data) + case "has_any_common_domestic": + obj.HasAnyCommonDomestic = string(data) + case "has_any_curious_beast": + obj.HasAnyCuriousBeast = string(data) + case "has_any_demon": + obj.HasAnyDemon = string(data) + case "has_any_feature_beast": + obj.HasAnyFeatureBeast = string(data) + case "has_any_flier": + obj.HasAnyFlier = string(data) + case "has_any_fly_race_gait": + obj.HasAnyFlyRaceGait = string(data) + case "has_any_grasp": + obj.HasAnyGrasp = string(data) + case "has_any_grazer": + obj.HasAnyGrazer = string(data) + case "has_any_has_blood": + obj.HasAnyHasBlood = string(data) + case "has_any_immobile": + obj.HasAnyImmobile = string(data) + case "has_any_intelligent_learns": + obj.HasAnyIntelligentLearns = string(data) + case "has_any_intelligent_speaks": + obj.HasAnyIntelligentSpeaks = string(data) + case "has_any_large_predator": + obj.HasAnyLargePredator = string(data) + case "has_any_local_pops_controllable": + obj.HasAnyLocalPopsControllable = string(data) + case "has_any_local_pops_produce_heroes": + obj.HasAnyLocalPopsProduceHeroes = string(data) + case "has_any_megabeast": + obj.HasAnyMegabeast = string(data) + case "has_any_mischievous": + obj.HasAnyMischievous = string(data) + case "has_any_natural_animal": + obj.HasAnyNaturalAnimal = string(data) + case "has_any_night_creature": + obj.HasAnyNightCreature = string(data) + case "has_any_night_creature_bogeyman": + obj.HasAnyNightCreatureBogeyman = string(data) + case "has_any_night_creature_hunter": + obj.HasAnyNightCreatureHunter = string(data) + case "has_any_night_creature_nightmare": + obj.HasAnyNightCreatureNightmare = string(data) + case "has_any_not_fireimmune": + obj.HasAnyNotFireimmune = string(data) + case "has_any_not_living": + obj.HasAnyNotLiving = string(data) + case "has_any_outsider_controllable": + obj.HasAnyOutsiderControllable = string(data) + case "has_any_race_gait": + obj.HasAnyRaceGait = string(data) + case "has_any_semimegabeast": + obj.HasAnySemimegabeast = string(data) + case "has_any_slow_learner": + obj.HasAnySlowLearner = string(data) + case "has_any_supernatural": + obj.HasAnySupernatural = string(data) + case "has_any_titan": + obj.HasAnyTitan = string(data) + case "has_any_unique_demon": + obj.HasAnyUniqueDemon = string(data) + case "has_any_utterances": + obj.HasAnyUtterances = string(data) + case "has_any_vermin_hateable": + obj.HasAnyVerminHateable = string(data) + case "has_any_vermin_micro": + obj.HasAnyVerminMicro = string(data) + case "has_female": + obj.HasFemale = string(data) + case "has_male": + obj.HasMale = string(data) + case "large_roaming": + obj.LargeRoaming = string(data) + case "loose_clusters": + obj.LooseClusters = string(data) + case "mates_to_breed": + obj.MatesToBreed = string(data) + case "mundane": + obj.Mundane = string(data) + case "name_plural": + obj.NamePlural = string(data) + case "name_singular": + obj.NameSingular = string(data) + case "occurs_as_entity_race": + obj.OccursAsEntityRace = string(data) + case "savage": + obj.Savage = string(data) + case "small_race": + obj.SmallRace = string(data) + case "two_genders": + obj.TwoGenders = string(data) + case "ubiquitous": + obj.Ubiquitous = string(data) + case "vermin_eater": + obj.VerminEater = string(data) + case "vermin_fish": + obj.VerminFish = string(data) + case "vermin_grounder": + obj.VerminGrounder = string(data) + case "vermin_rotter": + obj.VerminRotter = string(data) + case "vermin_soil": + obj.VerminSoil = string(data) + case "vermin_soil_colony": + obj.VerminSoilColony = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *DanceForm) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "description": + data = nil + case "id": + data = nil + case "name": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "description": + obj.Description = string(data) + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *DfWorld) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "altname": + data = nil + case "artifacts": + obj.Artifacts = make(map[int]*Artifact) +parseMap(d, &obj.Artifacts, NewArtifact) + case "creature_raw": + parseArray(d, &obj.CreatureRaw, NewCreature) + case "dance_forms": + obj.DanceForms = make(map[int]*DanceForm) +parseMap(d, &obj.DanceForms, NewDanceForm) + case "entities": + obj.Entities = make(map[int]*Entity) +parseMap(d, &obj.Entities, NewEntity) + case "entity_populations": + obj.EntityPopulations = make(map[int]*EntityPopulation) +parseMap(d, &obj.EntityPopulations, NewEntityPopulation) + case "historical_eras": + parseArray(d, &obj.HistoricalEras, NewHistoricalEra) + case "historical_event_collections": + obj.HistoricalEventCollections = make(map[int]*HistoricalEventCollection) +parseMap(d, &obj.HistoricalEventCollections, NewHistoricalEventCollection) + case "historical_event_relationship_supplements": + parseArray(d, &obj.HistoricalEventRelationshipSupplements, NewHistoricalEventRelationshipSupplement) + case "historical_event_relationships": + parseArray(d, &obj.HistoricalEventRelationships, NewHistoricalEventRelationship) + case "historical_events": + obj.HistoricalEvents = make(map[int]*HistoricalEvent) +parseMap(d, &obj.HistoricalEvents, NewHistoricalEvent) + case "historical_figures": + obj.HistoricalFigures = make(map[int]*HistoricalFigure) +parseMap(d, &obj.HistoricalFigures, NewHistoricalFigure) + case "identities": + obj.Identities = make(map[int]*Identity) +parseMap(d, &obj.Identities, NewIdentity) + case "landmasses": + obj.Landmasses = make(map[int]*Landmass) +parseMap(d, &obj.Landmasses, NewLandmass) + case "mountain_peaks": + obj.MountainPeaks = make(map[int]*MountainPeak) +parseMap(d, &obj.MountainPeaks, NewMountainPeak) + case "musical_forms": + obj.MusicalForms = make(map[int]*MusicalForm) +parseMap(d, &obj.MusicalForms, NewMusicalForm) + case "name": + data = nil + case "poetic_forms": + obj.PoeticForms = make(map[int]*PoeticForm) +parseMap(d, &obj.PoeticForms, NewPoeticForm) + case "regions": + obj.Regions = make(map[int]*Region) +parseMap(d, &obj.Regions, NewRegion) + case "rivers": + parseArray(d, &obj.Rivers, NewRiver) + case "sites": + obj.Sites = make(map[int]*Site) +parseMap(d, &obj.Sites, NewSite) + case "underground_regions": + obj.UndergroundRegions = make(map[int]*UndergroundRegion) +parseMap(d, &obj.UndergroundRegions, NewUndergroundRegion) + case "world_constructions": + obj.WorldConstructions = make(map[int]*WorldConstruction) +parseMap(d, &obj.WorldConstructions, NewWorldConstruction) + case "written_contents": + obj.WrittenContents = make(map[int]*WrittenContent) +parseMap(d, &obj.WrittenContents, NewWrittenContent) + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "altname": + obj.Altname = string(data) + case "artifacts": + + case "creature_raw": + + case "dance_forms": + + case "entities": + + case "entity_populations": + + case "historical_eras": + + case "historical_event_collections": + + case "historical_event_relationship_supplements": + + case "historical_event_relationships": + + case "historical_events": + + case "historical_figures": + + case "identities": + + case "landmasses": + + case "mountain_peaks": + + case "musical_forms": + + case "name": + obj.Name_ = string(data) + case "poetic_forms": + + case "regions": + + case "rivers": + + case "sites": + + case "underground_regions": + + case "world_constructions": + + case "written_contents": + + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Entity) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "child": + data = nil + case "claims": + data = nil + case "entity_link": + v := EntityLink{} +v.Parse(d, &t) +obj.EntityLink = append(obj.EntityLink, v) + case "entity_position": + v := EntityPosition{} +v.Parse(d, &t) +obj.EntityPosition = append(obj.EntityPosition, v) + case "entity_position_assignment": + v := EntityPositionAssignment{} +v.Parse(d, &t) +obj.EntityPositionAssignment = append(obj.EntityPositionAssignment, v) + case "histfig_id": + data = nil + case "honor": + v := Honor{} +v.Parse(d, &t) +obj.Honor = append(obj.Honor, v) + case "id": + data = nil + case "name": + data = nil + case "occasion": + v := Occasion{} +v.Parse(d, &t) +obj.Occasion = append(obj.Occasion, v) + case "profession": + data = nil + case "race": + data = nil + case "type": + data = nil + case "weapon": + data = nil + case "worship_id": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "child": + obj.Child = append(obj.Child, n(data)) + case "claims": + obj.Claims = string(data) + case "entity_link": + + case "entity_position": + + case "entity_position_assignment": + + case "histfig_id": + obj.HistfigId = append(obj.HistfigId, n(data)) + case "honor": + + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = string(data) + case "occasion": + + case "profession": + obj.Profession = string(data) + case "race": + obj.Race = string(data) + case "type": + obj.Type = string(data) + case "weapon": + obj.Weapon = append(obj.Weapon, string(data)) + case "worship_id": + obj.WorshipId = append(obj.WorshipId, n(data)) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *EntityFormerPositionLink) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "end_year": + data = nil + case "entity_id": + data = nil + case "position_profile_id": + data = nil + case "start_year": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "end_year": + obj.EndYear = n(data) + case "entity_id": + obj.EntityId = n(data) + case "position_profile_id": + obj.PositionProfileId = n(data) + case "start_year": + obj.StartYear = n(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *EntityLink) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "entity_id": + data = nil + case "link_strength": + data = nil + case "link_type": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "entity_id": + obj.EntityId = n(data) + case "link_strength": + obj.LinkStrength = n(data) + case "link_type": + obj.LinkType = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *EntityPopulation) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "civ_id": + data = nil + case "id": + data = nil + case "race": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "civ_id": + obj.CivId = n(data) + case "id": + obj.Id_ = n(data) + case "race": + obj.Race = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *EntityPosition) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "id": + data = nil + case "name": + data = nil + case "name_female": + data = nil + case "name_male": + data = nil + case "spouse": + data = nil + case "spouse_female": + data = nil + case "spouse_male": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = string(data) + case "name_female": + obj.NameFemale = string(data) + case "name_male": + obj.NameMale = string(data) + case "spouse": + obj.Spouse = string(data) + case "spouse_female": + obj.SpouseFemale = string(data) + case "spouse_male": + obj.SpouseMale = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *EntityPositionAssignment) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "histfig": + data = nil + case "id": + data = nil + case "position_id": + data = nil + case "squad_id": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "histfig": + obj.Histfig = n(data) + case "id": + obj.Id_ = n(data) + case "position_id": + obj.PositionId = n(data) + case "squad_id": + obj.SquadId = n(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *EntityPositionLink) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "entity_id": + data = nil + case "position_profile_id": + data = nil + case "start_year": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "entity_id": + obj.EntityId = n(data) + case "position_profile_id": + obj.PositionProfileId = n(data) + case "start_year": + obj.StartYear = n(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *EntityReputation) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "entity_id": + data = nil + case "first_ageless_season_count": + data = nil + case "first_ageless_year": + data = nil + case "unsolved_murders": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "entity_id": + obj.EntityId = n(data) + case "first_ageless_season_count": + obj.FirstAgelessSeasonCount = n(data) + case "first_ageless_year": + obj.FirstAgelessYear = n(data) + case "unsolved_murders": + obj.UnsolvedMurders = n(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *EntitySquadLink) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "entity_id": + data = nil + case "squad_id": + data = nil + case "squad_position": + data = nil + case "start_year": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "entity_id": + obj.EntityId = n(data) + case "squad_id": + obj.SquadId = n(data) + case "squad_position": + obj.SquadPosition = n(data) + case "start_year": + obj.StartYear = n(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Feature) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "reference": + data = nil + case "type": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "reference": + obj.Reference = n(data) + case "type": + obj.Type = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HfLink) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "hfid": + data = nil + case "link_strength": + data = nil + case "link_type": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "hfid": + obj.Hfid = n(data) + case "link_strength": + obj.LinkStrength = n(data) + case "link_type": + obj.LinkType = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HfSkill) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "skill": + data = nil + case "total_ip": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "skill": + obj.Skill = string(data) + case "total_ip": + obj.TotalIp = n(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEra) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "name": + data = nil + case "start_year": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "name": + obj.Name_ = string(data) + case "start_year": + obj.StartYear = n(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEvent) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "a_hfid": + data = nil + case "a_squad_id": + data = nil + case "a_support_merc_enid": + data = nil + case "a_tactician_hfid": + data = nil + case "a_tactics_roll": + data = nil + case "abuse_type": + data = nil + case "account_shift": + data = nil + case "acquirer_enid": + data = nil + case "acquirer_hfid": + data = nil + case "action": + data = nil + case "actor_hfid": + data = nil + case "agreement_id": + data = nil + case "allotment": + data = nil + case "allotment_index": + data = nil + case "ally_defense_bonus": + data = nil + case "appointer_hfid": + data = nil + case "arresting_enid": + data = nil + case "artifact": + data = nil + case "artifact_id": + data = nil + case "attacker_civ_id": + data = nil + case "attacker_general_hfid": + data = nil + case "attacker_hfid": + data = nil + case "attacker_merc_enid": + data = nil + case "bodies": + data = nil + case "body_part": + data = nil + case "body_state": + data = nil + case "builder_hf": + data = nil + case "builder_hfid": + data = nil + case "building_profile_id": + data = nil + case "caste": + data = nil + case "cause": + data = nil + case "changee": + data = nil + case "changee_hfid": + data = nil + case "changer": + data = nil + case "changer_hfid": + data = nil + case "circumstance": + v := Circumstance{} +v.Parse(d, &t) +obj.Circumstance = v + case "circumstance_id": + data = nil + case "civ": + data = nil + case "civ_entity_id": + data = nil + case "civ_id": + data = nil + case "claim": + data = nil + case "coconspirator_bonus": + data = nil + case "coconspirator_hfid": + data = nil + case "competitor_hfid": + data = nil + case "confessed_after_apb_arrest_enid": + data = nil + case "conspirator_hfid": + data = nil + case "contact_hfid": + data = nil + case "convict_is_contact": + data = nil + case "convicted_hfid": + data = nil + case "convicter_enid": + data = nil + case "coords": + data = nil + case "corrupt_convicter_hfid": + data = nil + case "corruptor_hfid": + data = nil + case "corruptor_identity": + data = nil + case "corruptor_seen_as": + data = nil + case "creator_hfid": + data = nil + case "creator_unit_id": + data = nil + case "crime": + data = nil + case "d_effect": + data = nil + case "d_interaction": + data = nil + case "d_number": + data = nil + case "d_race": + data = nil + case "d_slain": + data = nil + case "d_squad_id": + data = nil + case "d_support_merc_enid": + data = nil + case "d_tactician_hfid": + data = nil + case "d_tactics_roll": + data = nil + case "death_cause": + data = nil + case "death_penalty": + data = nil + case "defender_civ_id": + data = nil + case "defender_general_hfid": + data = nil + case "defender_merc_enid": + data = nil + case "delegated": + data = nil + case "depot_entity_id": + data = nil + case "dest_entity_id": + data = nil + case "dest_site_id": + data = nil + case "dest_structure_id": + data = nil + case "destination": + data = nil + case "destroyed_structure_id": + data = nil + case "destroyer_enid": + data = nil + case "detected": + data = nil + case "did_not_reveal_all_in_interrogation": + data = nil + case "dispute": + data = nil + case "disturbance": + data = nil + case "doer": + data = nil + case "doer_hfid": + data = nil + case "eater": + data = nil + case "enslaved_hfid": + data = nil + case "entity": + data = nil + case "entity_1": + data = nil + case "entity_2": + data = nil + case "entity_id": + data = nil + case "entity_id_1": + data = nil + case "entity_id_2": + data = nil + case "exiled": + data = nil + case "expelled_creature": + data = nil + case "expelled_hfid": + data = nil + case "expelled_number": + data = nil + case "expelled_pop_id": + data = nil + case "failed_judgment_test": + data = nil + case "feature_layer_id": + data = nil + case "first": + data = nil + case "fooled_hfid": + data = nil + case "form_id": + data = nil + case "framer_hfid": + data = nil + case "from_original": + data = nil + case "gambler_hfid": + data = nil + case "giver_entity_id": + data = nil + case "giver_hist_figure_id": + data = nil + case "group": + data = nil + case "group_1_hfid": + data = nil + case "group_2_hfid": + data = nil + case "group_hfid": + data = nil + case "held_firm_in_interrogation": + data = nil + case "hf": + data = nil + case "hf_rep_1_of_2": + data = nil + case "hf_rep_2_of_1": + data = nil + case "hf_target": + data = nil + case "hfid": + data = nil + case "hfid1": + data = nil + case "hfid2": + data = nil + case "hfid_target": + data = nil + case "hist_fig_id": + data = nil + case "hist_figure_id": + data = nil + case "histfig": + data = nil + case "honor_id": + data = nil + case "id": + data = nil + case "identity_caste": + data = nil + case "identity_histfig_id": + data = nil + case "identity_id": + data = nil + case "identity_id1": + data = nil + case "identity_id2": + data = nil + case "identity_name": + data = nil + case "identity_nemesis_id": + data = nil + case "identity_race": + data = nil + case "implicated_hfid": + data = nil + case "inherited": + data = nil + case "initiating_enid": + data = nil + case "injury_type": + data = nil + case "instigator_hfid": + data = nil + case "interaction": + data = nil + case "interaction_action": + data = nil + case "interrogator_hfid": + data = nil + case "item": + data = nil + case "item_id": + data = nil + case "item_mat": + data = nil + case "item_subtype": + data = nil + case "item_type": + data = nil + case "join_entity_id": + data = nil + case "joined_entity_id": + data = nil + case "joiner_entity_id": + data = nil + case "joining_enid": + data = nil + case "knowledge": + data = nil + case "last_owner_hfid": + data = nil + case "law_add": + data = nil + case "law_remove": + data = nil + case "leader_hfid": + data = nil + case "link": + data = nil + case "link_type": + data = nil + case "lure_hfid": + data = nil + case "maker": + data = nil + case "maker_entity": + data = nil + case "master_wcid": + data = nil + case "mat": + data = nil + case "matindex": + data = nil + case "mattype": + data = nil + case "method": + data = nil + case "modification": + data = nil + case "modifier_hfid": + data = nil + case "mood": + data = nil + case "moved_to_site_id": + data = nil + case "name_only": + data = nil + case "new_ab_id": + data = nil + case "new_account": + data = nil + case "new_caste": + data = nil + case "new_equipment_level": + data = nil + case "new_job": + data = nil + case "new_leader_hfid": + data = nil + case "new_race": + data = nil + case "new_site_civ_id": + data = nil + case "new_structure": + data = nil + case "occasion_id": + data = nil + case "old_ab_id": + data = nil + case "old_account": + data = nil + case "old_caste": + data = nil + case "old_job": + data = nil + case "old_race": + data = nil + case "old_structure": + data = nil + case "overthrown_hfid": + data = nil + case "part_lost": + data = nil + case "partial_incorporation": + data = nil + case "payer_entity_id": + data = nil + case "persecutor_enid": + data = nil + case "persecutor_hfid": + data = nil + case "pets": + data = nil + case "pile_type": + data = nil + case "plotter_hfid": + data = nil + case "pop_flid": + data = nil + case "pop_number_moved": + data = nil + case "pop_race": + data = nil + case "pop_srid": + data = nil + case "pos_taker_hfid": + data = nil + case "position": + data = nil + case "position_id": + data = nil + case "position_profile_id": + data = nil + case "prison_months": + data = nil + case "production_zone_id": + data = nil + case "promise_to_hfid": + data = nil + case "property_confiscated_from_hfid": + data = nil + case "purchased_unowned": + data = nil + case "quality": + data = nil + case "race": + data = nil + case "reason": + data = nil + case "reason_id": + data = nil + case "rebuild": + data = nil + case "rebuilt": + data = nil + case "rebuilt_ruined": + data = nil + case "receiver_entity_id": + data = nil + case "receiver_hist_figure_id": + data = nil + case "region": + data = nil + case "relationship": + data = nil + case "relevant_entity_id": + data = nil + case "relevant_id_for_method": + data = nil + case "relevant_position_profile_id": + data = nil + case "religion_id": + data = nil + case "resident_civ_id": + data = nil + case "return": + data = nil + case "sanctify_hf": + data = nil + case "schedule_id": + data = nil + case "seconds72": + data = nil + case "secret_goal": + data = nil + case "secret_text": + data = nil + case "seeker_hfid": + data = nil + case "seller_hfid": + data = nil + case "shrine_amount_destroyed": + data = nil + case "site": + data = nil + case "site_civ": + data = nil + case "site_civ_id": + data = nil + case "site_entity_id": + data = nil + case "site_hfid": + data = nil + case "site_id": + data = nil + case "site_id1": + data = nil + case "site_id2": + data = nil + case "site_id_1": + data = nil + case "site_id_2": + data = nil + case "site_property_id": + data = nil + case "situation": + data = nil + case "skill_at_time": + data = nil + case "slayer_caste": + data = nil + case "slayer_hf": + data = nil + case "slayer_hfid": + data = nil + case "slayer_item_id": + data = nil + case "slayer_race": + data = nil + case "slayer_shooter_item_id": + data = nil + case "snatcher_hfid": + data = nil + case "source": + data = nil + case "source_entity_id": + data = nil + case "source_site_id": + data = nil + case "source_structure_id": + data = nil + case "speaker_hfid": + data = nil + case "start": + data = nil + case "stash_site": + data = nil + case "state": + data = nil + case "structure": + data = nil + case "structure_id": + data = nil + case "student": + data = nil + case "student_hfid": + data = nil + case "subregion_id": + data = nil + case "subtype": + data = nil + case "successful": + data = nil + case "surveiled_coconspirator": + data = nil + case "surveiled_contact": + data = nil + case "surveiled_convicted": + data = nil + case "surveiled_target": + data = nil + case "target": + data = nil + case "target_enid": + data = nil + case "target_hfid": + data = nil + case "target_identity": + data = nil + case "target_seen_as": + data = nil + case "teacher": + data = nil + case "teacher_hfid": + data = nil + case "theft_method": + data = nil + case "top_facet": + data = nil + case "top_facet_modifier": + data = nil + case "top_facet_rating": + data = nil + case "top_relationship_factor": + data = nil + case "top_relationship_modifier": + data = nil + case "top_relationship_rating": + data = nil + case "top_value": + data = nil + case "top_value_modifier": + data = nil + case "top_value_rating": + data = nil + case "topic": + data = nil + case "trader_entity_id": + data = nil + case "trader_hfid": + data = nil + case "tree": + data = nil + case "trickster": + data = nil + case "trickster_hfid": + data = nil + case "type": + data = nil + case "unit_id": + data = nil + case "unit_type": + data = nil + case "victim": + data = nil + case "victim_entity": + data = nil + case "victim_hf": + data = nil + case "wanted_and_recognized": + data = nil + case "wc_id": + data = nil + case "wcid": + data = nil + case "winner_hfid": + data = nil + case "woundee": + data = nil + case "woundee_caste": + data = nil + case "woundee_hfid": + data = nil + case "woundee_race": + data = nil + case "wounder": + data = nil + case "wounder_hfid": + data = nil + case "wrongful_conviction": + data = nil + case "year": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "a_hfid": + obj.AHfid = n(data) + case "a_squad_id": + obj.ASquadId = n(data) + case "a_support_merc_enid": + obj.ASupportMercEnid = n(data) + case "a_tactician_hfid": + obj.ATacticianHfid = n(data) + case "a_tactics_roll": + obj.ATacticsRoll = n(data) + case "abuse_type": + obj.AbuseType = string(data) + case "account_shift": + obj.AccountShift = n(data) + case "acquirer_enid": + obj.AcquirerEnid = n(data) + case "acquirer_hfid": + obj.AcquirerHfid = n(data) + case "action": + obj.Action = string(data) + case "actor_hfid": + obj.ActorHfid = n(data) + case "agreement_id": + obj.AgreementId = n(data) + case "allotment": + obj.Allotment = n(data) + case "allotment_index": + obj.AllotmentIndex = n(data) + case "ally_defense_bonus": + obj.AllyDefenseBonus = n(data) + case "appointer_hfid": + obj.AppointerHfid = n(data) + case "arresting_enid": + obj.ArrestingEnid = n(data) + case "artifact": + obj.Artifact = n(data) + case "artifact_id": + obj.ArtifactId = n(data) + case "attacker_civ_id": + obj.AttackerCivId = n(data) + case "attacker_general_hfid": + obj.AttackerGeneralHfid = n(data) + case "attacker_hfid": + obj.AttackerHfid = n(data) + case "attacker_merc_enid": + obj.AttackerMercEnid = n(data) + case "bodies": + obj.Bodies = append(obj.Bodies, n(data)) + case "body_part": + obj.BodyPart = n(data) + case "body_state": + obj.BodyState = string(data) + case "builder_hf": + obj.BuilderHf = n(data) + case "builder_hfid": + obj.BuilderHfid = n(data) + case "building_profile_id": + obj.BuildingProfileId = n(data) + case "caste": + obj.Caste = string(data) + case "cause": + obj.Cause = string(data) + case "changee": + obj.Changee = n(data) + case "changee_hfid": + obj.ChangeeHfid = n(data) + case "changer": + obj.Changer = n(data) + case "changer_hfid": + obj.ChangerHfid = n(data) + case "circumstance": + + case "circumstance_id": + obj.CircumstanceId = n(data) + case "civ": + obj.Civ = n(data) + case "civ_entity_id": + obj.CivEntityId = n(data) + case "civ_id": + obj.CivId = n(data) + case "claim": + obj.Claim = string(data) + case "coconspirator_bonus": + obj.CoconspiratorBonus = n(data) + case "coconspirator_hfid": + obj.CoconspiratorHfid = n(data) + case "competitor_hfid": + obj.CompetitorHfid = append(obj.CompetitorHfid, n(data)) + case "confessed_after_apb_arrest_enid": + obj.ConfessedAfterApbArrestEnid = n(data) + case "conspirator_hfid": + obj.ConspiratorHfid = append(obj.ConspiratorHfid, n(data)) + case "contact_hfid": + obj.ContactHfid = n(data) + case "convict_is_contact": + obj.ConvictIsContact = string(data) + case "convicted_hfid": + obj.ConvictedHfid = n(data) + case "convicter_enid": + obj.ConvicterEnid = n(data) + case "coords": + obj.Coords = string(data) + case "corrupt_convicter_hfid": + obj.CorruptConvicterHfid = n(data) + case "corruptor_hfid": + obj.CorruptorHfid = n(data) + case "corruptor_identity": + obj.CorruptorIdentity = n(data) + case "corruptor_seen_as": + obj.CorruptorSeenAs = string(data) + case "creator_hfid": + obj.CreatorHfid = n(data) + case "creator_unit_id": + obj.CreatorUnitId = n(data) + case "crime": + obj.Crime = string(data) + case "d_effect": + obj.DEffect = n(data) + case "d_interaction": + obj.DInteraction = n(data) + case "d_number": + obj.DNumber = n(data) + case "d_race": + obj.DRace = n(data) + case "d_slain": + obj.DSlain = n(data) + case "d_squad_id": + obj.DSquadId = n(data) + case "d_support_merc_enid": + obj.DSupportMercEnid = n(data) + case "d_tactician_hfid": + obj.DTacticianHfid = n(data) + case "d_tactics_roll": + obj.DTacticsRoll = n(data) + case "death_cause": + obj.DeathCause = string(data) + case "death_penalty": + obj.DeathPenalty = string(data) + case "defender_civ_id": + obj.DefenderCivId = n(data) + case "defender_general_hfid": + obj.DefenderGeneralHfid = n(data) + case "defender_merc_enid": + obj.DefenderMercEnid = n(data) + case "delegated": + obj.Delegated = string(data) + case "depot_entity_id": + obj.DepotEntityId = n(data) + case "dest_entity_id": + obj.DestEntityId = n(data) + case "dest_site_id": + obj.DestSiteId = n(data) + case "dest_structure_id": + obj.DestStructureId = n(data) + case "destination": + obj.Destination = n(data) + case "destroyed_structure_id": + obj.DestroyedStructureId = n(data) + case "destroyer_enid": + obj.DestroyerEnid = n(data) + case "detected": + obj.Detected = string(data) + case "did_not_reveal_all_in_interrogation": + obj.DidNotRevealAllInInterrogation = string(data) + case "dispute": + obj.Dispute = string(data) + case "disturbance": + obj.Disturbance = string(data) + case "doer": + obj.Doer = n(data) + case "doer_hfid": + obj.DoerHfid = n(data) + case "eater": + obj.Eater = n(data) + case "enslaved_hfid": + obj.EnslavedHfid = n(data) + case "entity": + obj.Entity = n(data) + case "entity_1": + obj.Entity1 = n(data) + case "entity_2": + obj.Entity2 = n(data) + case "entity_id": + obj.EntityId = n(data) + case "entity_id_1": + obj.EntityId1 = n(data) + case "entity_id_2": + obj.EntityId2 = n(data) + case "exiled": + obj.Exiled = string(data) + case "expelled_creature": + obj.ExpelledCreature = append(obj.ExpelledCreature, n(data)) + case "expelled_hfid": + obj.ExpelledHfid = append(obj.ExpelledHfid, n(data)) + case "expelled_number": + obj.ExpelledNumber = append(obj.ExpelledNumber, n(data)) + case "expelled_pop_id": + obj.ExpelledPopId = append(obj.ExpelledPopId, n(data)) + case "failed_judgment_test": + obj.FailedJudgmentTest = string(data) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "first": + obj.First = string(data) + case "fooled_hfid": + obj.FooledHfid = n(data) + case "form_id": + obj.FormId = n(data) + case "framer_hfid": + obj.FramerHfid = n(data) + case "from_original": + obj.FromOriginal = string(data) + case "gambler_hfid": + obj.GamblerHfid = n(data) + case "giver_entity_id": + obj.GiverEntityId = n(data) + case "giver_hist_figure_id": + obj.GiverHistFigureId = n(data) + case "group": + obj.Group = n(data) + case "group_1_hfid": + obj.Group1Hfid = n(data) + case "group_2_hfid": + obj.Group2Hfid = append(obj.Group2Hfid, n(data)) + case "group_hfid": + obj.GroupHfid = append(obj.GroupHfid, n(data)) + case "held_firm_in_interrogation": + obj.HeldFirmInInterrogation = string(data) + case "hf": + obj.Hf = n(data) + case "hf_rep_1_of_2": + obj.HfRep1Of2 = string(data) + case "hf_rep_2_of_1": + obj.HfRep2Of1 = string(data) + case "hf_target": + obj.HfTarget = n(data) + case "hfid": + obj.Hfid = append(obj.Hfid, n(data)) + case "hfid1": + obj.Hfid1 = n(data) + case "hfid2": + obj.Hfid2 = n(data) + case "hfid_target": + obj.HfidTarget = n(data) + case "hist_fig_id": + obj.HistFigId = n(data) + case "hist_figure_id": + obj.HistFigureId = n(data) + case "histfig": + obj.Histfig = n(data) + case "honor_id": + obj.HonorId = n(data) + case "id": + obj.Id_ = n(data) + case "identity_caste": + obj.IdentityCaste = string(data) + case "identity_histfig_id": + obj.IdentityHistfigId = n(data) + case "identity_id": + obj.IdentityId = n(data) + case "identity_id1": + obj.IdentityId1 = n(data) + case "identity_id2": + obj.IdentityId2 = n(data) + case "identity_name": + obj.IdentityName = string(data) + case "identity_nemesis_id": + obj.IdentityNemesisId = n(data) + case "identity_race": + obj.IdentityRace = string(data) + case "implicated_hfid": + obj.ImplicatedHfid = append(obj.ImplicatedHfid, n(data)) + case "inherited": + obj.Inherited = string(data) + case "initiating_enid": + obj.InitiatingEnid = n(data) + case "injury_type": + obj.InjuryType = string(data) + case "instigator_hfid": + obj.InstigatorHfid = n(data) + case "interaction": + obj.Interaction = string(data) + case "interaction_action": + obj.InteractionAction = string(data) + case "interrogator_hfid": + obj.InterrogatorHfid = n(data) + case "item": + obj.Item = n(data) + case "item_id": + obj.ItemId = n(data) + case "item_mat": + obj.ItemMat = string(data) + case "item_subtype": + obj.ItemSubtype = string(data) + case "item_type": + obj.ItemType = string(data) + case "join_entity_id": + obj.JoinEntityId = n(data) + case "joined_entity_id": + obj.JoinedEntityId = n(data) + case "joiner_entity_id": + obj.JoinerEntityId = n(data) + case "joining_enid": + obj.JoiningEnid = append(obj.JoiningEnid, n(data)) + case "knowledge": + obj.Knowledge = string(data) + case "last_owner_hfid": + obj.LastOwnerHfid = n(data) + case "law_add": + obj.LawAdd = string(data) + case "law_remove": + obj.LawRemove = string(data) + case "leader_hfid": + obj.LeaderHfid = n(data) + case "link": + obj.Link = string(data) + case "link_type": + obj.LinkType = string(data) + case "lure_hfid": + obj.LureHfid = n(data) + case "maker": + obj.Maker = n(data) + case "maker_entity": + obj.MakerEntity = n(data) + case "master_wcid": + obj.MasterWcid = n(data) + case "mat": + obj.Mat = string(data) + case "matindex": + obj.Matindex = n(data) + case "mattype": + obj.Mattype = n(data) + case "method": + obj.Method = string(data) + case "modification": + obj.Modification = string(data) + case "modifier_hfid": + obj.ModifierHfid = n(data) + case "mood": + obj.Mood = string(data) + case "moved_to_site_id": + obj.MovedToSiteId = n(data) + case "name_only": + obj.NameOnly = string(data) + case "new_ab_id": + obj.NewAbId = n(data) + case "new_account": + obj.NewAccount = n(data) + case "new_caste": + obj.NewCaste = string(data) + case "new_equipment_level": + obj.NewEquipmentLevel = n(data) + case "new_job": + obj.NewJob = string(data) + case "new_leader_hfid": + obj.NewLeaderHfid = n(data) + case "new_race": + obj.NewRace = string(data) + case "new_site_civ_id": + obj.NewSiteCivId = n(data) + case "new_structure": + obj.NewStructure = n(data) + case "occasion_id": + obj.OccasionId = n(data) + case "old_ab_id": + obj.OldAbId = n(data) + case "old_account": + obj.OldAccount = n(data) + case "old_caste": + obj.OldCaste = string(data) + case "old_job": + obj.OldJob = string(data) + case "old_race": + obj.OldRace = string(data) + case "old_structure": + obj.OldStructure = n(data) + case "overthrown_hfid": + obj.OverthrownHfid = n(data) + case "part_lost": + obj.PartLost = string(data) + case "partial_incorporation": + obj.PartialIncorporation = string(data) + case "payer_entity_id": + obj.PayerEntityId = n(data) + case "persecutor_enid": + obj.PersecutorEnid = n(data) + case "persecutor_hfid": + obj.PersecutorHfid = n(data) + case "pets": + obj.Pets = string(data) + case "pile_type": + obj.PileType = string(data) + case "plotter_hfid": + obj.PlotterHfid = n(data) + case "pop_flid": + obj.PopFlid = n(data) + case "pop_number_moved": + obj.PopNumberMoved = n(data) + case "pop_race": + obj.PopRace = n(data) + case "pop_srid": + obj.PopSrid = n(data) + case "pos_taker_hfid": + obj.PosTakerHfid = n(data) + case "position": + obj.Position = string(data) + case "position_id": + obj.PositionId = n(data) + case "position_profile_id": + obj.PositionProfileId = n(data) + case "prison_months": + obj.PrisonMonths = n(data) + case "production_zone_id": + obj.ProductionZoneId = n(data) + case "promise_to_hfid": + obj.PromiseToHfid = n(data) + case "property_confiscated_from_hfid": + obj.PropertyConfiscatedFromHfid = append(obj.PropertyConfiscatedFromHfid, n(data)) + case "purchased_unowned": + obj.PurchasedUnowned = string(data) + case "quality": + obj.Quality = n(data) + case "race": + obj.Race = string(data) + case "reason": + obj.Reason = append(obj.Reason, string(data)) + case "reason_id": + obj.ReasonId = n(data) + case "rebuild": + obj.Rebuild = string(data) + case "rebuilt": + obj.Rebuilt = string(data) + case "rebuilt_ruined": + obj.RebuiltRuined = string(data) + case "receiver_entity_id": + obj.ReceiverEntityId = n(data) + case "receiver_hist_figure_id": + obj.ReceiverHistFigureId = n(data) + case "region": + obj.Region = n(data) + case "relationship": + obj.Relationship = string(data) + case "relevant_entity_id": + obj.RelevantEntityId = n(data) + case "relevant_id_for_method": + obj.RelevantIdForMethod = n(data) + case "relevant_position_profile_id": + obj.RelevantPositionProfileId = n(data) + case "religion_id": + obj.ReligionId = n(data) + case "resident_civ_id": + obj.ResidentCivId = n(data) + case "return": + obj.Return = string(data) + case "sanctify_hf": + obj.SanctifyHf = n(data) + case "schedule_id": + obj.ScheduleId = n(data) + case "seconds72": + obj.Seconds72 = n(data) + case "secret_goal": + obj.SecretGoal = string(data) + case "secret_text": + obj.SecretText = string(data) + case "seeker_hfid": + obj.SeekerHfid = n(data) + case "seller_hfid": + obj.SellerHfid = n(data) + case "shrine_amount_destroyed": + obj.ShrineAmountDestroyed = n(data) + case "site": + obj.Site = n(data) + case "site_civ": + obj.SiteCiv = n(data) + case "site_civ_id": + obj.SiteCivId = n(data) + case "site_entity_id": + obj.SiteEntityId = n(data) + case "site_hfid": + obj.SiteHfid = n(data) + case "site_id": + obj.SiteId = n(data) + case "site_id1": + obj.SiteId1 = n(data) + case "site_id2": + obj.SiteId2 = n(data) + case "site_id_1": + obj.SiteId1 = n(data) + case "site_id_2": + obj.SiteId2 = n(data) + case "site_property_id": + obj.SitePropertyId = n(data) + case "situation": + obj.Situation = string(data) + case "skill_at_time": + obj.SkillAtTime = string(data) + case "slayer_caste": + obj.SlayerCaste = string(data) + case "slayer_hf": + obj.SlayerHf = n(data) + case "slayer_hfid": + obj.SlayerHfid = n(data) + case "slayer_item_id": + obj.SlayerItemId = n(data) + case "slayer_race": + obj.SlayerRace = string(data) + case "slayer_shooter_item_id": + obj.SlayerShooterItemId = n(data) + case "snatcher_hfid": + obj.SnatcherHfid = n(data) + case "source": + obj.Source = n(data) + case "source_entity_id": + obj.SourceEntityId = n(data) + case "source_site_id": + obj.SourceSiteId = n(data) + case "source_structure_id": + obj.SourceStructureId = n(data) + case "speaker_hfid": + obj.SpeakerHfid = n(data) + case "start": + obj.Start = string(data) + case "stash_site": + obj.StashSite = n(data) + case "state": + obj.State = string(data) + case "structure": + obj.Structure = n(data) + case "structure_id": + obj.StructureId = n(data) + case "student": + obj.Student = n(data) + case "student_hfid": + obj.StudentHfid = n(data) + case "subregion_id": + obj.SubregionId = n(data) + case "subtype": + obj.Subtype = string(data) + case "successful": + obj.Successful = string(data) + case "surveiled_coconspirator": + obj.SurveiledCoconspirator = string(data) + case "surveiled_contact": + obj.SurveiledContact = string(data) + case "surveiled_convicted": + obj.SurveiledConvicted = string(data) + case "surveiled_target": + obj.SurveiledTarget = string(data) + case "target": + obj.Target = n(data) + case "target_enid": + obj.TargetEnid = n(data) + case "target_hfid": + obj.TargetHfid = n(data) + case "target_identity": + obj.TargetIdentity = n(data) + case "target_seen_as": + obj.TargetSeenAs = string(data) + case "teacher": + obj.Teacher = n(data) + case "teacher_hfid": + obj.TeacherHfid = n(data) + case "theft_method": + obj.TheftMethod = string(data) + case "top_facet": + obj.TopFacet = string(data) + case "top_facet_modifier": + obj.TopFacetModifier = n(data) + case "top_facet_rating": + obj.TopFacetRating = n(data) + case "top_relationship_factor": + obj.TopRelationshipFactor = string(data) + case "top_relationship_modifier": + obj.TopRelationshipModifier = n(data) + case "top_relationship_rating": + obj.TopRelationshipRating = n(data) + case "top_value": + obj.TopValue = string(data) + case "top_value_modifier": + obj.TopValueModifier = n(data) + case "top_value_rating": + obj.TopValueRating = n(data) + case "topic": + obj.Topic = string(data) + case "trader_entity_id": + obj.TraderEntityId = n(data) + case "trader_hfid": + obj.TraderHfid = n(data) + case "tree": + obj.Tree = n(data) + case "trickster": + obj.Trickster = n(data) + case "trickster_hfid": + obj.TricksterHfid = n(data) + case "type": + obj.Type = string(data) + case "unit_id": + obj.UnitId = n(data) + case "unit_type": + obj.UnitType = string(data) + case "victim": + obj.Victim = n(data) + case "victim_entity": + obj.VictimEntity = n(data) + case "victim_hf": + obj.VictimHf = n(data) + case "wanted_and_recognized": + obj.WantedAndRecognized = string(data) + case "wc_id": + obj.WcId = n(data) + case "wcid": + obj.Wcid = n(data) + case "winner_hfid": + obj.WinnerHfid = n(data) + case "woundee": + obj.Woundee = n(data) + case "woundee_caste": + obj.WoundeeCaste = n(data) + case "woundee_hfid": + obj.WoundeeHfid = n(data) + case "woundee_race": + obj.WoundeeRace = n(data) + case "wounder": + obj.Wounder = n(data) + case "wounder_hfid": + obj.WounderHfid = n(data) + case "wrongful_conviction": + obj.WrongfulConviction = string(data) + case "year": + obj.Year = n(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventCollection) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "a_support_merc_enid": + data = nil + case "a_support_merc_hfid": + data = nil + case "adjective": + data = nil + case "aggressor_ent_id": + data = nil + case "attacking_enid": + data = nil + case "attacking_hfid": + data = nil + case "attacking_merc_enid": + data = nil + case "attacking_squad_animated": + data = nil + case "attacking_squad_deaths": + data = nil + case "attacking_squad_entity_pop": + data = nil + case "attacking_squad_number": + data = nil + case "attacking_squad_race": + data = nil + case "attacking_squad_site": + data = nil + case "civ_id": + data = nil + case "company_merc": + data = nil + case "coords": + data = nil + case "d_support_merc_enid": + data = nil + case "d_support_merc_hfid": + data = nil + case "defender_ent_id": + data = nil + case "defending_enid": + data = nil + case "defending_hfid": + data = nil + case "defending_merc_enid": + data = nil + case "defending_squad_animated": + data = nil + case "defending_squad_deaths": + data = nil + case "defending_squad_entity_pop": + data = nil + case "defending_squad_number": + data = nil + case "defending_squad_race": + data = nil + case "defending_squad_site": + data = nil + case "end_seconds72": + data = nil + case "end_year": + data = nil + case "event": + data = nil + case "eventcol": + data = nil + case "feature_layer_id": + data = nil + case "id": + data = nil + case "individual_merc": + data = nil + case "name": + data = nil + case "noncom_hfid": + data = nil + case "occasion_id": + data = nil + case "ordinal": + data = nil + case "outcome": + data = nil + case "parent_eventcol": + data = nil + case "site_id": + data = nil + case "start_seconds72": + data = nil + case "start_year": + data = nil + case "subregion_id": + data = nil + case "target_entity_id": + data = nil + case "type": + data = nil + case "war_eventcol": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "a_support_merc_enid": + obj.ASupportMercEnid = n(data) + case "a_support_merc_hfid": + obj.ASupportMercHfid = append(obj.ASupportMercHfid, n(data)) + case "adjective": + obj.Adjective = string(data) + case "aggressor_ent_id": + obj.AggressorEntId = n(data) + case "attacking_enid": + obj.AttackingEnid = n(data) + case "attacking_hfid": + obj.AttackingHfid = append(obj.AttackingHfid, n(data)) + case "attacking_merc_enid": + obj.AttackingMercEnid = n(data) + case "attacking_squad_animated": + obj.AttackingSquadAnimated = append(obj.AttackingSquadAnimated, string(data)) + case "attacking_squad_deaths": + obj.AttackingSquadDeaths = append(obj.AttackingSquadDeaths, n(data)) + case "attacking_squad_entity_pop": + obj.AttackingSquadEntityPop = append(obj.AttackingSquadEntityPop, n(data)) + case "attacking_squad_number": + obj.AttackingSquadNumber = append(obj.AttackingSquadNumber, n(data)) + case "attacking_squad_race": + obj.AttackingSquadRace = append(obj.AttackingSquadRace, string(data)) + case "attacking_squad_site": + obj.AttackingSquadSite = append(obj.AttackingSquadSite, n(data)) + case "civ_id": + obj.CivId = n(data) + case "company_merc": + obj.CompanyMerc = append(obj.CompanyMerc, string(data)) + case "coords": + obj.Coords = string(data) + case "d_support_merc_enid": + obj.DSupportMercEnid = n(data) + case "d_support_merc_hfid": + obj.DSupportMercHfid = append(obj.DSupportMercHfid, n(data)) + case "defender_ent_id": + obj.DefenderEntId = n(data) + case "defending_enid": + obj.DefendingEnid = n(data) + case "defending_hfid": + obj.DefendingHfid = append(obj.DefendingHfid, n(data)) + case "defending_merc_enid": + obj.DefendingMercEnid = n(data) + case "defending_squad_animated": + obj.DefendingSquadAnimated = append(obj.DefendingSquadAnimated, string(data)) + case "defending_squad_deaths": + obj.DefendingSquadDeaths = append(obj.DefendingSquadDeaths, n(data)) + case "defending_squad_entity_pop": + obj.DefendingSquadEntityPop = append(obj.DefendingSquadEntityPop, n(data)) + case "defending_squad_number": + obj.DefendingSquadNumber = append(obj.DefendingSquadNumber, n(data)) + case "defending_squad_race": + obj.DefendingSquadRace = append(obj.DefendingSquadRace, string(data)) + case "defending_squad_site": + obj.DefendingSquadSite = append(obj.DefendingSquadSite, n(data)) + case "end_seconds72": + obj.EndSeconds72 = n(data) + case "end_year": + obj.EndYear = n(data) + case "event": + obj.Event = append(obj.Event, n(data)) + case "eventcol": + obj.Eventcol = append(obj.Eventcol, n(data)) + case "feature_layer_id": + obj.FeatureLayerId = n(data) + case "id": + obj.Id_ = n(data) + case "individual_merc": + obj.IndividualMerc = append(obj.IndividualMerc, string(data)) + case "name": + obj.Name_ = string(data) + case "noncom_hfid": + obj.NoncomHfid = append(obj.NoncomHfid, n(data)) + case "occasion_id": + obj.OccasionId = n(data) + case "ordinal": + obj.Ordinal = n(data) + case "outcome": + obj.Outcome = string(data) + case "parent_eventcol": + obj.ParentEventcol = n(data) + case "site_id": + obj.SiteId = n(data) + case "start_seconds72": + obj.StartSeconds72 = n(data) + case "start_year": + obj.StartYear = n(data) + case "subregion_id": + obj.SubregionId = n(data) + case "target_entity_id": + obj.TargetEntityId = n(data) + case "type": + obj.Type = string(data) + case "war_eventcol": + obj.WarEventcol = n(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventRelationship) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "event": + data = nil + case "relationship": + data = nil + case "source_hf": + data = nil + case "target_hf": + data = nil + case "year": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "event": + obj.Event = n(data) + case "relationship": + obj.Relationship = string(data) + case "source_hf": + obj.SourceHf = n(data) + case "target_hf": + obj.TargetHf = n(data) + case "year": + obj.Year = n(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalEventRelationshipSupplement) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "event": + data = nil + case "occasion_type": + data = nil + case "site": + data = nil + case "unk_1": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "event": + obj.Event = n(data) + case "occasion_type": + obj.OccasionType = n(data) + case "site": + obj.Site = n(data) + case "unk_1": + obj.Unk1 = n(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HistoricalFigure) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "active_interaction": + data = nil + case "animated": + data = nil + case "animated_string": + data = nil + case "appeared": + data = nil + case "associated_type": + data = nil + case "birth_seconds72": + data = nil + case "birth_year": + data = nil + case "caste": + data = nil + case "current_identity_id": + data = nil + case "death_seconds72": + data = nil + case "death_year": + data = nil + case "deity": + data = nil + case "ent_pop_id": + data = nil + case "entity_former_position_link": + v := EntityFormerPositionLink{} +v.Parse(d, &t) +obj.EntityFormerPositionLink = append(obj.EntityFormerPositionLink, v) + case "entity_link": + v := EntityLink{} +v.Parse(d, &t) +obj.EntityLink = append(obj.EntityLink, v) + case "entity_position_link": + v := EntityPositionLink{} +v.Parse(d, &t) +obj.EntityPositionLink = append(obj.EntityPositionLink, v) + case "entity_reputation": + v := EntityReputation{} +v.Parse(d, &t) +obj.EntityReputation = append(obj.EntityReputation, v) + case "entity_squad_link": + v := EntitySquadLink{} +v.Parse(d, &t) +obj.EntitySquadLink = v + case "force": + data = nil + case "goal": + data = nil + case "hf_link": + v := HfLink{} +v.Parse(d, &t) +obj.HfLink = append(obj.HfLink, v) + case "hf_skill": + v := HfSkill{} +v.Parse(d, &t) +obj.HfSkill = append(obj.HfSkill, v) + case "holds_artifact": + data = nil + case "honor_entity": + v := HonorEntity{} +v.Parse(d, &t) +obj.HonorEntity = append(obj.HonorEntity, v) + case "id": + data = nil + case "interaction_knowledge": + data = nil + case "intrigue_actor": + v := IntrigueActor{} +v.Parse(d, &t) +obj.IntrigueActor = append(obj.IntrigueActor, v) + case "intrigue_plot": + v := IntriguePlot{} +v.Parse(d, &t) +obj.IntriguePlot = append(obj.IntriguePlot, v) + case "journey_pet": + data = nil + case "name": + data = nil + case "race": + data = nil + case "relationship_profile_hf_historical": + v := RelationshipProfileHfHistorical{} +v.Parse(d, &t) +obj.RelationshipProfileHfHistorical = append(obj.RelationshipProfileHfHistorical, v) + case "relationship_profile_hf_visual": + v := RelationshipProfileHfVisual{} +v.Parse(d, &t) +obj.RelationshipProfileHfVisual = append(obj.RelationshipProfileHfVisual, v) + case "sex": + data = nil + case "site_link": + v := SiteLink{} +v.Parse(d, &t) +obj.SiteLink = append(obj.SiteLink, v) + case "site_property": + v := SiteProperty{} +v.Parse(d, &t) +obj.SiteProperty = append(obj.SiteProperty, v) + case "sphere": + data = nil + case "used_identity_id": + data = nil + case "vague_relationship": + v := VagueRelationship{} +v.Parse(d, &t) +obj.VagueRelationship = append(obj.VagueRelationship, v) + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "active_interaction": + obj.ActiveInteraction = append(obj.ActiveInteraction, string(data)) + case "animated": + obj.Animated = string(data) + case "animated_string": + obj.AnimatedString = string(data) + case "appeared": + obj.Appeared = n(data) + case "associated_type": + obj.AssociatedType = string(data) + case "birth_seconds72": + obj.BirthSeconds72 = n(data) + case "birth_year": + obj.BirthYear = n(data) + case "caste": + obj.Caste = string(data) + case "current_identity_id": + obj.CurrentIdentityId = n(data) + case "death_seconds72": + obj.DeathSeconds72 = n(data) + case "death_year": + obj.DeathYear = n(data) + case "deity": + obj.Deity = string(data) + case "ent_pop_id": + obj.EntPopId = n(data) + case "entity_former_position_link": + + case "entity_link": + + case "entity_position_link": + + case "entity_reputation": + + case "entity_squad_link": + + case "force": + obj.Force = string(data) + case "goal": + obj.Goal = append(obj.Goal, string(data)) + case "hf_link": + + case "hf_skill": + + case "holds_artifact": + obj.HoldsArtifact = append(obj.HoldsArtifact, n(data)) + case "honor_entity": + + case "id": + obj.Id_ = n(data) + case "interaction_knowledge": + obj.InteractionKnowledge = append(obj.InteractionKnowledge, string(data)) + case "intrigue_actor": + + case "intrigue_plot": + + case "journey_pet": + obj.JourneyPet = append(obj.JourneyPet, string(data)) + case "name": + obj.Name_ = string(data) + case "race": + obj.Race = string(data) + case "relationship_profile_hf_historical": + + case "relationship_profile_hf_visual": + + case "sex": + obj.Sex = n(data) + case "site_link": + + case "site_property": + + case "sphere": + obj.Sphere = append(obj.Sphere, string(data)) + case "used_identity_id": + obj.UsedIdentityId = append(obj.UsedIdentityId, n(data)) + case "vague_relationship": + + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Honor) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "exempt_epid": + data = nil + case "exempt_former_epid": + data = nil + case "gives_precedence": + data = nil + case "granted_to_everybody": + data = nil + case "id": + data = nil + case "name": + data = nil + case "required_battles": + data = nil + case "required_kills": + data = nil + case "required_skill": + data = nil + case "required_skill_ip_total": + data = nil + case "required_years": + data = nil + case "requires_any_melee_or_ranged_skill": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "exempt_epid": + obj.ExemptEpid = n(data) + case "exempt_former_epid": + obj.ExemptFormerEpid = n(data) + case "gives_precedence": + obj.GivesPrecedence = n(data) + case "granted_to_everybody": + obj.GrantedToEverybody = string(data) + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = string(data) + case "required_battles": + obj.RequiredBattles = n(data) + case "required_kills": + obj.RequiredKills = n(data) + case "required_skill": + obj.RequiredSkill = string(data) + case "required_skill_ip_total": + obj.RequiredSkillIpTotal = n(data) + case "required_years": + obj.RequiredYears = n(data) + case "requires_any_melee_or_ranged_skill": + obj.RequiresAnyMeleeOrRangedSkill = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *HonorEntity) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "battles": + data = nil + case "entity": + data = nil + case "honor_id": + data = nil + case "kills": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "battles": + obj.Battles = n(data) + case "entity": + obj.Entity = n(data) + case "honor_id": + obj.HonorId = append(obj.HonorId, n(data)) + case "kills": + obj.Kills = n(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Identity) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "birth_second": + data = nil + case "birth_year": + data = nil + case "caste": + data = nil + case "entity_id": + data = nil + case "histfig_id": + data = nil + case "id": + data = nil + case "name": + data = nil + case "nemesis_id": + data = nil + case "profession": + data = nil + case "race": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "birth_second": + obj.BirthSecond = n(data) + case "birth_year": + obj.BirthYear = n(data) + case "caste": + obj.Caste = string(data) + case "entity_id": + obj.EntityId = n(data) + case "histfig_id": + obj.HistfigId = n(data) + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = string(data) + case "nemesis_id": + obj.NemesisId = n(data) + case "profession": + obj.Profession = string(data) + case "race": + obj.Race = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *IntrigueActor) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "entity_id": + data = nil + case "handle_actor_id": + data = nil + case "hfid": + data = nil + case "local_id": + data = nil + case "promised_actor_immortality": + data = nil + case "promised_me_immortality": + data = nil + case "role": + data = nil + case "strategy": + data = nil + case "strategy_enid": + data = nil + case "strategy_eppid": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "entity_id": + obj.EntityId = n(data) + case "handle_actor_id": + obj.HandleActorId = n(data) + case "hfid": + obj.Hfid = n(data) + case "local_id": + obj.LocalId = n(data) + case "promised_actor_immortality": + obj.PromisedActorImmortality = string(data) + case "promised_me_immortality": + obj.PromisedMeImmortality = string(data) + case "role": + obj.Role = string(data) + case "strategy": + obj.Strategy = string(data) + case "strategy_enid": + obj.StrategyEnid = n(data) + case "strategy_eppid": + obj.StrategyEppid = n(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *IntriguePlot) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "actor_id": + data = nil + case "artifact_id": + data = nil + case "delegated_plot_hfid": + data = nil + case "delegated_plot_id": + data = nil + case "entity_id": + data = nil + case "local_id": + data = nil + case "on_hold": + data = nil + case "parent_plot_hfid": + data = nil + case "parent_plot_id": + data = nil + case "plot_actor": + v := PlotActor{} +v.Parse(d, &t) +obj.PlotActor = append(obj.PlotActor, v) + case "type": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "actor_id": + obj.ActorId = n(data) + case "artifact_id": + obj.ArtifactId = n(data) + case "delegated_plot_hfid": + obj.DelegatedPlotHfid = n(data) + case "delegated_plot_id": + obj.DelegatedPlotId = n(data) + case "entity_id": + obj.EntityId = n(data) + case "local_id": + obj.LocalId = n(data) + case "on_hold": + obj.OnHold = string(data) + case "parent_plot_hfid": + obj.ParentPlotHfid = n(data) + case "parent_plot_id": + obj.ParentPlotId = n(data) + case "plot_actor": + + case "type": + obj.Type = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Item) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "name_string": + data = nil + case "page_number": + data = nil + case "page_written_content_id": + data = nil + case "writing_written_content_id": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "name_string": + obj.NameString = string(data) + case "page_number": + obj.PageNumber = n(data) + case "page_written_content_id": + obj.PageWrittenContentId = n(data) + case "writing_written_content_id": + obj.WritingWrittenContentId = n(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Landmass) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "coord_1": + data = nil + case "coord_2": + data = nil + case "id": + data = nil + case "name": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "coord_1": + obj.Coord1 = string(data) + case "coord_2": + obj.Coord2 = string(data) + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *MountainPeak) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "coords": + data = nil + case "height": + data = nil + case "id": + data = nil + case "is_volcano": + data = nil + case "name": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "coords": + obj.Coords = string(data) + case "height": + obj.Height = n(data) + case "id": + obj.Id_ = n(data) + case "is_volcano": + obj.IsVolcano = string(data) + case "name": + obj.Name_ = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *MusicalForm) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "description": + data = nil + case "id": + data = nil + case "name": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "description": + obj.Description = string(data) + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Occasion) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "event": + data = nil + case "id": + data = nil + case "name": + data = nil + case "schedule": + v := Schedule{} +v.Parse(d, &t) +obj.Schedule = append(obj.Schedule, v) + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "event": + obj.Event = n(data) + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = string(data) + case "schedule": + + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *PlotActor) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "actor_id": + data = nil + case "agreement_has_messenger": + data = nil + case "agreement_id": + data = nil + case "plot_role": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "actor_id": + obj.ActorId = n(data) + case "agreement_has_messenger": + obj.AgreementHasMessenger = string(data) + case "agreement_id": + obj.AgreementId = n(data) + case "plot_role": + obj.PlotRole = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *PoeticForm) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "description": + data = nil + case "id": + data = nil + case "name": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "description": + obj.Description = string(data) + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Reference) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "id": + data = nil + case "type": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "id": + obj.Id_ = n(data) + case "type": + obj.Type = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Region) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "coords": + data = nil + case "evilness": + data = nil + case "force_id": + data = nil + case "id": + data = nil + case "name": + data = nil + case "type": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "coords": + obj.Coords = string(data) + case "evilness": + obj.Evilness = string(data) + case "force_id": + obj.ForceId = n(data) + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = string(data) + case "type": + obj.Type = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *RelationshipProfileHfHistorical) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "fear": + data = nil + case "hf_id": + data = nil + case "love": + data = nil + case "loyalty": + data = nil + case "respect": + data = nil + case "trust": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "fear": + obj.Fear = n(data) + case "hf_id": + obj.HfId = n(data) + case "love": + obj.Love = n(data) + case "loyalty": + obj.Loyalty = n(data) + case "respect": + obj.Respect = n(data) + case "trust": + obj.Trust = n(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *RelationshipProfileHfVisual) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "fear": + data = nil + case "hf_id": + data = nil + case "known_identity_id": + data = nil + case "last_meet_seconds72": + data = nil + case "last_meet_year": + data = nil + case "love": + data = nil + case "loyalty": + data = nil + case "meet_count": + data = nil + case "rep_friendly": + data = nil + case "rep_information_source": + data = nil + case "respect": + data = nil + case "trust": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "fear": + obj.Fear = n(data) + case "hf_id": + obj.HfId = n(data) + case "known_identity_id": + obj.KnownIdentityId = n(data) + case "last_meet_seconds72": + obj.LastMeetSeconds72 = n(data) + case "last_meet_year": + obj.LastMeetYear = n(data) + case "love": + obj.Love = n(data) + case "loyalty": + obj.Loyalty = n(data) + case "meet_count": + obj.MeetCount = n(data) + case "rep_friendly": + obj.RepFriendly = n(data) + case "rep_information_source": + obj.RepInformationSource = n(data) + case "respect": + obj.Respect = n(data) + case "trust": + obj.Trust = n(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *River) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "end_pos": + data = nil + case "name": + data = nil + case "path": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "end_pos": + obj.EndPos = string(data) + case "name": + obj.Name_ = string(data) + case "path": + obj.Path = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Schedule) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "feature": + v := Feature{} +v.Parse(d, &t) +obj.Feature = append(obj.Feature, v) + case "id": + data = nil + case "item_subtype": + data = nil + case "item_type": + data = nil + case "reference": + data = nil + case "reference2": + data = nil + case "type": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "feature": + + case "id": + obj.Id_ = n(data) + case "item_subtype": + obj.ItemSubtype = string(data) + case "item_type": + obj.ItemType = string(data) + case "reference": + obj.Reference = n(data) + case "reference2": + obj.Reference2 = n(data) + case "type": + obj.Type = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Site) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "civ_id": + data = nil + case "coords": + data = nil + case "cur_owner_id": + data = nil + case "id": + data = nil + case "name": + data = nil + case "rectangle": + data = nil + case "site_properties": + obj.SiteProperties = make(map[int]*SiteProperty) +parseMap(d, &obj.SiteProperties, NewSiteProperty) + case "structures": + obj.Structures = make(map[int]*Structure) +parseMap(d, &obj.Structures, NewStructure) + case "type": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "civ_id": + obj.CivId = n(data) + case "coords": + obj.Coords = string(data) + case "cur_owner_id": + obj.CurOwnerId = n(data) + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = string(data) + case "rectangle": + obj.Rectangle = string(data) + case "site_properties": + + case "structures": + + case "type": + obj.Type = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *SiteLink) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "entity_id": + data = nil + case "link_type": + data = nil + case "occupation_id": + data = nil + case "site_id": + data = nil + case "sub_id": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "entity_id": + obj.EntityId = n(data) + case "link_type": + obj.LinkType = string(data) + case "occupation_id": + obj.OccupationId = n(data) + case "site_id": + obj.SiteId = n(data) + case "sub_id": + obj.SubId = n(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *SiteProperty) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "id": + data = nil + case "owner_hfid": + data = nil + case "structure_id": + data = nil + case "type": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "id": + obj.Id_ = n(data) + case "owner_hfid": + obj.OwnerHfid = n(data) + case "structure_id": + obj.StructureId = n(data) + case "type": + obj.Type = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *Structure) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "copied_artifact_id": + data = nil + case "deity": + data = nil + case "deity_type": + data = nil + case "dungeon_type": + data = nil + case "entity_id": + data = nil + case "id": + data = nil + case "inhabitant": + data = nil + case "local_id": + data = nil + case "name": + data = nil + case "name2": + data = nil + case "religion": + data = nil + case "subtype": + data = nil + case "type": + data = nil + case "worship_hfid": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "copied_artifact_id": + obj.CopiedArtifactId = append(obj.CopiedArtifactId, n(data)) + case "deity": + obj.Deity = n(data) + case "deity_type": + obj.DeityType = n(data) + case "dungeon_type": + obj.DungeonType = n(data) + case "entity_id": + obj.EntityId = n(data) + case "id": + obj.Id_ = n(data) + case "inhabitant": + obj.Inhabitant = append(obj.Inhabitant, n(data)) + case "local_id": + obj.LocalId = n(data) + case "name": + obj.Name_ = string(data) + case "name2": + obj.Name2 = string(data) + case "religion": + obj.Religion = n(data) + case "subtype": + obj.Subtype = string(data) + case "type": + obj.Type = string(data) + case "worship_hfid": + obj.WorshipHfid = n(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *UndergroundRegion) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "coords": + data = nil + case "depth": + data = nil + case "id": + data = nil + case "type": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "coords": + obj.Coords = string(data) + case "depth": + obj.Depth = n(data) + case "id": + obj.Id_ = n(data) + case "type": + obj.Type = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *VagueRelationship) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "artistic_buddy": + data = nil + case "atheletic_rival": + data = nil + case "athlete_buddy": + data = nil + case "business_rival": + data = nil + case "childhood_friend": + data = nil + case "grudge": + data = nil + case "hfid": + data = nil + case "jealous_obsession": + data = nil + case "jealous_relationship_grudge": + data = nil + case "persecution_grudge": + data = nil + case "religious_persecution_grudge": + data = nil + case "scholar_buddy": + data = nil + case "supernatural_grudge": + data = nil + case "war_buddy": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "artistic_buddy": + obj.ArtisticBuddy = string(data) + case "atheletic_rival": + obj.AtheleticRival = string(data) + case "athlete_buddy": + obj.AthleteBuddy = string(data) + case "business_rival": + obj.BusinessRival = string(data) + case "childhood_friend": + obj.ChildhoodFriend = string(data) + case "grudge": + obj.Grudge = string(data) + case "hfid": + obj.Hfid = n(data) + case "jealous_obsession": + obj.JealousObsession = string(data) + case "jealous_relationship_grudge": + obj.JealousRelationshipGrudge = string(data) + case "persecution_grudge": + obj.PersecutionGrudge = string(data) + case "religious_persecution_grudge": + obj.ReligiousPersecutionGrudge = string(data) + case "scholar_buddy": + obj.ScholarBuddy = string(data) + case "supernatural_grudge": + obj.SupernaturalGrudge = string(data) + case "war_buddy": + obj.WarBuddy = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *WorldConstruction) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "coords": + data = nil + case "id": + data = nil + case "name": + data = nil + case "type": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "coords": + obj.Coords = string(data) + case "id": + obj.Id_ = n(data) + case "name": + obj.Name_ = string(data) + case "type": + obj.Type = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} +func (obj *WrittenContent) Parse(d *xml.Decoder, start *xml.StartElement) error { + var data []byte + + for { + tok, err := d.Token() + if err != nil { + return err + } + switch t := tok.(type) { + case xml.StartElement: + switch t.Name.Local { + case "author": + data = nil + case "author_hfid": + data = nil + case "author_roll": + data = nil + case "form": + data = nil + case "form_id": + data = nil + case "id": + data = nil + case "page_end": + data = nil + case "page_start": + data = nil + case "reference": + v := Reference{} +v.Parse(d, &t) +obj.Reference = append(obj.Reference, v) + case "style": + data = nil + case "title": + data = nil + case "type": + data = nil + default: + // fmt.Println("unknown field", t.Name.Local) + d.Skip() + } + + case xml.CharData: + data = append(data, t...) + + case xml.EndElement: + if t.Name.Local == start.Name.Local { + return nil + } + + switch t.Name.Local { + case "author": + obj.Author = n(data) + case "author_hfid": + obj.AuthorHfid = n(data) + case "author_roll": + obj.AuthorRoll = n(data) + case "form": + obj.Form = string(data) + case "form_id": + obj.FormId = n(data) + case "id": + obj.Id_ = n(data) + case "page_end": + obj.PageEnd = n(data) + case "page_start": + obj.PageStart = n(data) + case "reference": + + case "style": + obj.Style = append(obj.Style, string(data)) + case "title": + obj.Title = string(data) + case "type": + obj.Type = string(data) + default: + // fmt.Println("unknown field", t.Name.Local) + } + } + } +} diff --git a/df/parse.go b/df/parse.go new file mode 100644 index 0000000..db112e0 --- /dev/null +++ b/df/parse.go @@ -0,0 +1,90 @@ +package df + +import ( + "encoding/xml" + "fmt" + "legendsbrowser/util" + "os" +) + +// type DfWorld struct{} + +// func (x *DfWorld) Parse(d *xml.Decoder, start *xml.StartElement) {} + +func Parse(file string) (*DfWorld, error) { + xmlFile, err := os.Open(file) + if err != nil { + fmt.Println(err) + } + + fmt.Println("Successfully Opened", file) + defer xmlFile.Close() + + converter := util.NewConvertReader(xmlFile) + d := xml.NewDecoder(converter) + + for { + tok, err := d.Token() + if err != nil { + return nil, err + } + switch t := tok.(type) { + case xml.StartElement: + if t.Name.Local == "df_world" { + w := DfWorld{} + w.Parse(d, &t) + return &w, nil + } + } + } + // return nil, errors.New("Fehler!") +} + +type Identifiable interface { + Id() int +} + +type Parsable interface { + Parse(d *xml.Decoder, start *xml.StartElement) error +} + +type IdentifiableParsable interface { + Identifiable + Parsable +} + +func parseArray[T Parsable](d *xml.Decoder, dest *[]T, creator func() T) { + for { + tok, err := d.Token() + if err != nil { + return // nil, err + } + switch t := tok.(type) { + case xml.StartElement: + x := creator() + x.Parse(d, &t) + *dest = append(*dest, x) + + case xml.EndElement: + return + } + } +} + +func parseMap[T IdentifiableParsable](d *xml.Decoder, dest *map[int]T, creator func() T) { + for { + tok, err := d.Token() + if err != nil { + return // nil, err + } + switch t := tok.(type) { + case xml.StartElement: + x := creator() + x.Parse(d, &t) + (*dest)[x.Id()] = x + + case xml.EndElement: + return + } + } +} diff --git a/main.go b/main.go index bfda8fc..f0f07b9 100644 --- a/main.go +++ b/main.go @@ -4,45 +4,57 @@ import ( "flag" "fmt" "legendsbrowser/analyze" - "legendsbrowser/model" + "legendsbrowser/df" "legendsbrowser/server" "net/http" _ "net/http/pprof" - "os" "runtime" "github.com/gorilla/mux" "github.com/pkg/profile" ) -var world model.World +var world *df.DfWorld func main() { - var a string - flag.StringVar(&a, "a", "", "analyze a file") - flag.Parse() - - if len(a) == 0 { - fmt.Println("Usage: defaults.go -a") - flag.PrintDefaults() - os.Exit(1) - } else { - analyze.Analyze(a) - os.Exit(1) - } defer profile.Start(profile.MemProfile).Stop() go func() { http.ListenAndServe(":8081", nil) }() + a := flag.String("a", "", "analyze a file") + g := flag.Bool("g", false, "generate model") + f := flag.String("f", "", "open a file") + flag.Parse() + + if len(*a) > 0 { + analyze.Analyze(*a) + } + if *g { + fmt.Println("Generating") + analyze.Generate() + } + + if len(*f) > 0 { + w, err := df.Parse(*f) + if err != nil { + fmt.Println(err) + } + + // file, _ := json.MarshalIndent(w, "", " ") + // _ = ioutil.WriteFile("world.json", file, 0644) + + world = w + } + fmt.Println("Hallo Welt!") // world.Load("region1-00152-01-01-legends_plus.xml") - world.Load("region2-00195-01-01-legends.xml") + // world.Load("region2-00195-01-01-legends.xml") // world.Load("Agora-00033-01-01-legends_plus.xml") runtime.GC() - world.Process() + // world.Process() // model.ListOtherElements("world", &[]*model.World{&world}) // model.ListOtherElements("region", &world.Regions) @@ -63,21 +75,21 @@ func main() { router := mux.NewRouter().StrictSlash(true) - server.RegisterResource(router, "region", world.RegionMap) - server.RegisterResource(router, "undergroundRegion", world.UndergroundRegionMap) - server.RegisterResource(router, "landmass", world.LandmassMap) - server.RegisterResource(router, "site", world.SiteMap) - server.RegisterResource(router, "worldConstruction", world.WorldConstructionMap) - server.RegisterResource(router, "artifact", world.ArtifactMap) - server.RegisterResource(router, "hf", world.HistoricalFigureMap) - server.RegisterResource(router, "collection", world.HistoricalEventCollectionMap) - server.RegisterResource(router, "entity", world.EntityMap) - server.RegisterResource(router, "event", world.HistoricalEventMap) - server.RegisterResource(router, "era", world.HistoricalEraMap) - server.RegisterResource(router, "danceForm", world.DanceFormMap) - server.RegisterResource(router, "musicalForm", world.MusicalFormMap) - server.RegisterResource(router, "poeticForm", world.PoeticFormMap) - server.RegisterResource(router, "written", world.WrittenContentMap) + // server.RegisterResource(router, "region", world.RegionMap) + // server.RegisterResource(router, "undergroundRegion", world.UndergroundRegionMap) + // server.RegisterResource(router, "landmass", world.LandmassMap) + // server.RegisterResource(router, "site", world.SiteMap) + // server.RegisterResource(router, "worldConstruction", world.WorldConstructionMap) + // server.RegisterResource(router, "artifact", world.ArtifactMap) + // server.RegisterResource(router, "hf", world.HistoricalFigureMap) + // server.RegisterResource(router, "collection", world.HistoricalEventCollectionMap) + // server.RegisterResource(router, "entity", world.EntityMap) + // server.RegisterResource(router, "event", world.HistoricalEventMap) + // server.RegisterResource(router, "era", world.HistoricalEraMap) + // server.RegisterResource(router, "danceForm", world.DanceFormMap) + // server.RegisterResource(router, "musicalForm", world.MusicalFormMap) + // server.RegisterResource(router, "poeticForm", world.PoeticFormMap) + // server.RegisterResource(router, "written", world.WrittenContentMap) spa := server.SpaHandler{StaticPath: "frontend/dist/legendsbrowser", IndexPath: "index.html"} router.PathPrefix("/").Handler(spa) diff --git a/model.json b/model.json deleted file mode 100644 index 8d49c14..0000000 --- a/model.json +++ /dev/null @@ -1,2633 +0,0 @@ -{ - "artifact": { - "name": "Artifact", - "id": true, - "named": true, - "fields": { - "abs_tile_x": { - "name": "AbsTileX", - "type": "int" - }, - "abs_tile_y": { - "name": "AbsTileY", - "type": "int" - }, - "abs_tile_z": { - "name": "AbsTileZ", - "type": "int" - }, - "holder_hfid": { - "name": "HolderHfid", - "type": "int" - }, - "id": { - "name": "Id", - "type": "int" - }, - "item": { - "name": "Item", - "type": "object" - }, - "name": { - "name": "Name", - "type": "string" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "structure_local_id": { - "name": "StructureLocalId", - "type": "int" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - } - } - }, - "dance_form": { - "name": "DanceForm", - "id": true, - "fields": { - "description": { - "name": "Description", - "type": "string" - }, - "id": { - "name": "Id", - "type": "int" - } - } - }, - "df_world": { - "name": "DfWorld", - "fields": { - "artifacts": { - "name": "Artifacts", - "type": "array", - "elements": "artifact" - }, - "dance_forms": { - "name": "DanceForms", - "type": "array", - "elements": "dance_form" - }, - "entities": { - "name": "Entities", - "type": "array", - "elements": "entity" - }, - "entity_populations": { - "name": "EntityPopulations", - "type": "array", - "elements": "entity_population" - }, - "historical_eras": { - "name": "HistoricalEras", - "type": "array", - "elements": "historical_era" - }, - "historical_event_collections": { - "name": "HistoricalEventCollections", - "type": "array", - "elements": "historical_event_collection" - }, - "historical_events": { - "name": "HistoricalEvents", - "type": "array", - "elements": "historical_event" - }, - "historical_figures": { - "name": "HistoricalFigures", - "type": "array", - "elements": "historical_figure" - }, - "musical_forms": { - "name": "MusicalForms", - "type": "array", - "elements": "musical_form" - }, - "poetic_forms": { - "name": "PoeticForms", - "type": "array", - "elements": "poetic_form" - }, - "regions": { - "name": "Regions", - "type": "array", - "elements": "region" - }, - "sites": { - "name": "Sites", - "type": "array", - "elements": "site" - }, - "underground_regions": { - "name": "UndergroundRegions", - "type": "array", - "elements": "underground_region" - }, - "world_constructions": { - "name": "WorldConstructions", - "type": "string" - }, - "written_contents": { - "name": "WrittenContents", - "type": "array", - "elements": "written_content" - } - } - }, - "entity": { - "name": "Entity", - "id": true, - "named": true, - "fields": { - "id": { - "name": "Id", - "type": "int" - }, - "name": { - "name": "Name", - "type": "string" - } - } - }, - "entity_former_position_link": { - "name": "EntityFormerPositionLink", - "fields": { - "end_year": { - "name": "EndYear", - "type": "int" - }, - "entity_id": { - "name": "EntityId", - "type": "int" - }, - "position_profile_id": { - "name": "PositionProfileId", - "type": "int" - }, - "start_year": { - "name": "StartYear", - "type": "int" - } - } - }, - "entity_link": { - "name": "EntityLink", - "fields": { - "entity_id": { - "name": "EntityId", - "type": "int" - }, - "link_strength": { - "name": "LinkStrength", - "type": "int" - }, - "link_type": { - "name": "LinkType", - "type": "string" - } - } - }, - "entity_position_link": { - "name": "EntityPositionLink", - "fields": { - "entity_id": { - "name": "EntityId", - "type": "int" - }, - "position_profile_id": { - "name": "PositionProfileId", - "type": "int" - }, - "start_year": { - "name": "StartYear", - "type": "int" - } - } - }, - "entity_squad_link": { - "name": "EntitySquadLink", - "fields": { - "entity_id": { - "name": "EntityId", - "type": "int" - }, - "squad_id": { - "name": "SquadId", - "type": "int" - }, - "squad_position": { - "name": "SquadPosition", - "type": "int" - }, - "start_year": { - "name": "StartYear", - "type": "int" - } - } - }, - "hf_link": { - "name": "HfLink", - "fields": { - "hfid": { - "name": "Hfid", - "type": "int" - }, - "link_strength": { - "name": "LinkStrength", - "type": "int" - }, - "link_type": { - "name": "LinkType", - "type": "string" - } - } - }, - "hf_skill": { - "name": "HfSkill", - "fields": { - "skill": { - "name": "Skill", - "type": "string" - }, - "total_ip": { - "name": "TotalIp", - "type": "int" - } - } - }, - "historical_era": { - "name": "HistoricalEra", - "named": true, - "fields": { - "name": { - "name": "Name", - "type": "string" - }, - "start_year": { - "name": "StartYear", - "type": "int" - } - } - }, - "historical_event": { - "name": "HistoricalEvent", - "id": true, - "typed": true, - "fields": { - "id": { - "name": "Id", - "type": "int" - }, - "seconds72": { - "name": "Seconds72", - "type": "int" - }, - "type": { - "name": "Type", - "type": "string" - }, - "year": { - "name": "Year", - "type": "int" - } - } - }, - "historical_eventAddHfEntityLink": { - "name": "HistoricalEventAddHfEntityLink", - "fields": { - "civ_id": { - "name": "CivId", - "type": "int" - }, - "hfid": { - "name": "Hfid", - "type": "int" - }, - "link": { - "name": "Link", - "type": "string" - }, - "position_id": { - "name": "PositionId", - "type": "int" - } - } - }, - "historical_eventAddHfHfLink": { - "name": "HistoricalEventAddHfHfLink", - "fields": { - "hfid": { - "name": "Hfid", - "type": "int" - }, - "hfid_target": { - "name": "HfidTarget", - "type": "int" - } - } - }, - "historical_eventArtifactClaimFormed": { - "name": "HistoricalEventArtifactClaimFormed", - "fields": { - "artifact_id": { - "name": "ArtifactId", - "type": "int" - }, - "circumstance": { - "name": "Circumstance", - "type": "string" - }, - "claim": { - "name": "Claim", - "type": "string" - }, - "entity_id": { - "name": "EntityId", - "type": "int" - }, - "hist_figure_id": { - "name": "HistFigureId", - "type": "int" - }, - "position_profile_id": { - "name": "PositionProfileId", - "type": "int" - } - } - }, - "historical_eventArtifactCreated": { - "name": "HistoricalEventArtifactCreated", - "fields": { - "artifact_id": { - "name": "ArtifactId", - "type": "int" - }, - "hist_figure_id": { - "name": "HistFigureId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "unit_id": { - "name": "UnitId", - "type": "int" - } - } - }, - "historical_eventArtifactLost": { - "name": "HistoricalEventArtifactLost", - "fields": { - "artifact_id": { - "name": "ArtifactId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - } - } - }, - "historical_eventArtifactStored": { - "name": "HistoricalEventArtifactStored", - "fields": { - "artifact_id": { - "name": "ArtifactId", - "type": "int" - }, - "hist_figure_id": { - "name": "HistFigureId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "unit_id": { - "name": "UnitId", - "type": "int" - } - } - }, - "historical_eventAssumeIdentity": { - "name": "HistoricalEventAssumeIdentity", - "fields": { - "identity_id": { - "name": "IdentityId", - "type": "int" - }, - "target_enid": { - "name": "TargetEnid", - "type": "int" - }, - "trickster_hfid": { - "name": "TricksterHfid", - "type": "int" - } - } - }, - "historical_eventAttackedSite": { - "name": "HistoricalEventAttackedSite", - "fields": { - "attacker_civ_id": { - "name": "AttackerCivId", - "type": "int" - }, - "attacker_general_hfid": { - "name": "AttackerGeneralHfid", - "type": "int" - }, - "defender_civ_id": { - "name": "DefenderCivId", - "type": "int" - }, - "defender_general_hfid": { - "name": "DefenderGeneralHfid", - "type": "int" - }, - "site_civ_id": { - "name": "SiteCivId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - } - } - }, - "historical_eventBodyAbused": { - "name": "HistoricalEventBodyAbused", - "fields": { - "coords": { - "name": "Coords", - "type": "string" - }, - "feature_layer_id": { - "name": "FeatureLayerId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - } - } - }, - "historical_eventCeremony": { - "name": "HistoricalEventCeremony", - "fields": { - "civ_id": { - "name": "CivId", - "type": "int" - }, - "feature_layer_id": { - "name": "FeatureLayerId", - "type": "int" - }, - "occasion_id": { - "name": "OccasionId", - "type": "int" - }, - "schedule_id": { - "name": "ScheduleId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - } - } - }, - "historical_eventChangeHfJob": { - "name": "HistoricalEventChangeHfJob", - "fields": { - "feature_layer_id": { - "name": "FeatureLayerId", - "type": "int" - }, - "hfid": { - "name": "Hfid", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - } - } - }, - "historical_eventChangeHfState": { - "name": "HistoricalEventChangeHfState", - "fields": { - "coords": { - "name": "Coords", - "type": "string" - }, - "feature_layer_id": { - "name": "FeatureLayerId", - "type": "int" - }, - "hfid": { - "name": "Hfid", - "type": "int" - }, - "mood": { - "name": "Mood", - "type": "string" - }, - "reason": { - "name": "Reason", - "type": "string" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "state": { - "name": "State", - "type": "string" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - } - } - }, - "historical_eventChangedCreatureType": { - "name": "HistoricalEventChangedCreatureType", - "fields": { - "changee_hfid": { - "name": "ChangeeHfid", - "type": "int" - }, - "changer_hfid": { - "name": "ChangerHfid", - "type": "int" - }, - "new_caste": { - "name": "NewCaste", - "type": "string" - }, - "new_race": { - "name": "NewRace", - "type": "string" - }, - "old_caste": { - "name": "OldCaste", - "type": "string" - }, - "old_race": { - "name": "OldRace", - "type": "string" - } - } - }, - "historical_eventCompetition": { - "name": "HistoricalEventCompetition", - "fields": { - "civ_id": { - "name": "CivId", - "type": "int" - }, - "competitor_hfid": { - "name": "CompetitorHfid", - "type": "int", - "multiple": true - }, - "feature_layer_id": { - "name": "FeatureLayerId", - "type": "int" - }, - "occasion_id": { - "name": "OccasionId", - "type": "int" - }, - "schedule_id": { - "name": "ScheduleId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - }, - "winner_hfid": { - "name": "WinnerHfid", - "type": "int" - } - } - }, - "historical_eventCreatedSite": { - "name": "HistoricalEventCreatedSite", - "fields": { - "builder_hfid": { - "name": "BuilderHfid", - "type": "int" - }, - "civ_id": { - "name": "CivId", - "type": "int" - }, - "site_civ_id": { - "name": "SiteCivId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - } - } - }, - "historical_eventCreatedStructure": { - "name": "HistoricalEventCreatedStructure", - "fields": { - "builder_hfid": { - "name": "BuilderHfid", - "type": "int" - }, - "civ_id": { - "name": "CivId", - "type": "int" - }, - "site_civ_id": { - "name": "SiteCivId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "structure_id": { - "name": "StructureId", - "type": "int" - } - } - }, - "historical_eventCreatedWorldConstruction": { - "name": "HistoricalEventCreatedWorldConstruction", - "fields": { - "civ_id": { - "name": "CivId", - "type": "int" - }, - "master_wcid": { - "name": "MasterWcid", - "type": "int" - }, - "site_civ_id": { - "name": "SiteCivId", - "type": "int" - }, - "site_id1": { - "name": "SiteId1", - "type": "int" - }, - "site_id2": { - "name": "SiteId2", - "type": "int" - }, - "wcid": { - "name": "Wcid", - "type": "int" - } - } - }, - "historical_eventCreatureDevoured": { - "name": "HistoricalEventCreatureDevoured", - "fields": { - "feature_layer_id": { - "name": "FeatureLayerId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - } - } - }, - "historical_eventEntityAllianceFormed": { - "name": "HistoricalEventEntityAllianceFormed", - "fields": { - "initiating_enid": { - "name": "InitiatingEnid", - "type": "int" - }, - "joining_enid": { - "name": "JoiningEnid", - "type": "int" - } - } - }, - "historical_eventEntityBreachFeatureLayer": { - "name": "HistoricalEventEntityBreachFeatureLayer", - "fields": { - "civ_entity_id": { - "name": "CivEntityId", - "type": "int" - }, - "feature_layer_id": { - "name": "FeatureLayerId", - "type": "int" - }, - "site_entity_id": { - "name": "SiteEntityId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - } - } - }, - "historical_eventEntityCreated": { - "name": "HistoricalEventEntityCreated", - "fields": { - "entity_id": { - "name": "EntityId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "structure_id": { - "name": "StructureId", - "type": "int" - } - } - }, - "historical_eventFailedFrameAttempt": { - "name": "HistoricalEventFailedFrameAttempt", - "fields": { - "convicter_enid": { - "name": "ConvicterEnid", - "type": "int" - }, - "crime": { - "name": "Crime", - "type": "string" - }, - "fooled_hfid": { - "name": "FooledHfid", - "type": "int" - }, - "framer_hfid": { - "name": "FramerHfid", - "type": "int" - }, - "target_hfid": { - "name": "TargetHfid", - "type": "int" - } - } - }, - "historical_eventFieldBattle": { - "name": "HistoricalEventFieldBattle", - "fields": { - "attacker_civ_id": { - "name": "AttackerCivId", - "type": "int" - }, - "attacker_general_hfid": { - "name": "AttackerGeneralHfid", - "type": "int" - }, - "coords": { - "name": "Coords", - "type": "string" - }, - "defender_civ_id": { - "name": "DefenderCivId", - "type": "int" - }, - "defender_general_hfid": { - "name": "DefenderGeneralHfid", - "type": "int" - }, - "feature_layer_id": { - "name": "FeatureLayerId", - "type": "int" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - } - } - }, - "historical_eventGamble": { - "name": "HistoricalEventGamble", - "fields": { - "gambler_hfid": { - "name": "GamblerHfid", - "type": "int" - }, - "new_account": { - "name": "NewAccount", - "type": "int" - }, - "old_account": { - "name": "OldAccount", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "structure_id": { - "name": "StructureId", - "type": "int" - } - } - }, - "historical_eventHfAbducted": { - "name": "HistoricalEventHfAbducted", - "fields": { - "feature_layer_id": { - "name": "FeatureLayerId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "snatcher_hfid": { - "name": "SnatcherHfid", - "type": "int" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - }, - "target_hfid": { - "name": "TargetHfid", - "type": "int" - } - } - }, - "historical_eventHfAttackedSite": { - "name": "HistoricalEventHfAttackedSite", - "fields": { - "attacker_hfid": { - "name": "AttackerHfid", - "type": "int" - }, - "defender_civ_id": { - "name": "DefenderCivId", - "type": "int" - }, - "site_civ_id": { - "name": "SiteCivId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - } - } - }, - "historical_eventHfConvicted": { - "name": "HistoricalEventHfConvicted", - "fields": { - "convicted_hfid": { - "name": "ConvictedHfid", - "type": "int" - }, - "convicter_enid": { - "name": "ConvicterEnid", - "type": "int" - }, - "crime": { - "name": "Crime", - "type": "string" - }, - "prison_months": { - "name": "PrisonMonths", - "type": "int" - } - } - }, - "historical_eventHfDestroyedSite": { - "name": "HistoricalEventHfDestroyedSite", - "fields": { - "attacker_hfid": { - "name": "AttackerHfid", - "type": "int" - }, - "defender_civ_id": { - "name": "DefenderCivId", - "type": "int" - }, - "site_civ_id": { - "name": "SiteCivId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - } - } - }, - "historical_eventHfDied": { - "name": "HistoricalEventHfDied", - "fields": { - "cause": { - "name": "Cause", - "type": "string" - }, - "feature_layer_id": { - "name": "FeatureLayerId", - "type": "int" - }, - "hfid": { - "name": "Hfid", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "slayer_caste": { - "name": "SlayerCaste", - "type": "string" - }, - "slayer_hfid": { - "name": "SlayerHfid", - "type": "int" - }, - "slayer_item_id": { - "name": "SlayerItemId", - "type": "int" - }, - "slayer_race": { - "name": "SlayerRace", - "type": "string" - }, - "slayer_shooter_item_id": { - "name": "SlayerShooterItemId", - "type": "int" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - } - } - }, - "historical_eventHfGainsSecretGoal": { - "name": "HistoricalEventHfGainsSecretGoal", - "fields": { - "hfid": { - "name": "Hfid", - "type": "int" - }, - "secret_goal": { - "name": "SecretGoal", - "type": "string" - } - } - }, - "historical_eventHfNewPet": { - "name": "HistoricalEventHfNewPet", - "fields": { - "coords": { - "name": "Coords", - "type": "string" - }, - "feature_layer_id": { - "name": "FeatureLayerId", - "type": "int" - }, - "group_hfid": { - "name": "GroupHfid", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - } - } - }, - "historical_eventHfRelationshipDenied": { - "name": "HistoricalEventHfRelationshipDenied", - "fields": { - "feature_layer_id": { - "name": "FeatureLayerId", - "type": "int" - }, - "reason": { - "name": "Reason", - "type": "string" - }, - "reason_id": { - "name": "ReasonId", - "type": "int" - }, - "relationship": { - "name": "Relationship", - "type": "string" - }, - "seeker_hfid": { - "name": "SeekerHfid", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - }, - "target_hfid": { - "name": "TargetHfid", - "type": "int" - } - } - }, - "historical_eventHfSimpleBattleEvent": { - "name": "HistoricalEventHfSimpleBattleEvent", - "fields": { - "feature_layer_id": { - "name": "FeatureLayerId", - "type": "int" - }, - "group_1_hfid": { - "name": "Group1Hfid", - "type": "int" - }, - "group_2_hfid": { - "name": "Group2Hfid", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - }, - "subtype": { - "name": "Subtype", - "type": "string" - } - } - }, - "historical_eventHfTravel": { - "name": "HistoricalEventHfTravel", - "fields": { - "coords": { - "name": "Coords", - "type": "string" - }, - "feature_layer_id": { - "name": "FeatureLayerId", - "type": "int" - }, - "group_hfid": { - "name": "GroupHfid", - "type": "int" - }, - "return": { - "name": "Return", - "type": "string" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - } - } - }, - "historical_eventHfWounded": { - "name": "HistoricalEventHfWounded", - "fields": { - "feature_layer_id": { - "name": "FeatureLayerId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - }, - "woundee_hfid": { - "name": "WoundeeHfid", - "type": "int" - }, - "wounder_hfid": { - "name": "WounderHfid", - "type": "int" - } - } - }, - "historical_eventHfsFormedReputationRelationship": { - "name": "HistoricalEventHfsFormedReputationRelationship", - "fields": { - "feature_layer_id": { - "name": "FeatureLayerId", - "type": "int" - }, - "hf_rep_1_of_2": { - "name": "HfRep1Of2", - "type": "string" - }, - "hf_rep_2_of_1": { - "name": "HfRep2Of1", - "type": "string" - }, - "hfid1": { - "name": "Hfid1", - "type": "int" - }, - "hfid2": { - "name": "Hfid2", - "type": "int" - }, - "identity_id1": { - "name": "IdentityId1", - "type": "int" - }, - "identity_id2": { - "name": "IdentityId2", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - } - } - }, - "historical_eventItemStolen": { - "name": "HistoricalEventItemStolen", - "fields": { - "circumstance": { - "name": "Circumstance", - "type": "string" - }, - "circumstance_id": { - "name": "CircumstanceId", - "type": "int" - } - } - }, - "historical_eventKnowledgeDiscovered": { - "name": "HistoricalEventKnowledgeDiscovered", - "fields": { - "first": { - "name": "First", - "type": "string" - }, - "hfid": { - "name": "Hfid", - "type": "int" - }, - "knowledge": { - "name": "Knowledge", - "type": "string" - } - } - }, - "historical_eventMasterpieceItem": { - "name": "HistoricalEventMasterpieceItem", - "fields": { - "entity_id": { - "name": "EntityId", - "type": "int" - }, - "hfid": { - "name": "Hfid", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "skill_at_time": { - "name": "SkillAtTime", - "type": "int" - } - } - }, - "historical_eventMerchant": { - "name": "HistoricalEventMerchant", - "fields": { - "depot_entity_id": { - "name": "DepotEntityId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "trader_entity_id": { - "name": "TraderEntityId", - "type": "int" - } - } - }, - "historical_eventPerformance": { - "name": "HistoricalEventPerformance", - "fields": { - "civ_id": { - "name": "CivId", - "type": "int" - }, - "feature_layer_id": { - "name": "FeatureLayerId", - "type": "int" - }, - "occasion_id": { - "name": "OccasionId", - "type": "int" - }, - "schedule_id": { - "name": "ScheduleId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - } - } - }, - "historical_eventPlunderedSite": { - "name": "HistoricalEventPlunderedSite", - "fields": { - "attacker_civ_id": { - "name": "AttackerCivId", - "type": "int" - }, - "defender_civ_id": { - "name": "DefenderCivId", - "type": "int" - }, - "detected": { - "name": "Detected", - "type": "string" - }, - "site_civ_id": { - "name": "SiteCivId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - } - } - }, - "historical_eventProcession": { - "name": "HistoricalEventProcession", - "fields": { - "civ_id": { - "name": "CivId", - "type": "int" - }, - "feature_layer_id": { - "name": "FeatureLayerId", - "type": "int" - }, - "occasion_id": { - "name": "OccasionId", - "type": "int" - }, - "schedule_id": { - "name": "ScheduleId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - } - } - }, - "historical_eventRazedStructure": { - "name": "HistoricalEventRazedStructure", - "fields": { - "civ_id": { - "name": "CivId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "structure_id": { - "name": "StructureId", - "type": "int" - } - } - }, - "historical_eventReclaimSite": { - "name": "HistoricalEventReclaimSite", - "fields": { - "civ_id": { - "name": "CivId", - "type": "int" - }, - "site_civ_id": { - "name": "SiteCivId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - } - } - }, - "historical_eventRemoveHfEntityLink": { - "name": "HistoricalEventRemoveHfEntityLink", - "fields": { - "civ_id": { - "name": "CivId", - "type": "int" - }, - "hfid": { - "name": "Hfid", - "type": "int" - }, - "link": { - "name": "Link", - "type": "string" - }, - "position_id": { - "name": "PositionId", - "type": "int" - } - } - }, - "historical_eventRemoveHfHfLink": { - "name": "HistoricalEventRemoveHfHfLink", - "fields": { - "hfid": { - "name": "Hfid", - "type": "int" - }, - "hfid_target": { - "name": "HfidTarget", - "type": "int" - } - } - }, - "historical_eventSiteDispute": { - "name": "HistoricalEventSiteDispute", - "fields": { - "dispute": { - "name": "Dispute", - "type": "string" - }, - "entity_id_1": { - "name": "EntityId1", - "type": "int" - }, - "entity_id_2": { - "name": "EntityId2", - "type": "int" - }, - "site_id_1": { - "name": "SiteId1", - "type": "int" - }, - "site_id_2": { - "name": "SiteId2", - "type": "int" - } - } - }, - "historical_eventSiteTakenOver": { - "name": "HistoricalEventSiteTakenOver", - "fields": { - "attacker_civ_id": { - "name": "AttackerCivId", - "type": "int" - }, - "defender_civ_id": { - "name": "DefenderCivId", - "type": "int" - }, - "new_site_civ_id": { - "name": "NewSiteCivId", - "type": "int" - }, - "site_civ_id": { - "name": "SiteCivId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - } - } - }, - "historical_eventSquadVsSquad": { - "name": "HistoricalEventSquadVsSquad", - "fields": { - "a_hfid": { - "name": "AHfid", - "type": "int" - }, - "a_squad_id": { - "name": "ASquadId", - "type": "int" - }, - "d_effect": { - "name": "DEffect", - "type": "int" - }, - "d_interaction": { - "name": "DInteraction", - "type": "int" - }, - "d_number": { - "name": "DNumber", - "type": "int" - }, - "d_race": { - "name": "DRace", - "type": "int" - }, - "d_slain": { - "name": "DSlain", - "type": "int" - }, - "d_squad_id": { - "name": "DSquadId", - "type": "int" - }, - "feature_layer_id": { - "name": "FeatureLayerId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "structure_id": { - "name": "StructureId", - "type": "int" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - } - } - }, - "historical_eventTacticalSituation": { - "name": "HistoricalEventTacticalSituation", - "fields": { - "a_tactician_hfid": { - "name": "ATacticianHfid", - "type": "int" - }, - "a_tactics_roll": { - "name": "ATacticsRoll", - "type": "int" - }, - "d_tactician_hfid": { - "name": "DTacticianHfid", - "type": "int" - }, - "d_tactics_roll": { - "name": "DTacticsRoll", - "type": "int" - }, - "feature_layer_id": { - "name": "FeatureLayerId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "situation": { - "name": "Situation", - "type": "string" - }, - "start": { - "name": "Start", - "type": "string" - }, - "structure_id": { - "name": "StructureId", - "type": "int" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - } - } - }, - "historical_eventWrittenContentComposed": { - "name": "HistoricalEventWrittenContentComposed", - "fields": { - "circumstance": { - "name": "Circumstance", - "type": "string" - }, - "circumstance_id": { - "name": "CircumstanceId", - "type": "int" - }, - "hist_figure_id": { - "name": "HistFigureId", - "type": "int" - }, - "reason": { - "name": "Reason", - "type": "string" - }, - "reason_id": { - "name": "ReasonId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "wc_id": { - "name": "WcId", - "type": "int" - } - } - }, - "historical_event_collection": { - "name": "HistoricalEventCollection", - "id": true, - "typed": true, - "fields": { - "end_seconds72": { - "name": "EndSeconds72", - "type": "int" - }, - "end_year": { - "name": "EndYear", - "type": "int" - }, - "event": { - "name": "Event", - "type": "int", - "multiple": true - }, - "eventcol": { - "name": "Eventcol", - "type": "int", - "multiple": true - }, - "id": { - "name": "Id", - "type": "int" - }, - "start_seconds72": { - "name": "StartSeconds72", - "type": "int" - }, - "start_year": { - "name": "StartYear", - "type": "int" - }, - "type": { - "name": "Type", - "type": "string" - } - } - }, - "historical_event_collectionBattle": { - "name": "HistoricalEventCollectionBattle", - "named": true, - "fields": { - "attacking_hfid": { - "name": "AttackingHfid", - "type": "int", - "multiple": true - }, - "attacking_squad_deaths": { - "name": "AttackingSquadDeaths", - "type": "int", - "multiple": true - }, - "attacking_squad_entity_pop": { - "name": "AttackingSquadEntityPop", - "type": "int", - "multiple": true - }, - "attacking_squad_number": { - "name": "AttackingSquadNumber", - "type": "int", - "multiple": true - }, - "attacking_squad_race": { - "name": "AttackingSquadRace", - "type": "string", - "multiple": true - }, - "attacking_squad_site": { - "name": "AttackingSquadSite", - "type": "int", - "multiple": true - }, - "coords": { - "name": "Coords", - "type": "string" - }, - "defending_hfid": { - "name": "DefendingHfid", - "type": "int", - "multiple": true - }, - "defending_squad_deaths": { - "name": "DefendingSquadDeaths", - "type": "int", - "multiple": true - }, - "defending_squad_entity_pop": { - "name": "DefendingSquadEntityPop", - "type": "int", - "multiple": true - }, - "defending_squad_number": { - "name": "DefendingSquadNumber", - "type": "int", - "multiple": true - }, - "defending_squad_race": { - "name": "DefendingSquadRace", - "type": "string", - "multiple": true - }, - "defending_squad_site": { - "name": "DefendingSquadSite", - "type": "int", - "multiple": true - }, - "feature_layer_id": { - "name": "FeatureLayerId", - "type": "int" - }, - "individual_merc": { - "name": "IndividualMerc", - "type": "string", - "multiple": true - }, - "name": { - "name": "Name", - "type": "string" - }, - "noncom_hfid": { - "name": "NoncomHfid", - "type": "int", - "multiple": true - }, - "outcome": { - "name": "Outcome", - "type": "string" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - }, - "war_eventcol": { - "name": "WarEventcol", - "type": "int" - } - } - }, - "historical_event_collectionBeastAttack": { - "name": "HistoricalEventCollectionBeastAttack", - "fields": { - "coords": { - "name": "Coords", - "type": "string" - }, - "defending_enid": { - "name": "DefendingEnid", - "type": "int" - }, - "feature_layer_id": { - "name": "FeatureLayerId", - "type": "int" - }, - "ordinal": { - "name": "Ordinal", - "type": "int" - }, - "parent_eventcol": { - "name": "ParentEventcol", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - } - } - }, - "historical_event_collectionDuel": { - "name": "HistoricalEventCollectionDuel", - "fields": { - "attacking_hfid": { - "name": "AttackingHfid", - "type": "int" - }, - "coords": { - "name": "Coords", - "type": "string" - }, - "defending_hfid": { - "name": "DefendingHfid", - "type": "int" - }, - "feature_layer_id": { - "name": "FeatureLayerId", - "type": "int" - }, - "ordinal": { - "name": "Ordinal", - "type": "int" - }, - "parent_eventcol": { - "name": "ParentEventcol", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "subregion_id": { - "name": "SubregionId", - "type": "int" - } - } - }, - "historical_event_collectionOccasion": { - "name": "HistoricalEventCollectionOccasion", - "fields": { - "civ_id": { - "name": "CivId", - "type": "int" - }, - "occasion_id": { - "name": "OccasionId", - "type": "int" - }, - "ordinal": { - "name": "Ordinal", - "type": "int" - } - } - }, - "historical_event_collectionSiteConquered": { - "name": "HistoricalEventCollectionSiteConquered", - "fields": { - "attacking_enid": { - "name": "AttackingEnid", - "type": "int" - }, - "defending_enid": { - "name": "DefendingEnid", - "type": "int" - }, - "ordinal": { - "name": "Ordinal", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "war_eventcol": { - "name": "WarEventcol", - "type": "int" - } - } - }, - "historical_event_collectionWar": { - "name": "HistoricalEventCollectionWar", - "named": true, - "fields": { - "aggressor_ent_id": { - "name": "AggressorEntId", - "type": "int" - }, - "defender_ent_id": { - "name": "DefenderEntId", - "type": "int" - }, - "name": { - "name": "Name", - "type": "string" - } - } - }, - "historical_figure": { - "name": "HistoricalFigure", - "id": true, - "named": true, - "fields": { - "appeared": { - "name": "Appeared", - "type": "int" - }, - "associated_type": { - "name": "AssociatedType", - "type": "string" - }, - "birth_seconds72": { - "name": "BirthSeconds72", - "type": "int" - }, - "birth_year": { - "name": "BirthYear", - "type": "int" - }, - "caste": { - "name": "Caste", - "type": "string" - }, - "current_identity_id": { - "name": "CurrentIdentityId", - "type": "int" - }, - "death_seconds72": { - "name": "DeathSeconds72", - "type": "int" - }, - "death_year": { - "name": "DeathYear", - "type": "int" - }, - "deity": { - "name": "Deity", - "type": "string" - }, - "ent_pop_id": { - "name": "EntPopId", - "type": "int" - }, - "entity_former_position_link": { - "name": "EntityFormerPositionLink", - "type": "object", - "multiple": true - }, - "entity_link": { - "name": "EntityLink", - "type": "object", - "multiple": true - }, - "entity_position_link": { - "name": "EntityPositionLink", - "type": "object", - "multiple": true - }, - "entity_reputation": { - "name": "EntityReputation", - "type": "array", - "elements": "entity_id" - }, - "entity_squad_link": { - "name": "EntitySquadLink", - "type": "object" - }, - "force": { - "name": "Force", - "type": "string" - }, - "goal": { - "name": "Goal", - "type": "string", - "multiple": true - }, - "hf_link": { - "name": "HfLink", - "type": "object", - "multiple": true - }, - "hf_skill": { - "name": "HfSkill", - "type": "object", - "multiple": true - }, - "holds_artifact": { - "name": "HoldsArtifact", - "type": "int" - }, - "id": { - "name": "Id", - "type": "int" - }, - "interaction_knowledge": { - "name": "InteractionKnowledge", - "type": "string", - "multiple": true - }, - "intrigue_actor": { - "name": "IntrigueActor", - "type": "object" - }, - "intrigue_plot": { - "name": "IntriguePlot", - "type": "object", - "multiple": true - }, - "journey_pet": { - "name": "JourneyPet", - "type": "string", - "multiple": true - }, - "name": { - "name": "Name", - "type": "string" - }, - "race": { - "name": "Race", - "type": "string" - }, - "relationship_profile_hf_historical": { - "name": "RelationshipProfileHfHistorical", - "type": "object" - }, - "relationship_profile_hf_visual": { - "name": "RelationshipProfileHfVisual", - "type": "object", - "multiple": true - }, - "site_link": { - "name": "SiteLink", - "type": "object" - }, - "sphere": { - "name": "Sphere", - "type": "string", - "multiple": true - }, - "used_identity_id": { - "name": "UsedIdentityId", - "type": "int" - }, - "vague_relationship": { - "name": "VagueRelationship", - "type": "object", - "multiple": true - } - } - }, - "intrigue_actor": { - "name": "IntrigueActor", - "fields": { - "hfid": { - "name": "Hfid", - "type": "int" - }, - "local_id": { - "name": "LocalId", - "type": "int" - }, - "role": { - "name": "Role", - "type": "string" - }, - "strategy": { - "name": "Strategy", - "type": "string" - } - } - }, - "intrigue_plot": { - "name": "IntriguePlot", - "typed": true, - "fields": { - "actor_id": { - "name": "ActorId", - "type": "int" - }, - "artifact_id": { - "name": "ArtifactId", - "type": "int" - }, - "entity_id": { - "name": "EntityId", - "type": "int" - }, - "local_id": { - "name": "LocalId", - "type": "int" - }, - "on_hold": { - "name": "OnHold", - "type": "string" - }, - "type": { - "name": "Type", - "type": "string" - } - } - }, - "item": { - "name": "Item", - "fields": { - "name_string": { - "name": "NameString", - "type": "string" - }, - "page_number": { - "name": "PageNumber", - "type": "int" - }, - "page_written_content_id": { - "name": "PageWrittenContentId", - "type": "int" - }, - "writing_written_content_id": { - "name": "WritingWrittenContentId", - "type": "int" - } - } - }, - "musical_form": { - "name": "MusicalForm", - "id": true, - "fields": { - "description": { - "name": "Description", - "type": "string" - }, - "id": { - "name": "Id", - "type": "int" - } - } - }, - "poetic_form": { - "name": "PoeticForm", - "id": true, - "fields": { - "description": { - "name": "Description", - "type": "string" - }, - "id": { - "name": "Id", - "type": "int" - } - } - }, - "region": { - "name": "Region", - "id": true, - "named": true, - "typed": true, - "fields": { - "id": { - "name": "Id", - "type": "int" - }, - "name": { - "name": "Name", - "type": "string" - }, - "type": { - "name": "Type", - "type": "string" - } - } - }, - "relationship_profile_hf_historical": { - "name": "RelationshipProfileHfHistorical", - "fields": { - "fear": { - "name": "Fear", - "type": "int" - }, - "hf_id": { - "name": "HfId", - "type": "int" - }, - "love": { - "name": "Love", - "type": "int" - }, - "loyalty": { - "name": "Loyalty", - "type": "int" - }, - "respect": { - "name": "Respect", - "type": "int" - }, - "trust": { - "name": "Trust", - "type": "int" - } - } - }, - "relationship_profile_hf_visual": { - "name": "RelationshipProfileHfVisual", - "fields": { - "fear": { - "name": "Fear", - "type": "int" - }, - "hf_id": { - "name": "HfId", - "type": "int" - }, - "known_identity_id": { - "name": "KnownIdentityId", - "type": "int" - }, - "last_meet_seconds72": { - "name": "LastMeetSeconds72", - "type": "int" - }, - "last_meet_year": { - "name": "LastMeetYear", - "type": "int" - }, - "love": { - "name": "Love", - "type": "int" - }, - "loyalty": { - "name": "Loyalty", - "type": "int" - }, - "meet_count": { - "name": "MeetCount", - "type": "int" - }, - "rep_friendly": { - "name": "RepFriendly", - "type": "int" - }, - "rep_information_source": { - "name": "RepInformationSource", - "type": "int" - }, - "respect": { - "name": "Respect", - "type": "int" - }, - "trust": { - "name": "Trust", - "type": "int" - } - } - }, - "site": { - "name": "Site", - "id": true, - "typed": true, - "fields": { - "id": { - "name": "Id", - "type": "int" - }, - "type": { - "name": "Type", - "type": "string" - } - } - }, - "siteCamp": { - "name": "SiteCamp", - "named": true, - "fields": { - "coords": { - "name": "Coords", - "type": "string" - }, - "name": { - "name": "Name", - "type": "string" - }, - "rectangle": { - "name": "Rectangle", - "type": "string" - } - } - }, - "siteCave": { - "name": "SiteCave", - "named": true, - "fields": { - "coords": { - "name": "Coords", - "type": "string" - }, - "name": { - "name": "Name", - "type": "string" - }, - "rectangle": { - "name": "Rectangle", - "type": "string" - }, - "structures": { - "name": "Structures", - "type": "array", - "elements": "structure" - } - } - }, - "siteDarkFortress": { - "name": "SiteDarkFortress", - "named": true, - "fields": { - "coords": { - "name": "Coords", - "type": "string" - }, - "name": { - "name": "Name", - "type": "string" - }, - "rectangle": { - "name": "Rectangle", - "type": "string" - }, - "structures": { - "name": "Structures", - "type": "array", - "elements": "structure" - } - } - }, - "siteDarkPits": { - "name": "SiteDarkPits", - "named": true, - "fields": { - "coords": { - "name": "Coords", - "type": "string" - }, - "name": { - "name": "Name", - "type": "string" - }, - "rectangle": { - "name": "Rectangle", - "type": "string" - } - } - }, - "siteForestRetreat": { - "name": "SiteForestRetreat", - "named": true, - "fields": { - "coords": { - "name": "Coords", - "type": "string" - }, - "name": { - "name": "Name", - "type": "string" - }, - "rectangle": { - "name": "Rectangle", - "type": "string" - }, - "structures": { - "name": "Structures", - "type": "array", - "elements": "structure" - } - } - }, - "siteFortress": { - "name": "SiteFortress", - "named": true, - "fields": { - "coords": { - "name": "Coords", - "type": "string" - }, - "name": { - "name": "Name", - "type": "string" - }, - "rectangle": { - "name": "Rectangle", - "type": "string" - }, - "structures": { - "name": "Structures", - "type": "array", - "elements": "structure" - } - } - }, - "siteHamlet": { - "name": "SiteHamlet", - "named": true, - "fields": { - "coords": { - "name": "Coords", - "type": "string" - }, - "name": { - "name": "Name", - "type": "string" - }, - "rectangle": { - "name": "Rectangle", - "type": "string" - }, - "structures": { - "name": "Structures", - "type": "array", - "elements": "structure" - } - } - }, - "siteHillocks": { - "name": "SiteHillocks", - "named": true, - "fields": { - "coords": { - "name": "Coords", - "type": "string" - }, - "name": { - "name": "Name", - "type": "string" - }, - "rectangle": { - "name": "Rectangle", - "type": "string" - } - } - }, - "siteLabyrinth": { - "name": "SiteLabyrinth", - "named": true, - "fields": { - "coords": { - "name": "Coords", - "type": "string" - }, - "name": { - "name": "Name", - "type": "string" - }, - "rectangle": { - "name": "Rectangle", - "type": "string" - } - } - }, - "siteLair": { - "name": "SiteLair", - "named": true, - "fields": { - "coords": { - "name": "Coords", - "type": "string" - }, - "name": { - "name": "Name", - "type": "string" - }, - "rectangle": { - "name": "Rectangle", - "type": "string" - } - } - }, - "siteShrine": { - "name": "SiteShrine", - "named": true, - "fields": { - "coords": { - "name": "Coords", - "type": "string" - }, - "name": { - "name": "Name", - "type": "string" - }, - "rectangle": { - "name": "Rectangle", - "type": "string" - } - } - }, - "siteTown": { - "name": "SiteTown", - "named": true, - "fields": { - "coords": { - "name": "Coords", - "type": "string" - }, - "name": { - "name": "Name", - "type": "string" - }, - "rectangle": { - "name": "Rectangle", - "type": "string" - }, - "structures": { - "name": "Structures", - "type": "array", - "elements": "structure" - } - } - }, - "siteVault": { - "name": "SiteVault", - "named": true, - "fields": { - "coords": { - "name": "Coords", - "type": "string" - }, - "name": { - "name": "Name", - "type": "string" - }, - "rectangle": { - "name": "Rectangle", - "type": "string" - } - } - }, - "site_link": { - "name": "SiteLink", - "fields": { - "entity_id": { - "name": "EntityId", - "type": "int" - }, - "link_type": { - "name": "LinkType", - "type": "string" - }, - "occupation_id": { - "name": "OccupationId", - "type": "int" - }, - "site_id": { - "name": "SiteId", - "type": "int" - }, - "sub_id": { - "name": "SubId", - "type": "int" - } - } - }, - "structure": { - "name": "Structure", - "typed": true, - "fields": { - "local_id": { - "name": "LocalId", - "type": "int" - }, - "type": { - "name": "Type", - "type": "string" - } - } - }, - "structureTemple": { - "name": "StructureTemple", - "named": true, - "fields": { - "entity_id": { - "name": "EntityId", - "type": "int" - }, - "name": { - "name": "Name", - "type": "string" - } - } - }, - "underground_region": { - "name": "UndergroundRegion", - "id": true, - "typed": true, - "fields": { - "id": { - "name": "Id", - "type": "int" - }, - "type": { - "name": "Type", - "type": "string" - } - } - }, - "vague_relationship": { - "name": "VagueRelationship", - "fields": { - "childhood_friend": { - "name": "ChildhoodFriend", - "type": "string" - }, - "hfid": { - "name": "Hfid", - "type": "int" - }, - "jealous_obsession": { - "name": "JealousObsession", - "type": "string" - }, - "war_buddy": { - "name": "WarBuddy", - "type": "string" - } - } - }, - "written_content": { - "name": "WrittenContent", - "id": true, - "fields": { - "author_hfid": { - "name": "AuthorHfid", - "type": "int" - }, - "author_roll": { - "name": "AuthorRoll", - "type": "int" - }, - "form": { - "name": "Form", - "type": "string" - }, - "form_id": { - "name": "FormId", - "type": "int" - }, - "id": { - "name": "Id", - "type": "int" - }, - "style": { - "name": "Style", - "type": "string", - "multiple": true - }, - "title": { - "name": "Title", - "type": "string" - } - } - } -} \ No newline at end of file