
public class Prologin extends Interface {


	public void partie_init() {
	}

	Position last;
	
	public void jouer_tour() {
		
		Position pos = position_agent(moi());
        Position[] portal = liste_portails();
        boolean notFind = true;
        for(int i = 0; i < portal.length;i++) {
            if(distance(pos, portal[i]) <= 6 && portail_joueur(portal[i]) != moi() && !case_dans_champ(portal[i]) && (pos.x != last.x || pos.y != last.y)) {
                deplacer(portal[i]);
                neutraliser();
                capturer();
                Util.tout_lier();
                for(int u = 0; u < 6;u++) {
                    ajouter_bouclier();
                }
                notFind = false;
                break;
            }
        }
        if(notFind == true) {
            int min = 999999999;
            Position goal = pos;
            for(int i = 0; i < portal.length;i++) {
                if(!case_dans_champ(portal[i]) && portail_joueur(portal[i]) != moi() && distance(pos, portal[i]) != 0) {
                    if(distance(pos, portal[i]) < min) {
                        min = distance(pos, portal[i]);
                        goal = portal[i];
                    }
                }
            }
            Position d = pos;
            d.x = d.x + goal.x / 2;
            d.y = d.y + goal.y / 2;
            System.out.println("can move = " + points_deplacement());
            erreur er = deplacer(d);
            if(er == OK) {
                    printf("OK\n");
            } else if(er == PA_INSUFFISANTS) {
                printf("PA_INSUFFISANTS\n");
            } else if(er == POSITION_INVALIDE) {
                printf("POSITION_INVALIDE\n");
            } else if(er == POSITION_ELOIGNEE) {
                printf("POSITION_ELOIGNEE\n");
            }
            printf("real X = %d - Y = %d - D = %d\n", d.x, d.y, distance(pos, d));


        }
        last = pos;
		
	}

	public void partie_fin() {
	}
}
