vielen Dank für das Skript, das schaue ich mir gerne einmal an, vielleicht kann ich ja hier und da noch was tunen.
Da muss ich mir erst das Skript anschauen...Seppy wrote:Fragen:
Wo füge ich den Sleep(100) am besten ein (Anfang oder Ende der Schleife)?
Bei 'SleepExec' handelt es sich um eine sogenannte 'überladene' Funktion. Das bedeutet nichts anderes, als dass es mehrere Versionen dieser Funktion gibt, die alle gleich heißen (nämlich 'SleepExec'), sich aber bzgl. der übergebenen und zurückgegebenen Parameter unterscheiden.Seppy wrote:Wie werden Befehle wie z.B. "bool SleepExec(uint maxTimeMs)" verwendet ?
Der SleepExec() sieht ja so aus:
SleepExec();
Wie ist das mit "bool SleepExec(uint maxTimeMs)" ?
SleepExec(6000);
SleepExec("6000");
bool SleepExec(6000);
bool SleepExec("6000");
Bei 'SleepExec' gibt es die folgenden Varianten ('Überladungen'):
Code: Select all
void SleepExec()
('void' kannst Du als 'nichts' übersetzen. In der Ursprache 'C' musste man dementsprechend das 'void' auch anstatt der leeren Klammern scheiben (also 'void SleepExec(void)' ). Das spart man sich inzwischen und in AngelScript ist es gar nicht mehr gültig, soweit ich weiß, eine leere Parameterliste wird also immer mit leeren Klammern angegeben.)
Code: Select all
bool SleepExec(uint maxTimeMs)
Dementsprechend:
Code: Select all
SleepExec();
Code: Select all
SleepExec(6000);
Im folgenden Beispiel wird ebenfalls die Überladung 'bool SleepExec(uint maxTimeMs)' aufgerufen, hier wird der Rückgabewert aber verwendet, um eine Fallunterscheidung durchzuführen:
Code: Select all
if (SleepExec(5000))
{
MessageBox("Think oder Teach wurde beendet!");
}
else
{
MessageBox("5 s gewartet, aber Think oder Teach noch nicht beendet!");
}
Code: Select all
bool execStopped;
execStopped = SleepExec(5000);
if (execStopped )
{
MessageBox("Think oder Teach wurde beendet!");
}
else
{
MessageBox("5 s gewartet, aber Think oder Teach noch nicht beendet!");
}
Code: Select all
void Start(uint seconds)
bzw.
void Start()
Klärt das Deine Fragen win wenig? Ich weiß, Programierung ist am Anfang etwas mühsam und verwirred, wenn ich mir Deine letzten Skripte aber so anschaue, machst Du beachtlich schnell Fortschritte! Vor allem sehe ich, dass Du schon den wichtigsten Aspekt überhaupt erfasst hast: 'Teile und herrsche!'. Immer alles schön in Unterfunktionen oder sogar neue Skriptdateien auslagern, dann wächst einem ein Programm auch nicht über den Kopf, nur so bleibt die Komplexität beherrschbar!
Viele Grüße,
Thomas