Page 1 of 1

Мапы из сос-ботлов

Posted: 2006-06-07 21:57:23
by Reogent
Народ, никто не знает, как мона вытащить координаты из мап из сос-ботлов? ну хотя б что б рассортировать...

Re: Мапы из сос-ботлов

Posted: 2006-06-07 23:17:52
by Reogent
Ну помогите плз... =) а то уж очень запарно каждую карту раскрывать и координаты в обычные переводить =)

Posted: 2006-06-08 00:10:43
by omi4
А смысл их сортировать? Если на основной карте более 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;
      }
   }
}

Posted: 2006-06-08 13:04:59
by Reogent
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;
      }
   }
}

Че-то я тут не догнал, вот если есть итем - карта. Кака зная ее ИД получить Х и У записанные в ней???

Posted: 2006-06-08 13:23:19
by Savage
Если при открытии карты высвечиваются координаты то они попадают в журнал а от туда в твой скрипт.
viewtopic.php?t=4716

Posted: 2006-06-08 14:06:34
by omi4
Savage wrote:Если при открытии карты высвечиваются координаты то они попадают в журнал а от туда в твой скрипт.
viewtopic.php?t=4716


Сава не путай человека, нефига он в журнале не найдет.
Это гамп и обрабатывать его нужно как гамп.

Posted: 2006-06-08 14:27:53
by omi4
Reogent wrote:Че-то я тут не догнал, вот если есть итем - карта. Кака зная ее ИД получить Х и У записанные в ней???


Если думать лень.
Есть старый проверенный способ… Называется ПОИСК.

http://forum.yoko.com.ua/viewtopic.php?p=16655

Posted: 2006-06-08 23:21:42
by Edred
omi4 wrote:Сава не путай человека, нефига он в журнале не найдет.
Это гамп и обрабатывать его нужно как гамп.


Прекрасно из журнала выдираются координаты, никаких в этом проблем. Где-то у меня на свалке валяется скрипт АГРСа на сортировку карт под сферу... Если найду - кину.

Posted: 2006-06-09 00:14:45
by omi4
Edred wrote:
omi4 wrote:Сава не путай человека, нефига он в журнале не найдет.
Это гамп и обрабатывать его нужно как гамп.


Прекрасно из журнала выдираются координаты, никаких в этом проблем. Где-то у меня на свалке валяется скрипт АГРСа на сортировку карт под сферу... Если найду - кину.


на сфере SoS бутлы.... Это рунка
гамп

Posted: 2006-06-09 18:53:46
by Reogent
omi4 wrote:
Edred wrote:
omi4 wrote:Сава не путай человека, нефига он в журнале не найдет.
Это гамп и обрабатывать его нужно как гамп.


Прекрасно из журнала выдираются координаты, никаких в этом проблем. Где-то у меня на свалке валяется скрипт АГРСа на сортировку карт под сферу... Если найду - кину.


на сфере SoS бутлы.... Это рунка
гамп

А на ЗХР при открытии мапы из сос-ботла открывается гамп... И в журнале ниче не появляется....... лан... а как первести координаты из тех, которые в мапах там с широтой и долготой в обычные... с Х и У.