1
0
Bifurcation 0

Re-enabled the maelstrom paths. Added 'meta' sizes for new zones. Converted some of the stored data to output strings, rather than convert numbers to sequences of bytes.

Cette révision appartient à :
Nathanial.C.Jones 2010-12-13 02:33:21 +00:00
Parent 1127cbdd27
révision db1b0fee04
6 fichiers modifiés avec 161 ajouts et 45 suppressions

Voir le fichier

@ -11,18 +11,6 @@ local function signed(c)
end
local function float(c)
--[[
local orig_c = c
if c then
c = math.floor(c * 16777216 + 0.5) -- 24 bits of fraction baby
QuestHelper: Assert(c >= -2147483648, string.format("c is too small. It was %s, and now is %s.", tostring(orig_c), tostring(c)))
QuestHelper: Assert(c < 2147483647, string.format("c is too big. It was %s, and now is %s.", tostring(orig_c), tostring(c)))
else
c = -2147483648
end
if c < 0 then c = c + 4294967296 end
return strchar(bit.band(c, 0xff), bit.band(c, 0xff00) / 256, bit.band(c, 0xff0000) / 65536, bit.band(c, 0xff000000) / 16777216)
--]]
if not c then c = -128 end
QuestHelper: Assert( c >= -128, string.format("c is too small. It is %s.", tostring(c)))
QuestHelper: Assert( c < 128, string.format("c is too big. It is %s.", tostring(c)))
@ -34,10 +22,8 @@ local function BolusizeLocation(delayed, c, z, x, y)
-- x and y are floating-point values, generally between 0 and 1. We'll dedicate 24 bits to the fractional part, largely because we can.
-- Overall we're using a weird 11 bytes on this. Meh.
-- Also, any nil values are being turned into MIN_WHATEVER.
-- if x and y then print(delayed, c, z, x, y) end
local float_x = float(x)
local float_y = float(y)
--print(x, y)
return string.format("%s %s %s %s %s", signed(delayed and 1 or 0), signed(c), signed(z), float_x, float_y)
--return signed(delayed and 1 or 0) .. signed(c) .. signed(z) .. float_x .. float_y
end

Voir le fichier

@ -80,7 +80,7 @@ local function MouseoverUnit()
end
end
QuestHelper: Assert(minrange >= 0 and minrange < 256 and maxrange >= 0 and maxrange < 256)
Merger.Add(critter, GetLoc() .. strchar(minrange, maxrange))
Merger.Add(critter, string.format("%s %s %s", GetLoc(), tostring(minrange), tostring(maxrange))) --strchar(minrange, maxrange))
if #recentlySeenCritters_Recent >= 100 then
for k, v in recentlySeenCritters_NextTrash do

Voir le fichier

