init monster code
This commit is contained in:
		
							parent
							
								
									3b9f6dc087
								
							
						
					
					
						commit
						7e617fe956
					
				| @ -3,3 +3,4 @@ pub mod location; | ||||
| pub mod character; | ||||
| pub mod room; | ||||
| pub mod items; | ||||
| pub mod monster; | ||||
|  | ||||
							
								
								
									
										48
									
								
								src/ship/monster.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								src/ship/monster.rs
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,48 @@ | ||||
| use std::convert::TryFrom; | ||||
| 
 | ||||
| 
 | ||||
| #[derive(Debug)] | ||||
| pub enum MonsterParseError { | ||||
|     UnknownMonster(String), | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| #[derive(Debug, Copy, Clone)] | ||||
| pub enum MonsterType { | ||||
|     Booma, | ||||
|     Gobooma, | ||||
|     Gigobooma, | ||||
|     RagRappy, | ||||
|     AlRappy, | ||||
|     BarbarousWolf, | ||||
|     SavageWolf, | ||||
|     Hildebear, | ||||
|     Hildeblue, | ||||
|     Monest, | ||||
|     Mothmant, | ||||
| 
 | ||||
|     EvilShark, | ||||
|     PalShark, | ||||
|     GuilShark, | ||||
|     // etc...
 | ||||
|     
 | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| impl TryFrom<&str> for MonsterType { | ||||
|     type Error = MonsterParseError; | ||||
| 
 | ||||
|     fn try_from(monster: &str) -> Result<MonsterType, MonsterParseError> { | ||||
|         match monster { | ||||
|             "Booma" | "Bartle" => Ok(MonsterType::Booma), | ||||
|             "Gobooma" | "Barble" => Ok(MonsterType::Gobooma), | ||||
|             "Gigobooma" | "Tollaw" => Ok(MonsterType::Gigobooma), | ||||
|             // etc...
 | ||||
|             _ => Err(MonsterParseError::UnknownMonster(monster.to_owned())) | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|     
 | ||||
| } | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user