Zombak2500
offline
Опыт:
1,855Активность: |
Точки X Y
Прошу помочь как найти точки X и Y ,которые располагаются вперёд от лица юнита на 200.
Надеюсь вы поймёте ,что я имею ввиду. |
15.02.2010, 21:23 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
AlexKARASb
Learning cpp
offline
Опыт:
22,103Активность: |
X+200*Cos(угол юнит фасинг(твой юнит)*bj_DEGTORAD) Y+200*Sin(угол юнит фасинг(твой юнит)*bj_DEGTORAD) ты это имел в виду? Отредактировано AlexKARASb, 15.02.2010 в 22:06. |
15.02.2010, 21:30 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Zombak2500
offline
Опыт:
1,855Активность: |
bj_DEGTODAR ?! O_o
Юнит А стоит лицом к точке Б на расстоянии 200 , как узнать X и Y точки Б |
15.02.2010, 21:33 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
AlexKARASb
Learning cpp
offline
Опыт:
22,103Активность: |
Zombak2500, bj_DEGTORAD - перевод из градусов в радианы
AngleBetweenPoints(A,B) или Atan2(x2-x1,y2-y1) сдесь уже радианы сразу Отредактировано AlexKARASb, 15.02.2010 в 22:06. |
15.02.2010, 21:37 | #4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Zombak2500
offline
Опыт:
1,855Активность: |
т.к. вы выражаетесь крайне странно или я не до понимаю вас. пожалуйста допиши вот это
set x = set y = |
15.02.2010, 21:39 | #5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
AlexKARASb
Learning cpp
offline
Опыт:
22,103Активность: |
ладно напишу полностью
Код:
при пересечении синуса и косинуса на растоянии 200 будет точка туда и переместится юнит Отредактировано AlexKARASb, 15.02.2010 в 22:06. |
15.02.2010, 21:54 | #6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Sunn
To feel joy, not be blue
offline
Опыт:
4,975Активность: |
Цитата:
bj_DEGTORAD |
|
15.02.2010, 21:58 | #7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
XOR
offline
Опыт:
38,284Активность: |
советую вынести в отдельную функцию, карасю поделить наконец bj_DEGTORAD , а не писать его, "как есть" |
15.02.2010, 22:11 | #8
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Zombak2500
offline
Опыт:
1,855Активность: |
» Так?
function Conditions takes nothing returns boolean
return GetSpellAbilityId() == 'AHds' endfunction function Actions takes nothing returns nothing
local unit uca = GetSpellAbilityUnit() local real Rca = GetUnitFacing(uca) local real x=GetUnitX(uca) local real y=GetUnitY(uca) SetUnitX(uca,x+200*Cos(Rca*bj_DEGTORAD)) SetUnitY(uca,y+200*Sin(Rca*bj_DEGTORAD)) call CreateNUnitsAtLoc( 1, 'hfoo', GetOwningPlayer(uca), Location(x, y), Rca ) endfunction function InitTrig_Untitled_Trigger_001 takes nothing returns nothing set gg_trg_Untitled_Trigger_001 = CreateTrigger( ) call TriggerRegisterAnyUnitEventBJ( gg_trg_Untitled_Trigger_001, EVENT_PLAYER_UNIT_SPELL_EFFECT ) call TriggerAddCondition( gg_trg_Untitled_Trigger_001, Condition( function Conditions ) ) call TriggerAddAction( gg_trg_Untitled_Trigger_001, function Actions ) endfunction Но у меня на 10 строчке пишет Syntax Error |
16.02.2010, 16:38 | #9
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
AlexKARASb
Learning cpp
offline
Опыт:
22,103Активность: |
ошибка в создании юнита
создай так call CreateUnit(GetOwningPlayer(uca),'hfoo',x,y,Rca) cтоп я лол ты просто забыл написать перед сетюнит call!!! call SetUnitX |
16.02.2010, 17:49 | #10
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
XOR
offline
Опыт:
38,284Активность: |
Юзайте сjass и не пишите call |
16.02.2010, 18:31 | #11
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Mr_ILYAS
Kicked by XimikS
offline
Опыт:
492Активность: |
всё правильно тебе расписали в самом начале допустим unit u имеет координаты x1,y1
а искомую точку Б обозначим координатами x2,y2 x1 это GetUnitX(u) y1 это GetUnitY(u) тогда решение выглядит так:
set x2=GetUnitX(u)+200*Cos(GetUnitFacing(u)*bj_DEGTORAD) set y2=GetUnitY(u)+200*Sin(GetUnitFacing(u)*bj_DEGTORAD) где bj_DEGTORAD — это константа, при умножении на которую мы переводим градусы в радианты
Degris To Radian (сокращённо DEGTORAD)
угол в радиан тоесть мы переводим угол поворота лица юнита в радианы умножив на эту константу |
16.02.2010, 23:04 | #12
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Hellfim
Новичок
offline
Опыт:
79,880Активность: |
|
17.02.2010, 00:55 | #13
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Zombak2500
offline
Опыт:
1,855Активность: |
AlexKARASb, Hellfim, спс, понял всё
XiMiKs, а на русском есть мануал? я так понял это 'C' + 'Jass'. Если да ,то думаю выучу я 'С' учил |
17.02.2010, 11:20 | #14
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ShadoW DaemoN
offline
Опыт:
37,078Активность: |
|
17.02.2010, 11:32 | #15
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|