@ -303,6 +303,7 @@ function Astrolabe:TranslateWorldMapPosition( C, Z, xPos, yPos, nC, nZ )
Z = Z or 0;
nZ = nZ or 0;
if ( nC < 0 and nC > -77 ) then
--if ( nC < 0 and nC > -79 ) then
return;
end
@ -1190,6 +1191,13 @@ WorldMapSize = {
xOffset = -8311.793923510446,
yOffset = 1815.215685280706,
zoneData = {
AhnQirajTheFallenKingdom = {
height = 1,
width = 1,
xOffset = 0,
yOffset = 0,
mapID = nil
},
Ashenvale = {
height = 3843.722811451077,
width = 5766.728884700476,
@ -1273,6 +1281,20 @@ WorldMapSize = {
xOffset = 11625.06045254075,
yOffset = 15166.45834829251,
mapID = 357,
},
Hyjal = {
height = 1,
width = 1,
xOffset = 0,
yOffset = 0,
mapID = nil
},
Hyjal_terrain1 = {
height = 1,
width = 1,
xOffset = 0,
yOffset = 0,
mapID = nil
},
Moonglade = {
height = 1539.572509508711,
@ -1301,6 +1323,13 @@ WorldMapSize = {
xOffset = 14529.25864164056,
yOffset = 18758.10068625832,
mapID = 1377,
},
SouthernBarrens = {
height = 1,
width = 1,
xOffset = 0,
yOffset = 0,
mapID = nil
},
StonetalonMountains = {
height = 3256.226691571251,
@ -1343,6 +1372,13 @@ WorldMapSize = {
xOffset = 16550.11410485969,
yOffset = 13649.80260929285,
mapID = 1638,
},
Uldum = {
height = 1,
width = 1,
xOffset = 0,
yOffset = 0,
mapID = nil
},
UngoroCrater = {
height = 2466.647220780505,
@ -1368,13 +1404,6 @@ WorldMapSize = {
xOffset = 14407.1086092051,
yOffset = 290.3230897653046,
zoneData = {
Alterac = {
height = 1866.673586850316,
width = 2800.000436369314,
xOffset = 17388.63313899802,
yOffset = 9676.382605411302,
mapID = 2597,
},
Arathi = {
height = 2400.0092446309,
width = 3599.999380663208,
@ -1425,10 +1454,10 @@ WorldMapSize = {
mapID = 10,
},
EasternPlaguelands = {
height = 2687.510360231216,
width = 4031.249051993366,
xOffset = 20459.46801235962,
yOffset = 7472.207045901617,
height = 2687.510360231216,
width = 4031.249051993366,
xOffset = 20459.46801235962,
yOffset = 7472.207045901617,
mapID = 139,
},
Elwynn = {
@ -1479,6 +1508,13 @@ WorldMapSize = {
xOffset = 20165.71623436714,
yOffset = 15663.90573348468,
mapID = 38,
},
NorthernStranglethorn = {
height = 1,
width = 1,
xOffset = 0,
yOffset = 0,
mapID = nil
},
Redridge = {
height = 1447.922213393415,
@ -1486,6 +1522,20 @@ WorldMapSize = {
xOffset = 19742.79960560691,
yOffset = 19751.42209395218,
mapID = 44,
},
RuinsofGilneas = {
height = 1,
width = 1,
xOffset = 0,
yOffset = 0,
mapID = nil
},
RuinsofGilneasCity = {
height = 1,
width = 1,
xOffset = 0,
yOffset = 0,
mapID = nil
},
SearingGorge = {
height = 1487.505203229038,
@ -1509,18 +1559,25 @@ WorldMapSize = {
mapID = 130,
},
StormwindCity = {
height = 1158.33686894901,
width = 1737.498058940429,
xOffset = 16449.05164642256,
yOffset = 19172.25350774846,
height = 1158.33686894901,
width = 1737.498058940429,
xOffset = 16449.05164642256,
yOffset = 19172.25350774846,
mapID = 1519,
},
Stranglethorn = { -- Split to Vale, Jungle and Cape
StranglethornVale = { -- Split to Vale, Jungle and Cape
height = 4254.18312444072,
width = 6381.248484543122,
xOffset = 15951.13375783437,
yOffset = 22345.18258706305,
mapID = 33,
},
StranglethornJungle = {
height = 1,
width = 1,
xOffset = 0,
yOffset = 0,
mapID = nil
},
Sunwell = {
height = 2218.756638064149,
@ -1535,6 +1592,13 @@ WorldMapSize = {
xOffset = 20394.88183258176,
yOffset = 20797.25913588854,
mapID = 8,
},
TheCapeOfStranglethorn = {
height = 1,
width = 1,
xOffset = 0,
yOffset = 0,
mapID = nil
},
Tirisfal = {
height = 3012.510490816506,
@ -1542,6 +1606,34 @@ WorldMapSize = {
xOffset = 15138.63417865412,
yOffset = 7338.874503644808,
mapID = 85,
},
TolBarad = {
height = 1,
width = 1,
xOffset = 0,
yOffset = 0,
mapID = nil
},
TolBaradDailyArea = {
height = 1,
width = 1,
xOffset = 0,
yOffset = 0,
mapID = nil
},
TwilightHighlands = {
height = 1,
width = 1,
xOffset = 0,
yOffset = 0,
mapID = nil
},
TwilightHighlands_terrain1 = {
height = 1,
width = 1,
xOffset = 0,
yOffset = 0,
mapID = nil
},
Undercity = {
height = 640.1067253394195,
@ -1549,6 +1641,34 @@ WorldMapSize = {
xOffset = 17298.77399735696,
yOffset = 9298.435338905521,
mapID = 1497,
},
Vashjir = {
height = 1,
width = 1,
xOffset = 0,
yOffset = 0,
mapID = nil
},
VashjirDepths = {
height = 1,
width = 1,
xOffset = 0,
yOffset = 0,
mapID = nil
},
VashjirKelpForest = {
height = 1,
width = 1,
xOffset = 0,
yOffset = 0,
mapID = nil
},
VashjirRuins = {
height = 1,
width = 1,
xOffset = 0,
yOffset = 0,
mapID = nil
},
WesternPlaguelands = {
height = 2866.677213191588,
@ -1639,6 +1759,23 @@ WorldMapSize = {
},
}
--- Cat Adjustments, now permanently enabled. Someday I should probably merge these in, or at least move this section below WoTLK section, since higher crap probably needs adjustment too.
if true then
WorldMapSize[5] = {
parentContinent = 0,
height = 1,
width = 1,
xOffset = 0,
yOffset = 0,
zoneData = {
Deepholm = { height = 1, width = 1, xOffset = 0, yOffset = 0, mapID = nil },
Kezan = { height = 1, width = 1, xOffset = 0, yOffset = 0, mapID = nil },
TheLostIsles = { height = 1, width = 1, xOffset = 0, yOffset = 0, mapID = nil },
TheMaelstrom = { height = 1, width = 1, xOffset = 0, yOffset = 0, mapID = nil }
}
}
end
--- WotLK Adjustments, now permanently enabled. Someday I should probably merge these in.
if true then
WorldMapSize[0].height = 31809.64859753034;
@ -1911,10 +2048,7 @@ for continent, zones in pairs(Astrolabe.ContinentList) do
local mapData = WorldMapSize[continent];
for index, mapName in pairs(zones) do
if not ( mapData.zoneData[mapName] ) then
--WE HAVE A PROBLEM!!!
ChatFrame1:AddMessage("Astrolabe is missing data for "..select(index, GetMapZones(continent))..".");
-- We need a way to put the message out as an error.
--error("Astrolabe is missing data for '" .. select(index, GetMapZones(continent)) .. "'.")
mapData.zoneData[mapName] = zeroData;
end
mapData[index] = mapData.zoneData[mapName];

Voir le fichier

@ -962,11 +962,6 @@ Thanks for testing!]], "QuestHelper " .. version_string, 500, 20, 10)
end]]
local nc, nz, nx, ny = self.Astrolabe:GetCurrentPlayerPosition()
if QuestHelper_IndexLookup[nc] then
if ( nx == math.huge or nx == -math.huge or ny == math.huge or ny == -math.huge ) then print (nc, nz, nx, ny) end
-- if nx then QuestHelper:Assert( nx ~= math.huge and nx ~= -math.huge, "Invalid x position... Infinite." ) end
-- if ny then QuestHelper:Assert( ny ~= math.huge and ny ~= -math.huge, "Invalid y position... Infinite." ) end
end
local tc, tx, ty
if nc and nc ~= -1 then -- We just want the raw data here, before we've done anything clever.
@ -984,7 +979,9 @@ if ( nx == math.huge or nx == -math.huge or ny == math.huge or ny == -math.huge
end
if nc and nc > 0 and nz == 0 and nc == self.c and self.z > 0 then
QuestHelper:Assert(nx < math.huge, "Broken at this point.")
nx, ny = self.Astrolabe:TranslateWorldMapPosition(nc, nz, nx, ny, nc, self.z)
QuestHelper:Assert(nx < math.huge, "Broken at this point.")
if nx and ny --[[and nx > -0.1 and ny > -0.1 and nx < 1.1 and ny < 1.1]] then -- removing the conditional because I think I can use the data even when it's a little wonky
nz = self.z
else

Voir le fichier

@ -89,11 +89,11 @@ local static_shared_routes =
{{174, 0.61, 0.20}, {168, 0.50, 0.74}, 5}, -- CoS <--> NS (Both part of STV)
{{35, 0.45, 0.85}, {169, 0.60, 0.09}, 5}, -- Silverpine <--> Ruins of Gilneas
{{169, 0.5, 0.5}, {170, 0.5, 0.5}, 5}, -- Ruins of Gilneas <--> Ruins of Gilneas City (Meta info, map doesn't change properly as of 2010-12-11-0156UET)
-- {{179, 0.5, 0.5}, {180, 0.5, 0.5}, 86400}, -- DeepHolm <--> Kezan (Meta info for when major error is fixed.)
-- {{181, 0.5, 0.5}, {180, 0.5, 0.5}, 86400}, -- The Lost Isles <--> Kezan (Meta info for when major error is fixed.)
-- {{181, 0.5, 0.5}, {182, 0.5, 0.5}, 86400}, -- The Lost Isles <--> The Maelstrom (Meta info for when major error is fixed.)
-- {{183, 0.5, 0.5}, {182, 0.5, 0.5}, 86400}, -- The Maelstrom Continent <--> The Maelstrom (Meta info for when major error is fixed.)
-- {{183, 0.5, 0.5}, {1, 0.5, 0.5}, 86400}, -- The Maelstrom Continent <--> Orgrimmar (Meta info for when major error is fixed.)
{{179, 0.5, 0.5}, {180, 0.5, 0.5}, 86400}, -- DeepHolm <--> Kezan (Meta info for when major error is fixed.)
{{181, 0.5, 0.5}, {180, 0.5, 0.5}, 86400}, -- The Lost Isles <--> Kezan (Meta info for when major error is fixed.)
{{181, 0.5, 0.5}, {182, 0.5, 0.5}, 86400}, -- The Lost Isles <--> The Maelstrom (Meta info for when major error is fixed.)
{{183, 0.5, 0.5}, {182, 0.5, 0.5}, 86400}, -- The Maelstrom Continent <--> The Maelstrom (Meta info for when major error is fixed.)
{{183, 0.5, 0.5}, {1, 0.5, 0.5}, 86400}, -- The Maelstrom Continent <--> Orgrimmar (Meta info for when major error is fixed.)
-- Wrath instance entrances
{{80, 0.693, 0.730}, {70, 0.573, 0.467}, 5}, -- UK

Voir le fichier

@ -198,7 +198,6 @@ QuestHelper_IndexLookup =
["ThunderBluff"] = {23, 1, 25},
["Teldrassil"] = {24, 1, 22},
["Ironforge"] = {25, 2, 14},
--["Alterac"] = {26, 2, 1},
["Badlands"] = {27, 2, 3},
["DunMorogh"] = {28, 2, 7},
["LochModan"] = {29, 2, 17},