StarSystem.Rule1 C# (CSharp) Method

Rule1() public method

public Rule1 ( float dt, World, world ) : RuleResult
dt float
world World,
return RuleResult
  public RuleResult Rule1(float dt, World world)
  {
    switch (s1)
    {

      case -1:

        goto case 16;
      case 16:
        if (!(q_temp1))
        {

          s1 = 16;
          return RuleResult.Done;
        }
        else
        {

          goto case 15;
        }
      case 15:
        q_temp1 = false;
        if (((StarSystem1) == (Ships)))
        {

          goto case 13;
        }
        else
        {

          goto case 11;
        }
      case 13:
        _Ships = new List<Ship>(Ships);
        goto case 11;
      case 11:
        StarSystem1.Clear();

        counter3 = -1;
        if ((((Ships).Count) == (0)))
        {

          goto case 1;
        }
        else
        {

          s = (Ships)[0];
          goto case 3;
        }
      case 3:
        counter3 = ((counter3) + (1));
        if ((((((Ships).Count) == (counter3))) || (((counter3) > ((Ships).Count)))))
        {

          goto case 1;
        }
        else
        {

          s = (Ships)[counter3];
          goto case 4;
        }
      case 4:
        if (((!(s.Arrived)) && (!(s.Destroyed))))
        {

          goto case 5;
        }
        else
        {

          goto case 6;
        }
      case 5:
        s._StarSystem = this;
        StarSystem1.Add(s);
        goto case 3;
      case 6:
        s._StarSystem = null;
        goto case 3;
      case 1:
        q_temp1 = false;
        Ships = StarSystem1;
        s1 = -1;
        return RuleResult.Working;
      default: return RuleResult.Done;
    }
  }