![]()
Zombak2500
![]() ![]() offline
Опыт:
1,855Активность: |
Точки X Y
Прошу помочь как найти точки X и Y ,которые располагаются вперёд от лица юнита на 200.
Надеюсь вы поймёте ,что я имею ввиду. |
![]() |
#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. |
![]() |
#2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Zombak2500
![]() ![]() offline
Опыт:
1,855Активность: |
bj_DEGTODAR ?! O_o
Юнит А стоит лицом к точке Б на расстоянии 200 , как узнать X и Y точки Б |
![]() |
#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. |
![]() |
#4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Zombak2500
![]() ![]() offline
Опыт:
1,855Активность: |
т.к. вы выражаетесь крайне странно или я не до понимаю вас. пожалуйста допиши вот это
set x = set y = |
![]() |
#5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
AlexKARASb
Learning cpp
![]() ![]() offline
Опыт:
22,103Активность: |
ладно напишу полностью
Код:
при пересечении синуса и косинуса на растоянии 200 будет точка туда и переместится юнит Отредактировано AlexKARASb, 15.02.2010 в 22:06. |
![]() |
#6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Sunn
To feel joy, not be blue
![]() ![]() offline
Опыт:
4,975Активность: |
Цитата:
bj_DEGTORAD |
|
![]() |
#7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
XOR
![]() offline
Опыт:
38,284Активность: |
советую вынести в отдельную функцию, карасю поделить наконец bj_DEGTORAD , а не писать его, "как есть" |
![]() |
#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 |
![]() |
#9
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
AlexKARASb
Learning cpp
![]() ![]() offline
Опыт:
22,103Активность: |
ошибка в создании юнита
создай так call CreateUnit(GetOwningPlayer(uca),'hfoo',x,y,Rca) cтоп я лол ты просто забыл написать перед сетюнит call!!! call SetUnitX |
![]() |
#10
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
XOR
![]() offline
Опыт:
38,284Активность: |
Юзайте сjass и не пишите call |
![]() |
#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)
угол в радиан тоесть мы переводим угол поворота лица юнита в радианы умножив на эту константу |
![]() |
#12
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Hellfim
Новичок
![]() ![]() offline
Опыт:
80,866Активность: |
|
![]() |
#13
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Zombak2500
![]() ![]() offline
Опыт:
1,855Активность: |
AlexKARASb, Hellfim, спс, понял всё
XiMiKs, а на русском есть мануал? я так понял это 'C' + 'Jass'. Если да ,то думаю выучу я 'С' учил |
![]() |
#14
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
ShadoW DaemoN
![]() ![]() offline
Опыт:
37,078Активность: |
|
![]() |
#15
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|