Difference between revisions of "Break Statement"

From NWN Lexicon
Jump to: navigation, search
(Created page with "=break Statement= Used to escape from a looping structure ( switch case statement. <br /> If a break statement is executed from within a ...")
 
Line 15: Line 15:
 
The following example searches for a PC with a strength score higher than 12, and repeats until there are no more PCs to search:
 
The following example searches for a PC with a strength score higher than 12, and repeats until there are no more PCs to search:
  
 +
<nwscript>
 
   
 
   
  <font color="#0000ff">object</font> oTarget = GetFirstPC();
+
  object oTarget = GetFirstPC();
 
   
 
   
  <font color="#0000ff">while</font> (oTarget != <font color="#0000ff">OBJECT_INVALID</font>)  
+
  while (oTarget != OBJECT_INVALID)  
 
  {
 
  {
       <font color="#0000ff">int</font> nStr = GetAbilityScore(oTarget, ABILITY_STRENGTH);
+
       int nStr = GetAbilityScore(oTarget, ABILITY_STRENGTH);
       <font color="#0000ff">if</font> (nStr &gt; <font color="#7f007f">12</font>)  
+
       if (nStr &gt; 12)  
           <font color="#0000ff">break</font>;
+
           break;
 
       oTarget = GetNextPC();
 
       oTarget = GetNextPC();
 
  }
 
  }
 +
</nwscript>
  
 
As soon as the loop finds a PC with a strength higher than 12 the break statement is called halting the loop and the search for a target. Note that if no PCs are present with a strength score higher than 12, the loop will not exit (seems to be a problem with GetNextPC).
 
As soon as the loop finds a PC with a strength higher than 12 the break statement is called halting the loop and the search for a target. Note that if no PCs are present with a strength score higher than 12, the loop will not exit (seems to be a problem with GetNextPC).

Revision as of 21:26, 25 August 2012

break Statement

Used to escape from a looping structure ( switch case statement.


If a break statement is executed from within a looping code block the loop will halt execution regardless of the condition controlling the loop. Any remaining statements within the code block will not be executed.


If a break statement is executed from within a case inside of a switch statement, all following case statements are ignored.


The following example searches for a PC with a strength score higher than 12, and repeats until there are no more PCs to search:

 
 object oTarget = GetFirstPC();
 
 while (oTarget != OBJECT_INVALID) 
 {
      int nStr = GetAbilityScore(oTarget, ABILITY_STRENGTH);
      if (nStr &gt; 12) 
           break;
      oTarget = GetNextPC();
 }

As soon as the loop finds a PC with a strength higher than 12 the break statement is called halting the loop and the search for a target. Note that if no PCs are present with a strength score higher than 12, the loop will not exit (seems to be a problem with GetNextPC).




 author: Ryan Hunt, editor: Charles Feduke, Mistress, additional contributor(s): Rich Dersheimer, Box, Scott Smith, bug finder: Pondo