Difference between revisions of "Goto loops"
From Scriptwiki
m (changed example to a loop..) |
m |
||
(7 intermediate revisions by 3 users not shown) | |||
Line 2: | Line 2: | ||
Goto's aren't used very much. | Goto's aren't used very much. | ||
− | alias channels { | + | [[alias]] channels { |
− | [var] %i , %chans | + | [[var]] %i , %chans |
:nexti | :nexti | ||
− | [inc] %i | + | [[inc]] %i |
− | [if] (%i > [$chan](0)) { [return] %chans } | + | [[if]] (%i > [[$chan]](0)) { [[return]] %chans } |
var %chans = %chans $chan(%i) | var %chans = %chans $chan(%i) | ||
− | [goto] nexti | + | [[Goto loops|goto]] nexti |
} | } | ||
+ | |||
+ | Sometimes you may wish to use goto not in connection with 'loops', an example of which is below: | ||
+ | alias Eat { | ||
+ | if ([[$istok]](Apples Pears Nothing,$1,32)) goto [[$1-|$1]] | ||
+ | [[echo]] -at *** You don't fancy anything to eat? I don't know what $1 is. | ||
+ | return | ||
+ | |||
+ | :Apples | ||
+ | echo -at *** You just ate an apple! | ||
+ | return | ||
+ | |||
+ | :Pears | ||
+ | echo -at *** You just ate a pear! | ||
+ | return | ||
+ | |||
+ | :Nothing | ||
+ | echo -at *** Not hungry? You haven't eaten anything. | ||
+ | } | ||
+ | |||
+ | == See Also == | ||
+ | * [[While loops]] | ||
+ | |||
+ | [[Category:Commands]] |
Latest revision as of 09:09, 2 July 2007
You can use goto command to jump from one point to another in a script.
Goto's aren't used very much.
alias channels { var %i , %chans :nexti inc %i if (%i > $chan(0)) { return %chans } var %chans = %chans $chan(%i) goto nexti }
Sometimes you may wish to use goto not in connection with 'loops', an example of which is below:
alias Eat { if ($istok(Apples Pears Nothing,$1,32)) goto $1 echo -at *** You don't fancy anything to eat? I don't know what $1 is. return :Apples echo -at *** You just ate an apple! return :Pears echo -at *** You just ate a pear! return :Nothing echo -at *** Not hungry? You haven't eaten anything. }