diff --git a/src/main/java/net/datafaker/providers/videogame/FinalFantasyXIV.java b/src/main/java/net/datafaker/providers/videogame/FinalFantasyXIV.java new file mode 100644 index 000000000..d9c82c945 --- /dev/null +++ b/src/main/java/net/datafaker/providers/videogame/FinalFantasyXIV.java @@ -0,0 +1,37 @@ +package net.datafaker.providers.videogame; + +import net.datafaker.providers.base.AbstractProvider; + +/** + * Final Fantasy XIV is an MMORPG and features a persistent world in which players can interact with each other and the environment. + * Players create and customize their characters for use in the game, including name, race, gender, facial features, and starting class. + * + * @since 2.0.0 + */ +public class FinalFantasyXIV extends AbstractProvider { + + protected FinalFantasyXIV(VideoGameProviders faker) { + super(faker); + } + + public String character() { + return resolve("final_fantasy_xiv.characters"); + } + + public String job() { + return resolve("final_fantasy_xiv.jobs"); + } + + public String race() { + return resolve("final_fantasy_xiv.races"); + } + + public String dataCenter() { + return resolve("final_fantasy_xiv.data_centers"); + } + + public String zone() { + return resolve("final_fantasy_xiv.zones"); + } + +} diff --git a/src/main/java/net/datafaker/providers/videogame/VideoGameProviders.java b/src/main/java/net/datafaker/providers/videogame/VideoGameProviders.java index f7002d480..ef2056adc 100644 --- a/src/main/java/net/datafaker/providers/videogame/VideoGameProviders.java +++ b/src/main/java/net/datafaker/providers/videogame/VideoGameProviders.java @@ -35,6 +35,10 @@ default Fallout fallout() { return getProvider(Fallout.class, Fallout::new); } + default FinalFantasyXIV finalFantasyXIV() { + return getProvider(FinalFantasyXIV.class, FinalFantasyXIV::new); + } + default HalfLife halfLife() { return getProvider(HalfLife.class, HalfLife::new); } diff --git a/src/main/java/net/datafaker/service/files/EnFile.java b/src/main/java/net/datafaker/service/files/EnFile.java index 18783e04f..b8c97af37 100644 --- a/src/main/java/net/datafaker/service/files/EnFile.java +++ b/src/main/java/net/datafaker/service/files/EnFile.java @@ -110,6 +110,7 @@ public String getPath() { "fallout.yml", "famous_last_words.yml", "file.yml", + "final_fantasy_xiv.yml", "final_space.yml", "finance.yml", "food.yml", diff --git a/src/main/resources/en/final_fantasy_xiv.yml b/src/main/resources/en/final_fantasy_xiv.yml new file mode 100644 index 000000000..17397f4af --- /dev/null +++ b/src/main/resources/en/final_fantasy_xiv.yml @@ -0,0 +1,753 @@ +en: + faker: + final_fantasy_xiv: + characters: + - Alphinaud Leveilleur + - Alisaie Leveilleur + - Y'shtola Rhul + - Thancred Waters + - Lyse Hext + - Urianger Augurelt + - G'raha Tia + - Estinien Wyrmblood + - Tataru Taru + - Krile Mayer Baldesion + - Minfilia Warde + - Louisoix Leveilleur + - Papalymo Totolymo + - Yda Hext + - F'lhaminn Qesh + - Unukalhai + - Moenbryda Wilfsunnwyn + - Arenvald Lentinus + - Riol Forrest + - Alianne Vellegrance + - Aenor Cockburne + - Aergmhus Saehstymmsyn + - Bluomwyda + - Clemence + - Coultenet Dailebaure + - Ephemie Giphelmont + - Hoary Boulder + - Ocher Boulder + - Una Tayuun + - V'mah Tia + - Noraxia + - Kan-E-Senna + - Merlwyb Bloefhiswyn + - Raubahn Aldynn + - Nanamo Ul Namo + - Aymeric de Borel + - Cid nan Garlond + - Biggs + - Wedge + - Jessie Jaye + - Alpha + - Cato Mammula + - Lilja Sjasaris + - Emet-Selch + - Elidibus + - Lahabrea + - Igeyorhm + - Nabriales + - Fandaniel + - Pashtarot + - Loghrif + - Mitron + - Travanchet + - Hythlodaeus + - Venat + - Erichthonios + - Solus zos Galvus + - Varis zos Galvus + - Zenos yae Galvus + - Gaius van Baelsar + - Nael van Darnus + - Asahi sas Brutus + - Aulus mal Asina + - Basch van Gabranth + - Fordola rem Lupis + - Grynewaht pyr Arvina + - Lambard Calowise + - Livia sas Junius + - Maxima quo Priscus + - Midas nan Garlond + - Nero tol Scaeva + - Noah van Gabranth + - Regula van Hydrus + - Rhitahtyn sas Arvina + - Vitus quo Messalla + - Allie + - Clarricie Priscus + - Drusilla + - Dyunbu Potitus + - Fabineau Soranus + - Gilbrisbert Buteo + - Hernais Longus + - Jullus Norbanus + - Llofii Potitus + - Lyon Helsos + - Menenius Lanatus + - Milisandia + - Pagaga Vochstein + - Quintus Cinna + - Rex + - Ricon + - Sadr Albeleo + - Sartauvoir Soranus + - Sicinius Vellutus + - Valens Varro + - Vergilia Corculum + - Yamatsumi Urabe + - A-Ruhn-Senna + - A-Towa-Cant + - Buscarron Stacks + - Cicely + - Drake Rhodes + - E-Sumi-Yan + - Eschiva Keyes + - Foulques + - Fufucha Fucha + - Gerolt Blackthorn + - Geva Storke + - Guydelot Thildonnet + - Isildaure Vellegrance + - Janremi Blackheart + - Jehantel Fointeaume + - Joacin + - Landenel Peaumasquier + - Laurentius Daye + - Leih Aliapoh + - Lina Mewrilah + - Luciane Corne + - Millith Ironheart + - Miounne + - Nolanel + - O-App-Pesi + - Pawah Mujuuk + - Raya-O-Senna + - Sanson Smyth + - Silvairre + - Swethyna Brookstone + - Sylphie Webb + - Tatabaru + - Tataramu + - Sezul Totoloc + - Voyce + - Wulfiue + - Ywain Deepwell + - Zhai'a Nelhah + - Frixio' + - Adalberta Sterne + - Aldis + - Chuchuto Chuto + - Cocobani + - Cocobezi + - Cocoboha + - Cocobuki Lolobuki + - Cocobusi + - Cocobygo + - Colbernoux + - Dancing Wolf + - Deep Canyon + - Dewlala Dewla + - Eline Roaille + - Erik + - F'hobhas + - Fyrgeiss Loetkilbsyn + - Gagaruna + - Greinfarr Redblade + - Hamon Holyfist + - Iliud + - Jenlyns Aesc + - Kikipu Kipu + - Lalai Lai + - Leavold + - Lewena + - Lolorito Nanarito + - Loonh Gah + - Martyn + - Memeriga + - Momodi Modi + - Mumuepo + - Mylla Swordsong + - Nenekko Nekko + - Niellefresne Thaudour + - Nutiba Buntiba + - Pipin Tarupin + - Popokkuli and Seserukka + - P'yandih + - Qhota Nbolo + - Ququruka Tataruka + - Redolent Rose + - Royse + - Rurukuta + - Serendipity + - Severian Lyctor + - Solkzagyl Keltnaglsyn + - Teledji Adeledji + - Tristan Lowe + - U'odh Nunh + - Valiant Hart + - Waldeve + - Whastrach + - Weggfarr + - Wide Gulley + - Yayake Yake + - Yuyuhase Luluhase + - Zirnberk + - Dozol Meloc + - Kazagg Chah + - Mutamix Bubblypots + - Alka Zolka + - Arya Gastaurknan + - Baderon Tenfingers + - Brithael Spade + - Broken Mountain + - Carvallain de Gorgagne + - Curious Gorge + - Doesmaga Poisonheart + - Eynzahr Slafyrsyn + - H'mhasi Tia + - H'naanza Esi + - Hyllfyr Faezmoensyn + - Jacke Swallow + - K'lyhia + - K'rhid Tia + - Latisha + - Lorens + - Lyngsath Hyllbornsyn + - Madison + - Melkoko Melko + - Mimidoa Nanadoa + - Perimu Haurimu + - R'ashaht Rhiki + - Reyner Hansred + - Rhoswen Leach + - Rostnsthal + - Shamani Lohmani + - Sisipu Sipu + - Solkwyb Saelsmyndsyn + - Thubyrgeim Guldweitzwyn + - V'kebbe + - Wawalago Momolago + - Wheiskaet Rysswoerdsyn + - Wyrnzoen Saelsmyndsyn + - 13th Order Fugleman Zo Ga + - 175th Order Alchemist Bi Bi + - 789th Order Pickman Gi Gu + - Ga Bu + - Brayflox Alltalks + - Govv + - Surito Carito + - Setoto Seto + - Talan + - Rowena + - Estinien Wyrmblood + - Ysayle Dangoulain + - Thordan VII + - Edmont de Fortemps + - Artoirel de Fortemps + - Emmanellain de Fortemps + - Haurchefant Greystone + - Alberic Bale + - Ansaulme de Rougecarpe + - Audaine + - Augebert + - Aurvael de Haillenarte + - Ayleth + - Baurendouin de Haillenarte + - Charlemend de Durendaire + - Constaint + - Dominiac + - Drillemont de Lasserrant + - Forlemort + - Foncrineau + - Elaisse Poole + - Francel de Haillenarte + - Fray Myste + - Gontrandoix + - Guillaime + - Guillefresne + - Haldrath + - Handeloup de Daimbaux + - Hautdlong + - Heustienne de Vimaroix + - Hilda Ware + - Honoroit Banlardois + - Hourlinet + - Jannequinard de Durendaire + - Jantellot de Thelomaire + - Joye + - Julchiezain + - Laniaitte de Haillenarte + - Lucia goe Junius + - Lycelle + - Marcelloix + - Muscadain de Citenrond + - Noalle + - Pehainel + - Peyraquile + - Quimperain Evertrue + - Rasequin + - Redwald Younge + - Rielle de Caulignont + - Saintrelmaux + - Ser Adelphel de Chevraudan + - Ser Charibert de Leusignac + - Ser Grinnaux de Dzemael + - Ser Guerrique de Montrohain + - Ser Haumeric de Peulagnon + - Ser Hermenost de la Treaumaille + - Ser Janlenoux de Courcillant + - Ser Ignasse de Vesnaint + - Ser Noudenet de Jaimberd + - Ser Paulecrain de Fanouilley + - Ser Zephirin de Valhourdin + - Ser Vellguine de Bourbagne + - Sidurgu Orl + - Sigan + - Stephanivien de Haillenarte + - Sylvetrel de Dzemael + - Tedalgrinche + - Thomelin + - Thordan I + - Ystride de Caulignont + - Midgardsormr + - Bahamut + - Hraesvelgr + - Nidhogg + - Ratatoskr + - Tiamat + - Vrtra + - Azdaja + - Ehll Tou + - Faunehm + - Orn Khai + - Twintania + - Vedrfolnir + - Vidofnir + - Vishap + - Adri Westwoode + - Conrad Kemp + - Curtis Hext + - D'zentsa + - Gundobald + - H'raha Tia + - Hewerald + - Ilberd Feare + - J'moldva + - M'naago Rahz + - Meffrid Noward + - O'tchakha + - Raulf Redhill + - The Griffin + - Ulger Ironheart + - Widargelt Beake + - Wilred Glasse + - X'rhun Tia + - Slowfix Cointoss + - Adkiragh + - Khloe Aliapoh + - Mide Hotogo + - Midnight Dew + - T'kebbe Morh + - Zhloe Aliapoh + - Loifa + - Quickthinx Allthoughts + - Chieftain Moglin + - Master Mogzin + - Leofard Myste + - Stacia Myste + - Radlia Keene + - Cait Sith + - Ejika Tsunjika + - Faldrinet + - Fourchenault Leveilleur + - Koh Rabntah + - Lalah Jinjahl + - Leveva Byrde + - Matoya + - Mikoto Jinba + - Rammbroes Zasertylsyn + - Rhesh Polaali + - Y'mhitra Rhul + - Hien Rijin + - Yugiri Mistwalker + - Gosetsu Everfall + - Yotsuyu goe Brutus + - Azami Shibunuri + - Anzu Zenbu + - Gekkai + - Ginko + - Gogo + - Hakuro Gunji + - Hozan Nagae + - Isse Shibunuri + - Karasu Kanshi + - Kinko + - Kurobana + - Mikuzume + - Oboro Torioi + - Tsubame Oshidari + - Yozan Nagae + - Tenzen + - Seiryu + - Suzaku + - Byakko + - Genbu + - Ramza Beoulve + - Delita Heiral + - Alma Beoulve + - Agrias Oaks + - Fran Eruyt + - Montblanc + - Ashelia + - Rasler + - Ba'Gamnan + - Rofocale + - Sophie + - Alma bas Lexentale + - Jenomis cen Lexentale + - Ramza bas Lexentale + - Wandering Dramaturge + - Akagi + - Hanzo + - Hancock Fitzgerald + - Kikimo Kimo + - Kotokaze Benitoki + - Kyokuho Moribe + - Makoto Obinata + - Yatsurugi no Yuki + - Hansaku Ushikai + - Hisui Sui + - Kurenai Shisui + - Rasho Mastbreaker + - Shiosai Sui + - Soroban + - Suzume Kaisuri + - Tansui + - Tsukikage Urabe + - Cirina Mol + - Magnai Oronir + - Sadu Dotharl + - Alaqa + - Altani Dataq + - Anarba Dataq + - Chambui Dazkar + - Dorgono Qerel + - Gurbesu Goro + - Khalja Dataq + - Nayaga + - Ogul Khatayin + - Sokhatai Dataq + - Bajsaljen Ulgasch + - Marsak Apella + - Misija Votyasch + - Rostik Liubasch + - Blaz Azetina + - Isolde Covey + - Lovro Slanasch + - Meryall Miller + - Stanik Alubov + - Velibor Azetina + - Xeven Svanasch + - Dabog Inivisch + - Radovan + - Ardashir Balyk + - Jalzahn Daemir + - Nashmeira + - Pasareen + - Ranaa Mihgo + - Yezahn + - Nidhana + - Ardbert + - Branden + - Cylva + - Lamitt + - Nyelbert + - Renda-Rae + - The Crystal Exarch + - Ryne + - Beq Lugg + - Callea + - Cerigg + - Gaia + - Giott + - Granson + - Lue-Reeq + - Lyna + - Mauwyl + - Nielden + - Taynor + - Tolas + - Tesleen + - Halric + - Vauthry + - Ran'jit + - Jongleurs of Eulmore + - Chai-Nuzz + - Dulia-Chai + - Tista-Bie + - Anogg and Konogg + - Eueliss + - Kai-Shirr + - Lanbyrd + - Olvara + - Sai-Lewq + - Tristol + - Feo Ul + - An Lad + - Ezel II + - Seto + - Sul Oul + - Tonatiuh + - Titania + - Tyr Beq + - Sauldia + - Tadric + - Almet + - Cymet + - Uimet + - Ciuna + - Phyna + - Quinfort + - Valan + - Runar + - Xande + - Doga + - Unei + - Amon + - Phlegethon + - Scylla + - Glasya Labolas + - Ultima Weapon + - Halone + - Menphina + - Nymeia + - Byregot + - Rhalgr + - Azeyma + - Nald + - Thal + - Nophica + - Althyk + - Hydaelyn, Divine Light + - Zodiark, Eternal Darkness + - Ifrit, Lord of the Inferno + - Titan, Lord of Crags + - Garuda, Lady of the Vortex + - Good King Moggle Mog XII + - Leviathan, Lord of the Whorl + - Ramuh, Lord of Levin + - Shiva, Lady of Frost + - Phoenix, Mythical Bird of Rebirth + - Odin, The Dark Divinity + - Bismarck, Lord of the Mists + - Ravana, Lord of the Hive + - King Thordan + - Sephirot, the Fiend + - Sophia, the Goddess + - Zurvan, the Demon + - Alexander, the Colossus + - Susano, Lord of the Revel + - Lakshmi, Lady of Bliss + - Shinryu, Dragon God of Vengeance + - Tsukuyomi + - Enkidu + - Eureka + - The Twelve + - The Queen, Vengeful Eikon + - Diabolos + - Cloud of Darkness + - Ferdiad + - Scathach + - Zero + - Scarmiglione, Blighted Despot + - Barbariccia, Empress of the Winds + - Cagnazzo, Drowned King + - Rubicante, Autarch of Flame + - Golbez + - Hildibrand Manderville + - Godbert Manderville + - Julyan Manderville + - Nashu Mhakaracca + - Briardien de Manseauguel + - Cyr Blyme + - Ellie Ryse + - Gigi + - Gilgamesh + - Typhon and Ultros + - Yojimbo + - Ardashir Balyk + - Gerolt Blackthorn + - Drake Rhodes + - Jalzahn Daemir + - Rowena + - Edda Pureheart + - Jandelaine + - Martyn + - Nhaza'a Jaab + - Reyna Breakhook + - Rhesh Polaali + - Wandering Minstrel + - Naoki Yoshida + - Nohi + - Aldiytha Thorne + - Amh Garanjy + - Damielliot + - Impresario + - Jihli Aliapoh + - Kipih Jakkya + - Laurenssen + - Lorie + - Momoru + - Nanapasi + - Ninimo + - Rodolph + - Royal seneschal + - Songbirds + - Unsavory Imp + - Omega + - N-7000 + - Livingway + - Jammingway + - Puddingway + - Shantotto + - Iroha + - Lightning + - Odin + - Garuda + - Noctis Lucis Caelum + - Lunafreya Nox Fleuret + - Nybeth Obdilord + - 2B + - 2P + - 9S + jobs: + - Paladin + - Gladiator + - Warrior + - Marauder + - Dark Knight + - Gunbreaker + - White Mage + - Scholar + - Astrologian + - Sage + - Arcanist + - Red Mage + - Black Mage + - Blue Mage + - Thaumaturge + - Summoner + - Lancer + - Dragoon + - Monk + - Ninja + - Rogue + - Samurai + - Reaper + - Bard + - Archer + - Machinist + - Dancer + - Fisher + - Botanist + - Miner + - Carpenter + - Blacksmith + - Armorer + - Goldsmith + - Leatherworker + - Weaver + - Alchemist + - Culinarian + races: + - Au Ra + - Viera + - Miqo'te + - Hrothgar + - Lalafell + - Elezen + - Roegadyn + - Hyur + data_centers: + - Aether + - Crystal + - Dynamis + - Primal + - Chaos + - Light + - Materia + - Elemental + - Gaia + - Mana + - Meteor + zones: + - Limsa Lominsa Upper Decks + - Limsa Lominsa Lower Decks + - Mist + - Wolves' Den Pier + - Middle La Noscea + - Lower La Noscea + - Eastern La Noscea + - Western La Noscea + - Upper La Noscea + - Outer La Noscea + - New Gridania + - Old Gridania + - The Lavender Beds + - Central Shroud + - East Shroud + - South Shroud + - North Shroud + - Ul'dah - Steps of Nald + - Ul'dah - Steps of Thal + - The Goblet + - The Gold Saucer + - Western Thanalan + - Central Thanalan + - Eastern Thanalan + - Southern Thanalan + - Northern Thanalan + - Foundation + - The Pillars + - Empyreum + - Coerthas Central Highlands + - Coerthas Western Highlands + - Mor Dhona + - The Sea of Clouds + - Azys Lla + - Idyllshire + - The Dravanian Forelands + - The Dravanian Hinterlands + - The Churning Mists + - Rhalgr's Reach + - The Fringes + - The Peaks + - The Lochs + - Kugane + - Shirogane + - The Ruby Sea + - Yanxia + - The Azim Steppe + - The Crystarium + - Lakeland + - Eulmore + - Kholusia + - Amh Araeng + - Il Mheg + - The Rak'tika Greatwood + - The Tempest + - Old Sharlayan + - Labyrinthos + - Garlemald + - Radz-at-Han + - Thavnair + - Mare Lamentorum + - Ultima Thule + - Elpis + - Gangos + - The Omphalos + - Unnamed Island diff --git a/src/test/java/net/datafaker/providers/videogame/FinalFantasyXIVTest.java b/src/test/java/net/datafaker/providers/videogame/FinalFantasyXIVTest.java new file mode 100644 index 000000000..425c66672 --- /dev/null +++ b/src/test/java/net/datafaker/providers/videogame/FinalFantasyXIVTest.java @@ -0,0 +1,20 @@ +package net.datafaker.providers.videogame; + +import java.util.Collection; +import java.util.List; + +public class FinalFantasyXIVTest extends VideoGameFakerTest { + + private final FinalFantasyXIV finalFantasyXIV = getFaker().finalFantasyXIV(); + + @Override + protected Collection providerListTest() { + return List.of( + TestSpec.of(finalFantasyXIV::character, "final_fantasy_xiv.characters"), + TestSpec.of(finalFantasyXIV::job, "final_fantasy_xiv.jobs"), + TestSpec.of(finalFantasyXIV::race, "final_fantasy_xiv.races"), + TestSpec.of(finalFantasyXIV::dataCenter, "final_fantasy_xiv.data_centers"), + TestSpec.of(finalFantasyXIV::zone, "final_fantasy_xiv.zones") + ); + } +}