Switch

From EDukeWiki
Revision as of 12:23, 20 February 2012 by CraigFatman (talk | contribs)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

The switch statement in CON is similar to that in C.

 switch <gamevar>
   case <constant>
     <do something>
   break
   case <constant>
     <do something>
   break
   default
     <do something>
   break
 endswitch

The case keyword works like an ifvare statement, and default operates on every possibility that is not specified by a case statement. Each case block must be terminated with a break statement.

Caution: Nested switches do not work because of the way the CON compiler compiles them. A workaround is to put the nested switch in a separate state, and call that state from inside the first switch.

Also, adding extra break statements inside a case argument will cause a lot of errors. Again, the workaround is to put the commands that need to be separated in another state, along with the break.

See: Control Structures @ C++ Documentation