public void Initialise(WorldGridScript world)
    {
        m_archeryCounter = new GameObject("Castle Archery Marker");
        m_infantryCounter = new GameObject("Castle Infantry Marker");
        m_cavalryCounter = new GameObject("Castle Cavalry Marker");

        Vector3 temp = gameObject.transform.position;
        temp.y = 5.0f;
        m_archeryCounter.transform.position = temp;
        m_infantryCounter.transform.position = temp;
        m_cavalryCounter.transform.position = temp;

        MeshRenderer archeryMeshRenderer = m_archeryCounter.AddComponent<MeshRenderer>();
        MeshFilter archeryMeshFilter = m_archeryCounter.AddComponent<MeshFilter>();
        archeryMeshRenderer.sharedMaterial = world.CounterMaterial;
        archeryMeshFilter.mesh = world.ArcheryCounterMesh;

        MeshRenderer infantryMeshRenderer = m_infantryCounter.AddComponent<MeshRenderer>();
        MeshFilter infantryMeshFilter = m_infantryCounter.AddComponent<MeshFilter>();
        infantryMeshRenderer.sharedMaterial = world.CounterMaterial;
        infantryMeshFilter.mesh = world.InfantryCounterMesh;

        MeshRenderer cavalryMeshRenderer = m_cavalryCounter.AddComponent<MeshRenderer>();
        MeshFilter cavalryMeshFilter = m_cavalryCounter.AddComponent<MeshFilter>();
        cavalryMeshRenderer.sharedMaterial = world.CounterMaterial;
        cavalryMeshFilter.mesh = world.CavalryCounterMesh;

        infantryRecruitmentTiles = new List<WorldTileScript>();
        archeryRecruitmentTiles = new List<WorldTileScript>();
        cavalryRecruitmentTiles = new List<WorldTileScript>();
        uselessTerritoryTiles = new List<WorldTileScript>();

        SpawnHoverArmy();
    }
    public void Initialise(CastleScript castle, WorldGridScript world)
    {
        m_archeryCounter = new GameObject("Hover Archery Marker");
        m_infantryCounter = new GameObject("Hover Infantry Marker");
        m_cavalryCounter = new GameObject("Hover Cavalry Marker");

        m_archeryCounter.transform.SetParent(transform);
        m_infantryCounter.transform.SetParent(transform);
        m_cavalryCounter.transform.SetParent(transform);

        Vector3 temp = gameObject.transform.position;
        m_archeryCounter.transform.position = temp;
        m_infantryCounter.transform.position = temp;
        m_cavalryCounter.transform.position = temp;

        MeshRenderer archeryMeshRenderer = m_archeryCounter.AddComponent<MeshRenderer>();
        MeshFilter archeryMeshFilter = m_archeryCounter.AddComponent<MeshFilter>();
        archeryMeshRenderer.sharedMaterial = world.CounterMaterial;
        archeryMeshFilter.mesh = world.ArcheryCounterMesh;

        MeshRenderer infantryMeshRenderer = m_infantryCounter.AddComponent<MeshRenderer>();
        MeshFilter infantryMeshFilter = m_infantryCounter.AddComponent<MeshFilter>();
        infantryMeshRenderer.sharedMaterial = world.CounterMaterial;
        infantryMeshFilter.mesh = world.InfantryCounterMesh;

        MeshRenderer cavalryMeshRenderer = m_cavalryCounter.AddComponent<MeshRenderer>();
        MeshFilter cavalryMeshFilter = m_cavalryCounter.AddComponent<MeshFilter>();
        cavalryMeshRenderer.sharedMaterial = world.CounterMaterial;
        cavalryMeshFilter.mesh = world.CavalryCounterMesh;

        m_cavalryCounter.AddComponent<MeshCollider>();
        m_infantryCounter.AddComponent<MeshCollider>();
        m_archeryCounter.AddComponent<MeshCollider>();

        UnitSlider cavalry = m_cavalryCounter.AddComponent<UnitSlider>();
        UnitSlider infantry = m_infantryCounter.AddComponent<UnitSlider>();
        UnitSlider archery = m_archeryCounter.AddComponent<UnitSlider>();

        infantry.Init(castle.infantryRecruitmentTiles);
        cavalry.Init(castle.cavalryRecruitmentTiles);
        archery.Init(castle.archeryRecruitmentTiles);

        m_castle = castle;
    }
 // Use this for initialization
 void Start()
 {
     m_grid = GameObject.Find("WorldGrid").GetComponent<WorldGridScript>();
 }
 // Use this for initialization
 void Start()
 {
     worldGrid = GameObject.Find("WorldGrid").GetComponent<WorldGridScript>();
     m_path = new List<WorldTileScript>();
 }
    // Use this for initialization
    void Start()
    {
        m_worldGrid = GameObject.Find("WorldGrid").GetComponent<WorldGridScript>();
        m_pathPlanner = this.GetComponent<WorldPathPlanner>();

        m_xBound = m_worldGrid.XBounds;
        m_yBound = m_worldGrid.YBounds;

        m_targetPos = transform.position;

        this.gameObject.GetComponent<Renderer>().material.color = Faction.FactionColor;

        RaycastHit tileHit;
        bool hit = Physics.Raycast(transform.position, new Vector3(0.0f, -1.0f, 0.0f), out tileHit, 2.0f * HoverPlane);

        if(hit)
        {
            WorldTileScript tile = tileHit.collider.gameObject.GetComponent<WorldTileScript>();
            if(tile)
            {
                m_tile = tile;
                m_tile.ArmyEnter(this);
            }
        }
        Territory = new List<WorldTileScript>();
    }
    // Use this for initialization
    void Start()
    {
        worldGrid = GameObject.Find("WorldGrid").GetComponent<WorldGridScript>();
        worldGrid.AddTile(x,y,this);

        //UpdateColour();
    }