import { useAchv, useGoHome } from '@remake/hooks' import { judge, judgeGrade, judgeGradeByValue } from '@/config' import { rates } from '@/display' import { achievements, type Achievement } from '@remake/data' import './Achv.css' interface AchievementProps { id: Achievement['id'] colled: boolean } export function AchievementItem({ id, colled }: AchievementProps) { const { name, grade, description, hide } = achievements.get(id)! return (
  • {hide && !colled ? '???' : name} {hide && !colled ? '???' : description}
  • ) } export function Achv() { const goHome = useGoHome() const [stats, sorted] = useAchv() const jtimes = judge('times', stats.times) const gtimes = judgeGrade('times', jtimes) const jachv = judge('achievements', stats.achv) const gachv = judgeGrade('achievements', jachv) const gevent = judgeGradeByValue('event', stats.event) const revent = stats.event.toFixed(2) + '%' const gtalent = judgeGradeByValue('talent', stats.talent) const rtalent = stats.talent.toFixed(2) + '%' return (
    统计
    已重开{stats.times}次 {rates.times[jtimes]}
    已收集成就{stats.achv}个 {rates.achievement[jachv]}
    事件收集率 {revent}
    天赋收集率 {rtalent}
    成就
    ) } export default Achv