﻿using UnityEngine;
using System.Collections;

// Le script est portée par un Ocube
// Post: estEnZoneDepot = true ssi le cube se situe à l'intérieur du rectangle formé par [ZD1, ZD2, ZD3, ZD4], suivant la norme euclidienne
public class EnZoneDepotDist : MonoBehaviour {
    public bool estEnZoneDepot;
    // On suppose ici que les 4 Vector3 sont les points (x,z) d'un rectangle de longueur "longueur" et de largeur "largeur"
    public GameObject ZD1;
    public GameObject ZD2;
    public GameObject ZD3;
    public GameObject ZD4;
    private Vector3 ZoneDepot_1;
    private Vector3 ZoneDepot_2;
    private Vector3 ZoneDepot_3;
    private Vector3 ZoneDepot_4;
    private Vector3 Centre;
    private float largeur;
    private float longueur;

	// Use this for initialization
	void Start () {
        ZoneDepot_1 = ZD1.transform.position;
        ZoneDepot_2 = ZD2.transform.position;
        ZoneDepot_3 = ZD3.transform.position;
        ZoneDepot_4 = ZD4.transform.position;
        Centre = (ZoneDepot_1 + ZoneDepot_2 + ZoneDepot_3 + ZoneDepot_4) / 4.0F;
        largeur = Mathf.Abs(ZoneDepot_1.x - ZoneDepot_2.x);
        longueur = Mathf.Abs(ZoneDepot_1.z - ZoneDepot_4.z);
        estEnZoneDepot = false;
	}
	
	// Update is called once per frame
	void Update () {
        Vector3 diff = (transform.position - Centre);
        estEnZoneDepot = (Mathf.Abs(diff.x) < largeur / 2.0F) & (Mathf.Abs(diff.z) < longueur / 2.0F);
	}
}
