<RetVar/IF><RefObj> can transport passenger:=<Var/Passenger>

This forum serves as MSCI Reference at EGOSOFT. It's Read-Only for non MSCI Group members.

Moderators: Scripting / Modding Moderators, MSCI Moderators

User avatar
X2-Illuminatus
Moderator (Deutsch)
Moderator (Deutsch)
Posts: 24969
Joined: Sun, 2. Apr 06, 16:38
x4

<RetVar/IF><RefObj> can transport passenger:=<Var/Passenger>

Post by X2-Illuminatus » Fri, 25. Feb 11, 12:04

[skip|else] if [not]|while [not]| <RetVar/IF><RefObj> can transport passenger:=<Var/Passenger>


[skip|else] if [not]|while [not]| = The possible 'Conditional' statements that can be used with this command.
<RetVar/IF> = Use a variable, if the command should return information. If a variable is used, the command will return 1 on success and 0 on failure.
<RefObj> = The ship, which you want to check, if it's able to transport the selected <Var/Passenger>.
<Var/Passenger> = The passenger you want to transport with the <RefObj>.


This command will check if the selected <Var/Passenger> can be transported by the ship selected as <RefObj>. Therefore it will check if the <RefObj> has at least transport class M, an installed Cargo Life support system and at least 6 (for VIPs 8) units of free cargo space.


Example:

$ship = get player tracking aim
$passenger.arr = $ship -> get passenger array
$size.passenger.arr = size of array $passenger.arr
while $size.passenger.arr
|$Passenger = $passenger.arr[0]
|$transport = [PLAYERSHIP] -> can transport passenger: $Passenger
|if $transport == 1
||write to player logbook: printf: fmt='%s can transport passenger %s', [PLAYERSHIP], $Passenger, null, null, null
|else
||write to player logbook: printf: fmt='%s cannot transport passenger %s', [PLAYERSHIP], $Passenger, null, null, null
|end
|dec $size.passenger.arr =
end
return null

This will get the player's currently selected target. Then it gets all passengers onboard the selected ship and checks if the [PLAYERSHIP] can transport one of the passengers. In case of success or failure an appropriate message will be written into the player's logbook.


Command Location:

User avatar
X2-Illuminatus
Moderator (Deutsch)
Moderator (Deutsch)
Posts: 24969
Joined: Sun, 2. Apr 06, 16:38
x4

[TiP][49] 297409

Post by X2-Illuminatus » Mon, 28. Feb 11, 17:55

[skip|else] if [not]|while [not]| <RetVar/IF><RefObj> can transport passenger:=<Var/Passenger>


[skip|else] if [not]|while [not]| = Die möglichen bedingten Anweisungen, die mit diesem Befehl genutzt werden können.
<RetVar/IF> = Nutze eine Variable, wenn der Befehl eine Information zurückgeben soll. Wenn eine Variable genutzt wird, wird sie 1 im Erfolgs- und 0 im Fehlerfall enthalten.
<RefObj> = Das Schiff, welches du auf seine Fähigkeit, den gewählten Passagier <Var/Passenger> zu transportieren, überprüfen möchtest.
<Var/Passenger> = Der Passagier, den du mit dem <RefObj> transportieren möchtest.


Dieser Befehl wird überprüfen, ob der gewählte Passagier <Var/Passenger> mit dem als <RefObj> ausgewählten Schiff transportiert werden kann. Dazu wird der Befehl prüfen, ob das <RefObj> mindestens Frachtklasse M, eine installierte Lebenserhaltung für den Frachtraum sowie mindestens 6 (für VIPs 8) Einheiten freien Frachtraum hat.


Beispiel:

$ship = get player tracking aim
$passenger.arr = $ship -> get passenger array
$size.passenger.arr = size of array $passenger.arr
while $size.passenger.arr
|$Passenger = $passenger.arr[0]
|$transport = [PLAYERSHIP] -> can transport passenger: $Passenger
|if $transport == 1
||write to player logbook: printf: fmt='%s kann den Passagier %s transportieren', [PLAYERSHIP], $Passenger, null, null, null
|else
||write to player logbook: printf: fmt='%s kann den Passagier %s nicht transportieren', [PLAYERSHIP], $Passenger, null, null, null
|end
|dec $size.passenger.arr =
end
return null

Dieses Beispiel erfasst das Ziel des Spielers. Danach werden alle Passagiere an Bord des gewählten Schiffes erfasst und es wird überprüft, ob das Spielerschiff [PLAYERSHIP] einen von ihnen transportieren kann. Im Erfolgs- oder Fehlerfall wird eine entsprechende Nachricht ins Logbuch geschrieben.


Zu finden unter:

Return to “MSCI Reference”