OGame Open Source
На Главную Регистрация Список пользователей Группы Наиболее часто задаваемые вопросы Поиск

OGame Open Source » OGame Open Source :: Игра » Энциклопедия » Флот - загрузка ресурсов » Здравствуйте, Гость [Вход|Регистрация]
Последнее сообщение | Первое непрочитанное сообщение Распечатать | Рекомендовать другу | Добавить тему в Избранное
Создать тему Ответ в тему
Вниз страницы Флот - загрузка ресурсов
Автор
Сообщение « Предыдущая тема | Следующая тема »
admin
Администратор


Дата регистрации: 18.09.2010
Сообщения: 1,847

Флот - загрузка ресурсов Ответ на это сообщение Ответ с цитированием Правка\Удаление Жалоба модератору       Вверх страницы

1. Вычислить свободное место и заодно проверить - хватает ли грузоподъемности, достаточной для дейта на полёт.

cargo = (ГрузоподъемностьФлота - ПотреблениеФлота) - (ГрузоподъемностьЗондов - ПотреблениеЗондов)

ГрузоподъемностьФлота - полная грузоподъемность всего флота (м+к+д), включая зонды.
ГрузоподъемностьЗондов - грузоподъемность зондов, которые есть в составе флота

ПотреблениеФлота - это затраты дейтерия на полёт и удержание всем флотом (включая зонды).
ПотреблениеЗондов - это затраты дейтерия на полёт и удержание зондами, которые есть в составе флота.

На этом этапе может быть 2 ошибки:
- Если cargo будет меньше 0 - это означает что места трюмах недостаточно для дейта на полёт.
- Если дейтерия на планете < чем (ПотреблениеФлота + ПотреблениеЗондов) - это означает что не хватает топлива.

2. Если cargo > 0, то выполнить загрузку ресурсов.

Последовательность загрузки следующая : металл -> кристалл -> дейтерий. Количество ресурсов (металл,кристалл,дейтерий) указывается пользователем на последней странице отправки флота.
Перед проверкой количество ресурсов дополнительно ограничивается ресурсами на планете.

код:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
Если (cargo > 0) {
    загружено_металла = min ( cargo, металл);
    cargo = cargo - загружено_металла;
}

Если (cargo > 0) {
    загружено_кристалла = min ( cargo, кристалл);
    cargo = cargo - загружено_кристалла;
}

Если (cargo > 0) {
    загружено_дейтерия = min ( cargo, дейтерий);
}

Таким образом на каждом шаге мы загружаем ресурсов НЕ более, чем их есть на планете и НЕ более, чем осталось свободного места в трюмах. Когда место кончается - загрузка следующего ресурса прекращается.

3. После взлета флота с планеты/луны списывается загружено_металла, загружено_кристалла, загружено_дейтерия и дополнительно списывается дейтерий, который был потрачен в качестве топлива : (ПотреблениеФлота + ПотреблениеЗондов ).

Если флот был отправлен с заданием оставить, то по месту прибытия на планету выгружается (ПотреблениеФлота + ПотреблениеЗондов ) / 2 дейтерия, даже если это были одни зонды.

Тем самым зондами можно перевозить немного дейтерия )
16.07.2013 10:23 admin offline Отправить e-mail admin Искать все сообщения admin Добавить admin в Друзья
Древовидная структура | Структура форума
Переход к:
Создать тему Ответ в тему
OGame Open Source » OGame Open Source :: Игра » Энциклопедия » Флот - загрузка ресурсов

[Forum Software: Burning Board Developed by WoltLab GmbH]