package com.example.demo01.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.demo01.entity.Monster;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;

@Mapper
public interface MonsterMapper extends BaseMapper<Monster> {

    /**
     * 如果你需要一些特殊的逻辑，可以在这里写自定义 SQL。
     * 例如：重置房间内所有怪物的血量。
     */
    @Update("UPDATE monster SET hp = max_hp")
    void resetAllMonstersHp();

    /**
     * 或者：查询当前房间关联的怪物详细信息（如果涉及多表联查）
     */
    @Select("SELECT m.* FROM monster m JOIN room r ON m.id = r.monster_id WHERE r.id = #{roomId}")
    Monster getMonsterByRoomId(Long roomId);
}