Armed-Assault.de Twitter
Antwort
 
Themen-Optionen Ansicht
Alt 24.10.2009, 20:05   #1 (permalink)
Newbie
 
Registriert seit: 18.10.2009
Beiträge: 30
Standard goto Erstatz in SQF?

Gibt es einen Ersatz für Sprungmarken in der SQF Syntax? Unpraktisch wärs ja nicht. Endlosschleifen kann ich bauen, aber das pass mir nicht wirklich.
baumeister ist offline   Mit Zitat antworten
Alt 24.10.2009, 20:08   #2 (permalink)
10 Jahre hx3
500 Beiträge1000 Beiträge
 
Benutzerbild von Buliwyf
 
Registriert seit: 11.03.2005
Ort: HH
Alter: 47
Beiträge: 1.930
Standard

BreakOut zB.

Mehr findest Du in dem Artikel...
__________________
Buliwyf ist offline   Mit Zitat antworten
Alt 24.10.2009, 20:40   #3 (permalink)
Newbie
 
Registriert seit: 18.10.2009
Beiträge: 30
Standard

Danke für die Info. Ich muss mich allerdings korrigieren, einen simplen endloslooop bekomme ich meistens nicht hin:

Code:
_pilot SideChat "A0";
while {true} do {
	_pilot SideChat "A1";
	exitWith {0};
}
_pilot SideChat "A10";
Nach A0 passiert nichts mehr. Das saugt so, dass der Editor / das Game keine Fehler ausgeben um was es sich handelt (den Totalabsturz mit Error 7 mal abgesehen).

UPDATE: Erkannte gerade, dass wen ein Fehler im Code innerhalb des do-Blocks steht, hier einfach das script ein jähes ende findet, egal wo der fehler im block steht (kann auch am ende sein), es wird einfach nichts von dem block ausgeführt.

Geändert von baumeister (24.10.2009 um 20:45 Uhr).
baumeister ist offline   Mit Zitat antworten
Alt 25.10.2009, 12:45   #4 (permalink)
500 Beiträge1000 Beiträge2.500 Beiträge
 
Benutzerbild von Cyborg11
 
Registriert seit: 26.03.2008
Beiträge: 2.822
Standard

2 Fehler auf jeden Fall in deiner While Schleife.
  1. Was sucht das 0 bei exitWith? Raus damit! Und überhaupt, warum hast du da ein exitWith{} drinnen, wenn es doch eine Endlosschleife werden soll? oO
  2. sleep fehlt ...

Beispiel für eine Endlosschleife:
Code:
_a = 0;

While {true} do {
   _a = _a + 1;
   hint format ["%1",_a];
   sleep 1;
};
Jetzt wird jede Sekunde _a um 1 hochgezählt und ausgegeben.
Bei While Schleifen NIEMALS das sleep vergessen.
Cyborg11 ist offline   Mit Zitat antworten
Alt 25.10.2009, 18:30   #5 (permalink)
Newbie
 
Registriert seit: 18.10.2009
Beiträge: 30
Standard

Hi Cyborg,

danke mal wieder für deine Kommentare. Das war ein Test-Code um zu lernen, wie while / do sowie das ExitWith funktioniert.

Der Fehler im Code ist der, dass exitWith immer nur mit einem If davor geht, also if (cond) exitWith {code;};

Das war der eigentliche Fehler. An sonsten ist es nach wie vor recht holperig, wenn man in einem Code-Block ein Fehler hat rauszufinden, was genau man falsch gemacht hat. Aber es wird!
baumeister ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Kontakt - HX3.de - Archiv - Nach oben

Angetrieben durch vBulletin, Entwicklung von Philipp Dörner & Tobias



SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116