Pass Variable from Automation to Script Not Working

You have not shared anything involving a switch, so I cannot comment on that. However, all of the attempted methods you are using in the shared portion of your automation are incorrect. You can use the following corrected Option definition as an example of how to correct the other Options and service calls:

...
      - conditions:
          - condition: template
            value_template: "{{ c_type == 'audio' }}"
        sequence:
          - service: script.1692643185235
            data:
              playlist: "{{pl_type}}"
....

Just like the service call above needs curly braces around pl_type to mark it as a variable, the receiving script needs to have the variable’s key inside curly braces so that the program knows it’s a variable not just a string of text.

alias: PlaySpotifyPL
sequence:
  - service: mass.queue_command
    data:
      command: play_media
      enqueue_mode: play
      uri: "{{playlist}}"
      player_id: media_player.wcast_tv_3
mode: single