anchor.diff:  							end 
   						end, EnemyDistEntities) of
   		InRangeEnemyBcEntities when length(InRangeEnemyBcEntities) > 0 ->
  -			%% attack in range enemies
   			attack_entities(InRangeEnemyBcEntities, State);
   		_ ->
   			{_, EnemyBcEntity} = closest_dist_entity(EnemyDistEntities),
  
positive.code: 			EntitiesEventPid = bc_entities:event(BcEntities),
  			gen_event:notify(EntitiesEventPid, {entity_moved, UpdatedBcEntity}),
  			MoveSpeed = bc_entity_config:move_speed(BcEntityConfig),
  			MoveDelayFloat = 1000 - (1000 * MoveSpeed),
  			MoveDelayInt = erlang:trunc(MoveDelayFloat),
  			TimerRef = gen_fsm:send_event_after(MoveDelayInt, action_complete),
  			{next_state, moving, State#state{entity = UpdatedBcEntity,
  											 timer = TimerRef}};
  		{error, _} ->
  			sense(State)
  	end.
  
  move_entity(Direction, #state{entity = BcEntity, map = BcMap} = State) ->
  	OriginalBcCollision = bc_entity:to_collision(BcEntity),
  
negative.code: 										   entity_config = BcEntityConfig,
  										   entities = BcEntities,
  										   entity_event_handler = EventHandler} = State) ->
  	%% TODO change entity orientation if neccesary
  	EntitiesEventPid = bc_entities:event(BcEntities),
  	gen_event:notify(EntitiesEventPid, {entity_attacking, BcEntity}),
  	UpdatedState =
  		case EventHandler of
  			undefined ->			
  