lint src/ship/drops/*
This commit is contained in:
		
							parent
							
								
									4306830092
								
							
						
					
					
						commit
						b589486472
					
				| @ -170,7 +170,7 @@ impl BoxDropTable { | |||||||
|                 else { |                 else { | ||||||
|                     None |                     None | ||||||
|                 } |                 } | ||||||
|             }).nth(0) |             }).next() | ||||||
|     } |     } | ||||||
|     
 |     
 | ||||||
|     fn random_box_drop<R: Rng>(&self, map_area: &MapArea, rng: &mut R) -> Option<ItemDropType> { |     fn random_box_drop<R: Rng>(&self, map_area: &MapArea, rng: &mut R) -> Option<ItemDropType> { | ||||||
|  | |||||||
| @ -266,30 +266,24 @@ impl AttributeTable { | |||||||
|     fn attributes<R: Rng>(&self, percent_pattern: &AttributePercentPattern, attribute_rate: &AttributeRate, rng: &mut R) -> [Option<WeaponAttribute>; 3] { |     fn attributes<R: Rng>(&self, percent_pattern: &AttributePercentPattern, attribute_rate: &AttributeRate, rng: &mut R) -> [Option<WeaponAttribute>; 3] { | ||||||
|         let mut percents = vec![ |         let mut percents = vec![ | ||||||
|             percent_pattern.attribute1.and_then(|pattern_type| { |             percent_pattern.attribute1.and_then(|pattern_type| { | ||||||
|                 self.generate_attribute(&pattern_type, &attribute_rate, rng) |                 self.generate_attribute(&pattern_type, attribute_rate, rng) | ||||||
|             }), |             }), | ||||||
|             percent_pattern.attribute2.and_then(|pattern_type| { |             percent_pattern.attribute2.and_then(|pattern_type| { | ||||||
|                 self.generate_attribute(&pattern_type, &attribute_rate, rng) |                 self.generate_attribute(&pattern_type, attribute_rate, rng) | ||||||
|             }), |             }), | ||||||
|             percent_pattern.attribute3.and_then(|pattern_type| { |             percent_pattern.attribute3.and_then(|pattern_type| { | ||||||
|                 self.generate_attribute(&pattern_type, &attribute_rate, rng) |                 self.generate_attribute(&pattern_type, attribute_rate, rng) | ||||||
|             }), |             }), | ||||||
|         ]; |         ]; | ||||||
|         percents.sort_by_key(|p| { |         percents.sort_by_key(|p| { | ||||||
|             match p { |             p.as_ref().map(|a| a.attr) | ||||||
|                 Some(a) => Some(a.attr), |  | ||||||
|                 None => None, |  | ||||||
|             } |  | ||||||
|         }); |         }); | ||||||
|         percents.dedup_by_key(|p| { |         percents.dedup_by_key(|p| { | ||||||
|             match p { |             p.as_ref().map(|a| a.attr) | ||||||
|                 Some(a) => Some(a.attr), |  | ||||||
|                 None => None, |  | ||||||
|             } |  | ||||||
|         }); |         }); | ||||||
|         percents.iter() |         percents.iter() | ||||||
|             .fold(([None; 3], 0), |(mut acc, index), p| { // one day I'll be able to collece into an array
 |             .fold(([None; 3], 0), |(mut acc, index), p| { // one day I'll be able to collece into an array
 | ||||||
|                 if let Some(_) = p { |                 if  p.is_some() { | ||||||
|                     acc[index] = *p; |                     acc[index] = *p; | ||||||
|                     (acc, index + 1) |                     (acc, index + 1) | ||||||
|                 } |                 } | ||||||
|  | |||||||
| @ -152,7 +152,7 @@ impl<R: Rng + SeedableRng> DropTable<R> { | |||||||
|             return None; |             return None; | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|         if let Some(item) = self.rare_table.get_drop(map_area, &monster, &mut self.rng) { |         if let Some(item) = self.rare_table.get_drop(map_area, monster, &mut self.rng) { | ||||||
|             return Some(item); |             return Some(item); | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -30,19 +30,18 @@ pub enum RareDropItem { | |||||||
| impl RareDropItem { | impl RareDropItem { | ||||||
|     pub fn from_string(name: String) -> RareDropItem { |     pub fn from_string(name: String) -> RareDropItem { | ||||||
|         let parse_funcs: [Box<dyn Fn(&String) -> Option<RareDropItem>>; 6] = [ |         let parse_funcs: [Box<dyn Fn(&String) -> Option<RareDropItem>>; 6] = [ | ||||||
|             Box::new(|i| Some(RareDropItem::Weapon(str::parse::<WeaponType>(&i).ok()?))), |             Box::new(|i| Some(RareDropItem::Weapon(str::parse::<WeaponType>(i).ok()?))), | ||||||
|             Box::new(|i| Some(RareDropItem::Armor(str::parse::<ArmorType>(&i).ok()?))), |             Box::new(|i| Some(RareDropItem::Armor(str::parse::<ArmorType>(i).ok()?))), | ||||||
|             Box::new(|i| Some(RareDropItem::Shield(str::parse::<ShieldType>(&i).ok()?))), |             Box::new(|i| Some(RareDropItem::Shield(str::parse::<ShieldType>(i).ok()?))), | ||||||
|             Box::new(|i| Some(RareDropItem::Unit(str::parse::<UnitType>(&i).ok()?))), |             Box::new(|i| Some(RareDropItem::Unit(str::parse::<UnitType>(i).ok()?))), | ||||||
|             Box::new(|i| Some(RareDropItem::Tool(str::parse::<ToolType>(&i).ok()?))), |             Box::new(|i| Some(RareDropItem::Tool(str::parse::<ToolType>(i).ok()?))), | ||||||
|             Box::new(|i| Some(RareDropItem::Mag(str::parse::<MagType>(&i).ok()?))), |             Box::new(|i| Some(RareDropItem::Mag(str::parse::<MagType>(i).ok()?))), | ||||||
|         ]; |         ]; | ||||||
| 
 | 
 | ||||||
|         for parse in parse_funcs.iter() { |         for parse in parse_funcs.iter() { | ||||||
|             match parse(&name) { |            if let Some (k) = parse(&name) { | ||||||
|                 Some(k) => return k, |                 return k | ||||||
|                 None => {}, |            } | ||||||
|             } |  | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|         panic!() |         panic!() | ||||||
| @ -151,7 +150,7 @@ impl RareDropTable { | |||||||
|                         else { |                         else { | ||||||
|                             None |                             None | ||||||
|                         } |                         } | ||||||
|                     }).nth(0) |                     }).next() | ||||||
|             }) |             }) | ||||||
|     } |     } | ||||||
| } | } | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user