Set Timer by Event is probably the best approach.
I’d use a data table to store the times and any other data you feel is pertinent. Keep row names as integers.
Create a “Wave” integer var. When you spawn a wave increment the Wave int. Use that int as Row Name for look up. Get Row From Data Table
So, Spawn Wave → Set Timer → Increment Wave → Int to Name → Get Row → Set next Wave Time.