package fr.cnam.joueur;

import java.rmi.*;
import fr.cnam.joueur.FactoryAgentInt;
import java.util.*;
import java.awt.Point;

public class Agent_Agressif extends Agent 
{
  private int compteur;

  private int sensX;
  private int sensY;

  public Agent_Agressif(int couleur,
                        FactoryAgentInt factory,
                        int portRMI) throws RemoteException
  {
    super(couleur,
          factory,
          portRMI);
    sensX=1;
    sensY=1;
  }

  public void deplacer()
  {
    try{
      if (! espace.getModeCombat())
        {
          if (compteur<30)
            {
              if (fuireAmis())
                compteur++;
            }
          else
            {
              sensX=sensX*(-1);
              Point p = espace.deplacer(x,y,sensX,sensY,couleur);
              x=p.x;
              y=p.y;
              sensY=sensY*sensX;
            }
        }
      else
        {
          if ( ! deplacerEnnemie())
            super.deplacer();
        }
    }catch(Exception ex){System.out.println(ex);ex.printStackTrace();};
  }
}