public void Rule2(float dt, World world){
switch (s2)
{
case -1:
if(((((((Owner.IsNone) && (Battle.IsNone))) && (!(((LandingFleets.Count) == (InboundFleets.Count)))))) || (((Owner.IsSome) && (!(((LandingFleets.Count) == (InboundFleets.Count))))))))
{
goto case 6; }else
{
goto case 7; }
case 6:
Battle = (new Just<Battle>(new Battle(this)));
s2 = 10;
return;
case 10:
if(!(!(((Battle.Value.AttackingFleets.Count) > (0)))))
{
s2 = 10;
return; }else
{
goto case 9; }
case 9:
Battle = (new Nothing<Battle>());
s2 = -1;
return;
case 7:
Battle = (new Nothing<Battle>());
s2 = -1;
return;
default: return;}}