@Override
	public void tick()
	{
		ArrayList<Entity> orbitals=GameEngine.instance().location().entityList(Orbital.class);
		for(Entity entity:orbitals)
		{
			Orbital orbital=(Orbital)entity;
			if(orbital!=this)
			{
				double slope=Math.atan2((orbital.y()-y()),orbital.lastX()-x());
				double distance=new Point2D.Double(x(),y()).distance(new Point2D.Double(orbital.lastX(),orbital.lastY()));
				acceleration.x+=G*Math.cos(slope)*orbital.mass/Math.pow(distance,2);
				acceleration.y+=G*Math.sin(slope)*orbital.mass/Math.pow(distance,2);
			}
		}
		velocity.x+=acceleration.x;
		velocity.y+=acceleration.y;
		if(mass<100)
		{
			moveDelta(velocity.x,velocity.y);
		}
		acceleration=new Vector(0,0);
		
		for(int i=0;i<10000;i++) // why is this here?
		{
			//System.out.format("","");//this lags the game
		}
	}