vanilla-wow-addons – Blame information for rev 1

Subversion Repositories:
Rev:
Rev Author Line No. Line
1 office 1 ------------------------------------------------------
2 -- GFWZones.lua
3 -- Utilities for working with geographic data
4 ------------------------------------------------------
5  
6 GFWZONES_THIS_VERSION = 6;
7  
8 ------------------------------------------------------
9  
10 if (GFWZones == nil) then
11 GFWZones = {};
12 end
13  
14 function GFWZones_temp_LocalizedZone(aZone)
15 local localized = GFWZones.Localized[aZone];
16 if (localized) then
17 return localized;
18 else
19 return aZone;
20 end
21 end
22  
23 function GFWZones_temp_UnlocalizedZone(aZone)
24 local key = GFWTable.KeyOf(GFWZones.Localized, aZone);
25 if (key) then
26 return key;
27 else
28 return aZone;
29 end
30 end
31  
32 function GFWZones_temp_ConnectionsForZone(aZone)
33  
34 local G = GFWZones;
35 aZone = G.UnlocalizedZone(aZone);
36  
37 local zoneConnections = { };
38 local _, myFaction = UnitFactionGroup("player");
39  
40 if not (G.AdjacentZones[aZone] or G.FlightZones[myFaction][aZone]) then return nil; end
41  
42 -- find zones one step away (adjacent to this zone or one flight/boat/zeppelin away)
43 zoneConnections[1] = GFWTable.Merge(G.AdjacentZones[aZone], G.FlightZones[myFaction][aZone]);
44 zoneConnections[1] = GFWTable.Subtract(zoneConnections[1], {aZone});
45  
46 -- then iterate to find zones more than one step away
47 numSteps = 2;
48 repeat
49 zoneConnections[numSteps] = { };
50 for i=1, table.getn(zoneConnections[numSteps-1]) do
51 zoneConnections[numSteps] = GFWTable.Merge(zoneConnections[numSteps], G.FlightZones[myFaction][zoneConnections[numSteps-1][i]]);
52 zoneConnections[numSteps] = GFWTable.Merge(zoneConnections[numSteps], G.AdjacentZones[zoneConnections[numSteps-1][i]]);
53 end
54 for i=numSteps-1, 1, -1 do
55 zoneConnections[numSteps] = GFWTable.Subtract(zoneConnections[numSteps], zoneConnections[i]);
56 end
57 zoneConnections[numSteps] = GFWTable.Subtract(zoneConnections[numSteps], {aZone});
58 numSteps = numSteps + 1;
59 until (table.getn(zoneConnections[numSteps-1]) == 0 or numSteps == 10); -- don't want to go forever, seems like a reasonable cutoff
60  
61 return zoneConnections;
62  
63 end
64  
65  
66 ------------------------------------------------------
67 -- Zone Connection Data
68 ------------------------------------------------------
69  
70 local tempAdjacentZones = {
71 ["Alterac Mountains"] = {"Silverpine Forest", "Hillsbrad Foothills", "Alterac Valley"},
72 ["Arathi Highlands"] = {"Wetlands", "Hillsbrad Foothills"},
73 ["Ashenvale"] = {"The Barrens", "Azshara", "Darkshore", "Felwood", "Stonetalon Mountains", "Blackfathom Deeps", "Warsong Gulch"},
74 ["Azshara"] = {"Ashenvale"},
75 ["Badlands"] = {"Loch Modan", "Searing Gorge", "Uldaman"},
76 ["Blackrock Mountain"] = {"Searing Gorge", "Burning Steppes", "Blackrock Depths", "Blackrock Spire", "Molten Core"},
77 ["Blasted Lands"] = {"Swamp of Sorrows"},
78 ["Burning Steppes"] = {"Blackrock Mountain", "Redridge Mountains"},
79 ["Ironforge"] = {"Dun Morogh"},
80 ["Darkshore"] = {"Ashenvale", "Teldrassil", "Wetlands"}, -- boat
81 ["Darnassus"] = {"Teldrassil"},
82 ["Deadwind Pass"] = {"Duskwood", "Swamp of Sorrows"},
83 ["Desolace"] = {"Stonetalon Mountains", "Feralas", "Desolace", "Maraudon"},
84 ["Dun Morogh"] = {"Ironforge", "Loch Modan", "Gnomeregan"},
85 ["Durotar"] = {"Orgrimmar", "The Barrens", "Stranglethorn Vale", "Tirisfal Glades"}, -- zeppelin
86 ["Duskwood"] = {"Elwynn Forest", "Westfall", "Deadwind Pass", "Stranglethorn Vale"},
87 ["Dustwallow Marsh"] = {"The Barrens", "Wetlands"}, -- boat
88 ["Eastern Plaguelands"] = {"Western Plaguelands", "Stratholme", "Naxxramas" },
89 ["Elwynn Forest"] = {"Stormwind City", "Westfall", "Duskwood", "Redridge Mountains"},
90 ["Felwood"] = {"Ashenvale", "Moonglade", "Winterspring"},
91 ["Feralas"] = {"Desolace", "Thousand Needles", "Dire Maul"},
92 ["Hillsbrad Foothills"] = {"Silverpine Forest", "Alterac Mountains", "Arathi Highlands", "The Hinterlands"},
93 ["Loch Modan"] = {"Dun Morogh", "Wetlands", "Badlands"},
94 ["Moonglade"] = {"Felwood", "Winterspring"},
95 ["Mulgore"] = {"Thunder Bluff", "The Barrens"},
96 ["Naxxramas"] = { "Eastern Plaguelands" },
97 ["Orgrimmar"] = {"The Barrens", "Durotar", "Ragefire Chasm"},
98 ["Redridge Mountains"] = {"Elwynn Forest", "Duskwood", "Burning Steppes"},
99 ["Searing Gorge"] = {"Badlands", "Blackrock Mountain"},
100 ["Silithus"] = {"Un'goro Crater", "Gates of Ahn'Qiraj"},
101 ["Silverpine Forest"] = {"Tirisfal Glades", "Hillsbrad Foothills", "Alterac Mountains", "Shadowfang Keep"},
102 ["Stonetalon Mountains"] = {"Ashenvale", "The Barrens", "Desolace"},
103 ["Stormwind City"] = {"Elwynn Forest", "The Stockade"},
104 ["Stranglethorn Vale"] = {"Duskwood", "The Barrens", "Tirisfal Glades", "Durotar", "Zul'Gurub"}, -- boat, zeppelin
105 ["Swamp of Sorrows"] = {"Deadwind Pass", "Blasted Lands", "The Temple of Atal'Hakkar"},
106 ["Tanaris"] = {"Thousand Needles", "Un'Goro Crater", "Caverns of Time", "Zul'Farrak"},
107 ["Teldrassil"] = {"Darnassus", "Darkshore"}, -- boat
108 ["The Barrens"] = {"Durotar", "Mulgore", "Ashenvale", "Stonetalon Mountains", "Dustwallow Marsh", "Thousand Needles", "Stranglethorn Vale", "Wailing Caverns", "Razorfen Kraul", "Razorfen Downs", "Warsong Gulch"}, -- boat
109 ["The Hinterlands"] = {"Hillsbrad Foothills", "Western Plaguelands"},
110 ["Undercity"] = {"Tirisfal Glades"},
111 ["Thousand Needles"] = {"The Barrens", "Feralas", "Tanaris"},
112 ["Thunder Bluff"] = {"Mulgore"},
113 ["Tirisfal Glades"] = {"Silverpine Forest", "Undercity", "Western Plaguelands", "Stranglethorn Vale", "Durotar", "Scarlet Monastery"}, -- zeppelin
114 ["Un'Goro Crater"] = {"Tanaris", "Silithus"},
115 ["Western Plaguelands"] = {"Tirisfal Glades", "Alterac Mountains", "The Hinterlands", "Eastern Plaguelands", "Scholomance"},
116 ["Westfall"] = {"Elwynn Forest", "Duskwood", "The Deadmines"},
117 ["Wetlands"] = {"Arathi Highlands", "Loch Modan", "Dustwallow Marsh"}, -- boat
118 ["Winterspring"] = {"Moonglade", "Felwood"},
119  
120 -- Instances / Battlegrounds / etc.
121 ["Ruins of Ahn'Qiraj"] = {"Gates of Ahn'Qiraj"},
122 ["Ahn'Qiraj"] = {"Gates of Ahn'Qiraj"},
123 ["Gates of Ahn'Qiraj"] = {"Silithus", "Ruins of Ahn'Qiraj", "Ahn'Qiraj"},
124 ["Arathi Basin"] = {"Arathi Highlands"},
125 ["Alterac Valley"] = {"Alterac Mountains"},
126 ["Blackfathom Deeps"] = {"Ashenvale"},
127 ["Blackrock Depths"] = {"Blackrock Mountain", "Molten Core"},
128 ["Blackrock Spire"] = {"Blackrock Mountain"},
129 ["Caverns of Time"] = {"Tanaris"},
130 ["Champions' Hall"] = {"Stormwind City"},
131 ["Dire Maul"] = {"Feralas"},
132 ["Gnomeregan"] = {"Dun Morogh"},
133 ["Hall of Legends"] = {"Orgrimmar"},
134 ["Maraudon"] = {"Desolace"},
135 ["Onyxia's Lair"] = {"Dustwallow Marsh"},
136 ["Ragefire Chasm"] = {"Orgrimmar"},
137 ["Razorfen Downs"] = {"The Barrens", "Thousand Needles"},
138 ["Razorfen Kraul"] = {"The Barrens"},
139 ["Scarlet Monastery"] = {"Tirisfal Glades"},
140 ["Scholomance"] = {"Western Plaguelands"},
141 ["Shadowfang Keep"] = {"Silverpine Forest"},
142 ["Stratholme"] = {"Eastern Plaguelands"},
143 ["The Deadmines"] = {"Westfall"},
144 ["Molten Core"] = {"Blackrock Depths", "Blackrock Mountain"},
145 ["The Stockade"] = {"Stormwind City"},
146 ["The Temple of Atal'Hakkar"] = {"Swamp of Sorrows"},
147 ["Wailing Caverns"] = {"The Barrens"},
148 ["Uldaman"] = {"Badlands"},
149 ["Warsong Gulch"] = {"The Barrens", "Ashenvale"},
150 ["Zul'Farrak"] = {"Tanaris"},
151 ["Zul'Gurub"] = {"Stranglethorn Vale"},
152 };
153  
154 local tempFlightZones = {
155 [FACTION_ALLIANCE] = {
156 -- Deeprun Tram is in here even though it's not a "flight" per se because Horde can't easily travel through it.
157 ["Arathi Highlands"] = {"Hillsbrad Foothills", "Ironforge", "The Hinterlands", "Loch Modan", "Wetlands", "Arathi Basin"},
158 ["Ashenvale"] = {"Darkshore"},
159 ["Azshara"] = {"Felwood", "Darkshore"},
160 ["Blasted Lands"] = {"Duskwood", "Burning Steppes", "Stormwind City"},
161 ["Burning Steppes"] = {"Blasted Lands", "Searing Gorge"},
162 ["Ironforge"] = {"Arathi Highlands", "Wetlands", "Hillsbrad Foothills", "Stormwind City", "Loch Modan", "The Hinterlands", "Searing Gorge", "Deeprun Tram"},
163 ["Darkshore"] = {"Teldrassil", "Ashenvale", "Moonglade", "Azshara", "Felwood", "Dustwallow Marsh", "Desolace", "Feralas"},
164 ["Deeprun Tram"] = {"Ironforge", "Stormwind City"},
165 ["Desolace"] = {"Darkshore", "Dustwallow Marsh", "Feralas"},
166 ["Duskwood"] = {"Blasted Lands", "Redridge Mountains", "Westfall", "Stormwind City", "Stranglethorn Vale"},
167 ["Dustwallow Marsh"] = {"Desolace", "Tanaris", "Darkshore", "Feralas"},
168 ["Eastern Plaguelands"] = {"The Hinterlands"},
169 ["Felwood"] = {"Winterspring", "Azshara", "Darkshore"},
170 ["Feralas"] = {"Darkshore", "Desolace", "Tanaris", "Dustwallow Marsh"},
171 ["Hillsbrad Foothills"] = {"Ironforge", "Wetlands", "Western Plaguelands", "The Hinterlands", "Arathi Highlands"},
172 ["Loch Modan"] = {"Wetlands", "Ironforge", "Arathi Highlands"},
173 ["Moonglade"] = {"Darkshore", "Winterspring"},
174 ["Redridge Mountains"] = {"Duskwood", "Westfall", "Stormwind City"},
175 ["Searing Gorge"] = {"Ironforge", "Burning Steppes"},
176 ["Silithus"] = {"Tanaris"},
177 ["Stonetalon Mountains"] = {"Darkshore"},
178 ["Stormwind City"] = {"Stranglethorn Vale", "Westfall", "Ironforge", "Duskwood", "Redridge Mountains", "Blasted Lands", "Deeprun Tram"},
179 ["Stranglethorn Vale"] = {"Duskwood", "Westfall", "Stormwind City"},
180 ["Tanaris"] = {"Dustwallow Marsh", "Silithus", "Feralas"},
181 ["Teldrassil"] = {"Darkshore"},
182 ["The Hinterlands"] = {"Hillsbrad Foothills", "Ironforge", "Eastern Plaguelands", "Arathi Highlands"},
183 ["Western Plaguelands"] = {"Hillsbrad Foothills"},
184 ["Westfall"] = {"Stranglethorn Vale", "Duskwood", "Redridge Mountains", "Stormwind City"},
185 ["Wetlands"] = {"Loch Modan", "Hillsbrad Foothills", "Arathi Highlands", "Ironforge"},
186 ["Winterspring"] = {"Moonglade", "Felwood"},
187 },
188 [FACTION_HORDE] = {
189 ["Arathi Highlands"] = {"Hillsbrad Foothills", "Undercity", "Badlands"},
190 ["Ashenvale"] = {"Orgrimmar", "The Barrens"},
191 ["Azshara"] = {"Orgrimmar", "The Barrens", "Felwood"},
192 ["Badlands"] = {"Stranglethorn Vale", "Arathi Highlands", "Swamp of Sorrows", "Undercity", "Searing Gorge"},
193 ["Burning Steppes"] = {"Searing Gorge"},
194 ["Desolace"] = {"Stonetalon Mountains", "Thunder Bluff", "Feralas"},
195 ["Dustwallow Marsh"] = {"Orgrimmar", "The Barrens", "Tanaris", "Mulgore"},
196 ["Eastern Plaguelands"] = {"Undercity"},
197 ["Felwood"] = {"Moonglade", "Orgrimmar", "Winterspring"},
198 ["Feralas"] = {"The Barrens", "Thunder Bluff", "Tanaris", "Desolace"},
199 ["Hillsbrad Foothills"] = {"The Hinterlands", "Undercity", "Arathi Highlands"},
200 ["Moonglade"] = {"Felwood", "Winterspring"},
201 ["Orgrimmar"] = {"Ashenvale", "Azshara", "Dustwallow Marsh", "Felwood", "Thunder Bluff", "The Barrens", "Winterspring", "Tanaris"},
202 ["Searing Gorge"] = {"Badlands", "Burning Steppes"},
203 ["Silithus"] = {"Tanaris"},
204 ["Silverpine Forest"] = {"Undercity"},
205 ["Stonetalon Mountains"] = {"Thunder Bluff", "The Barrens", "Desolace"},
206 ["Stranglethorn Vale"] = {"Badlands", "Swamp of Sorrows"},
207 ["Swamp of Sorrows"] = {"Stranglethorn Vale", "Badlands"},
208 ["Tanaris"] = {"The Barrens", "Orgrimmar", "Thunder Bluff", "Feralas", "Dustwallow Marsh", "Silithus"},
209 ["The Barrens"] = {"Orgrimmar", "Thunder Bluff", "Azshara", "Thousand Needles", "Tanaris", "Stonetalon Mountains", "Ashenvale", "Dustwallow Marsh", "Feralas"},
210 ["The Hinterlands"] = {"Undercity", "Hillsbrad Foothills"},
211 ["Undercity"] = {"The Hinterlands", "Badlands", "Silverpine Forest", "Hillsbrad Foothills", "Eastern Plaguelands", "Arathi Highlands"},
212 ["Thousand Needles"] = {"The Barrens", "Thunder Bluff"},
213 ["Thunder Bluff"] = {"Thousand Needles", "The Barrens", "Tanaris", "Stonetalon Mountains", "Orgrimmar", "Feralas", "Desolace", "Dustwallow Marsh"},
214 ["Winterspring"] = {"Moonglade", "Orgrimmar", "Felwood"},
215 },
216 };
217  
218 ------------------------------------------------------
219 -- load only if not already loaded
220 ------------------------------------------------------
221  
222 if (GFWZones == nil) then
223 GFWZones = {};
224 end
225 local G = GFWZones;
226 if (G.Version == nil or (tonumber(G.Version) ~= nil and G.Version < GFWZONES_THIS_VERSION)) then
227  
228 -- load zone data
229 if (GFWZones.Localized == nil) then
230 GFWZones.Localized = {};
231 end
232 if (G.AdjacentZones == nil) then
233 G.AdjacentZones = {};
234 end
235 for aZone, adjacentZones in tempAdjacentZones do
236 if (G.AdjacentZones[aZone] == nil) then
237 G.AdjacentZones[aZone] = {};
238 end
239 G.AdjacentZones[aZone] = GFWTable.Merge(G.AdjacentZones[aZone], adjacentZones);
240 end
241 if (G.FlightZones == nil) then
242 G.FlightZones = {};
243 end
244 for _, faction in {FACTION_ALLIANCE, FACTION_HORDE} do
245 if (G.FlightZones[faction] == nil) then
246 G.FlightZones[faction] = {};
247 end
248 for aZone, flightZones in tempFlightZones[faction] do
249 if (G.FlightZones[faction][aZone] == nil) then
250 G.FlightZones[faction][aZone] = {};
251 end
252 G.FlightZones[faction][aZone] = GFWTable.Merge(G.FlightZones[faction][aZone], flightZones);
253 end
254 end
255  
256 -- Functions
257 G.LocalizedZone = GFWZones_temp_LocalizedZone;
258 G.UnlocalizedZone = GFWZones_temp_UnlocalizedZone;
259 G.ConnectionsForZone = GFWZones_temp_ConnectionsForZone;
260  
261 -- Set version number
262 G.Version = GFWZONES_THIS_VERSION;
263 end
264  
265 ------------------------------------------------------
266 -- localized zone names (only those that differ from the enUS version should be present)
267 ------------------------------------------------------
268  
269 if ( GetLocale() == "deDE" ) then
270 GFWZones.Localized["Alterac Mountains"] = "Das Alteracgebirge";
271 GFWZones.Localized["Alterac Valley"] = "Alteractal";
272 GFWZones.Localized["Arathi Basin"] = "Arathibecken";
273 GFWZones.Localized["Arathi Highlands"] = "Das Arathihochland";
274 GFWZones.Localized["Badlands"] = "Das Ödland";
275 GFWZones.Localized["Blackfathom Deeps"] = "Blackfathom-Tiefe";
276 GFWZones.Localized["Blackrock Depths"] = "Blackrocktiefen";
277 GFWZones.Localized["Blackrock Mountain"] = "Der Blackrock";
278 GFWZones.Localized["Blackrock Spire"] = "Blackrockspitze";
279 GFWZones.Localized["Blasted Lands"] = "Die verwüsteten Lande";
280 GFWZones.Localized["Burning Steppes"] = "Die brennende Steppe";
281 GFWZones.Localized["Deeprun Tram"] = "Die Tiefenbahn";
282 GFWZones.Localized["Dire Maul"] = "Düsterbruch";
283 GFWZones.Localized["Dustwallow Marsh"] = "Die Marschen von Dustwallow";
284 GFWZones.Localized["Eastern Plaguelands"] = "Die östlichen Pestländer";
285 GFWZones.Localized["Elwynn Forest"] = "Der Wald von Elwynn";
286 GFWZones.Localized["Hillsbrad Foothills"] = "Die Vorgebirge von Hillsbrad";
287 GFWZones.Localized["Molten Core"] = "Geschmolzener Kern";
288 GFWZones.Localized["Onyxia's Lair"] = "Onyxias Hort";
289 GFWZones.Localized["Ragefire Chasm"] = "Ragefireabgrund";
290 GFWZones.Localized["Razorfen Downs"] = "Die Hügel von Razorfen";
291 GFWZones.Localized["Redridge Mountains"] = "Das Redridgegebirge";
292 GFWZones.Localized["Scarlet Monastery"] = "Das scharlachrote Kloster";
293 GFWZones.Localized["Searing Gorge"] = "Die Sengende Schlucht";
294 GFWZones.Localized["Shadowfang Keep"] = "Burg Shadowfang";
295 GFWZones.Localized["Silverpine Forest"] = "Der Silberwald";
296 GFWZones.Localized["Stonetalon Mountains"] = "Das Steinkrallengebirge";
297 GFWZones.Localized["Stormwind City"] = "Stormwind";
298 GFWZones.Localized["Stranglethorn Vale"] = "Stranglethorn";
299 GFWZones.Localized["Swamp of Sorrows"] = "Die Sümpfe des Elends";
300 GFWZones.Localized["The Barrens"] = "Das Brachland";
301 GFWZones.Localized["The Deadmines"] = "Die Todesminen";
302 GFWZones.Localized["The Hinterlands"] = "Das Hinterland";
303 GFWZones.Localized["The Stockade"] = "Die Palisade";
304 GFWZones.Localized["Tirisfal Glades"] = "Tirisfal";
305 GFWZones.Localized["Un'Goro Crater"] = "Der Un'Goro Krater";
306 GFWZones.Localized["Wailing Caverns"] = "Die Höhlen des Wehklagens";
307 GFWZones.Localized["Warsong Gulch"] = "Warsongschlucht";
308 GFWZones.Localized["Western Plaguelands"] = "Die westlichen Pestländer";
309 GFWZones.Localized["Wetlands"] = "Das Sumpfland";
310 end
311  
312 if ( GetLocale() == "frFR" ) then
313 GFWZones.Localized["Alterac Mountains"] = "Montagnes d'Alterac";
314 GFWZones.Localized["Alterac Valley"] = "Vallée d'Alterac";
315 GFWZones.Localized["Blackfathom Deeps"] = "Profondeurs de Blackfathom";
316 GFWZones.Localized["Blackrock Depths"] = "Profondeurs de Blackrock";
317 GFWZones.Localized["Blackrock Mountain"] = "Montagnes Blackrock";
318 GFWZones.Localized["Blackrock Spire"] = "Pic de Blackrock";
319 GFWZones.Localized["Burning Steppes"] = "Steppes Ardentes";
320 GFWZones.Localized["Deeprun Tram"] = "Tramway des abysses";
321 GFWZones.Localized["Dun Morogh"] = "Dun Modr";
322 GFWZones.Localized["Dustwallow Marsh"] = "Marais de Dustwallow";
323 GFWZones.Localized["Eastern Plaguelands"] = "Plaguelands de l'est";
324 GFWZones.Localized["Elwynn Forest"] = "Forêt d'Elwynn";
325 GFWZones.Localized["Hillsbrad Foothills"] = "Collines de Hillsbrad";
326 GFWZones.Localized["Molten Core"] = "Noyau fondu";
327 GFWZones.Localized["Onyxia's Lair"] = "Repère d'Onyxia";
328 GFWZones.Localized["Ragefire Chasm"] = "Gouffre de Ragefire";
329 GFWZones.Localized["Razorfen Downs"] = "Dunes de Razorfen";
330 GFWZones.Localized["Redridge Mountains"] = "Montagnes de Redridge";
331 GFWZones.Localized["Scarlet Monastery"] = "Monastère de la Phalange";
332 GFWZones.Localized["Searing Gorge"] = "Gorge de Searing";
333 GFWZones.Localized["Shadowfang Keep"] = "Donjon de Shadowfang";
334 GFWZones.Localized["Silverpine Forest"] = "Forêt de Silverpine";
335 GFWZones.Localized["Stonetalon Mountains"] = "Monts Stonetalon";
336 GFWZones.Localized["Stormwind City"] = "Cité de Stormwind";
337 GFWZones.Localized["Stranglethorn Vale"] = "Vallée de Stranglethorn";
338 GFWZones.Localized["Swamp of Sorrows"] = "Marais des lamentations";
339 GFWZones.Localized["The Barrens"] = "Les Barrens";
340 GFWZones.Localized["The Deadmines"] = "Les Deadmines";
341 GFWZones.Localized["The Hinterlands"] = "Les Hinterlands";
342 GFWZones.Localized["The Stockade"] = "La Prison";
343 GFWZones.Localized["Thousand Needles"] = "Mille pointes";
344 GFWZones.Localized["Tirisfal Glades"] = "Prairies de Tirisfal";
345 GFWZones.Localized["Un'Goro Crater"] = "Cratère d'Un'Goro";
346 GFWZones.Localized["Wailing Caverns"] = "Cavernes des lamentations";
347 GFWZones.Localized["Western Plaguelands"] = "Plaguelands de l'ouest";
348 end
349  
350 if ( GetLocale() == "koKR" ) then
351 GFWZones.Localized["Alterac Mountains"] = "알터랙 산맥";
352 GFWZones.Localized["Arathi Highlands"] = "아라시 고원";
353 GFWZones.Localized["Ashenvale"] = "잿빛 골짜기";
354 GFWZones.Localized["Azshara"] = "아즈샤라";
355 GFWZones.Localized["Badlands"] = "황야의 땅";
356 GFWZones.Localized["Blackrock Depths"] = "검은바위 나락";
357 GFWZones.Localized["Blasted Lands"] = "저주받은 땅";
358 GFWZones.Localized["Burning Steppes"] = "이글거리는 협곡";
359 GFWZones.Localized["Darkshore"] = "어둠의 해안";
360 GFWZones.Localized["Darnassus"] = "다르나서스";
361 GFWZones.Localized["Desolace"] = "잊혀진 땅";
362 GFWZones.Localized["Dire Maul"] = "혈투의 전장";
363 GFWZones.Localized["Dun Morogh"] = "던 모로";
364 GFWZones.Localized["Durotar"] = "듀로타";
365 GFWZones.Localized["Duskwood"] = "그늘숲";
366 GFWZones.Localized["Eastern Plaguelands"] = "동부 역병지대";
367 GFWZones.Localized["Elwynn Forest"] = "엘윈숲";
368 GFWZones.Localized["Felwood"] = "악령의 숲";
369 GFWZones.Localized["Feralas"] = "페랄라스";
370 GFWZones.Localized["Gnomeregan"] = "놈리건";
371 GFWZones.Localized["Hillsbrad Foothills"] = "힐스브래드 구릉지";
372 GFWZones.Localized["Ironforge"] = "아이언포지";
373 GFWZones.Localized["Loch Modan"] = "모단 호수";
374 GFWZones.Localized["Moonglade"] = "달의 숲";
375 GFWZones.Localized["Mulgore"] = "멀고어";
376 GFWZones.Localized["Orgrimmar"] = "오그리마";
377 GFWZones.Localized["Redridge Mountains"] = "붉은마루 산맥";
378 GFWZones.Localized["Silithus"] = "실리더스";
379 GFWZones.Localized["Silverpine Forest"] = "은빛 소나무숲";
380 GFWZones.Localized["Stonetalon Mountains"] = "돌발톱 산맥";
381 GFWZones.Localized["Stormwind City"] = "스톰윈드";
382 GFWZones.Localized["Stranglethorn Vale"] = "가시덤불 골짜기";
383 GFWZones.Localized["Swamp of Sorrows"] = "슬픔의 늪";
384 GFWZones.Localized["Tanaris"] = "타나리스";
385 GFWZones.Localized["Teldrassil"] = "텔드랏실";
386 GFWZones.Localized["The Barrens"] = "불모의 땅";
387 GFWZones.Localized["The Hinterlands"] = "동부 내륙지";
388 GFWZones.Localized["Thousand Needles"] = "버섯구름 봉우리";
389 GFWZones.Localized["Thunder Bluff"] = "썬더 블러프";
390 GFWZones.Localized["Tirisfal Glades"] = "티리스팔 숲";
391 GFWZones.Localized["Un'Goro Crater"] = "운고로 분화구";
392 GFWZones.Localized["Undercity"] = "언더시티";
393 GFWZones.Localized["Wailing Caverns"] = "통곡의 동굴";
394 GFWZones.Localized["Western Plaguelands"] = "서부 역병지대";
395 GFWZones.Localized["Westfall"] = "서부 몰락지대";
396 GFWZones.Localized["Wetlands"] = "저습지";
397 end
398  
399 if ( GetLocale() == "zhCN" ) then
400 GFWZones.Localized["Alterac Mountains"] = "奥特兰克山脉";
401 GFWZones.Localized["Arathi Highlands"] = "阿拉希高地";
402 GFWZones.Localized["Ashenvale"] = "灰谷";
403 GFWZones.Localized["Azshara"] = "艾萨拉";
404 GFWZones.Localized["Badlands"] = "荒芜之地";
405 GFWZones.Localized["Blackrock Depths"] = "黑石深渊";
406 GFWZones.Localized["Blasted Lands"] = "诅咒之地";
407 GFWZones.Localized["Burning Steppes"] = "燃烧平原";
408 GFWZones.Localized["Darkshore"] = "黑海岸";
409 GFWZones.Localized["Darnassus"] = "达纳苏斯";
410 GFWZones.Localized["Desolace"] = "凄凉之地";
411 GFWZones.Localized["Dire Maul"] = "厄运之槌";
412 GFWZones.Localized["Dun Morogh"] = "丹莫罗";
413 GFWZones.Localized["Durotar"] = "杜隆塔尔";
414 GFWZones.Localized["Duskwood"] = " 暮色森林";
415 GFWZones.Localized["Eastern Plaguelands"] = "东瘟疫之地";
416 GFWZones.Localized["Elwynn Forest"] = "艾尔文森林";
417 GFWZones.Localized["Felwood"] = "费伍德森林";
418 GFWZones.Localized["Feralas"] = "菲拉斯";
419 GFWZones.Localized["Gnomeregan"] = "诺莫瑞根";
420 GFWZones.Localized["Hillsbrad Foothills"] = "希尔斯布莱德丘陵";
421 GFWZones.Localized["Ironforge"] = "铁炉堡";
422 GFWZones.Localized["Loch Modan"] = "洛克莫丹";
423 GFWZones.Localized["Moonglade"] = "月光林地";
424 GFWZones.Localized["Mulgore"] = "莫高雷";
425 GFWZones.Localized["Orgrimmar"] = "奥格瑞玛";
426 GFWZones.Localized["Redridge Mountains"] = "赤脊山";
427 GFWZones.Localized["Silithus"] = "希利苏斯";
428 GFWZones.Localized["Silverpine Forest"] = "银松森林";
429 GFWZones.Localized["Stonetalon Mountains"] = "石爪山脉";
430 GFWZones.Localized["Stormwind City"] = "暴风城";
431 GFWZones.Localized["Stranglethorn Vale"] = "荆棘谷";
432 GFWZones.Localized["Swamp of Sorrows"] = "悲伤沼泽";
433 GFWZones.Localized["Tanaris"] = "塔纳利斯";
434 GFWZones.Localized["Teldrassil"] = "泰达希尔";
435 GFWZones.Localized["The Barrens"] = "贫瘠之地";
436 GFWZones.Localized["The Hinterlands"] = "辛特兰";
437 GFWZones.Localized["Thousand Needles"] = "千针石林";
438 GFWZones.Localized["Thunder Bluff"] = "雷霆崖";
439 GFWZones.Localized["Tirisfal Glades"] = "提瑞斯法林地";
440 GFWZones.Localized["Un'Goro Crater"] = "安戈洛环形山";
441 GFWZones.Localized["Undercity"] = "幽暗城";
442 GFWZones.Localized["Wailing Caverns"] = "哀嚎洞穴";
443 GFWZones.Localized["Western Plaguelands"] = "西瘟疫之地";
444 GFWZones.Localized["Westfall"] = "西部荒野";
445 GFWZones.Localized["Wetlands"] = "湿地";
446 end