| 
									
										
										
										
											2020-03-12 17:22:48 +01:00
										 |  |  | import 'package:aidedejeu_flutter/models/items.dart'; | 
					
						
							|  |  |  | import 'package:equatable/equatable.dart'; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class PlayerCharacterState extends Equatable { | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   final RaceItem race; | 
					
						
							|  |  |  |   final SubRaceItem subRace; | 
					
						
							|  |  |  |   final List<RaceItem> races; | 
					
						
							|  |  |  |   final List<SubRaceItem> subRaces; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-05-16 13:12:24 +02:00
										 |  |  |   final OriginItem origin; | 
					
						
							|  |  |  |   final List<OriginItem> origins; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-03-12 17:22:48 +01:00
										 |  |  |   final BackgroundItem background; | 
					
						
							|  |  |  |   final SubBackgroundItem subBackground; | 
					
						
							|  |  |  |   final List<BackgroundItem> backgrounds; | 
					
						
							|  |  |  |   final List<SubBackgroundItem> subBackgrounds; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   PlayerCharacterState({ | 
					
						
							|  |  |  |     this.race, | 
					
						
							|  |  |  |     this.races, | 
					
						
							|  |  |  |     this.subRace, | 
					
						
							|  |  |  |     this.subRaces, | 
					
						
							| 
									
										
										
										
											2020-05-16 13:12:24 +02:00
										 |  |  |     this.origin, | 
					
						
							|  |  |  |     this.origins, | 
					
						
							| 
									
										
										
										
											2020-03-12 17:22:48 +01:00
										 |  |  |     this.background, | 
					
						
							|  |  |  |     this.backgrounds, | 
					
						
							|  |  |  |     this.subBackground, | 
					
						
							|  |  |  |     this.subBackgrounds, | 
					
						
							|  |  |  |   }); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   PlayerCharacterState copyWith({ | 
					
						
							|  |  |  |     RaceItem race, | 
					
						
							|  |  |  |     List<RaceItem> races, | 
					
						
							|  |  |  |     SubRaceItem subRace, | 
					
						
							|  |  |  |     List<SubRaceItem> subRaces, | 
					
						
							| 
									
										
										
										
											2020-05-16 13:12:24 +02:00
										 |  |  |     OriginItem origin, | 
					
						
							|  |  |  |     List<OriginItem> origins, | 
					
						
							| 
									
										
										
										
											2020-03-12 17:22:48 +01:00
										 |  |  |     BackgroundItem background, | 
					
						
							|  |  |  |     List<BackgroundItem> backgrounds, | 
					
						
							|  |  |  |     SubBackgroundItem subBackground, | 
					
						
							|  |  |  |     List<SubBackgroundItem> subBackgrounds, | 
					
						
							|  |  |  |   }) { | 
					
						
							|  |  |  |     return PlayerCharacterState( | 
					
						
							|  |  |  |       race: race ?? this.race, | 
					
						
							|  |  |  |       races: races ?? this.races, | 
					
						
							|  |  |  |       subRace: subRace ?? this.subRace, | 
					
						
							|  |  |  |       subRaces: subRaces ?? this.subRaces, | 
					
						
							| 
									
										
										
										
											2020-05-16 13:12:24 +02:00
										 |  |  |       origin: origin ?? this.origin, | 
					
						
							|  |  |  |       origins: origins ?? this.origins, | 
					
						
							| 
									
										
										
										
											2020-03-12 17:22:48 +01:00
										 |  |  |       background: background ?? this.background, | 
					
						
							|  |  |  |       backgrounds: backgrounds ?? this.backgrounds, | 
					
						
							|  |  |  |       subBackground: subBackground ?? this.subBackground, | 
					
						
							|  |  |  |       subBackgrounds: subBackgrounds ?? this.subBackgrounds, | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   PlayerCharacterState copyWithClean({ | 
					
						
							|  |  |  |     RaceItem race, | 
					
						
							|  |  |  |     List<RaceItem> races, | 
					
						
							|  |  |  |     SubRaceItem subRace, | 
					
						
							|  |  |  |     List<SubRaceItem> subRaces, | 
					
						
							| 
									
										
										
										
											2020-05-16 13:12:24 +02:00
										 |  |  |     OriginItem origin, | 
					
						
							|  |  |  |     List<OriginItem> origins, | 
					
						
							| 
									
										
										
										
											2020-03-12 17:22:48 +01:00
										 |  |  |     BackgroundItem background, | 
					
						
							|  |  |  |     List<BackgroundItem> backgrounds, | 
					
						
							|  |  |  |     SubBackgroundItem subBackground, | 
					
						
							|  |  |  |     List<SubBackgroundItem> subBackgrounds, | 
					
						
							|  |  |  |   }) { | 
					
						
							|  |  |  |     return PlayerCharacterState( | 
					
						
							|  |  |  |       race: race ?? this.race, | 
					
						
							|  |  |  |       races: races ?? this.races, | 
					
						
							|  |  |  |       subRace: race != null ? null : subRace ?? this.subRace, | 
					
						
							|  |  |  |       subRaces: race != null ? subRaces : subRaces ?? this.subRaces, | 
					
						
							| 
									
										
										
										
											2020-05-16 13:12:24 +02:00
										 |  |  |       origin: origin ?? this.origin, | 
					
						
							|  |  |  |       origins: origins ?? this.origins, | 
					
						
							| 
									
										
										
										
											2020-03-12 17:22:48 +01:00
										 |  |  |       background: background ?? this.background, | 
					
						
							|  |  |  |       backgrounds: backgrounds ?? this.backgrounds, | 
					
						
							|  |  |  |       subBackground: background != null ? null : subBackground ?? this.subBackground, | 
					
						
							|  |  |  |       subBackgrounds: background != null ? subBackgrounds : subBackgrounds ?? this.subBackgrounds, | 
					
						
							|  |  |  |     ); | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   @override | 
					
						
							|  |  |  |   List<Object> get props => [ | 
					
						
							|  |  |  |     race, | 
					
						
							|  |  |  |     subRace, | 
					
						
							|  |  |  |     races, | 
					
						
							|  |  |  |     subRaces, | 
					
						
							| 
									
										
										
										
											2020-05-16 13:12:24 +02:00
										 |  |  |     origin, | 
					
						
							|  |  |  |     origins, | 
					
						
							| 
									
										
										
										
											2020-03-12 17:22:48 +01:00
										 |  |  |     background, | 
					
						
							|  |  |  |     subBackground, | 
					
						
							|  |  |  |     backgrounds, | 
					
						
							|  |  |  |     subBackgrounds | 
					
						
							|  |  |  |   ]; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 |