
Сообщение от
zaltys
Люди не любят, когда боты продолжают летать в самолетах, которые были оставлены игроками. Однако, они также не любят, когда самолет исчезает в воздухе (.OnPlaceLeave() + AiAircraft.Destroy()). Было бы лучше, если бы удалось заставить экипаж покинуть самолет, когда последний игрок покидает его.
Есть ли какой-то тип повреждения, которые бы немедленно заставил экипажа выйти из самолета, но не было заметно внешне (т.е. без фейерверка из ниоткуда)?
Ну, наверное оптимальный вариант управление блокировать, как Small_Bee написал.

Сообщение от
-atas-
А как убирать с земли самолеты, которые сели на вынужденную, разбились не долетев до посадки? Их много скапливается за 3-4 часа на сервере: зенитки-то работают, даже если игроков нет.
можно так :
Код:
public override void OnAircraftCrashLanded(int missionNumber, string shortName, AiAircraft aircraft)
{
base.OnAircraftCrashLanded(missionNumber, shortName, aircraft);
Timeout(5, () =>
{
aircraft.Destroy();
});
}
через 5 секунд после крашлэндинга уничтожится.

Сообщение от
Mirnyi
naryv,
А может подскажешь как добраться до maddox.game.GameServerDef?
В смысле подключить унаследованный класс. Желательно - к дедикейту.
Пока не могу, не знаю, постараюсь после патча выложить dll с доступом к GameSingleDef , и позже узнать как к серверу подключиться.

Сообщение от
Geniok
Уважаемый naryv, есть очень большая просьба. Нельзя ли сделать так, чтобы игра игнорировала знаки "=" в файлах ini ?
То есть сейчас имеем файл campaings.ini:
"[Main]
campaign_pk
campaign_gb
campaign_de
А надо чтобы можно было написать так:
"[Main]
campaign_pk=
campaign_gb
campaign_de
"
если честно не понял, зачем так надо.

Сообщение от
-atas-
Прошу уточнить:
Код:
public class Mission : AMission
{ public override void OnTickGame()
{
if (Time.tickCounter() % 108000 == 18000) // 60-10
{}
if (Time.tickCounter() % 81000 == 63000) // 45-35
{}
if(Time.tickCounter() % 81000 == 81000) // 45-45
{}
}
}
1я миссия загрузится через 10 минут с начала
хост-миссии и будет повторяться с момента
своей 1й загрузки каждые 60 мин.
2я миссия загрузится через 35 минут с начала
хост-миссии (и будет повторяться с момента
своей 1й загрузки каждые 45 мин.
3я миссия загрузится через 45 минут с начала
хост-миссии и будет повторяться с момента
своей 1й загрузки каждые 45 мин.
Всё так или временные циклы по-другому отсчитываются?
первые два правильно, 3-й нет, "%" это остаток от деления, х % 81000 == 81000 никогда не будет, если ничего не путаю, надо так : f(Time.tickCounter() % 81000 == 80999)

Сообщение от
-atas-
upd. Если увеличить радиус airport.cpp до 10000, будет ли это убирать обломки с земли/самолеты на вынужденной во всем радиусе действия? Чем грозит такое увеличение радиуса? Каков верхний предел? 50000, 100000 будет работать?
airport.cpp не убирает самолёты и обломки, он должен машинки к севшим самолётам подвозить, но не уверен что работает, это очень старый скрипт, как реликт скорее всего остался.