Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

You can control the flow of script execution by using the following types of statements to manage the order in which operations are executed:.

Scroll only
scroll-viewporttrue
scroll-pdftrue
scroll-officetrue
scroll-chmtrue
scroll-

...

docbooktrue
scroll-

...

eclipsehelptrue
scroll-

...

epubtrue
scroll-

...

htmltrue
2

Use conditional statements (if, else, else if, switch)

...

Tip
Tip
To make conditional statements easy to debug, group the commands to be executed under the IF statement.

Scroll pagebreak

IF statements

Anchor
IFState
IFState

IF statements

The IF statement works as follows: if the test condition is true, the statement is executed.

...

Code Block
languagetext
if ( 2 < 3 )
 {
 string $blah = "This worked";
 print ($blah);
 }

...

Scroll pagebreak

Anchor
ELSEState
ELSEState

ELSE statements

The ELSE statement always follows the IF statement. The ELSE statement is executed when the preceding IF statement is false.

...

Code Block
languagetext
if (5 % 2 >1)
 {
 print "bah";
 }
 else
 {
 print "humbug";
 }

Scroll pagebreak

ELSE IF statements

Anchor
ELSEIFState
ELSEIFState

ELSE IF statements

The ELSE IF statement is always paired with the IF conditional statement. Unlike the else command which executes a statement when the IF statement is false, the ELSE IF statement requires another test condition to be true, or it will not execute either statement.

...

Code Block
languagetext
if (-1 >= 1)
 {
 print "Statement 1";
 }
 else if (-1 <= 1)
 {
 print "Statement 2";
 }

Scroll pagebreak

SWITCH statements

Anchor
SWITCHState
SWITCHState

SWITCH statements

The switch statement is a conditional statement that executes a code block depending on which one of a number of given cases is matched to the switch expression.

...

Tip
Tip
You can use Interruption statements to affect the flow control in looping statements.

WHILE statements

Anchor
WHILEState
WHILEState

WHILE statements

A WHILE looping statement continuously executes designated statements as long as a specific condition remains true.

...

Code Block
languagetext
int $PJ = 5;
  while ($PJ > 0)
 
  {
     print
     ("There are " + string($PJ) + " P.J. sandwiches left.");
  
  $PJ = $PJ - 1;
    }
  print ("Houston, we have a problem!");

Scroll pagebreak

...

Anchor
DOWHILEState
DOWHILEState

DO WHILE statements

A DO WHILE looping statement executes a specific statement then checks whether or not to repeat the loop. This ensures that the statement is executed at least once.

...

Code Block
languagetext
int $peanuts = 1;
 do {
 print ("Elephants work for peanuts");
 $peanuts += 1;
 print ($peanuts);
 }
 while ( $peanuts < 10);

...

Anchor
FORState
FORState

FOR statements

A FOR looping statement provides loop control that has initialization, test, and an increment statement.

...

Code Block
languagetext
//Define the statement you are going to print each iteration
 string $statement;
//Define variables to use as counters
 int $i, $ j;
//Start the $i loop and specify start, end, and amount to increment
 for( $i = 1; $i < 6; $i += 1 ) {
//Start the $ j loop and specify start, end, and amount to increment 
   for( $j = 1; $j < 15; $j += 2 ) {
//Tell Shogun Post to print something if $i < $J

    if( $i < $j )
   
   $statement = string( $i ) + " is less than " + string( $j );
//Tell Shogun Post to print something else if $i > $j

    else if( $i > $j )
       $statement = string( $i ) + " is greater than " + string( $j );
//Tell Shogun Post what to print if the two counters are equal
     else
 
     $statement = "This is what happens when things coincide";
//Tell Shogun Post to actually print the statement you've assembled
   print( $statement );
//Close the second loop
   }
//Close the first loop
 }

...

Code Block
languagetext
// Courtesy of Jake Wilson of SCEA
// Initialize Variables
print " ";  
// Create array of children under 'Actor' Mary's character node
string $childarray[] = `getChildren Mary`;    
// Determine # of children
int $childcount = `getCount $childarray`;  
// Create a $childarrayloop to hold a number 
int $childarrayloop = 0;  
// Print an empty string
   string $ proptest;
// Start a loop which run once for each of Mary's children
for ( $childarrayloop=0 ;
 $childarrayloop < $childcount ;
 $childarrayloop +=1 ){
  
 // print name of current child marker in array     
  print ( string ($ childarray[$childarrayloop] ) );
    // return the name of the marker and compare the name 
    // of the marker to the name"LFWT"
  
 $ proptest = ` getStringProperty $ childarray[$childarrayloop] Name`; 
    if ($ proptest==LKNE){
  
     // if that LFWT marker is found, this tells the loop to quit
        $ childarrayloop=$childcount; 
        print ( "EXITING LOOP" );
      
 }
   
}

Scroll pagebreak

Use interruption statements (break)

...