/**
     * Interface for Player used to generate  activation tiles for ability activation
     *
     * Arguments
     * - Player player - The player
     * - Ability ability - The ability being activated
     */
    public void GeneratorInterface(Player newPlayer, Ability newAbility)
    {
        double abilityRange = newAbility.GetRange();
        /* The X and Z Coordinates of the calling player */
        int playerPositionX = newPlayer.PlayerPosition().X * 2;
        int playerPositionZ = newPlayer.PlayerPosition().Z * 2;
        RangeType rangeType = newAbility.GetRangeType();
        ActivationType activationType = newAbility.GetActivationType();

        // First, destroy previous activation tiles
        DestroyActivationTiles();

        // Second, set reference item. Set ability to be null
        item = null;
        ability = newAbility;

        // Third, start generating
        generateActivationTiles(abilityRange, playerPositionX, playerPositionZ, rangeType, activationType);
    }