# file name : game_funcs_tboes.py
# ENSYU8_3 敵から逃げる プレイヤー

import pygame
import numpy as np # random 関数利用
import globals as GV # グローバル変数

# ====== 関数：宝箱の情報の初期化=======
def init_tboxes():
    GV.tboxes_lst.clear()
    for _ in range(GV.tboxes_count):
        e1={'x':np.random.randint(0,GV.canv['w']-GV.tbox['w']), # x座標
            'y':np.random.randint(0,GV.canv['h']-GV.tbox['h']), # y座標
            }
        GV.tboxes_lst.append(e1) # 辞書型データの追加

# ====== プレイヤーと宝箱の衝突判定=======
def collect_tboxes():
    remaining=[]
    p_rect=pygame.Rect(GV.fpos['x'],GV.fpos['y'],
                       GV.player['w'],GV.player['h'])
    for e1 in GV.tboxes_lst:
        e_rect=pygame.Rect(e1['x'],e1['y'],GV.tbox['w'],GV.tbox['h'])
        # p_rect とe_rect が衝突した場合
        if p_rect.colliderect(e_rect):     # 矩形（画像）どうしが重なっている（衝突した）場合
            GV.tboxes_collected.append(e1) # 収集した宝箱情報をリストに追加する
        else:
            remaining.append(e1)           # この宝箱が収集されなかった場合remainingに追加する# 残った宝箱をリストに保存する
    GV.tboxes_lst=remaining                # 収集されなかった宝箱のリストに置き換える
    return len(GV.tboxes_collected)