Войти
ФлеймФорумПроЭкты

Floating Islands (39 стр)

Страницы: 138 39 40 41119 Следующая »
#570
12:51, 15 ноя. 2018

sinoby
Слишком поверхостно, опиши бонусы, хотя бы )


#571
(Правка: 12:59) 12:52, 15 ноя. 2018

nes
> Слишком поверхостно, опиши бонусы, хотя бы )
ох что ж вы делаете, счас напрягу память, заморозка, жизнь, массовый взрыв, укрепить орла
что вспомнилось
но глянув в вики я вижу что еще были( улучшалка танка, неузвимость и что я наверно никогда не получал даже "корабль"), ну ладно давно то было

#572
13:04, 15 ноя. 2018

sinoby
> эммм, ездим, стреляем, базу охраняем, бонусы собираем, в своего орла не
> стреляем
Можно еще упростить, уничтожаем противника не дав уничтожить себя и базу, но под это описание подходит что угодно)

Там одних только типов местности 6 штук:
-пустое пространство, по нему можно ездить
-кирпичи, блокируют проезд, разбиваются обычными пулями
-броня, как и кирпич но для пробития необходим бронебойный снаряд
-лес визуально маскирует танки от игрока, особыми пулями можно выкашивать лес
-вода не влияет на пули, но преграждает путь, при наличии бонуса кораблик через нее можно ездить
-лед добавляет танкам инертности

#573
13:06, 15 ноя. 2018

emptiness_rain
> особыми пулями можно выкашивать лес
чиито?

#574
13:08, 15 ноя. 2018

sinoby
> чиито?
Ка собираешь 3 звезды то можно бить броню, 1 пистолет дает такой же эффект как 3 звезды, а 3 пистолета при полете пули выкашивают под ней весь лес.

#575
(Правка: 13:12) 13:12, 15 ноя. 2018

emptiness_rain
> Ка собираешь 3 звезды то можно бить броню, 1 пистолет дает такой же эффект как
> 3 звезды, а 3 пистолета при полете пули выкашивают под ней весь лес.

"В игре есть ровно семь типов бонусов — каска, часы, лопата, звезда, граната, танк и пистолет. При этом в оригинальной игре последний не используется вовсе, зато его можно встретить в пиратских модификациях — там он делает мгновенный максимальный апгрейд, т.е. эквивалентен трём взятым звёздам (а в некоторых вариациях ещё и позволяет уничтожать «лес»). Кстати, в пиратских версиях с пистолетом присутствует ещё один бонус — корабль, который позволяет передвигаться по воде."

значит я был не пират

#576
13:17, 15 ноя. 2018

sinoby
А теперь узри это https://habr.com/post/142126/

#577
13:18, 15 ноя. 2018

nes
> А теперь узри это https://habr.com/post/142126/

да уже узрел, но вы что собрались писать танчики ?

#578
19:16, 15 ноя. 2018

sinoby
> ооооооо молодеж на форуме появилась
Ну не то чтобы только появился - не один год уже зарегистрирован)

sinoby
> в 2005 играть на денди это надо сказать необычно!
))) Я, кстати, сейчас спросил у родителей - ошибся немного: в 2005 у нас появился компьютер, а с 2004 я в Денди играл. Помню, как мы с мамой эти самые танки в коопе проходили(до конца так и не дошли). Еще вместе играли в какую-то игру: там были черепахи какие-то на корабле космическом. Вид сбоку был. Название не помню.

Я танки более-менее помню, тем более уже делал рабочий прототип с говнокодом(чтобы побыстрее) на C. Мне бы вот для кОнтры желательно списочек всяких там особенностей и важных моментов. Или может кто знает где искать такие подробные описания игр? Еще бы ресурсы хорошо взять где-то, только вот не могу найти спрайты такие же, как были на Денди у меня.

#579
(Правка: 20:33) 20:32, 15 ноя. 2018

Vlad2001_MFS
> Еще вместе играли в какую-то игру: там были черепахи какие-то на корабле
> космическом. Вид сбоку был. Название не помню.
это чтоли

+ Показать

это не черепахи =/

#580
(Правка: 20:52) 20:43, 15 ноя. 2018

Mira
Главные герои такие же, только уровни вообще другие были. Там какой-то космический корабль или типа того было. Первый уровень - что-то на черном фоне.

Mira
> это не черепахи =/
Ну, так мне они в детстве запомнились)

Update:
О, нашел!

+ Battletoads & Double Dragon
#581
3:53, 16 ноя. 2018

