Game.Planet.Rule15 C# (CSharp) Method

Rule15() public method

public Rule15 ( float dt, World world ) : void
dt float
world World
return void
	public void Rule15(float dt, World world){ 
	switch (s15)
	{

	case -1:
	if(Selected)
	{

	goto case 42;	}else
	{

	s15 = -1;
return;	}
	case 42:
	if(((LandedShips) > (0)))
	{

	goto case 44;	}else
	{

	s15 = -1;
return;	}
	case 44:
	if(((((world.TargetedPlanet.IsSome) && (Battle.IsNone))) && (!(world.InputMonitor.ShiftKey))))
	{

	goto case 46;	}else
	{

	s15 = -1;
return;	}
	case 46:
	if(world.InputMonitor.ControlKey)
	{

	___amount_of_ships150 = LandedShips;	}else
	{

	___amount_of_ships150 = ((System.Int32)((((LandedShips) + (1))) / (2)));	}
	___target151 = world.TargetedPlanet.Value;
	___next_hop150 = (

(this.Neighbours).Select(__ContextSymbol131 => new { ___h150 = __ContextSymbol131 })
.SelectMany(__ContextSymbol132=> (world.Planets).Select(__ContextSymbol133 => new { ___q152 = __ContextSymbol133,
                                                      prev = __ContextSymbol132 })
.Where(__ContextSymbol134 => ((((__ContextSymbol134.prev.___h150.Item1) == (world.TargetedPlanet.Value.UnityPlanet))) && (((__ContextSymbol134.prev.___h150.Item2) == (__ContextSymbol134.___q152.UnityPlanet)))))
.Select(__ContextSymbol135 => __ContextSymbol135.___q152)
.ToList<Planet>())).ToList<Planet>();
	ShipToSend = (

(new Cons<TravelingShip>(new TravelingShip(___next_hop150.Head(),this,new Ship(Owner.Value,Position,___amount_of_ships150,world.TargetedPlanet.Value,___next_hop150.Head(),this,(new Nothing<UnityShip>()))),(new Empty<TravelingShip>()).ToList<TravelingShip>())).ToList<TravelingShip>()).ToList<TravelingShip>();
	LandedShips = 0;
	s15 = 47;
return;
	case 47:
	ShipToSend = (

Enumerable.Empty<TravelingShip>()).ToList<TravelingShip>();
	LandedShips = LandedShips;
	s15 = -1;
return;	
	default: return;}}