Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.02.06;
Скачать: CL | DM;

Вниз

Как крутить спрайты?   Найти похожие ветки 

 
Wish ©   (2004-11-06 10:57) [0]

Сабж. Я пытался юзать DrawRotate(), но не работает. Еще чтобы найти градус прокрутки я написал формулу вычесления градуса поворота относительно игрока и положения мышки, но появляется ошибка: Incompatible types. В чем тут ошибка:

FAngle:= ArcSin(mouse.CursorPos.Y - round(ply)) div sqrt(((mouse.CursorPos.X - round(plx))*(mouse.CursorPos.X - round(plx))+((mouse.CursorPos.Y - round(ply))*(mouse.CursorPos.Y - round(ply)))));


 
dRake   (2004-11-06 13:49) [1]

Ну по поводу 1-ой части хз DelphiX не юзал
Imcompatible types из-за того что ArcSin(mouse.CursorPos.Y - round(ply)) - float а ты пытаешся его div, да еще и на другой флоат.

Посмотри я тут функцию накалякал для своей игрухи


FUNCTION v_Ang( x1, y1, x2, y2 : single ) : single;
VAR
 TMP : single;

BEGIN;

 TMP := v_Len(x1, y1, x2, y2);

 if (x2 >= x1) and (y2 > y1)  then Result := arccos((x2 - x1)/TMP)*180/Pi +   0;
 if (x2 <  x1) and (y2 >= y1) then Result := arccos((y2 - y1)/TMP)*180/Pi +  90;
 if (x2 <= x1) and (y2 < y1)  then Result := arccos((x1 - x2)/TMP)*180/Pi + 180;
 if (x2 > x1)  and (y2 <= y1) then Result := arccos((y1 - y2)/TMP)*180/Pi + 270;

END;


Возвращает угол в градусах между прямой, проведенной через точки с координатами x1, y1, x2, y2 и осью ОХ. Хоть и топорно написанна, зато работает :)


 
dRake   (2004-11-06 13:51) [2]

Упс забыл :)


FUNCTION v_Len( x1, y1, x2, y2 : single ) : single;
VAR
 TMP : single;

BEGIN;

 TMP := sqrt((x2 - x1)*(x2 - x1) + (y2 - y1)*(y2 - y1));
 if (TMP = 0) then TMP := 0.0001;
 Result := TMP;

END;



Страницы: 1 вся ветка

Текущий архив: 2005.02.06;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.045 c
4-1103471885
Stot1k
2004-12-19 18:58
2005.02.06
Запуск приложения


1-1106658683
Jay1982
2005-01-25 16:11
2005.02.06
CreateProcessAsUser


9-1098510386
Lokomen
2004-10-23 09:46
2005.02.06
Квест


1-1106724321
mariya_mezenceva
2005-01-26 10:25
2005.02.06
есть ли функция типа (год,месяц,день:integer):tdatetime


3-1105334675
first_aid
2005-01-10 08:24
2005.02.06
Други помогите Interbas совский запрос переделать в Access овский