exitWith – Talk

From Bohemia Interactive Community
Jump to navigation Jump to search
mNo edit summary
(what does it exit?)
Line 13: Line 13:


:Seems so, yes. Good find. --[[User:Raedor|raedor]] 12:33, 7 May 2007 (CEST)
:Seems so, yes. Good find. --[[User:Raedor|raedor]] 12:33, 7 May 2007 (CEST)
::Yes, it only exits the ''current level'' (or "block" or "scope" or whatever). So that behaviour would be expected.
::Do this, for example, and it should become a bit more obvious:
::<code>for "_j" from 1 to 10 do <br>  {<br>  player sideChat format["%1",_j];<br>  if (_j==5) exitWith {player sideChat "5 is enough"};<br>  };<br> player sideChat "Complete";</code>
::--[[User:Kronzky|Kronzky]] 16:37, 7 May 2007 (CEST)

Revision as of 15:37, 7 May 2007

It seems this command exits the current "scope" (is this the correct term?), rather than the current script file. Is this correct?

Example code, started using execVM:

<stuff>
for "_j" from 1 to _value do 
 {
  <stuff>
  if (<exit condition>) exitWith {player sideChat "Cancelled"};
 };
player sideChat "Complete";

If the exit condition is true, both sideChats are executed. Any comments? Or am I just stating the obvious? :) --Ceeeb 10:04, 7 May 2007 (CEST)

Seems so, yes. Good find. --raedor 12:33, 7 May 2007 (CEST)
Yes, it only exits the current level (or "block" or "scope" or whatever). So that behaviour would be expected.
Do this, for example, and it should become a bit more obvious:
for "_j" from 1 to 10 do
{
player sideChat format["%1",_j];
if (_j==5) exitWith {player sideChat "5 is enough"};
};
player sideChat "Complete";
--Kronzky 16:37, 7 May 2007 (CEST)