NightRaven
offline
Опыт:
719Активность: |
Управление на стрелках
управление на стрелках:
Искал везде, нашел много, но всё-равно не смог применить с моими изменениями. Вот чего не хватает в любом примере, (но что мне жизненно необходимо)): 1. Как сделать, что бы при скорости юнита, равной 0,при нажатии стрелок "влево" или "вправо" юнит делал шаг влево или вправо (именно шаг, не поворот(!) - 1.2. при нажатии на стрелку "вниз", юнит делал один шаг назад, но при ужержании кнопки 3-4 секунды, разворачивался и шёл назад (как в обычном примере). 2.Камера: Как сделать, что бы камера не была закреплена за спиной юнита а при ддвижении мышки вращалась как и мышь во всех направлениях. Соответственно при этом значения кнопок "Влево, вправо, вперёд, назад" меняются в зависимости от расположения камеры. Надеюсь, что вам не составит труда помочь мне) P.S. Так же могу прикрепить пример Kiwi, хотя он уже есть где-то на форуме/сайте. NightRaven добавил: Кстати, когда юнит идёт вперёд камера переносится на "вид с сзади". |
10.08.2007, 19:52 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
beavis
offline
Опыт:
675Активность: |
Цитата:
У тебя есть юнит у которого присутствует анимация шага влево или вправо? Если есть, то напишу тебе как сделать. Цитата:
Здесь также нужна анимация шага назад, другими способами, получится коряво. Цитата:
Насколько я знаю, управление камерой с помощью мыши невозможно. Хотя возможно я ошибаюсь... Наверное я разачоровал тебя своими ответами... |
|||
11.08.2007, 00:46 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
TNT
О_о
offline
Опыт:
11,019Активность: |
NightRaven,
1. Так же как вперёд/назад, только надо перемещать юнит с помощью полярок на Facing unit() -/+ 90. 2. Помойму так как ты сказал низя камеру вертеть... Cinderella добавил: beavis, несложно заставить играть анимацию юниту. |
11.08.2007, 00:52 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
beavis
offline
Опыт:
675Активность: |
Цитата:
Что ты имеешь ввиду. |
|
11.08.2007, 01:03 | #4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DFlyer
<3 MJ
offline
Опыт:
43,079Активность: |
Cinderella
Бивис имеет ввиду, что у юнита должна быть анимация шагов в бок. |
11.08.2007, 01:10 | #5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
beavis
offline
Опыт:
675Активность: |
Хотя, насчет движения камеры с помощью мышки у меня есть одна идея, но вот дойдет до меня она не скоро, если вообще дойдет. |
11.08.2007, 01:54 | #6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NightRaven
offline
Опыт:
719Активность: |
Спасибо всем, попробую разобраться. Если "неразберусь", тогда напишу).
Цитата:
Если дойдёт, сообщи мне плиз). |
|
11.08.2007, 02:56 | #7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
beavis
offline
Опыт:
675Активность: |
Да без проблем. |
11.08.2007, 10:28 | #8
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
YasonDelAlt
offline
Опыт:
862Активность: |
В варе не существует функций для получения положение мыши, следовательно и управление камерой с помощью мыши стандартными средствами сделать не возможно. Советую почитать эту статью.
|
11.08.2007, 15:39 | #9
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NightRaven
offline
Опыт:
719Активность: |
YasonDelAlt, спасибо тебе тоже),до этой статьи я думал, что знаю Delphi лучше)), поэтому поворачивать камеру получилось только с помощью с помощью waradd.exe.
А вот на счёт полярных - не особо, попробую уещё с триггерами чё-нить намудрить... |
11.08.2007, 20:23 | #10
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
TNT
О_о
offline
Опыт:
11,019Активность: |
DFlyer, я понял, вот и говорю, на модели сделать анимацию и проиграть триггерно.
|
11.08.2007, 21:57 | #11
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NightRaven
offline
Опыт:
719Активность: |
Так как тему я уже создал, напишу следующие вопросы сюда).
Собственно вот первый вопрос: можно ли сделать что бы вокруг героя всегда перемещались 8 областей и что бы например как на рисунке впереди и сзади героявсегда были зелёные области, по бокам от героя красные и по диагонали синие? Картинка- скриншот: DEAD URL P.S. Сам пытался делать с помощью полярок, но ничего нормального не получилось(( P.S.P.S.Если это реально - пожалуйста сделайте пример или объясните как так сделать, естественно кто сможет ответить внесу в титры и тому огромный респект))). Заранее спасибо всем! |
20.09.2007, 08:26 | #12
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
FellGuard
Losyash
offline
Опыт:
39,547Активность: |
именно с помощью полярок это и делается.
green regions- (hero position) offset by 128.00 towards (Facing angle of hero) degrees- (hero position) offset by 128.00 towards (Facing angle of hero+180.00) degrees red regions- (hero position) offset by 128.00 towards (Facing angle of hero - 90.00) degrees- (hero position) offset by 128.00 towards (Facing angle of hero + 90.00) degrees diagonal regions- (hero position) offset by 181.02 (по теореме пифагора) towards (Facing angle of hero + 45.00) degrees- (hero position) offset by 181.02 towards (Facing angle of hero - 45.00) degrees - (hero position) offset by 181.02 towards (Facing angle of hero + 135.00) degrees - (hero position) offset by 181.02 towards (Facing angle of hero - 135.00) degrees FellGuard добавил: во избежание утечек делается 2 точки: point_hero, point_move Периодический триггер - Код:
FellGuard добавил: вместо 128.00 кстати надо взять расстояние от героя до центра ближайшей области (по горизонтали или вертикали), 128.00 я взял от балды - это расстояние между линовкой местности (см скрин в предыдущем посте). тогда расстояние между героем и областью по диагонали будет считаться так (sqrt(x*x+x*x) | x = расстояние до области по горизонтали) |
20.09.2007, 09:24 | #13
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NightRaven
offline
Опыт:
719Активность: |
FellGuard, спасиб и респект тебе, сейчас пойду воплощать в проект)) Внесу в титры как и обещал)
|
20.09.2007, 11:29 | #14
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
Не над полярки, полярки фтопку. Как джон советовал:
local real x = GetLocationX(unit) + dist * Cos(angle * bj_DEGTORAD) local real y = GetLocationY(unit) + dist * Sin(angle * bj_DEGTORAD) |
20.09.2007, 19:07 | #15
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NightRaven
offline
Опыт:
719Активность: |
ScorpioT1000, можешь пример выложить, а?
|
20.09.2007, 20:16 | #16
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
Я скора охрененную наработку выложу. Там камера и управление типа вовки.. тока без исп. поворота мышью..=( |
20.09.2007, 20:21 | #17
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NightRaven
offline
Опыт:
719Активность: |
Цитата:
Ну мышь пока подождет)) КАк скоро сможешь выложить? и можешь послать мне сейчас плиз!? Только с областями мне тоже нужно вопрос решить - немного для другой цели) Так что если не сложно создай пример пожалуйста! |
|
20.09.2007, 20:43 | #18
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
FellGuard
Losyash
offline
Опыт:
39,547Активность: |
в связи с превышением Скорпиотом лимита варнов, нагло возьму на себя его инициативу)
если перевести то, что я сказал из гуи-триггерного формата в Jass (а не-полярки это именно он), то получим » следующее Код:
Отредактировано FellGuard, 25.09.2007 в 20:15. |
21.09.2007, 21:14 | #19
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NightRaven
offline
Опыт:
719Активность: |
FellGuard, отлично, спасибо, попробую воплотить это в карту только завтра, т.к. щаз уже ничего не могу делать)) Как только что нибудь не получится отпишусь здесь)))
|
21.09.2007, 23:45 | #20
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|