OpenSim: LSL2CS

From OpenSimulator

Revision as of 08:27, 30 September 2020 by Steevithak (Talk | contribs)

Jump to: navigation, search
default {
    state_entry()
    {

        integer i;
        for( i=0; i<13;i++ )
        {
          llSay(0,(string)i);
        }

    }
}

--- can be transformed to

default {
    state_entry()
    {
      llSay(0,"started");

      integer i;
      i=0;
      while( i<13 )
      {
        llSay(0,(string)i);
        i++;
      }
      llSay(0,"finished");
    }
}

--- can be transformed to

    void state_entry()
    {

      int i;
      i=0;

      SetScope( delegate() 
          { return i<13; }, 
          delegate() 
          {
            llSay(0,(string)i);
            i++;
          }, delegate()
          {
            llSay(0,"finished");
          }
      );
    }

---

In the above code, the engine will test the condition and call the 'current scope' until the condition is false, then it will set current scope to null and run the third delegate.

Personal tools
General
About This Wiki