Keep the cooldown / cloak state in variables in each ship's class. Implement a ProcessTurn() function to update that state before or after each turn. This way, each ship can have its own cloak / cooldown status. This keeps information about ships with ships and doesn't complicate the turn processing.