RailScript

RailScript-Namensraumreferenz

Diese Seite enthält alle Objektattribute, die derzeit vom RailKernel-Laufzeitnamensraum veröffentlicht werden. Schreibbare Attribute können mit SETZE geändert werden. Geplante Attribute gehören bereits zum Vertrag, liefern derzeit jedoch <not yet implemented>.

Objekte adressieren

Systemwerte verwenden system.attribut. Andere Objekte verwenden domäne["Name"].attribut oder domäne["GUID"].attribut. Indizierte Lokfunktionen verwenden locomotive["Name"].function[Nummer].attribut.

system.projectLoaded
feedback["K31"].occupied
locomotive["Class 66"].function[0].name

Objektsammlungen

Ein leerer Selektor wie block[] oder feedback[] bezeichnet alle Objekte dieser Namensraumdomäne. Er wird mit FÜR JEDEN verwendet. Die Schleifenvariable repräsentiert jeweils ein Objekt und stellt dieselben Attribute wie ein einzeln ausgewähltes Objekt bereit.

commandStation[] feedback[] accessory[] signal[] block[] train[] trainType[] locomotive[] route[] script[] variable[] counter[] timer[]

FÜR JEDEN item IN block[]
TUE
    LOG item.name + ": " + item.occupied
ENDE

System und Projekt system

Beispiele

LOG "Projekt: " + system.projectName
WENN system.emergencyStop DANN LOG "Not-Aus ist aktiv" ENDE

Nur lesen

projectLoaded · emergencyStop · applicationVersion · osName · osVersion · osArchitecture · javaVersion · language · currentTime · uptimeMillis · commandStationCount · connectedCommandStationCount · poweredCommandStationCount · allCommandStationsConnected · projectName · projectDirty · projectRevision · scale · catalogueFile · trackCount · flexTrackCount · blockCount · feedbackCount · accessoryCount · signalCount · locomotiveCount · trainCount · trainTypeCount · routeCount · userVariableCount

Digitalzentrale commandStation

Sammlungsbezeichner und über die Schleifenvariable verfügbare Attribute: commandStation[]

Beispiele

WENN commandStation["ECoS"].connected DANN LOG "ECoS verbunden" ENDE
SETZE commandStation["ECoS"].powerOn = WAHR

Nur lesen

guid · name · technicalName · type · host · port · connected · vendor · model · articleNumber · firmwareVersion · hardwareVersion · serialNumber · supportsDecoderCvRead · supportsDecoderCvWrite · supportsMfxDecoderRead · supportsFeedbackDeletion · locomotiveCount · accessoryCount · routeCount · feedbackCount · feedbackModuleCount · boosterCount

Schreibbar

powerOn

Rückmelder feedback

Sammlungsbezeichner und über die Schleifenvariable verfügbare Attribute: feedback[]

Beispiele

SOBALD feedback["K31"].occupied TUE LOG "K31 belegt" ENDE
LOG "Rückmeldelänge: " + feedback["K31"].length

Nur lesen

guid · name · commandStation · s88 · bus · module · contact · address · occupied · reliable · unreliable · excludeFromEmergencyStop · forwardRole · backwardRole · railCount · length · blockGuid · blockName · forwardStart · forwardEnd · backwardStart · backwardEnd

Magnetartikel accessory

Sammlungsbezeichner und über die Schleifenvariable verfügbare Attribute: accessory[]

Beispiele

SETZE accessory["A.1"].position = STRAIGHT
WENN accessory["A.1"].reserved DANN LOG accessory["A.1"].reservedBy ENDE

Nur lesen

guid · name · type · commandStation · address · threeWay · address2 · protocol · defaultState · unreliable · comment · half · reserved · reservedBy · state

Schreibbar

position

Signal signal

Sammlungsbezeichner und über die Schleifenvariable verfügbare Attribute: signal[]

Beispiele

SETZE signal["Einfahrsignal"].state = GREEN
LOG "Signalblock: " + signal["Einfahrsignal"].block

Nur lesen

guid · name · manufacturer · articleNumber · productName · gauge · signalType · aspects · technology · railwayCountry · railwayCompany · x · y · heightMm · block · blockGuid · blockSide · direction · comment · linkedAccessory · linkedAccessoryGuid · linkedDecoder

Schreibbar

state

Block block

Sammlungsbezeichner und über die Schleifenvariable verfügbare Attribute: block[]

Beispiele

WENN block["Bahnsteig 1"].occupied DANN LOG block["Bahnsteig 1"].currentTrain ENDE
LOG "Vorwärts-Haltepunkt: " + block["Bahnsteig 1"].forwardStop

Nur lesen

guid · name · type · abstract · length · forwardBrake · forwardStop · backwardBrake · backwardStop · electrified · occupied · reserved · reservedBy · currentTrain · direction · bidirectional · maximumSpeed · minimumDwellTime · waiting · deadlocked · feedbackCount · accessoryCount · signalCount · decouplerCount · firstForwardFeedback · lastForwardFeedback · forwardEntryFeedback · forwardBrakeFeedback · forwardStopFeedback · forwardExitFeedback · firstBackwardFeedback · lastBackwardFeedback · backwardEntryFeedback · backwardBrakeFeedback · backwardStopFeedback · backwardExitFeedback

