EnglishGermanFrenchRussianPolishItalianSpanish
Log inRegister
 
<RetVar/IF> get task ID
Post new topic This topic is locked: you cannot edit posts or make replies.
View previous topic :: View next topic
Author Message
mark_a_condren





Joined: 03 Aug 2005
Posts: 1384 on topic
Location: Newcastle - Australia
Thank you for registering your game
modified
PostPosted: Wed, 8. Sep 10, 16:30    Post subject: <RetVar/IF> get task ID Reply with quote Print

[skip|else] if [not]|while [not]| <RetVar/IF> = get task ID


[skip|else] if [not]|while [not]| = The possible 'Conditional' statements that can be used with this command.
<RetVar/IF> = Command return, with an 'if' statement used it will be TRUE (1) if condition passes or FALSE (0) if it fails, otherwise if you use a Variable it will be the task ID as an integer.


A further explanation of the "If" statement,
The 'if' statement is false, when it runs on task 0 (and maybe for global tasks? It is suspected they are task 0 as well), otherwise it will return "true" when task is 1+ (i.e. not main task, not global script).

Returns the current task's ID number.
Task zero is always the “main” task of an object.
When you give a normal navigation, combat, or trade command to a ship, for example, the script that carries out that order runs on task zero of the target object.

Tasks one through six run scripts for turrets one through six.
Tasks ten and eleven are used for the scripts that run from a ship's “additional ship commands” menu.
Tasks eleven to nineteen are used for Station Commands.
Task 33: turret weapon switching task of AI ships.

One way to find a free task is to ask the engine for the “next free task”.
The other way is to use the ID of your script's TFile. This already is a unique number in the 7000-9999 range so there will be no collisions.
If you need more than one, you can simply keep counting up. 7046, 17046, 27046...


Example:

$task.ID = get task ID

$task.ID will be an integer representing the scripts current task ID.


Command Location:





Last edited by mark_a_condren on Tue, 28. Sep 10, 15:19; edited 4 times in total
Back to top
View user's profile Send private message Send e-mail
X2-Illuminatus
Moderator (Deutsch)
Moderator (Deutsch)

MEDAL

Joined: 02 Apr 2006
Posts: 17033 on topic

Thank you for registering your game
PostPosted: Sat, 18. Sep 10, 16:41    Post subject: [TiP][49] 286466 Reply with quote Print

[skip|else] if [not]|while [not]| <RetVar/IF> = get task ID


[skip|else] if [not]|while [not]| = Die möglichen bedingten Anweisungen, die mit diesem Befehl genutzt werden können.
<RetVar/IF> = Rückgabewert des Befehls, mit einer 'if' Anweisung wird dieser TRUE (1) (wahr) sein, wenn die Bedingung erfüllt ist oder FALSE (0) (falsch), wenn nicht. Andernfalls, wenn eine Variable genutzt wird, wird er die task ID als ganze Zahl zurückgeben.


Gibt die ID Nummer des entsprechenden Tasks zurück.
Task null ist immer der "Haupt"-Task eines Objekts.
Wenn du einem Schiff einen normalen Navigations-, Kampf- oder Handelsbefehl gibt, wird das Script, das diesen Befehl ausführt, auf Task null des Zielobjekts laufen.

Auf den Tasks eins bis sechs laufen Scripte für die Geschützkanzeln eins bis sechs.
Die Tasks zehn und elf werden für die Scripte genutzt, die über das "Erweiterte Schiffskommando" Menü eines Schiffes laufen.
Tasks 11 bis 19 werden für die Stationskommandos genutzt.
Task 33 ist für das Wechseln der Waffen in den Geschützkanzeln der KI Schiffe zuständig.

Eine Möglichkeit einen freien Task zu finden, ist die Engine nach dem "next free task" (nächsten freien Task) zu fragen.
Eine andere ist die ID der t-Datei deines scriptes zu nutzen. Diese ist bereits eine einzigartige Zahl im Bereich von 7000-9999. Somit wird es keine Kollisionen geben.
Falls du mehr als eine benötigen solltest, kannst du einfach aufwärts zählen: 7046, 17046, 27046...


Beispiel:

$task.ID = get task ID


$task.ID wird die Task ID des zurzeit laufenden Scriptes als ganze Zahl sein.


Zu finden unter:



Back to top
View user's profile Send private message Visit poster's website
Juggernaut93



MEDAL

Joined: 17 Jul 2011
Posts: 1788 on topic
Location: Battipaglia (SA)
Thank you for registering your game
PostPosted: Wed, 6. Jun 12, 16:59    Post subject: [39]286466 Reply with quote Print

[skip|else] if [not]|while [not]| <RetVar/IF> = get task ID


[skip|else] if [not]|while [not]| = La possibile istruzione condizionale che può essere usata con questo comando.
<RetVar/IF> = Ciò che restituisce il comando; se si usa un'istruzione 'if' sarà TRUE (1) se la condizione si verifica o FALSE (0) se fallisce; se invece usi una variabile, essa assumerà il valore intero dell'ID del task.


Un'ulteriore spiegazione dell'istruzione "If".
L'istruzione "if" è falsa quando è eseguita su un task 0 (e probabilmente anche per i task globali, poiché si pensa che anch'essi siano task 0), altrimenti restituirà "true" quando il task è maggiore o uguale a 1 (cioè quando non è un task principale o uno script globale).


Restituisce il numero di ID del task corrente.
Un task zero è sempre il task "principale" di un oggetto.
Ad esempio, quando dai un normale comando di navigazione, commercio o combattimento ad una nave lo script che esegue tale ordine è eseguito su un task 0 dell'oggetto.


I task dall'uno al sei eseguono script per le torrette da uno a sei.
I task dieci e undici vengono usati per gli script in esecuzione dal menu "Comandi Navi Aggiuntivi" della nave.
I task dall'undici al diciannove sono usati per i "Comandi Stazione".
Il task 33 è invece il task che si occupa del cambio armi delle torrette sulle navi dell'IA.


Un modo per trovare un task libero è quello di chiedere al motore il "next free task" (task libero successivo).
L'altro modo è invece quello di usare l'ID del T-File del tuo script. Esso è infatti un numero univoco compreso nel range 7000-9999 e dunque non ci saranno conflitti.
Se te ne servono più di uno, puoi semplicemente continuare a contare come nel seguente esempio: 7046, 17046, 27046...


Esempio:

$task.ID = get task ID

$task.ID sarà un intero che rappresenterà l'ID del task dello script corrente.


Posizione del comando nella lista:



Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic This topic is locked: you cannot edit posts or make replies.
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You cannot download files in this forum
Control Panel
Login Data
The time now is Tue, 23. Sep 14, 12:17

All times are GMT + 2 Hours


Board Security

Copyright © EGOSOFT 1989-2009
Powered by phpBB © 2001, 2005 phpBB Group
Template created by Avatar & BurnIt!
Debug: page generation = 0.21848 seconds, sql queries = 27