Pygameにおけるsplite groupのcircle当たり判定

stg

一般的なc++ではなく(筆者はc++アレルギーなので)pythonのpygameというモジュールを利用することにしました
今回は当たり判定処理についてです

弾幕系シューティングゲームなので当たり判定が画像自体ではなく画像の真ん中の小さな丸を当たり判定にするのです
東方などのゲームでは画像の真ん中でないと当たりません

http://westplain.sakuraweb.com/Sprite.cgi
pygame.sprite.collide_circle – 円に変換した大きさを使って、二つのspriteの当たり判定を行います。
pygame.sprite.groupcollide – 二つの Group間で、接触している全てのSpriteを探します。
この2つの関数を使用します

敵の複数の弾のspliteと自機のspliteの当たり判定なのでgroupcollideを使います

しかし、このままでは画像の当たり判定になってしまいます。
そこでcollide_circleを第四引数に指定します
このとき各spliteにradiusを指定しなければいけません

これで小さな当たり判定の完成です
当たり判定部分の画像に関しては低速移動時に画像を差し替えるということをしています

まだ超基本のシステムが完成しただけなので、ちゃんとしたゲームにするにはまだまだ時間が掛かりそうです(多分途中で飽きる気がする)

追記:完全に飽きて放置してる