Zug train

Sammlungsbezeichner und über die Schleifenvariable verfügbare Attribute: train[]

Beispiele

WENN train["Intercity 1200"].placed DANN LOG train["Intercity 1200"].currentBlock ENDE
SOBALD train["Intercity 1200"].newFeedback TUE LOG "Neuen Rückmelder erreicht" ENDE

Nur lesen

guid · name · locomotive · locomotiveGuid · trainType · trainTypeGuid · lengthMm · wagonGroupCount · motionSamplingEnabled · placed · newFeedback · currentBlock · currentBlockGuid · currentRoute · currentRouteGuid · currentFeedback · currentFeedbackGuid · direction · placedElementType · placedElementGuid · placedOffsetMm · brakeDistanceMmSpeed50 · brakeDistanceMmSpeed70 · brakeDistanceMmSpeed90 · brakeDistanceMmSpeed110 · motionSpeedMmPerSec50 · motionSpeedMmPerSec70 · motionSpeedMmPerSec90 · motionSpeedMmPerSec110

Geplant

speed · state · destination · route · waiting · deadlocked · automatic · reservedBlockCount

Zugtyp trainType

Sammlungsbezeichner und über die Schleifenvariable verfügbare Attribute: trainType[]

Beispiele

LOG trainType["Intercity"].maximumSpeedKmh
WENN trainType["Intercity"].alignAtPlatform DANN LOG "Bahnsteigausrichtung aktiv" ENDE

Nur lesen

guid · name · category · maximumSpeedKmh · unlimitedMaximumSpeed · accelerationFactor · brakingFactor · priority · reservationCount · reservationBeforeDeparture · alignAtPlatform · trainCount · allowedBlockCount

Lokomotive locomotive

Sammlungsbezeichner und über die Schleifenvariable verfügbare Attribute: locomotive[]

Beispiele

SETZE locomotive["NS 1200"].speed = 64
SETZE locomotive["NS 1200"].function[3].active = WAHR

Nur lesen

guid · name · displayName · description · comment · brand · catalogueNumber · gauge · commandStation · address · protocol · speedSteps · lengthMm · maximumSpeedKmh · locomotiveType · electric · configuredDirection · decoderUid · mfxUid · decoderTemplate · imageFile · feedbackDistanceFront · feedbackDistanceRear · volume · totalDistanceKm · totalRunningTimeMillis · functionCount

Schreibbar

speed

Nur lesen

function[n].name · function[n].type · function[n].mode · function[n].visible · function[n].directional · function[n].autoOffMs

Geplant

speedKmh · direction · moving · connected · currentBlock · currentBlockGuid · reserved · reservedBy · placed · trainName · trainGuid · minimumDecoderStep · maximumDecoderStep · calibratedSpeedTable · acceleration · braking · massSimulation · brakeCorrection · automatic · active · blocked · outOfService · maintenanceInterval · maintenanceDue · pushPullMode · function[n].active

Route route

Sammlungsbezeichner und über die Schleifenvariable verfügbare Attribute: route[]

Beispiele

LOG route["Bahnhofsrunde"].fromBlock + " → " + route["Bahnhofsrunde"].toBlock
FAHRE "Intercity 1200" MIT "Bahnhofsrunde" EINREIHEN

Nur lesen

guid · name · fromBlock · fromBlockGuid · toBlock · toBlockGuid · blockCount · legCount · trackCount · accessoryCount · corridorLengthMm · respectBlockDirection · continuationRoute · continuationRouteGuid

Geplant

active · queued · reserved · reservedBy · available · blocked

RailScript script

Sammlungsbezeichner und über die Schleifenvariable verfügbare Attribute: script[]

Beispiele

RUN "Geräusche Bahnhofsrunde"
SOBALD !script["Geräusche Bahnhofsrunde"].isRunning TUE LOG "Geräuschscript abgeschlossen" ENDE

Nur lesen

guid · name · enabled · language · isRunning

Benutzervariable variable

Sammlungsbezeichner und über die Schleifenvariable verfügbare Attribute: variable[]

Beispiele

SETZE variable["Betriebsart"].value = "Nacht"
LOG variable["Betriebsart"].value

Nur lesen

guid · name · type · defaultValue · description · persistent · readOnly

Schreibbar

value (unless readOnly)

Zähler counter

Sammlungsbezeichner und über die Schleifenvariable verfügbare Attribute: counter[]

Beispiele

SETZE counter["Abfahrten"].value = counter["Abfahrten"].value + 1
LOG counter["Abfahrten"].value

Nur lesen

guid · name · initialValue · minimum · maximum · step · enabled · comment

Schreibbar

value

Timer timer

Sammlungsbezeichner und über die Schleifenvariable verfügbare Attribute: timer[]

Beispiele

SETZE timer["Bahnhofsaufenthalt"].durationMillis = 30000
SOBALD timer["Bahnhofsaufenthalt"].expired TUE LOG "Aufenthalt beendet" ENDE

Nur lesen

guid · name · duration · elapsed · elapsedMillis · remaining · remainingMillis · expired · enabled · comment

Schreibbar

durationMillis · running