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].nameObjektsammlungen
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