JS viewer

Syntax-highlighted view of JS of Mind: Castle Mind (clone by grey)





// Cloned by grey on 26 Jun 2019 from Mind "Castle Mind" by Starter user 
// Please leave this clone trail here.
 



// ==== Starter Mind ===============================================================================================
// (c) Ancient Brain Ltd. All rights reserved.
// This code is only for use on the Ancient Brain site.
// This code may be freely copied and edited by anyone on the Ancient Brain site.
// This code may not be copied, re-published or used on any other website.
// To include a run of this code on another website, see the "Embed code" links provided on the Ancient Brain site.
// ==================================================================================================================


 

	AB.mind.getAction = function ( x )		// x is an array of [ theagent.position.x, theagent.position.z, theenemy.position.x, theenemy.position.z ]
	{ 
		var ai = x[0];
		var aj = x[1];
		var ei = x[2];
		var ej = x[3];

		// if strictly move away, will get stuck at (invisible) wall, so introduce randomness 
		
		 if ( ei < ai ) 	return ( AB.randomPick ( ACTION_RIGHT,	AB.randomPick3 ( ACTION_LEFT, 	ACTION_UP, ACTION_DOWN ) 		)); 
		 if ( ei > ai ) 	return ( AB.randomPick ( ACTION_LEFT,	AB.randomPick3 ( ACTION_RIGHT, 	ACTION_UP, ACTION_DOWN ) 		)); 

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


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