|
Опубликовано 12.05.2013 09:28 (12 лет назад) # |
Вот так вот, но могу не успеть игры пока нет.
|
|
|
|
Опубликовано 12.05.2013 09:33 (12 лет назад) # |
JKot
Рафаэлло |
|
|
|
Опубликовано 12.05.2013 09:34 (12 лет назад) # |
стреляя с одной и той же силой можно попасть в цель под двумя углами: 1 - прямым выстрелом, 2 - навесом. единственный вариант когда угол один это когда оба варианта = 45 градусов.
function G2Ballistics(const PosOrigin, PosTarget: TG2Vec2; const TotalVelocity, Gravity: TG2Float; var Trajectory0, Trajectory1: TG2Vec2; var Time0, Time1: TG2Float): Boolean;
var x, y, x2, vt2, vt4, gr, gr2, dc, n0, n1, t2, t, vx, vy: Double;
begin
x := PosTarget.x - PosOrigin.x;
x2 := x * x;
y := PosTarget.y - PosOrigin.y;
vt2 := TotalVelocity * TotalVelocity;
vt4 := vt2 * vt2;
gr := Gravity; gr2 := gr * gr;
dc := 16 * (2 * vt2 * y * gr + vt4 - x2 * gr2);
if dc > 0 then
begin
dc := Sqrt(dc);
n0 := 4 * vt2 + 4 * y * gr;
n1 := 1 / (2 * gr2);
t2 := (n0 - dc) * n1;
if t2 >= 0 then
begin
t := Sqrt(t2);
vx := x / t;
vy := (2 * y - gr * t2) / (2 * t);
vx := Sqrt(vt2 - vy * vy);
if (x < 0) <> (vx < 0) then vx := -vx;
Trajectory0.x := vx;
Trajectory0.y := vy;
if Trajectory0.Len > TotalVelocity then
Trajectory0 := Trajectory0.Norm * TotalVelocity;
Time0 := t;
end
else
begin
Trajectory0.SetValue(0, 0);
Time0 := 0;
Result := False;
Exit;
end;
t2 := (n0 + dc) * n1;
if t2 >= 0 then
begin
t := Sqrt(t2);
vx := x / t;
vy := (2 * y - gr * t2) / (2 * t);
Trajectory1.x := vx;
Trajectory1.y := vy;
if Trajectory1.Len > TotalVelocity then
Trajectory1 := Trajectory1.Norm * TotalVelocity;
Time1 := t;
end
else
begin
Trajectory1.SetValue(0, 0);
Time1 := 0;
Result := False;
Exit;
end;
Result := True;
end
else
begin
Trajectory0.SetValue(0, 0);
Trajectory1.SetValue(0, 0);
Time0 := 0;
Time1 := 0;
Result := False;
end;
end;
эта функция возвращает True или False в зависимости от того достаточно ли силы выстрела чтобы попасть по цели. PosOrigin это откуда стреляем PosTarget это куда стреляем, TotalVelocity это сила выстрела. Trajectory0 и Trajectory1 это траектории двух вариантов выстрелов. Time0 и Time1 это время попадения при соответствующей траектории. |
|
|
|
Опубликовано 12.05.2013 09:47 (12 лет назад) # |
Ух ты, полноценное решение уравнения движения :)
Если будет возможность сегодня сесть за код, то попробую применить, спасибо) |
|
|
|
Опубликовано 12.05.2013 09:50 (12 лет назад) # |
Daemon написал:
JKot
Рафаэлло
Что, простите? |
|
|
|
Опубликовано 12.05.2013 09:57 (12 лет назад) # |
JKot написал:
Daemon написал:
JKot
Рафаэлло
Что, простите?
Тебе этого не понять =Д |
|
|
|
Опубликовано 12.05.2013 09:59 (12 лет назад) # |
JKot написал:
Daemon написал:
JKot
Рафаэлло
Что, простите?
«Рафаэлло — вместо тысячи слов!» :)
Черт, сегодня точно не получится сесть и ничего доделать, поэтому сформировал архив и сдал.
редакция от Daemon, 12.05.2013 10:03 |
|
|
|
Опубликовано 12.05.2013 10:29 (12 лет назад) # |
Daemon Кинь скрины, охота посмотреть =) |
|
|
Древний организм
|
Опубликовано 12.05.2013 10:47 (12 лет назад) # |
http://www.youtube.com/watch?v=5w4spX4KMoI |
|
|
|
Опубликовано 12.05.2013 10:59 (12 лет назад) # |
Fargost, отличий от первого скрина почти нет, все отличия в коде, наводить лоск оказалось некогда, наскоро прикрутил только пару звуков (флудить на форуме могу, а кодить не могу, блин :( )
Darthman
Да, отличный пример модификации геймплея battle city :)
|
|
|
|
Опубликовано 12.05.2013 11:00 (12 лет назад) # |
Первые две идеи хотел себе добавить =)
Видос угар =Д |
|
|
|
Опубликовано 12.05.2013 11:32 (12 лет назад) # |
Darthman, видео подняло настроение))
Daemon, хорошо тебе, я про звуки вообще забыл)) Что-то ничего не успеваю, ещё разрушение уровня не доделал, про аи, звуки и конец игры вообще молчу.. Вся надежда на вечер
JKot, нифига себе! |
|
|
Древний организм
|
Опубликовано 12.05.2013 12:08 (12 лет назад) # |
Когда до окончания конкурса остаются часы, дам знать о небольшой приятности, которая должна заставить вас доделать начатое :) Всем, кто участвует в этом конкурсе будут выданы призы. Абсолютно всем, кто пройдет по правилам. И не просто "впишется" в правила, а именно нормально пройдет по ним. |
|
|
|
Опубликовано 12.05.2013 12:24 (12 лет назад) # |
Cложно вписаться в:
*Танк игрока;
*Танки-противники, управляемые компьютером;
*Пыщ-пыщ! |
|
|
|
Опубликовано 12.05.2013 13:41 (12 лет назад) # |
JKot АХРЕНЕТЬ!!!!
Мне до тебя далеко...
|
|
|
|
Опубликовано 12.05.2013 13:45 (12 лет назад) # |
А мне до вас всех далеко =Д
редакция от Teedeush, 12.05.2013 13:45 |
|
|
|
Опубликовано 12.05.2013 14:08 (12 лет назад) # |
Да ладно вам, игра важнее, а она слабая.
И это юнити же, накидал ассетов с офф сайта юнити и игра готова) |
|
|
|
Опубликовано 12.05.2013 14:24 (12 лет назад) # |
Гулял я тут по фалько и наткнулся на клон игры, которая делалась на конкурс №92.
http://falcoware.com/AlienSurvival.php
редакция от Teedeush, 12.05.2013 14:26 |
|
|
|
Опубликовано 12.05.2013 14:40 (12 лет назад) # |
Ну вот, после просмотра скринов с уверенностью могу сказать, что моя работа в заднице. Отменить что ли сдачу и не позориться... |
|
|
Древний организм
|
Опубликовано 12.05.2013 14:45 (12 лет назад) # |
Только попробуй мне! |
|
|