YENGswitch
From OpenSimulator
switch can only work in integer expressions, or strings
break, default and '...' are keywords used with it.
Simple string (command) example:
switch (command)
{
case "turnleft":
{
TurnLeft ();
break;
}
case "turnright":
{
TurnRight ();
break;
}
default: llOwnerSay ("Dont know how to handle " + command);
}
A simple integer example ... can be used to define a range
switch (command)
{
case 4:
{
llSay(PUBLIC_CHANNEL, "4");
break;
}
case 5 ... 20:
{
// ... defines a range
llSay(PUBLIC_CHANNEL, "r");
break;
}
default: llOwnerSay ("Dont know how to handle " + command);
}
Other:
switch (command)
{
case 4:
llSay(PUBLIC_CHANNEL, "4");
break;
case 5 ... 20:
llSay(PUBLIC_CHANNEL, "5 to 20");
break;
case 22:
case 27:
llSay(PUBLIC_CHANNEL, "other");
break;
default: llOwnerSay ("dont know how to handle " + command);
}
The different case ranges can not overlap.