0

だから、私は kinematicBody2D Soldier でインスタンス化されたシーンを持っています。私は以前、「敵」スプライトの位置を取得し、その周りに円を「描く」スクリプトを書きました。兵士がこのエリアに入ると、スプライトに回転して射撃を開始します。
古いコードは次のとおりです。

#   Spotting an enemy and firing
    if (position.x - enemy_sprite.position.x) * (position.x - enemy_sprite.position.x) + (position.y - enemy_sprite.position.y) * (position.y - enemy_sprite.position.y) < detection_radius*detection_radius: #checking if a soldier is in detection radius of the enemy sprite
        var enemy = enemy_sprite.position - self.position 
        rotation = enemy.angle() + deg2rad(90)
        if (bullets > 0 && canFire):
            auto_fire()
    else:
        rotation = trans.angle() + deg2rad(90)#

問題は、兵士がもはやメイン シーンの一部ではなく、インスタンス化されていることです。
敵のスプライト ノードをインスタンス化されたオブジェクト スクリプトに取り込むにはどうすればよいですか?

4

0 に答える 0