Как получить координаты обратные данным?

Ask for help

Moderators: Murderator+, Murderator

Grin
Expert!
Posts: 2580
Joined: 2005-05-04 14:05:19
Location: Москва

Post by Grin »

DerMeister =) wrote:...

Во приплел... Центр мас... рычаги... Молодой целовек зачем вы сюда моменты припахали? это то за чем???
Геометрическая сумма векторов очень просто просчитывается (Математики мизер). Вращение... Ужас...

для просчета "силы" надо как минимум учесть:
1. Ратсояние (уже получаем извектора)
2. Характеристики монстрика (сила, скорость, дальняя атака)
Image
желтые точки это монстры, красная - чар, серая - точка отхода

Так вот имеем уравнение |A+|M1+|M2+|M3+|M4=|0 (нольвектор)
Отсюда имеем |M1+|M2+|M3+|M4=-|A
откуда получаем кординаты
Xa= -(Xm1+Xm2+Xm3+Xm4)
Ya= -(Ym1+Ym2+Ym3+Ym4)
Соортветствено надо будет нормальизовать вектор (свети его длину к 1) что бы получить направление
DerMeister =)
Expert!
Posts: 1032
Joined: 2006-02-25 21:48:38

Post by DerMeister =) »

А я что сказал?
Image
Тоже самое. Масса - опасность моба. Результат тотже. 1 в 1.
Насчет вращения - положим ты выбрал направления основывыясь на сумме векторов... начал движение. Вдруг прям по вектору перемещения возеик моб... что отсуд следует? А то, что твой алгоритм высчитает новый вертор, по которому нужно двигатся. А там опять моб, опять новое направление. А если учеть тот факт, что в памяти киента харанится только 14 на 14 тайлов, то при двидежии чара часть мобов будит выпадать из поля зрения, а часть появлятся, следовательно, возможна ситуация колебиния чара вокруг некоторой точки. тыж понимаешь о чем я. Давай соглашайся, и нужно придумывать новую концепцию... Вектора не рулят.
ПС: Прежде чем ляпать картинку, убедись что она показывается.
DerMeister сейчас на нейрале!
Grin
Expert!
Posts: 2580
Joined: 2005-05-04 14:05:19
Location: Москва

Post by Grin »

Картинка показывается не переживай...
Чар не будет бегать... Чар будет двигатся в торону наименьшей опасности...
тоесть он может двигатся в сторону наибезопаснейшего моба и пройдет его мимо, тогда векторная картина резко изменится, что придаст ей более красивую картину...
Не будет никакого кручения...

ПС 14 тайлов сам насчитал?;) К даной ситуации это ни как не относится... никто не будет брать даные клиента (темболее от куда хыхы...)
Ururu
Posts: 479
Joined: 2007-02-21 20:15:57

Post by Ururu »

Запутался :(

Code: Select all

sub main()
VAR S = 5 ; дистанция
VAR G, K
UO.Set( 'finddistance', 'S' )
DIM Mobs[5]
      Mobs[0] = '0x9999'
      Mobs[1] = '0x9999'
      Mobs[2] = '0x9999'
      Mobs[3] = '0x9999'
      Mobs[4] = '0x9999'
   For G = 0 To 3
dim Xm[20]
dim Ym[20]
   For K = 0 To 18
               UO.FindType(Mobs[G],'-1','1')
         If UO.FindCount() Then
  For X=-S to S
     For Y=-S to S
            Repeat
               UO.WaitTargetGround(Mobs[G],'-1')
                  UO.AddObject('Vrag')
               Xm[20] = UO.GetX('Vrag')
               Ym[20] = UO.GetY('Vrag')
                  UO.Ignore('Vrag')
               UO.FindType(Mobs[G],'-1','1')
            Until UO.FindCount()
               UO.IgnoreReset()
         Else
            UO.Print("Free !!!")
               Return 0
         End If
               UO.FindType(Mobs[G],'-1','1')
   Xmob = ( Xm[0] + Xm[1] + Xm[2] + Xm[3] + Xm[4] + Xm[5] + Xm[6] + Xm[7] + Xm[8] + Xm[9] + Xm[10] + Xm[11] + Xm[12] + Xm[13] + Xm[14] + Xm[15] + Xm[16] + Xm[17] + Xm[18] + Xm[19] ) * (-1)
   Ymob = ( Ym[0] + Ym[1] + Ym[2] + Ym[3] + Ym[4] + Ym[5] + Ym[6] + Ym[7] + Ym[8] + Ym[9] + Ym[10] + Ym[11] + Ym[12] + Ym[13] + Ym[14] + Ym[15] + Ym[16] + Ym[17] + Ym[18] + Ym[19] ) * (-1)
            Next
         Next
      Next
   Next
GoToTile( Xmob, Ymob, 1, False )
End Sub

Sub GoToTile( OX, OY, N, S )
...
...
End Sub
Шард Антарес
Ururu
I'm
Expert!
Posts: 1396
Joined: 2004-10-15 22:38:04
Location: Moscow City.
Contact:

Post by I'm »

ImageImage
The End.
Rivory
Posts: 205
Joined: 2005-01-06 11:49:28

Post by Rivory »

Ururu wrote:

Code: Select all

sub main()
VAR S = 5 ; дистанция
VAR G, K
......
......
......
  For X=-S to S
     For Y=-S to S
 


Не обьявил переменные X,Y.
DerMeister =)
Expert!
Posts: 1032
Joined: 2006-02-25 21:48:38

