Code viewer for Mind: Complex Mind (clone by Ton...

// Cloned by Tony Forde on 12 Nov 2021 from Mind "Complex Mind (clone by Tony Forde) (clone by Tony Forde) (clone by Tony Forde) (clone by Tony Forde) (clone by Tony Forde)" by Tony Forde 
// Please leave this clone trail here.
 


// Cloned by Tony Forde on 10 Nov 2021 from Mind "Complex Mind (clone by Tony Forde) (clone by Tony Forde) (clone by Tony Forde) (clone by Tony Forde)" by Tony Forde 
// Please leave this clone trail here.
 


// Cloned by Tony Forde on 5 Nov 2021 from Mind "Complex Mind (clone by Tony Forde) (clone by Tony Forde) (clone by Tony Forde)" by Tony Forde 
// Please leave this clone trail here.
 


// Cloned by Tony Forde on 2 Nov 2021 from Mind "Complex Mind (clone by Tony Forde) (clone by Tony Forde)" by Tony Forde 
// Please leave this clone trail here.
 


// Cloned by Tony Forde on 26 Oct 2021 from Mind "Complex Mind (clone by Tony Forde)" by Tony Forde 
// Please leave this clone trail here.
 


// Cloned by Tony Forde on 26 Oct 2021 from Mind "Complex Mind" by Starter user 
// Please leave this clone trail here.
 



// =================================================================================================
// Sample Mind for more complex starter World  
// =================================================================================================

// World tells us agent position and enemy position
// World does not tell us of existence of walls
// if return invalid move (not empty square) World just ignores it and we miss a turn 


 

	AB.mind.getAction = function ( x )		// x is an array of [ ai, aj, ei, ej ]
	{ 
	    // console.log('Mind...')
		var ai = x[0];
		var aj = x[1];
		var ei = x[2];
		var ej = x[3];

		// if strictly move away, will get stuck at wall, so introduce randomness 

		 if ( ej < aj ) 	return ( AB.randomPick ( ACTION_UP,		AB.randomPick(ACTION_RIGHT,ACTION_LEFT) 	)); 
		 if ( ej > aj ) 	return ( AB.randomPick ( ACTION_DOWN,	AB.randomPick(ACTION_RIGHT,ACTION_LEFT) 	)); 

		 if ( ei < ai ) 	return ( AB.randomPick ( ACTION_RIGHT,	AB.randomPick(ACTION_UP,ACTION_DOWN) 		)); 
		 if ( ei > ai ) 	return ( AB.randomPick ( ACTION_LEFT,	AB.randomPick(ACTION_UP,ACTION_DOWN) 		)); 

 		return  ( AB.randomIntAtoB (0,3) );
	};