예제 #1
0
        public void Rule1(float dt, World world)
        {
            switch (s1)
              {

            case -1:
              count_down1 = (float)(-alpha * Math.Log(1 - world.___seed00.NextDouble()));
              goto case 3;
            case 3:
              if ((((count_down1)) > ((0f))))
              {

            count_down1 = ((count_down1)) - ((dt));
            s1 = 3;
            return;
              }
              else
              {

            goto case 1;
              }
            case 1:
              N = (true);
              s1 = 0;
              return;
            case 0:
              N = (false);
              s1 = -1;
              return;
            default: return;
              }
        }
예제 #2
0
 public void Update(float dt, World world)
 {
   for (int x0 = 0; x0 < AS.Count; x0++)
   {
     AS[x0].Update(dt, world);
   }
 }
예제 #3
0
        public RuleResult Rule0(float dt, World world)
        {
            switch (s0)
              {

            case -1:
              if (!N)
              {
            s0 = -1;
            return RuleResult.Done;
              }
              else
              {
            goto case 0;
              }
            case 0:
              Y = (Y);
              s0 = -1;
              return RuleResult.Working;

            default: return RuleResult.Done;
              }
        }
예제 #4
0
 public void Update(float dt, World world)
 {
     this.Rule1(dt, world);
       this.Rule0(dt, world);
 }