map_list = { {name = "Toutes les Zones", list = {{name = "Toutes les Zones"}}, ignore_recruit_window = true }, {name = "Prontera", list = {{name = "Environs"}, {name = "Égouts de Prontera N1"}, {name = "Égouts de Prontera N2"}, {name = "Égouts de Prontera N3"}, {name = "Égouts de Prontera N4", colorR = 255, colorG = 0, colorB = 0}, {name = "Forêt Labyrinthe N1"}, {name = "Forêt Labyrinthe N2"}, {name = "Forêt Labyrinthe N3", colorR = 255, colorG = 0, colorB = 0}} }, {name = "Geffen", list = {{name = "Environs"}, {name = "Village des Bohémiennes"}, {name = "Donjon de Geffen N1"}, {name = "Donjon de Geffen N2", colorR = 255, colorG = 0, colorB = 0}, {name = "Donjon de Geffen N3", colorR= 255, colorG = 0, colorB = 0}, {name = "Geffenia"}, {name = "Village des Orcs", colorR = 255, colorG = 0, colorB = 0}, {name = "Donjon des Orcs N1"}, {name = "Donjon des Orcs N2"}} }, {name = "Payon", list = {{name = "Forêt", colorR = 255, colorG = 0, colorB = 0}, {name = "Grotte de Payon N1"}, {name = "Grotte de Payon N2"}, {name = "Grotte de Payon N3"}, {name = "Grotte N4 (Temple Souterrain)"}, {name = "Grotte N5 (Temple Souterrain)", colorR = 255, colorG = 0, colorB = 0}} }, {name = "Aldebaran", list = {{name = "Mt. Mjolnir, Nord", colorR = 255, colorG = 0, colorB = 0}, {name = "Mt. Mjolnir, environs Nord"}, {name = "Mt. Mjolnir, Sud"}, {name = "Mt. Mjolnir, environs Sud"}, {name = "Mjolnir, Montagnes de la Mort N1"}, {name = "Mjolnir, Montagnes de la Mort N2"}, {name = "Mjolnir, Montagnes de la Mort N3"}, {name = "Tour de l'Horloge N1"}, {name = "Tour de l'Horloge N2"}, {name = "Tour de l'Horloge N3"}, {name = "Tour de l'Horloge N4"}, {name = "Tour de l'Horloge S1"}, {name = "Tour de l'Horloge S2"}, {name = "Tour de l'Horloge S3"}, {name = "Tour de l'Horloge S4"}} }, {name = "Alberta", list = {{name = "Bateau Submergé N1"}, {name = "Bateau Submergé N1", colorR = 255, colorG = 0, colorB = 0}, {name = "Île de la Tortue"}, {name = "Donjon de l'Île de la Tortue"}, {name = "Village des Tortues"}, {name = "Palais des Tortues", colorR = 255, colorG = 0, colorB = 0}} }, {name = "Morroc", list = {{name = "Désert de Sograt", colorR = 255, colorG = 0, colorB = 0}, {name = "Environs de Morroc (Gorge Dimensionnelle)", colorR = 255, colorG = 0, colorB = 0}, {name = "Enfer des Fourmis N1"}, {name = "Enfer des Fourmis N2", colorR = 255, colorG = 0, colorB = 0}, {name = "Sphinx S1"}, {name = "Sphinx S2"}, {name = "Sphinx S3"}, {name = "Sphinx S4"}, {name = "Sphinx S5", colorR = 255, colorG = 0, colorB = 0}, {name = "Pyramide N1"}, {name = "Pyramide N2"}, {name = "Pyramide N3"}, {name = "Pyramide N4", colorR = 255, colorG = 0, colorB = 0}, {name = "Pyramide S1"}, {name = "Pyramide S2", colorR = 255, colorG = 0, colorB = 0}} }, {name = "Izlude", list = {{name = "Antre Sous-Marine N1"}, {name = "Antre Sous-Marine N2"}, {name = "Antre Sous-Marine N3"}, {name = "Antre Sous-Marine N4"}, {name = "Antre Sous-Marine N5"}} }, {name = "Comodo", list = {{name = "Forêt de Papuchicha"}, {name = "Plage de Kokomo"}, {name = "Marais de Zenhai"}, {name = "Paros, le Phare de l'Île"}, {name = "Forteresse Saint Darmain (Est)"}, {name = "Forteresse Saint Darmain (Sud)"}, {name = "Forteresse Saint Darmain (Ouest)"}, {name = "Karu, la Grotte de l'Ouest", colorR = 255, colorG = 0, colorB = 0}, {name = "Ruande, la Grotte du Nord"}, {name = "Mao, la Grotte de l'Est"}} }, {name = "Lutie", list = {{name = "Environs", colorR = 255, colorG = 0, colorB = 0}, {name = "Entrepôt de l'Usine de Jouets"}, {name = "Salle de Production de l'Usine de Jouets", colorR = 255, colorG = 0, colorB = 0}} }, {name = "Yuno", list = {{name = "Poste Frontière"}, {name = "Résidence de Kiel Hyre"}, {name = "Plateau d'El Mes"}, {name = "Gorge d'El Mes"}, {name = "Académie de Kiel Hyre"}, {name = "Camp de Garde"}, {name = "Environs de Yuno"}, {name = "Route de Nogg N1"}, {name = "Route de Nogg N2"}, {name = "Ruines Extérieures de Juperos"}, {name = "Dans les Ruines de Juperos"}, {name = "Coeur de Juperos", colorR = 255, colorG = 0, colorB = 0}, {name = "Niveau de l'Usine de Robots N1"}, {name = "Niveau de l'Usine de Robots N2", colorR = 255, colorG = 0, colorB = 0}} }, {name = "Umbala", list = {{name = "Forêt de Luluka"}, {name = "Marais de Kalala"}, {name = "Forêt de Hoomga"}, {name = "Jungle de Hoomga"}} }, {name = "Einbech", list = {{name = "Mine d'Einbroch N1"}, {name = "Mine d'Einbroch N2", colorR = 255, colorG = 0, colorB = 0}} }, {name = "Lighthalzen", list = {{name = "Environs"}, {name = "Environs de Lighthalzen"}, {name = "Laboratoire de Somatologie N1"}, {name = "Laboratoire de Somatologie N2", colorR = 255, colorG = 0, colorB = 0}, {name = "Laboratoire de Somatologie N3", colorR = 255, colorG = 0, colorB = 0}} }, {name = "Tour de Thanatos", list = {{name = "Entrée du Musée"}, --need translator please :) {name = "Musée"}, {name = "Zone à l'Abandon"}, {name = "Niveaux Supérieurs"}, {name = "Salle des Anges"}, {name = "Salle de l'Agonie"}, {name = "Salle du Chagrin"}, {name = "Salle du Désespoir"}, {name = "Salle de la Haine"}, {name = "Zone Inexplorée", colorR = 255, colorG = 0, colorB = 0}} }, {name = "Glast Heim", list = {{name = "Glast Heim N1"}, {name = "Glast Heim N2"}, {name = "Abbaye de Glast Heim"}, {name = "Catacombes", colorR = 255, colorG = 0, colorB = 0}, --Churchyard[English official server] {name = "Souterrains N1"}, --The Lowest Cave in Glast Heim F1[English official server] {name = "Souterrains N2"}, --The Lowest Cave in Glast Heim F2[English official server] {name = "À l'intérieur de Glast Heim"}, --Inside Glast Heim[English official server] {name = "Quartiers de la Chevalerie N1"}, {name = "Quartiers de la Chevalerie N2"}, {name = "Prison Souterraine N1"}, {name = "Prison Souterraine N2"}, {name = "Égouts N1"}, {name = "Égouts N2"}, {name = "Égouts N3"}, {name = "Égouts N4"}, {name = "Escalier du Donjon"}} }, {name = "Hugel", list = {{name = "Environs"}, {name = "Temple d'Odin Ouest"}, {name = "Temple d'Odin Sud"}, {name = "Temple d'Odin Nord", colorR = 255, colorG = 0, colorB = 0}, {name = "Lac des Abîmes"}, {name = "Grotte du Lac des Abîmes N1"}, {name = "Grotte du Lac des Abîmes F2"}, {name = "Grotte du Lac des Abîmes F3", colorR = 255, colorG = 0, colorB = 0}, {name = "Environs de la Tour de Thanatos"}} --What? }, {name = "Rachel", list = {{name = "Prairie d'Audumra"}, {name = "Plaine d'Ida", colorR = 255, colorG = 0, colorB = 0}, {name = "Fortu Luna", colorR = 255, colorG = 0, colorB = 0}, {name = "Sanctuaire de Freya N1"}, --Freya's Sacred Precinct F1 {name = "Sanctuaire de Freya N2"}, --Freya's Sacred Precinct F2 {name = "Sanctuaire de Freya N3"}, --Freya's Sacred Precinct F3 {name = "Sanctuaire de Freya N4"}, --Freya's Sacred Precinct F4 {name = "Sanctuaire de Freya N5", colorR = 255, colorG = 0, colorB = 0}, --Freya's Sacred Precinct F5 {name = "Grotte de Glace N1"}, {name = "Grotte de Glace N2"}, {name = "Grotte de Glace N3"}} }, {name = "Veins", list = {{name = "Environs", colorR = 255, colorG = 0, colorB = 0}, {name = "Île sans Nom"}, {name = "Abbaye Maudite N1"}, {name = "Abbaye Maudite S1", colorR = 255, colorG = 0, colorB = 0}, {name = "Abbaye Maudite S2", colorR = 255, colorG = 0, colorB = 0}, {name = "Donjon du Volcan de Thor N1"}, {name = "Donjon du Volcan de Thor N2"}, {name = "Donjon du Volcan de Thor N3", colorR = 255, colorG = 0, colorB = 0}} }, {name = "Niflheim", list = {{name = "Skellington, le Village Isolé"}, {name = "Vallée de Gyoll"}, {name = "Niflheim", colorR = 255, colorG = 0, colorB = 0}} }, {name = "Ash Vacuum", list = {{name = "Environs de Manuk"}, {name = "Environs de Splendide"}, {name = "Au Pied de la Montagne Kamidal"}, --El Descates Field Foot Of The Kamidal Mountain {name = "Passage Souterrain de Kamidal"}, --Underground Passage Kamidal Tunnel {name = "Nid Souterrain de Scaraba", colorR = 255, colorG = 0, colorB = 0}, --Underground Nest Scaraba Hole {name = "Donjon de Nidhogg N1"}, {name = "Donjon de Nidhogg N2"}} }, {name = "Amatsu", list = {{name = "Environs"}, {name = "Labyrinthe de Tatamis"}, {name = "Champ de Bataille de la Forêt"}, {name = "Sanctuaire Souterrain", colorR = 255, colorG = 0, colorB = 0}} }, {name = "Gonryun", list = {{name = "Environs"}, {name = "Sanctuaire de la Reine" }, {name = "Repaire des Ermites" }, {name = "Arcadia", colorR = 255, colorG = 0, colorB = 0}} }, {name = "Louyang", list = {{name = "Environs"}, {name = "Tombe Royale"}, {name = "À l'Intérieur de la Tombe Royale"}, {name = "Suei Long Gon", colorR = 255, colorG = 0, colorB = 0}} }, {name = "Ayothaya", list = {{name = "Environs"}, {name = "Labyrinthe de l'Ancien Sanctuaire"}, {name = "À l'Intérieur de l'Ancien Sanctuaire", colorR = 255, colorG = 0, colorB = 0}} }, {name = "Brasilis", list = {{name = "Environs"}, {name = "Entrée de la Grotte de la Cascade"}, --Brasilia's Dungeon F1 {name = "Dans la Grotte de la Cascade", colorR = 255, colorG = 0, colorB = 0}} --Brasilia's Dungeon F2 }, {name = "Moscovia", list = {{name = "Environs"}, --Okrestnosti Of Moscovia {name = "Forêt de Les"}, {name = "Forêt de Temny"}, {name = "Forêt de Dremuci", colorR = 255, colorG = 0, colorB = 0}} }, {name = "Donjons Mémoriels", list = {{name = "Tour Sans Fin", colorR = 255, colorG = 0, colorB = 0}, {name = "Sanctuaire Interdit", colorR = 255, colorG = 0, colorB = 0}, {name = "Histoire des Orcs", colorR = 255, colorG = 0, colorB = 0}, {name = "Nid de Nidhogg", colorR = 255, colorG = 0, colorB = 0}} }, } printMapList = function() local regionId = 0 local mapId = 0 local state = "" print("------------------") for key, region in pairs(map_list) do regionId = regionId +1 mapId = 0 if region["ignore_recruit_window"] == true then state = "ÆÄƼ ¸ðÁý (½Åû) â¿¡¼­´Â º¸ÀÌÁö ¾Ê´Â ¸Þ´ºÀÓ" --Party Recruitment (Application) menu is not available? else state = "" end print(regionId,region["name"],state) for key, map in pairs(region["list"]) do mapId = mapId +1 if map["color"] == nil then color = "Primary Colors" else color = "R: " .. map.color.R .. "G:" .. map.color.G .. "B:" .. map.color.B end print("\t" .. mapId .. ":" .. map.name, map.map_file, color) end end print("------------------") end __mapList = {} makeMapList = function() for regionId, region in ipairs(map_list) do __mapList[regionId] = region region["id"] = regionId for mapId, map in ipairs(region["list"]) do __mapList[regionId][mapId] = map map.id = mapId map.ignore_recruit_window = region["ignore_recruit_window"] end end end queryRegionInfo = function(regionId) if __mapList[regionId] == nil then return nil,nil,nil,nil end return regionId, __mapList[regionId]["name"], getMapIterator(regionId), __mapList[regionId]["ignore_recruit_window"] end queryMapInfo = function(regionId, mapId) if __mapList[regionId] == nil then return nil,nil,nil,nil,nil,nil end if __mapList[regionId][mapId] == nil then return nil,nil,nil,nil,nil,nil end return regionId, mapId, __mapList[regionId][mapId]["name"], __mapList[regionId][mapId]["colorR"], __mapList[regionId][mapId]["colorG"], __mapList[regionId][mapId]["colorB"] end getRegionIterator = function() local pos = 1 return { ["hasNext"] = function() return __mapList[pos] end, ["value"] = function() temp_pos = pos pos = pos + 1 return __mapList[temp_pos] end } end getMapIterator = function(regionId) local pos = 1 return { ["hasNext"] = function() if __mapList[regionId] == nil then return nil end return __mapList[regionId][pos] end, ["value"] = function() temp_pos = pos pos = pos +1 return __mapList[regionId][temp_pos] end } end makeMapList() print("[All Output Data Structure]") regionIterator = getRegionIterator() while regionIterator.hasNext() do region = regionIterator.value() print(region["id"],region["name"]) mapIterator = getMapIterator(region["id"]) while mapIterator.hasNext() do map = mapIterator.value() print("\t",queryMapInfo(region.id,map.id)) end end print("\n[Local Data Search]") regionIterator = getRegionIterator() while regionIterator.hasNext() do region = regionIterator.value() print(region.id,region.name) end print("\n[Map Data Search]") mapIterator = getMapIterator(2) while mapIterator.hasNext() do map = mapIterator.value() print(map.id,map.name) end print("\n[Regional Data Information Request]") print(queryRegionInfo(2)) _,_,mapIterator,_ = queryRegionInfo(2) while mapIterator.hasNext() do map = mapIterator.value() print(map.id,map.name) end print("\n[Map Data Information Request]") print(queryMapInfo(2,1)) PartyBookingHelp = { "/recruit: Affiche la fenêtre de recrutement.", "/booking: Affiche la liste des personnes recherchant un groupe.", --or Brings up the Party Booking List window "/organize \"Nom de l'Équipe\": Crée une équipe.", "/invite \"Nom du Personnage\": Invite le personnage en question dans l'équipe." } GetPartyBookingHelp = function() local descript = "" local obj = PartyBookingHelp if obj ~= nil then for i,v in pairs(obj) do descript = descript .. v descript = descript .. "\r\n" end end return descript end