• My Pages
  • Comments
  • Add Link
  • Subscribe
  • Subscribe User
  • Edit (GUI)
  • Edit (Text)
  • Rename Page
  • Copy Page
  • Load Page
  • Save Page
  • Delete Page
  • Attachments
  • Check Spelling
  • Diffs
  • Info
  • Revert to this revision
  • XML
  • Render as Docbook
  • Print View
  • Raw Text
  • Delete Cache
  • Like Pages
  • Local Site Map
  • Remove Spam
  • Package Pages
  • Sync Pages
    • Diff for "Goto"
    Differences between revisions 8 and 9
    Revision 8 as of 2012-10-24 01:28:39
    Size: 2104
    Editor: Romulus
    Comment:
    Revision 9 as of 2012-10-24 20:23:15
    Size: 2098
    Editor: Romulus
    Comment:
    Deletions are marked like this. Additions are marked like this.
    Line 2: Line 2:
    ||<tablebgcolor="#F9F9F9" tablestyle="margin:1em 1em 1em 0px;border-style:solid;border-color:rgb(170, 170, 170);color:rgb(0, 0, 0);font-family:sans-serif;font-size:13px;line-height:19.5px;text-align:start; " tableclass="wikitable"#F2F2F2 style="border-style:solid;border-color:rgb(170, 170, 170);padding:0.2em; ">Usage: ||<style="border-style:solid;border-color:rgb(170, 170, 170);padding:0.2em;">goto label ||
    ||<#F2F2F2 style="border-style:solid;border-color:rgb(170, 170, 170);padding:0.2em; ">Example: ||<style="border-style:solid;border-color:rgb(170, 170, 170);padding:0.2em;">goto thirdLabel ||
    ||<tablebgcolor="#F9F9F9" tablestyle="margin:1em 1em 1em 0px;border-style:solid;border-color:rgb(170, 170, 170);color:rgb(0, 0, 0);font-family:sans-serif;font-size:13px;line-height:19.5px;text-align:start;  " tableclass="wikitable"#F2F2F2 style="border-style:solid;border-color:rgb(170, 170, 170);padding:0.2em;  ">Usage: ||<style="border-style:solid;border-color:rgb(170, 170, 170);padding:0.2em;">goto label ||
    ||<#F2F2F2 style="border-style:solid;border-color:rgb(170, 170, 170);padding:0.2em;  ">Example: ||<style="border-style:solid;border-color:rgb(170, 170, 170);padding:0.2em;">goto thirdLabel ||
    Line 11: Line 11:
    1: label firstLabel
    2
    : print This is label 1's stuff
    3: goto thirdLabel
    4: label secondLabel
    5
    : print This is label 2's stuff
    6: repeat 2
    7: label thirdLabel
    8
    : print This is label 3's stuff
    9: goto secondLabel
    label firstLabel
    1: print This is label 1's stuff
    2: goto thirdLabel
    label secondLabel
    3: print This is label 2's stuff
    4: repeat 2
    label thirdLabel
    5
    : print This is label 3's stuff
    6: goto secondLabel

    Usage:

    goto label

    Example:

    goto thirdLabel

    Allows you to jump to any label, anywhere in the script and then continue on down the script line by line as normal (or until it reaches another command to force it to jump elsewhere again).

    In the following example, the bot will read the first line and print the first message following it, then jump to the third label and print that message, then jump to the second label and print that message twice, and then for lack of another jump it will continue down the script to the third label again, print that message, then jump back to the second label again... thus entering an endless loop of the second and third labels.

    • label firstLabel
      1: print This is label 1's stuff
      2: goto thirdLabel
      label secondLabel
      3: print This is label 2's stuff
      4: repeat 2
      label thirdLabel
      5: print This is label 3's stuff
      6: goto secondLabel

    This produces the following results in the bot:

    • 16:53:21 This is label 1's stuff
      16:53:25 This is label 3's stuff
      16:53:29 This is label 2's stuff
      16:53:33 This is label 2's stuff
      16:53:39 This is label 3's stuff
      16:53:41 This is label 2's stuff
      16:53:43 This is label 2's stuff
      16:53:46 This is label 3's stuff
      16:53:48 This is label 2's stuff
      16:53:50 This is label 2's stuff
      16:53:53 This is label 3's stuff
      16:53:55 This is label 2's stuff
      16:53:57 This is label 2's stuff
      16:54:00 This is label 3's stuff
      (etc. etc. forever)



    ScriptControlStructures

    Goto (last edited 2013-08-06 17:38:02 by Inanna)