Уф, какое приятное чувство когда придумал идеальную хрень (даже простенькую)

Вообще мне писали что идеального кода не достичь и что через пару лет он уже не будет нравиться, но я с этим не согласен. Ну то есть если под идеальным иметь ввиду кодестайл - то они правы, кодестайл за годы может меняться.
Но в моем понимании - идеальный, это полностью закрывающий все дыры


.... Сначала напишу про пространства имен. Так как мне часто приходится таскать код из одного проекта в другой, то постоянно переименовывать пространство имен надоело, поэтому у меня есть макросы:

#define _NAMESPACE              se
#define _NAMESPACE_BEGIN   namespace _NAMESPACE {
#define _NAMESPACE_END      }

И код выглядит так:

_NAMESPACE_BEGIN   
class Foo;
_NAMESPACE_END    

Теперь мне достаточно изменить макрос _NAMESPACE чтобы переименовать все пространство имен. Удобно.

Зачем _NAMESPACE_BEGIN и _NAMESPACE_END? ведь можно было бы написать:

namespace _NAMESPACE {}

А это еще один плюс. Если использовать пространства имен как есть - автоформатирование постоянно сдвигает на один отступ:

namespace _NAMESPACE
{
      class Foo; // лишние отступы, раздражает
}

С макросами отступа не будет:

_NAMESPACE_BEGIN 

class Foo; // нет отступа

_NAMESPACE_END

Ну вот так у меня организовано пространство имен.


Короче, ситуация следующая. У меня есть пространство имен. В нем есть класс Context которым пользуется пользователь. Внутри этого класса есть pimpl ContextImpl - он содержит платформозависимую хрень и не должен быть доступен пользователю (и вообще пользователь не должен о нем знать):

_NAMESPACE_BEGIN 

class Context
{
public:
....
private:
  class ContextImpl *m_impl = nullptr;
};

_NAMESPACE_END

И вот тут вылезла маленькая проблема, intellisense показывает оба имени в пространстве имен:
Безымянный | Floating Islands

пользователь конечно не может создать ContextImpl, но он его видит, то есть пространство имен содержит мусор.
Конечно в проектах с дедлайнами на такое не смотрят, но я же пишу движ мечты

Решение есть (например в бусте) - ввести пространство имен detail. Но его почему-то часто включают внутрь основного пространства имен (и оно там тоже создает мусор)

Я же решил это так:

#define _NAMESPACE_DETAIL            seDetail
#define _NAMESPACE_DETAIL_BEGIN namespace _NAMESPACE_DETAIL {
#define _NAMESPACE_DETAIL_END   }

#define _NAMESPACE              se
#define _NAMESPACE_BEGIN   namespace SE_NAMESPACE {
#define _NAMESPACE_END      }
....
_NAMESPACE_DETAIL_BEGIN
using namespace _NAMESPACE; // это для того чтобы в seDetail не пришлось везде писать se::
_NAMESPACE_DETAIL_END

ну и класс выглядит так:

_NAMESPACE_DETAIL_BEGIN
class ContextImpl;
_NAMESPACE_DETAIL_END

_NAMESPACE_BEGIN

class Context
{
public:
  Context(const ContextConfig &config);
  ~Context();

  int32_t Run(int argc, char *argv[]);

private:
  _NAMESPACE_DETAIL::ContextImpl *m_impl = nullptr;
  ContextConfig m_config;
};

_NAMESPACE_END

Теперь пользователь не видит лишние объекты (ни лишнее пространство имен, ни внутренние классы)


Конечно задачка примитивная и этот пост я писал дольше чем ее решал.... Но блин, это так приятно, за вот это я и люблю кодить в стол на себя

#582
(Правка: 7:30) 7:30, 16 ноя. 2018

war_zes
> И вот тут вылезла маленькая проблема, intellisense показывает оба имени в
> пространстве имен:
Попробуй сделать так:

class Test {
private:
    class Impl;
    Impl *impl;
};
У меня по крайней мере сработало.
#583
8:21, 16 ноя. 2018

war_zes
>Так как мне часто приходится таскать код из одного проекта в другой, то постоянно переименовывать пространство имен надоело, поэтому у меня есть макросы:
Ух, говно же.
Переименовать неймспейс во всем прожыхте можно одной единственной командой.

#584
8:36, 16 ноя. 2018

>Решение есть (например в бусте) - ввести пространство имен detail.
Или так:

class Context
{
private:

  void* impl;
};
И в цэпэпэ воротишь, что хочешь.

Страницы: 138 39 40 41119 Следующая »
ФлеймФорумПроЭкты