Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.06.2010, 14:29   #1
somebody94
Пользователь
 
Регистрация: 27.06.2010
Сообщений: 13
По умолчанию Не могу прикрепить обьект к обьекту

У меня проблема такая:
корабль и снаряд.Как мне зделать штоб при выпуске снаряда во первых он всегда выходил из корабля.А во вторых не знаю как зделать штоб я смог использовать снаряд ешё раз как он улетел.Што мне делать нада?Заранее благадарю....
somebody94 вне форума Ответить с цитированием
Старый 27.06.2010, 14:31   #2
260526052605
Пользователь
 
Регистрация: 31.07.2008
Сообщений: 12
По умолчанию

какой это вообще язык?
а просто по логике - каждый раз перед "выстрелом" устанавливать координаты снаряда к координатам корабля
260526052605 вне форума Ответить с цитированием
Старый 27.06.2010, 14:33   #3
somebody94
Пользователь
 
Регистрация: 27.06.2010
Сообщений: 13
По умолчанию

а как ето зделать?Вот ето я хочю узнать.
somebody94 вне форума Ответить с цитированием
Старый 27.06.2010, 14:35   #4
260526052605
Пользователь
 
Регистрация: 31.07.2008
Сообщений: 12
По умолчанию

я и спрашиваю, ты на каком языке пишешь? как я тебе код напишу, если я язык не знаю?
260526052605 вне форума Ответить с цитированием
Старый 27.06.2010, 14:37   #5
somebody94
Пользователь
 
Регистрация: 27.06.2010
Сообщений: 13
По умолчанию

а извини delphi 7.
somebody94 вне форума Ответить с цитированием
Старый 27.06.2010, 14:39   #6
Carbon
JAVA BEAN
Участник клуба
 
Аватар для Carbon
 
Регистрация: 22.04.2007
Сообщений: 1,329
По умолчанию

А проблема в чём: как координаты выставить, отобразить или как хранить данные?
Carbon вне форума Ответить с цитированием
Старый 27.06.2010, 14:41   #7
somebody94
Пользователь
 
Регистрация: 27.06.2010
Сообщений: 13
По умолчанию

можно ито и другое показать?Я только начала заниматся.
somebody94 вне форума Ответить с цитированием
Старый 27.06.2010, 14:42   #8
260526052605
Пользователь
 
Регистрация: 31.07.2008
Сообщений: 12
По умолчанию

procedure Vistrel;
begin
Snaryad.Left:=Korabl.Left;
Snaryad.Top:=Korabl.Top;
// дальше команды полета снаряда, тут уже посложнее, если так
// хочешь, могу кинуть

end;
260526052605 вне форума Ответить с цитированием
Старый 27.06.2010, 14:42   #9
somebody94
Пользователь
 
Регистрация: 27.06.2010
Сообщений: 13
По умолчанию

да если можна...
somebody94 вне форума Ответить с цитированием
Старый 27.06.2010, 14:50   #10
260526052605
Пользователь
 
Регистрация: 31.07.2008
Сообщений: 12
По умолчанию

Код:
///Возвращает угол от одной точки к другой
function AngleTo(x,y,x1,y1: Integer): Real;
begin
If (x1<x) and (y1<y) then result:=270*pi/180-arcsin(abs(y-y1)/sqrt(sqr(x-x1)+sqr(y-y1)));
If (x1<x) and (y1>y) then result:=270*pi/180+arcsin(abs(y-y1)/sqrt(sqr(x-x1)+sqr(y-y1)));
If (x1>x) and (y1<y) then result:=90*pi/180+arcsin(abs(y-y1)/sqrt(sqr(x-x1)+sqr(y-y1)));
If (x1>x) and (y1>y) then result:=90*pi/180-arcsin(abs(y-y1)/sqrt(sqr(x-x1)+sqr(y-y1)));

If (x1=x) and (y1<y) then result:=pi;     // 180
If (x1=x) and (y1>y) then result:=0;      // 0
If (x1<x) and (y1=y) then result:=1.5*pi; // 270
If (x1>x) and (y1=y) then result:=0.5*pi; // 90
end;

procedure Vistrel(xx,yy: Integer); // Параметры - координаты цели
var a,r,x,y: Real;
begin
Snaryad.Left:=Korabl.Left; // Снаряд перемещаем
Snaryad.Top:=Korabl.Top; // к кораблю
a:=AngleTo(Snaryad.Left,Snaryad.Top,xx,yy); // Вычисляем угол между снарядом и целью
r:=0;
x:=Snaryad.Left; y:=Snaryad.Top; // Запоминаем начальные координаты
while r<sqrt(sqr(Snaryad.Left-xx)+sqr(Snaryad.Top-yy)) do begin // Пока не долетели до цели...
Snaryad.Left:=Round(x+r*sin(a));  // Приближаемся
Snaryad.Top:=Round(y+r*cos(a)); // к цели
r:=r+1; 
Application.ProcessMessages; // Чтобы увидеть результат
Sleep(10); // Небольшая задержка для красоты
end;

end;
260526052605 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Присваивание параметров к обьекту (style) deltaCrame Общие вопросы C/C++ 1 25.04.2010 20:22
обьект в обьект... Olejik Общие вопросы по Java, Java SE, Kotlin 6 22.03.2010 22:23
надо сделать hidden обьекту lukoie HTML и CSS 10 02.03.2010 22:28
Обращение в i-тому обьекту Airou Компоненты Delphi 8 10.04.2008 03:14
Не могу создать обьект mrandrey Общие вопросы Delphi 6 04.06.2007 16:04