Trainz Railroad Simulator 2004. Руководство по созданию пользовательских ресурсов

Электростанция
[Учебник 1 - Уголь, энергия и правила]

Введение

Первым предприятием, изучаемым в этом учебнике, будет электростанция. Мы ее рассматриваем ее перед угольной шахтой, поскольку это самое простое и легкое из всех предприятий, особенно с точки зрения программиста. Поэтому она лучше всего годится в качестве вводного примера.

Обзор электростанции, не относящийся к программированию, приводится ниже. Для программистов, желающих знать, как работает сценарий этого предприятия, имеется подробный разбор в подразделе Сценарий электростанции. Разработчики дополнений, не интересующиеся программированием, могут пропустить этот подраздел.


Очереди

У элеткростанции есть только одна очередь - очередь угля. В эту очередь сваливается уголь с составов, отсюда его забирает электростанция для производства электроэнергии. Очереди для предприятия определяются в разделе queues файла config.txt предприятия. Вот определение угольной очереди для электростанции:

queues 
{ 
  coal_in
  { 
    size 814500
    ! - 814500 = 54300 x 15 хопперов
    initial-count 271500
    ! - 271500 = 54300 x 5 хопперов
    animated-mesh load
    product-kuid <KUID:44179:60013>
  } 
}

При определении очереди надо указать несколько ее свойств: максимальную емкость, начальный объем, тип груза (грузов), который она может хранить.

Поскольку очередь coal_in должна использоваться для угля, КИД груза product-kuid объявляется как <KUID:44179:60013>, - это КИД угля. Это означает, что в очереди coal_in может храниться только уголь. Очереди могут содержать только те грузы, для которых они предназначены.

Примечание:
Возможно при желании определить очередь так, чтобы она могла хранить несколько разных грузов или даже все грузы определенной категории. Наша очередь предназначена только для угля.
Максимальная емкость очереди coal_in определена как 814500. Это означает, что в ней может поместиться максимум 814500 единиц угля. Свойства единицы угля определены в его конфигурации. Установка начального количества initial-count равным 271500, означает, что по умолчанию в очереди coal_in сначала будет храниться 271500 единиц груза.

Настройка анимированной сетки animated-mesh определяет анимацию, связанную с этой очередью. with this queue. Анимация загрузки load - это анимация предприятия, определенная в разделе таблицы сеток mesh-table в файле config.txt предприятия. Trainz будет автоматически устанавливать эту анимацию в зависимости от заполненности очереди. Для нашего предприятия куча угля будет понижаться или повышаться в зависимости от содержимого очереди coal_in.


Процессы

У электростанции есть только один процесс - потребление угля. Когда этот процесс работает, считается, что электростанция генерирует энергию (виртуальную). Процесс определен в разделе processes файла настроек config.txt предприятия:

processes 
{ 
  coal_consumer 
  { 
    start-enabled 1
    duration 30.0
    inputs 
    { 
      0 
      { 
        amount 16290
        ! - 25 минут для потребления полной загрузки
        queue coal_in
      } 
    } 
    outputs 
    { 
    } 
  } 
} 

Процесс coal_consumer - это процесс, генерирующий виртуальную энергию и потребляющий 16290 единиц угля за 30-секундный рабочий цикл. Параметр start_enabled установлен, поэтому этот процесс будет запущен по умолчанию при загрузке сессии.

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



Trainz Railroad Simulator 2004. Руководство по созданию пользовательских ресурсов
Copyright (C) 2002-2003 Auran Developments Pty Ltd. All Rights Reserved.
Hosted by uCoz