Example #1
0
    private bool BuildSearchedUnits(IUnit refunit, LinkedList <IUnit> list)
    {
        // place center object
        list.AddLast(refunit);

        // build around
        var lastUnit = refunit;

        for (var i = 0; i < CenterPos - 1; i++) // left
        {
            var unit = Manager.UnitFactory.BlankIUnit();
            list.AddLast(unit);
            lastUnit.Chain(unit, Direction.Right);
            lastUnit = unit;
        }

        lastUnit = refunit;
        for (var i = 0; i < RowSize - CenterPos; i++)
        {
            var unit = Manager.UnitFactory.BlankIUnit();
            list.AddFirst(unit);
            lastUnit.Chain(unit, Direction.Left);
            lastUnit = unit;
        }

        return(refunit.Load(refunit, Direction.Identity));
    }