Post by DerMeister =) »

Кто и на каком основании мой пост и пост Грина удалил? :evil:
DerMeister сейчас на нейрале!
I'm
Expert!
Posts: 1396
Joined: 2004-10-15 22:38:04
Location: Moscow City.
Contact:

Post by I'm »

Вероятно тотже кто и удалил первый раз мой пост с попкормом.
Почему закрыта тема?
Вопрос еще не исчерпан.
The End.
DerMeister =)
Expert!
Posts: 1032
Joined: 2006-02-25 21:48:38

Post by DerMeister =) »

Тема закрыта до выяснения кто такой умный удалил и не отписался. У нас тут вродебы принято, что модератор отписывается о своих действиях и о их причине... Без тех постов нереально продолжать дисскуссию.
DerMeister сейчас на нейрале!
Destruction
Junior Expert
Posts: 3221
Joined: 2004-06-24 22:08:56

Post by Destruction »

Ну вообще-то я отписался..

А вот I'm прибил мой пост.. Молодец.

Пост удалён на основании оскорбления в том посте другого участника форума.
YokoInjection CodeSweeper
Function not found?
Possession of mathematics at the level of art - a gift that is only available for election.
Sorry for my clumsy English.
Telegram: @tatikom
Skicher
Posts: 22
Joined: 2005-05-22 17:42:56

Re: Как получить координаты обратные данным?

Post by Skicher »

А если по формуле вычитать из координат моба - свои, и собственно на получившиеся корднаты идти ходилкой?
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Как получить координаты обратные данным?

Post by Mirage »

ты находишься в точке 1000,2000,5
моб находиться в точке 1000,2010,0

что и из чего ты тут вычитать собрался? :mrgreen:
Skicher
Posts: 22
Joined: 2005-05-22 17:42:56

Re: Как получить координаты обратные данным?

Post by Skicher »

из 1000 - 1000, из 2000 - 2010 , из 5 - 5

получу 0 -10 0
прибавлю к своим координатам получу свои новые
1000 1990 5

в чем фан?
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Как получить координаты обратные данным?

Post by Mirage »

фан в том что ты не написал ПРИБАВИТЬ :wink:
В принципе тема нормальная за двумя НО.
1)надо делать проверку на "можно ли дойти в полученную кооридану" и "не находиться ли там какойнибудь не проходимый объект"
2) координату Z задействовать не стоит имхо. Бывают уровни где она в паре тайлов отличается на более 50 единиц - чару будет трудно на плоскогорье подняться на 40 единиц в верх.

и еще от себя добавлю. Я бы сделал чуть по другому - чар проверяет монстрятину по подобной формуле но координаты берет не (свои - моб + свои) а (свои +-1 шаг в противоположную мобу сторону) затем опять делал проверку. Я не читал всю тему но по моему данный вариант уже обсуждался и он более оптимален.
Skicher
Posts: 22
Joined: 2005-05-22 17:42:56

Re: Как получить координаты обратные данным?

Post by Skicher »

Mirage действительно не написал, пардон. Z - мб

проверка на доходимость в моем случае не очень нужна чесно говаря, а +-1 шаг неудобно, поскольку я стрелять с лука в моба собираюсь, моб подошел на 6 тайлов, чар - отбежал на 12. :)
admir
Posts: 528
Joined: 2005-01-13 07:20:54

Re: Как получить координаты обратные данным?

Post by admir »

Грин - как всегда просто и великолепно.

А что мешает имея координаты куда ходить подставить их в ходилку с обходом препядствий , которых на этом форуме полно.
К тому же было написано что проверяя постоянно шаг за шагом расположение опасных монстров мы получаем картину движения чара, поэтому в ходилке можно минимизировать затраты на поиск обхода пути до 3-5 клеток.
все для альфы , [url=http://newvlad.nm.ru/prog]здесь[/url]
модернизация ремонт продажа игровых консолей
Sky: admirka1 Москва
Post Reply