Мапы из сос-ботлов
Posted: 2006-06-07 21:57:23
Народ, никто не знает, как мона вытащить координаты из мап из сос-ботлов? ну хотя б что б рассортировать...
Code: Select all
public static bool Format( Point3D p, Map map, ref int xLong, ref int yLat, ref int xMins, ref int yMins, ref bool xEast, ref bool ySouth )
{
if ( map == null || map == Map.Internal )
return false;
int x = p.X, y = p.Y;
int xCenter, yCenter;
int xWidth, yHeight;
if ( !ComputeMapDetails( map, x, y, out xCenter, out yCenter, out xWidth, out yHeight ) )
return false;
double absLong = (double)((x - xCenter) * 360) / xWidth;
double absLat = (double)((y - yCenter) * 360) / yHeight;
if ( absLong > 180.0 )
absLong = -180.0 + (absLong % 180.0);
if ( absLat > 180.0 )
absLat = -180.0 + (absLat % 180.0);
bool east = ( absLong >= 0 ), south = ( absLat >= 0 );
if ( absLong < 0.0 )
absLong = -absLong;
if ( absLat < 0.0 )
absLat = -absLat;
xLong = (int)absLong;
yLat = (int)absLat;
xMins = (int)((absLong % 1.0) * 60);
yMins = (int)((absLat % 1.0) * 60);
xEast = east;
ySouth = south;
return true;
}
}
}
omi4 wrote:А смысл их сортировать? Если на основной карте более 9.000.000 вариантов.
Смысл есть только в сортировке обычных карт. 200 вариантов в Рунке и 155 на сфере.
На сфере самое простое 5 уровней х 31 локацию.
Интересны карты 4 и 5 левелов = 62 руны и 62мешка
Автоматический искатель кладов можно написать.
Если ручками устал напиши скрипт, вот тут виден алгоритм…Code: Select all
public static bool Format( Point3D p, Map map, ref int xLong, ref int yLat, ref int xMins, ref int yMins, ref bool xEast, ref bool ySouth )
{
if ( map == null || map == Map.Internal )
return false;
int x = p.X, y = p.Y;
int xCenter, yCenter;
int xWidth, yHeight;
if ( !ComputeMapDetails( map, x, y, out xCenter, out yCenter, out xWidth, out yHeight ) )
return false;
double absLong = (double)((x - xCenter) * 360) / xWidth;
double absLat = (double)((y - yCenter) * 360) / yHeight;
if ( absLong > 180.0 )
absLong = -180.0 + (absLong % 180.0);
if ( absLat > 180.0 )
absLat = -180.0 + (absLat % 180.0);
bool east = ( absLong >= 0 ), south = ( absLat >= 0 );
if ( absLong < 0.0 )
absLong = -absLong;
if ( absLat < 0.0 )
absLat = -absLat;
xLong = (int)absLong;
yLat = (int)absLat;
xMins = (int)((absLong % 1.0) * 60);
yMins = (int)((absLat % 1.0) * 60);
xEast = east;
ySouth = south;
return true;
}
}
}
Savage wrote:Если при открытии карты высвечиваются координаты то они попадают в журнал а от туда в твой скрипт.
viewtopic.php?t=4716
Reogent wrote:Че-то я тут не догнал, вот если есть итем - карта. Кака зная ее ИД получить Х и У записанные в ней???
omi4 wrote:Сава не путай человека, нефига он в журнале не найдет.
Это гамп и обрабатывать его нужно как гамп.
Edred wrote:omi4 wrote:Сава не путай человека, нефига он в журнале не найдет.
Это гамп и обрабатывать его нужно как гамп.
Прекрасно из журнала выдираются координаты, никаких в этом проблем. Где-то у меня на свалке валяется скрипт АГРСа на сортировку карт под сферу... Если найду - кину.
omi4 wrote:Edred wrote:omi4 wrote:Сава не путай человека, нефига он в журнале не найдет.
Это гамп и обрабатывать его нужно как гамп.
Прекрасно из журнала выдираются координаты, никаких в этом проблем. Где-то у меня на свалке валяется скрипт АГРСа на сортировку карт под сферу... Если найду - кину.
на сфере SoS бутлы.... Это рунка
гамп