- ItemStats, CombatStats, EquipmentItem을 freezed로 마이그레이션 - copyWith, toJson/fromJson 자동 생성 - 세이브 파일 호환성 유지
652 lines
18 KiB
Dart
652 lines
18 KiB
Dart
// coverage:ignore-file
|
|
// GENERATED CODE - DO NOT MODIFY BY HAND
|
|
// ignore_for_file: type=lint
|
|
// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark
|
|
|
|
part of 'item_stats.dart';
|
|
|
|
// **************************************************************************
|
|
// FreezedGenerator
|
|
// **************************************************************************
|
|
|
|
T _$identity<T>(T value) => value;
|
|
|
|
final _privateConstructorUsedError = UnsupportedError(
|
|
'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#adding-getters-and-methods-to-our-models',
|
|
);
|
|
|
|
ItemStats _$ItemStatsFromJson(Map<String, dynamic> json) {
|
|
return _ItemStats.fromJson(json);
|
|
}
|
|
|
|
/// @nodoc
|
|
mixin _$ItemStats {
|
|
/// 물리 공격력 보정
|
|
int get atk => throw _privateConstructorUsedError;
|
|
|
|
/// 물리 방어력 보정
|
|
int get def => throw _privateConstructorUsedError;
|
|
|
|
/// 마법 공격력 보정
|
|
int get magAtk => throw _privateConstructorUsedError;
|
|
|
|
/// 마법 방어력 보정
|
|
int get magDef => throw _privateConstructorUsedError;
|
|
|
|
/// 크리티컬 확률 보정 (0.0 ~ 1.0)
|
|
double get criRate => throw _privateConstructorUsedError;
|
|
|
|
/// 회피율 보정 (0.0 ~ 1.0)
|
|
double get evasion => throw _privateConstructorUsedError;
|
|
|
|
/// 방패 방어율 (방패 전용, 0.0 ~ 1.0)
|
|
double get blockRate => throw _privateConstructorUsedError;
|
|
|
|
/// 무기 쳐내기 확률 (무기 전용, 0.0 ~ 1.0)
|
|
double get parryRate => throw _privateConstructorUsedError;
|
|
|
|
/// HP 보너스
|
|
int get hpBonus => throw _privateConstructorUsedError;
|
|
|
|
/// MP 보너스
|
|
int get mpBonus => throw _privateConstructorUsedError;
|
|
|
|
/// STR 보너스
|
|
int get strBonus => throw _privateConstructorUsedError;
|
|
|
|
/// CON 보너스
|
|
int get conBonus => throw _privateConstructorUsedError;
|
|
|
|
/// DEX 보너스
|
|
int get dexBonus => throw _privateConstructorUsedError;
|
|
|
|
/// INT 보너스
|
|
int get intBonus => throw _privateConstructorUsedError;
|
|
|
|
/// WIS 보너스
|
|
int get wisBonus => throw _privateConstructorUsedError;
|
|
|
|
/// CHA 보너스
|
|
int get chaBonus => throw _privateConstructorUsedError;
|
|
|
|
/// 무기 공격속도 (밀리초, 무기 전용)
|
|
///
|
|
/// 0이면 기본값(1000ms) 사용, 값이 클수록 느린 공격.
|
|
/// 느린 무기는 높은 기본 데미지를 가짐.
|
|
int get attackSpeed => throw _privateConstructorUsedError;
|
|
|
|
/// Serializes this ItemStats to a JSON map.
|
|
Map<String, dynamic> toJson() => throw _privateConstructorUsedError;
|
|
|
|
/// Create a copy of ItemStats
|
|
/// with the given fields replaced by the non-null parameter values.
|
|
@JsonKey(includeFromJson: false, includeToJson: false)
|
|
$ItemStatsCopyWith<ItemStats> get copyWith =>
|
|
throw _privateConstructorUsedError;
|
|
}
|
|
|
|
/// @nodoc
|
|
abstract class $ItemStatsCopyWith<$Res> {
|
|
factory $ItemStatsCopyWith(ItemStats value, $Res Function(ItemStats) then) =
|
|
_$ItemStatsCopyWithImpl<$Res, ItemStats>;
|
|
@useResult
|
|
$Res call({
|
|
int atk,
|
|
int def,
|
|
int magAtk,
|
|
int magDef,
|
|
double criRate,
|
|
double evasion,
|
|
double blockRate,
|
|
double parryRate,
|
|
int hpBonus,
|
|
int mpBonus,
|
|
int strBonus,
|
|
int conBonus,
|
|
int dexBonus,
|
|
int intBonus,
|
|
int wisBonus,
|
|
int chaBonus,
|
|
int attackSpeed,
|
|
});
|
|
}
|
|
|
|
/// @nodoc
|
|
class _$ItemStatsCopyWithImpl<$Res, $Val extends ItemStats>
|
|
implements $ItemStatsCopyWith<$Res> {
|
|
_$ItemStatsCopyWithImpl(this._value, this._then);
|
|
|
|
// ignore: unused_field
|
|
final $Val _value;
|
|
// ignore: unused_field
|
|
final $Res Function($Val) _then;
|
|
|
|
/// Create a copy of ItemStats
|
|
/// with the given fields replaced by the non-null parameter values.
|
|
@pragma('vm:prefer-inline')
|
|
@override
|
|
$Res call({
|
|
Object? atk = null,
|
|
Object? def = null,
|
|
Object? magAtk = null,
|
|
Object? magDef = null,
|
|
Object? criRate = null,
|
|
Object? evasion = null,
|
|
Object? blockRate = null,
|
|
Object? parryRate = null,
|
|
Object? hpBonus = null,
|
|
Object? mpBonus = null,
|
|
Object? strBonus = null,
|
|
Object? conBonus = null,
|
|
Object? dexBonus = null,
|
|
Object? intBonus = null,
|
|
Object? wisBonus = null,
|
|
Object? chaBonus = null,
|
|
Object? attackSpeed = null,
|
|
}) {
|
|
return _then(
|
|
_value.copyWith(
|
|
atk: null == atk
|
|
? _value.atk
|
|
: atk // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
def: null == def
|
|
? _value.def
|
|
: def // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
magAtk: null == magAtk
|
|
? _value.magAtk
|
|
: magAtk // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
magDef: null == magDef
|
|
? _value.magDef
|
|
: magDef // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
criRate: null == criRate
|
|
? _value.criRate
|
|
: criRate // ignore: cast_nullable_to_non_nullable
|
|
as double,
|
|
evasion: null == evasion
|
|
? _value.evasion
|
|
: evasion // ignore: cast_nullable_to_non_nullable
|
|
as double,
|
|
blockRate: null == blockRate
|
|
? _value.blockRate
|
|
: blockRate // ignore: cast_nullable_to_non_nullable
|
|
as double,
|
|
parryRate: null == parryRate
|
|
? _value.parryRate
|
|
: parryRate // ignore: cast_nullable_to_non_nullable
|
|
as double,
|
|
hpBonus: null == hpBonus
|
|
? _value.hpBonus
|
|
: hpBonus // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
mpBonus: null == mpBonus
|
|
? _value.mpBonus
|
|
: mpBonus // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
strBonus: null == strBonus
|
|
? _value.strBonus
|
|
: strBonus // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
conBonus: null == conBonus
|
|
? _value.conBonus
|
|
: conBonus // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
dexBonus: null == dexBonus
|
|
? _value.dexBonus
|
|
: dexBonus // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
intBonus: null == intBonus
|
|
? _value.intBonus
|
|
: intBonus // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
wisBonus: null == wisBonus
|
|
? _value.wisBonus
|
|
: wisBonus // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
chaBonus: null == chaBonus
|
|
? _value.chaBonus
|
|
: chaBonus // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
attackSpeed: null == attackSpeed
|
|
? _value.attackSpeed
|
|
: attackSpeed // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
)
|
|
as $Val,
|
|
);
|
|
}
|
|
}
|
|
|
|
/// @nodoc
|
|
abstract class _$$ItemStatsImplCopyWith<$Res>
|
|
implements $ItemStatsCopyWith<$Res> {
|
|
factory _$$ItemStatsImplCopyWith(
|
|
_$ItemStatsImpl value,
|
|
$Res Function(_$ItemStatsImpl) then,
|
|
) = __$$ItemStatsImplCopyWithImpl<$Res>;
|
|
@override
|
|
@useResult
|
|
$Res call({
|
|
int atk,
|
|
int def,
|
|
int magAtk,
|
|
int magDef,
|
|
double criRate,
|
|
double evasion,
|
|
double blockRate,
|
|
double parryRate,
|
|
int hpBonus,
|
|
int mpBonus,
|
|
int strBonus,
|
|
int conBonus,
|
|
int dexBonus,
|
|
int intBonus,
|
|
int wisBonus,
|
|
int chaBonus,
|
|
int attackSpeed,
|
|
});
|
|
}
|
|
|
|
/// @nodoc
|
|
class __$$ItemStatsImplCopyWithImpl<$Res>
|
|
extends _$ItemStatsCopyWithImpl<$Res, _$ItemStatsImpl>
|
|
implements _$$ItemStatsImplCopyWith<$Res> {
|
|
__$$ItemStatsImplCopyWithImpl(
|
|
_$ItemStatsImpl _value,
|
|
$Res Function(_$ItemStatsImpl) _then,
|
|
) : super(_value, _then);
|
|
|
|
/// Create a copy of ItemStats
|
|
/// with the given fields replaced by the non-null parameter values.
|
|
@pragma('vm:prefer-inline')
|
|
@override
|
|
$Res call({
|
|
Object? atk = null,
|
|
Object? def = null,
|
|
Object? magAtk = null,
|
|
Object? magDef = null,
|
|
Object? criRate = null,
|
|
Object? evasion = null,
|
|
Object? blockRate = null,
|
|
Object? parryRate = null,
|
|
Object? hpBonus = null,
|
|
Object? mpBonus = null,
|
|
Object? strBonus = null,
|
|
Object? conBonus = null,
|
|
Object? dexBonus = null,
|
|
Object? intBonus = null,
|
|
Object? wisBonus = null,
|
|
Object? chaBonus = null,
|
|
Object? attackSpeed = null,
|
|
}) {
|
|
return _then(
|
|
_$ItemStatsImpl(
|
|
atk: null == atk
|
|
? _value.atk
|
|
: atk // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
def: null == def
|
|
? _value.def
|
|
: def // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
magAtk: null == magAtk
|
|
? _value.magAtk
|
|
: magAtk // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
magDef: null == magDef
|
|
? _value.magDef
|
|
: magDef // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
criRate: null == criRate
|
|
? _value.criRate
|
|
: criRate // ignore: cast_nullable_to_non_nullable
|
|
as double,
|
|
evasion: null == evasion
|
|
? _value.evasion
|
|
: evasion // ignore: cast_nullable_to_non_nullable
|
|
as double,
|
|
blockRate: null == blockRate
|
|
? _value.blockRate
|
|
: blockRate // ignore: cast_nullable_to_non_nullable
|
|
as double,
|
|
parryRate: null == parryRate
|
|
? _value.parryRate
|
|
: parryRate // ignore: cast_nullable_to_non_nullable
|
|
as double,
|
|
hpBonus: null == hpBonus
|
|
? _value.hpBonus
|
|
: hpBonus // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
mpBonus: null == mpBonus
|
|
? _value.mpBonus
|
|
: mpBonus // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
strBonus: null == strBonus
|
|
? _value.strBonus
|
|
: strBonus // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
conBonus: null == conBonus
|
|
? _value.conBonus
|
|
: conBonus // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
dexBonus: null == dexBonus
|
|
? _value.dexBonus
|
|
: dexBonus // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
intBonus: null == intBonus
|
|
? _value.intBonus
|
|
: intBonus // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
wisBonus: null == wisBonus
|
|
? _value.wisBonus
|
|
: wisBonus // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
chaBonus: null == chaBonus
|
|
? _value.chaBonus
|
|
: chaBonus // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
attackSpeed: null == attackSpeed
|
|
? _value.attackSpeed
|
|
: attackSpeed // ignore: cast_nullable_to_non_nullable
|
|
as int,
|
|
),
|
|
);
|
|
}
|
|
}
|
|
|
|
/// @nodoc
|
|
@JsonSerializable()
|
|
class _$ItemStatsImpl extends _ItemStats {
|
|
const _$ItemStatsImpl({
|
|
this.atk = 0,
|
|
this.def = 0,
|
|
this.magAtk = 0,
|
|
this.magDef = 0,
|
|
this.criRate = 0.0,
|
|
this.evasion = 0.0,
|
|
this.blockRate = 0.0,
|
|
this.parryRate = 0.0,
|
|
this.hpBonus = 0,
|
|
this.mpBonus = 0,
|
|
this.strBonus = 0,
|
|
this.conBonus = 0,
|
|
this.dexBonus = 0,
|
|
this.intBonus = 0,
|
|
this.wisBonus = 0,
|
|
this.chaBonus = 0,
|
|
this.attackSpeed = 0,
|
|
}) : super._();
|
|
|
|
factory _$ItemStatsImpl.fromJson(Map<String, dynamic> json) =>
|
|
_$$ItemStatsImplFromJson(json);
|
|
|
|
/// 물리 공격력 보정
|
|
@override
|
|
@JsonKey()
|
|
final int atk;
|
|
|
|
/// 물리 방어력 보정
|
|
@override
|
|
@JsonKey()
|
|
final int def;
|
|
|
|
/// 마법 공격력 보정
|
|
@override
|
|
@JsonKey()
|
|
final int magAtk;
|
|
|
|
/// 마법 방어력 보정
|
|
@override
|
|
@JsonKey()
|
|
final int magDef;
|
|
|
|
/// 크리티컬 확률 보정 (0.0 ~ 1.0)
|
|
@override
|
|
@JsonKey()
|
|
final double criRate;
|
|
|
|
/// 회피율 보정 (0.0 ~ 1.0)
|
|
@override
|
|
@JsonKey()
|
|
final double evasion;
|
|
|
|
/// 방패 방어율 (방패 전용, 0.0 ~ 1.0)
|
|
@override
|
|
@JsonKey()
|
|
final double blockRate;
|
|
|
|
/// 무기 쳐내기 확률 (무기 전용, 0.0 ~ 1.0)
|
|
@override
|
|
@JsonKey()
|
|
final double parryRate;
|
|
|
|
/// HP 보너스
|
|
@override
|
|
@JsonKey()
|
|
final int hpBonus;
|
|
|
|
/// MP 보너스
|
|
@override
|
|
@JsonKey()
|
|
final int mpBonus;
|
|
|
|
/// STR 보너스
|
|
@override
|
|
@JsonKey()
|
|
final int strBonus;
|
|
|
|
/// CON 보너스
|
|
@override
|
|
@JsonKey()
|
|
final int conBonus;
|
|
|
|
/// DEX 보너스
|
|
@override
|
|
@JsonKey()
|
|
final int dexBonus;
|
|
|
|
/// INT 보너스
|
|
@override
|
|
@JsonKey()
|
|
final int intBonus;
|
|
|
|
/// WIS 보너스
|
|
@override
|
|
@JsonKey()
|
|
final int wisBonus;
|
|
|
|
/// CHA 보너스
|
|
@override
|
|
@JsonKey()
|
|
final int chaBonus;
|
|
|
|
/// 무기 공격속도 (밀리초, 무기 전용)
|
|
///
|
|
/// 0이면 기본값(1000ms) 사용, 값이 클수록 느린 공격.
|
|
/// 느린 무기는 높은 기본 데미지를 가짐.
|
|
@override
|
|
@JsonKey()
|
|
final int attackSpeed;
|
|
|
|
@override
|
|
String toString() {
|
|
return 'ItemStats(atk: $atk, def: $def, magAtk: $magAtk, magDef: $magDef, criRate: $criRate, evasion: $evasion, blockRate: $blockRate, parryRate: $parryRate, hpBonus: $hpBonus, mpBonus: $mpBonus, strBonus: $strBonus, conBonus: $conBonus, dexBonus: $dexBonus, intBonus: $intBonus, wisBonus: $wisBonus, chaBonus: $chaBonus, attackSpeed: $attackSpeed)';
|
|
}
|
|
|
|
@override
|
|
bool operator ==(Object other) {
|
|
return identical(this, other) ||
|
|
(other.runtimeType == runtimeType &&
|
|
other is _$ItemStatsImpl &&
|
|
(identical(other.atk, atk) || other.atk == atk) &&
|
|
(identical(other.def, def) || other.def == def) &&
|
|
(identical(other.magAtk, magAtk) || other.magAtk == magAtk) &&
|
|
(identical(other.magDef, magDef) || other.magDef == magDef) &&
|
|
(identical(other.criRate, criRate) || other.criRate == criRate) &&
|
|
(identical(other.evasion, evasion) || other.evasion == evasion) &&
|
|
(identical(other.blockRate, blockRate) ||
|
|
other.blockRate == blockRate) &&
|
|
(identical(other.parryRate, parryRate) ||
|
|
other.parryRate == parryRate) &&
|
|
(identical(other.hpBonus, hpBonus) || other.hpBonus == hpBonus) &&
|
|
(identical(other.mpBonus, mpBonus) || other.mpBonus == mpBonus) &&
|
|
(identical(other.strBonus, strBonus) ||
|
|
other.strBonus == strBonus) &&
|
|
(identical(other.conBonus, conBonus) ||
|
|
other.conBonus == conBonus) &&
|
|
(identical(other.dexBonus, dexBonus) ||
|
|
other.dexBonus == dexBonus) &&
|
|
(identical(other.intBonus, intBonus) ||
|
|
other.intBonus == intBonus) &&
|
|
(identical(other.wisBonus, wisBonus) ||
|
|
other.wisBonus == wisBonus) &&
|
|
(identical(other.chaBonus, chaBonus) ||
|
|
other.chaBonus == chaBonus) &&
|
|
(identical(other.attackSpeed, attackSpeed) ||
|
|
other.attackSpeed == attackSpeed));
|
|
}
|
|
|
|
@JsonKey(includeFromJson: false, includeToJson: false)
|
|
@override
|
|
int get hashCode => Object.hash(
|
|
runtimeType,
|
|
atk,
|
|
def,
|
|
magAtk,
|
|
magDef,
|
|
criRate,
|
|
evasion,
|
|
blockRate,
|
|
parryRate,
|
|
hpBonus,
|
|
mpBonus,
|
|
strBonus,
|
|
conBonus,
|
|
dexBonus,
|
|
intBonus,
|
|
wisBonus,
|
|
chaBonus,
|
|
attackSpeed,
|
|
);
|
|
|
|
/// Create a copy of ItemStats
|
|
/// with the given fields replaced by the non-null parameter values.
|
|
@JsonKey(includeFromJson: false, includeToJson: false)
|
|
@override
|
|
@pragma('vm:prefer-inline')
|
|
_$$ItemStatsImplCopyWith<_$ItemStatsImpl> get copyWith =>
|
|
__$$ItemStatsImplCopyWithImpl<_$ItemStatsImpl>(this, _$identity);
|
|
|
|
@override
|
|
Map<String, dynamic> toJson() {
|
|
return _$$ItemStatsImplToJson(this);
|
|
}
|
|
}
|
|
|
|
abstract class _ItemStats extends ItemStats {
|
|
const factory _ItemStats({
|
|
final int atk,
|
|
final int def,
|
|
final int magAtk,
|
|
final int magDef,
|
|
final double criRate,
|
|
final double evasion,
|
|
final double blockRate,
|
|
final double parryRate,
|
|
final int hpBonus,
|
|
final int mpBonus,
|
|
final int strBonus,
|
|
final int conBonus,
|
|
final int dexBonus,
|
|
final int intBonus,
|
|
final int wisBonus,
|
|
final int chaBonus,
|
|
final int attackSpeed,
|
|
}) = _$ItemStatsImpl;
|
|
const _ItemStats._() : super._();
|
|
|
|
factory _ItemStats.fromJson(Map<String, dynamic> json) =
|
|
_$ItemStatsImpl.fromJson;
|
|
|
|
/// 물리 공격력 보정
|
|
@override
|
|
int get atk;
|
|
|
|
/// 물리 방어력 보정
|
|
@override
|
|
int get def;
|
|
|
|
/// 마법 공격력 보정
|
|
@override
|
|
int get magAtk;
|
|
|
|
/// 마법 방어력 보정
|
|
@override
|
|
int get magDef;
|
|
|
|
/// 크리티컬 확률 보정 (0.0 ~ 1.0)
|
|
@override
|
|
double get criRate;
|
|
|
|
/// 회피율 보정 (0.0 ~ 1.0)
|
|
@override
|
|
double get evasion;
|
|
|
|
/// 방패 방어율 (방패 전용, 0.0 ~ 1.0)
|
|
@override
|
|
double get blockRate;
|
|
|
|
/// 무기 쳐내기 확률 (무기 전용, 0.0 ~ 1.0)
|
|
@override
|
|
double get parryRate;
|
|
|
|
/// HP 보너스
|
|
@override
|
|
int get hpBonus;
|
|
|
|
/// MP 보너스
|
|
@override
|
|
int get mpBonus;
|
|
|
|
/// STR 보너스
|
|
@override
|
|
int get strBonus;
|
|
|
|
/// CON 보너스
|
|
@override
|
|
int get conBonus;
|
|
|
|
/// DEX 보너스
|
|
@override
|
|
int get dexBonus;
|
|
|
|
/// INT 보너스
|
|
@override
|
|
int get intBonus;
|
|
|
|
/// WIS 보너스
|
|
@override
|
|
int get wisBonus;
|
|
|
|
/// CHA 보너스
|
|
@override
|
|
int get chaBonus;
|
|
|
|
/// 무기 공격속도 (밀리초, 무기 전용)
|
|
///
|
|
/// 0이면 기본값(1000ms) 사용, 값이 클수록 느린 공격.
|
|
/// 느린 무기는 높은 기본 데미지를 가짐.
|
|
@override
|
|
int get attackSpeed;
|
|
|
|
/// Create a copy of ItemStats
|
|
/// with the given fields replaced by the non-null parameter values.
|
|
@override
|
|
@JsonKey(includeFromJson: false, includeToJson: false)
|
|
_$$ItemStatsImplCopyWith<_$ItemStatsImpl> get copyWith =>
|
|
throw _privateConstructorUsedError;
|
|
}
|