Dynamic Scheduling Example Custom allocation rule

I need a puck allocation method similar to Swap with downstream but all subsequent pucks assigned after the swapped pucks should only be assigned during certain working patterns e.g. 08:00 - 12:00 and 13:00 - 17:00. I have 8 patterns in a “Pattern” object set that has start / end props between 0 - 1440, and each puck can only be assigned to specific patterns based on its properties. Would this be too heavy to run? Is there a better solution?