Модераторы: eraserkry, Mihamster, Smoky555, Группа модераторов
а какой смысл смотреть на скорость, если время и дистанция известны? деньги=расстояние/время и всё.Neko писал(а):Я полагаю, что автор первого поста так и поступает.
Только остаётся открытым вопрос, а передаётся ли автомобилю адрес станции-источника, откуда был доставлен груз на эту перевалочную станцию и время в пути от источника до перевалочной станции.
А если передаётся, то какие деньги могут быть начислены автомобилю, который по совокупности был в пути незнамо сколько и приехал с чёртовых рогов, имея при этом скорость автомобиля, что приведёт в расстройство модуль расчёта денег за доставку, ибо полная дистанция, общее время в пути и скорость авто придут в полное противоречие.
так и есть, но если товар переходит в ожидающий транспорт, то все исходные данные сохраняются и всё работаетNeko писал(а):И ещё не надо забывать, что автор первого поста свозит на перевалочную станцию груз из НЕСКОЛЬКИХ источников.
А такая схема в оригинальном исполнении до сих пор работать не будет, т.к. хоть вновь прибывших груз и добавляется к предыдущему, но адрес станции-источника и время пути обновляются согласно параметрам прибывшего поезда. Теперь прикиньте, какие потери мы огребём, если подводим груз в одном случае с длинной дистанции, а во втором - с более короткой.
И в довершение. Если эта самая станция перевалки сама является источником этого же груза, то время в пути всегда будет обнуляться, а адресом-станции источника будет сама эта станция.
Т.е. все деньги, за доставку груза на станцию перевалки мы просто теряем.
По этим причинам в трансфер в его оригинальном исполнении мало кто согласиться поиграть.
static void UpdateStationWaiting(Station *st, int type, uint amount)
{
SB(st->goods[type].waiting_acceptance, 0, 12,
min(0xFFF, GB(st->goods[type].waiting_acceptance, 0, 12) + amount)
);
st->goods[type].enroute_time = 0;
st->goods[type].enroute_from = st->index;
InvalidateWindow(WC_STATION_VIEW, st->index);
MarkStationTilesDirty(st);
}
Quark писал(а):...а вот баг со сбросом исходной точки груза и времени в пути для трансфера...
Фишка ещё в том, что в доход поезда начисляется сумма = (за доставку груза) * 3 / 2, а при заборе груза из дохода транспорта, забирающего груз вычитается сумма пропорциональная данной (относительно объёма груза).Поезд по приходу срывает банк, а вот работа грузовиков оплачивается тысячи по 6-10
Вернуться в Общие вопросы по OpenTTD
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 75