isTouchActiveみたいなbool値でシグナルの受信を管理する必要があるのかと思ったらこれでもいけるらしい
ChatGPTにリファクタリングして貰ったらソースがかなり短くなった

ttps://pastebin.com/YyjtJXCC

ソース冒頭のGameManagerはシングルトンとしてAutoLoadに設定、プロパティはactive_charのみ
このactive_charはゲーム内でアクティブなキャラを一意にする意図

プレイヤーノード構成
CharacterBody2D
├Area2D
│ └CollisionShape2D
└Sprite2D