feat(animation): Act 기반 몬스터 사이즈 시스템 추가
- Act 진행에 따른 몬스터 사이즈 확률 조정 - 보스: Act별 고정 사이즈 (소/중/대) - 일반/엘리트: Act별 확률 랜덤 - TaskInfo에 monsterSize 필드 추가 - 애니메이션 패널에서 Act 기반 사이즈 사용
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
import 'dart:collection';
|
||||
|
||||
import 'package:asciineverdie/src/core/animation/monster_size.dart';
|
||||
import 'package:asciineverdie/src/core/model/combat_event.dart';
|
||||
import 'package:asciineverdie/src/core/model/combat_state.dart';
|
||||
import 'package:asciineverdie/src/core/model/equipment_item.dart';
|
||||
@@ -315,6 +316,7 @@ class TaskInfo {
|
||||
this.monsterPart,
|
||||
this.monsterLevel,
|
||||
this.monsterGrade,
|
||||
this.monsterSize,
|
||||
});
|
||||
|
||||
final String caption;
|
||||
@@ -326,12 +328,15 @@ class TaskInfo {
|
||||
/// 킬 태스크의 전리품 부위 (예: "claw", "tail", "*"는 WinItem)
|
||||
final String? monsterPart;
|
||||
|
||||
/// 킬 태스크의 몬스터 레벨 (애니메이션 크기 결정용)
|
||||
/// 킬 태스크의 몬스터 레벨 (전투 스탯 계산용)
|
||||
final int? monsterLevel;
|
||||
|
||||
/// 킬 태스크의 몬스터 등급 (Normal/Elite/Boss)
|
||||
final MonsterGrade? monsterGrade;
|
||||
|
||||
/// 킬 태스크의 몬스터 사이즈 (애니메이션 크기 결정용, Act 기반)
|
||||
final MonsterSize? monsterSize;
|
||||
|
||||
factory TaskInfo.empty() =>
|
||||
const TaskInfo(caption: '', type: TaskType.neutral);
|
||||
|
||||
@@ -342,6 +347,7 @@ class TaskInfo {
|
||||
String? monsterPart,
|
||||
int? monsterLevel,
|
||||
MonsterGrade? monsterGrade,
|
||||
MonsterSize? monsterSize,
|
||||
}) {
|
||||
return TaskInfo(
|
||||
caption: caption ?? this.caption,
|
||||
@@ -350,6 +356,7 @@ class TaskInfo {
|
||||
monsterPart: monsterPart ?? this.monsterPart,
|
||||
monsterLevel: monsterLevel ?? this.monsterLevel,
|
||||
monsterGrade: monsterGrade ?? this.monsterGrade,
|
||||
monsterSize: monsterSize ?? this.monsterSize,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user