Add Automatic NameKind to EntityConfig

+ add animal entities for wildlife spawns
This commit is contained in:
juliancoffee 2021-07-11 21:24:44 +03:00
parent d04364b1f1
commit 23a020f602
151 changed files with 976 additions and 94 deletions

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Crazy Sheep"),
name: Name("Crazy Sheep"),
body: RandomWith("sheep"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Yan Hus"),
name: Name("Yan Hus"),
body: RandomWith("humanoid"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Big Goose"),
name: Name("Big Goose"),
body: RandomWith("goose"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Harvester"),
name: Name("Harvester"),
body: RandomWith("harvester"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Gnarling Stalker"),
name: Name("Gnarling Stalker"),
body: RandomWith("gnarling"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Deadwood"),
name: Name("Deadwood"),
body: RandomWith("deadwood"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Gnarling Mugger"),
name: Name("Gnarling Mugger"),
body: RandomWith("gnarling"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Gnarling Shaman"),
name: Name("Gnarling Shaman"),
body: RandomWith("gnarling"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Yeti"),
name: Name("Yeti"),
body: RandomWith("yeti"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Adlet Tracker"),
name: Name("Adlet Tracker"),
body: RandomWith("adlet"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Rat"),
name: Name("Rat"),
body: RandomWith("rat"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Adlet Hunter"),
name: Name("Adlet Hunter"),
body: RandomWith("adlet"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Adlet Shaman"),
name: Name("Adlet Shaman"),
body: RandomWith("adlet"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Tidal Warrior"),
name: Name("Tidal Warrior"),
body: RandomWith("tidalwarrior"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Sahagin Sniper"),
name: Name("Sahagin Sniper"),
body: RandomWith("sahagin"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Hakulaq"),
name: Name("Hakulaq"),
body: RandomWith("hakulaq"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Sahagin Spearman"),
name: Name("Sahagin Spearman"),
body: RandomWith("sahagin"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Sahagin Sorcerer"),
name: Name("Sahagin Sorcerer"),
body: RandomWith("sahagin"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Bonerattler"),
name: Name("Bonerattler"),
body: RandomWith("bonerattler"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Clay Golem"),
name: Name("Clay Golem"),
body: RandomWith("claygolem"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Haniwa Archer"),
name: Name("Haniwa Archer"),
body: RandomWith("haniwa"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Haniwa Sentry"),
name: Name("Haniwa Sentry"),
body: Exact(Object(HaniwaSentry)),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Haniwa Guard"),
name: Name("Haniwa Guard"),
body: RandomWith("haniwa"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Haniwa Sorcerer"),
name: Name("Haniwa Sorcerer"),
body: RandomWith("haniwa"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Minotaur"),
name: Name("Minotaur"),
body: RandomWith("minotaur"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Myrmidon Marksman"),
name: Name("Myrmidon Marksman"),
body: RandomWith("myrmidon"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Dullahan"),
name: Name("Dullahan"),
body: RandomWith("dullahan"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Myrmidon Hoplite"),
name: Name("Myrmidon Hoplite"),
body: RandomWith("myrmidon"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Myrmidon Wizard"),
name: Name("Myrmidon Wizard"),
body: RandomWith("myrmidon"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Beastmaster"),
name: Name("Beastmaster"),
body: RandomWith("humanoid"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Mindflayer"),
name: Name("Mindflayer"),
body: RandomWith("mindflayer"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Cultist"),
name: Name("Cultist"),
body: RandomWith("humanoid"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Tamed Darkhound"),
name: Name("Tamed Darkhound"),
body: RandomWith("darkhound"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Cultist Husk"),
name: Name("Cultist Husk"),
body: RandomWith("husk"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Husk Brute"),
name: Name("Husk Brute"),
body: RandomWith("husk_brute"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Possessed Turret"),
name: Name("Possessed Turret"),
body: Exact(Object(Crossbow)),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Cultist Warlock"),
name: Name("Cultist Warlock"),
body: RandomWith("cultist_warlock"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Cultist Warlord"),
name: Name("Cultist Warlord"),
body: RandomWith("cultist_warlord"),
alignment: Alignment(Enemy),

View File

@ -1,6 +1,9 @@
EntityConfig (
/// Name of Entity
name: Some("Paddy"),
/// Can be Name(String) with given name
/// or Automatic which will call automatic name depend on Body
/// or Uninit (means it should be specified somewhere in code)
name: Name("Paddy"),
/// Body
/// Can be Exact (Body with all fields e.g BodyType, Species, Hair color and such)
@ -18,7 +21,7 @@ EntityConfig (
loot: LootTable("common.loot_tables.humanoids"),
/// Hands:
/// - TwoHanded(ItemSpec) for one weapon 2h or 1h,
/// - TwoHanded(ItemSpec) for one 2h or 1h weapon,
/// - Paired(ItemSpec) for two 1h weapons aka berserker mode,
/// - Mix {
/// mainhand: ItemSpec,

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Training Dummy"),
name: Name("Training Dummy"),
body: Exact(Object(TrainingDummy)),
alignment: Alignment(Passive),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Guard"),
name: Name("Guard"),
body: RandomWith("humanoid"),
alignment: Alignment(Npc),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Merchant"),
name: Name("Merchant"),
body: RandomWith("humanoid"),
alignment: Alignment(Npc),

View File

@ -1,6 +1,5 @@
EntityConfig (
// name is specified outsite
name: None,
name: Automatic,
body: RandomWith("humanoid"),
alignment: Alignment(Npc),

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("alligator"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("archaeos"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("asp"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("batfox"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("bear"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("bonerattler"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("cockatrice"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("crocodile"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("cyclops"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("deadwood"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("dodarock"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Dreadhorn"),
name: Automatic,
body: RandomWith("dreadhorn"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Frostfang"),
name: Automatic,
body: RandomWith("frostfang"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Grolgar"),
name: Automatic,
body: RandomWith("grolgar"),
alignment: Alignment(Enemy),

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("hakulaq"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("hyena"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("icepike"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("lavadrake"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("lion"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Mammoth"),
name: Automatic,
body: RandomWith("mammoth"),
alignment: Alignment(Enemy),

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("maneater"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("saurok_mighty"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("monitor"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Mountain Troll"),
name: Automatic,
body: RandomWith("troll_mountain"),
alignment: Alignment(Enemy),

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("ngoubou"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("ntouka"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("saurok_occult"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("odonto"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("ogre"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Rock Snapper"),
name: Automatic,
body: RandomWith("rocksnapper"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Roshwalr"),
name: Automatic,
body: Exact(QuadrupedMedium(Body(
species: Roshwalr,
body_type: Male,

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: Exact(QuadrupedMedium(Body(species: Roshwalr, body_type: Female))),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("sabertooth"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("raptor_sand"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("sandshark"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("saurok_sly"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Snow Leopard"),
name: Automatic,
body: RandomWith("snowleopard"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Snow Raptor"),
name: Automatic,
body: RandomWith("raptor_snow"),
alignment: Alignment(Enemy),

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("sunlizard"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("troll_swamp"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("tarasque"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("tiger"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Wendigo"),
name: Automatic,
body: RandomWith("wendigo"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Wolf"),
name: Automatic,
body: RandomWith("wolf"),
alignment: Alignment(Enemy),

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("raptor_wood"),
alignment: Alignment(Enemy),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Yale"),
name: Automatic,
body: RandomWith("yale"),
alignment: Alignment(Enemy),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Alpaca"),
name: Automatic,
body: RandomWith("alpaca"),
alignment: Alignment(Wild),

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("antelope"),
alignment: Alignment(Wild),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Fox"),
name: Name("Arctic Fox"),
body: Exact(QuadrupedSmall(Body(species: Fox, body_type: Female))),
alignment: Alignment(Wild),

View File

@ -1,5 +1,5 @@
EntityConfig (
name: Some("Hare"),
name: Name("Arctic Hare"),
body: Exact(QuadrupedSmall(Body(species: Hare, body_type: Female))),
alignment: Alignment(Wild),

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("axolotl"),
alignment: Alignment(Wild),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("beaver"),
alignment: Alignment(Wild),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("boar"),
alignment: Alignment(Wild),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("camel"),
alignment: Alignment(Wild),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("catoblepas"),
alignment: Alignment(Wild),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("cattle"),
alignment: Alignment(Wild),
loot: Uninit,
hands: Uninit,
meta: [],
)

View File

@ -0,0 +1,11 @@
EntityConfig (
name: Automatic,
body: RandomWith("chicken"),
alignment: Alignment(Wild),
loot: Uninit,
hands: Uninit,
meta: [],
)

Some files were not shown because too many files have changed in this diff Show More