You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
	
	
		
			82 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			C#
		
	
		
		
			
		
	
	
			82 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			C#
		
	
| 
											2 years ago
										 | using Articy.Touhou.Features; | ||
|  | using Articy.Unity; | ||
|  | using UnityEngine.Serialization; | ||
|  | 
 | ||
|  | namespace Game | ||
|  | { | ||
|  |     public enum EDoorType | ||
|  |     { | ||
|  |         LT, | ||
|  |         Lm, | ||
|  |         Ld, | ||
|  |         RT, | ||
|  |         Rm, | ||
|  |         Rd, | ||
|  |         TL, | ||
|  |         TM, | ||
|  |         TR, | ||
|  |         DL, | ||
|  |         Dm, | ||
|  |         Dr, | ||
|  |     } | ||
|  |     public class LevelNodeDoor : LevelNode | ||
|  |     { | ||
|  |         [FormerlySerializedAs("m_DoorType")] public EDoorType mDoorType; | ||
|  |         private string _mTargetLevelId; | ||
|  |         public void SetTargetLevel(LevelFeature levelFeature) | ||
|  |         { | ||
|  |             switch (mDoorType) | ||
|  |             { | ||
|  |                 case EDoorType.LT: | ||
|  |                     _mTargetLevelId = GetName(levelFeature.LevelLink_LT); | ||
|  |                     break; | ||
|  |                 case EDoorType.Lm: | ||
|  |                     _mTargetLevelId = GetName(levelFeature.LevelLink_LM); | ||
|  |                     break; | ||
|  |                 case EDoorType.Ld: | ||
|  |                     _mTargetLevelId = GetName(levelFeature.LevelLink_LD); | ||
|  |                     break; | ||
|  |                 case EDoorType.RT: | ||
|  |                     _mTargetLevelId = GetName(levelFeature.LevelLink_RT); | ||
|  |                     break; | ||
|  |                 case EDoorType.Rm: | ||
|  |                     _mTargetLevelId = GetName(levelFeature.LevelLink_RM); | ||
|  |                     break; | ||
|  |                 case EDoorType.Rd: | ||
|  |                     _mTargetLevelId = GetName(levelFeature.LevelLink_RD); | ||
|  |                     break; | ||
|  |                 case EDoorType.TL: | ||
|  |                     _mTargetLevelId = GetName(levelFeature.LevelLink_TL); | ||
|  |                     break; | ||
|  |                 case EDoorType.TM: | ||
|  |                     _mTargetLevelId = GetName(levelFeature.LevelLink_TM); | ||
|  |                     break; | ||
|  |                 case EDoorType.TR: | ||
|  |                     _mTargetLevelId = GetName(levelFeature.LevelLink_TR); | ||
|  |                     break; | ||
|  |                 case EDoorType.DL: | ||
|  |                     _mTargetLevelId = GetName(levelFeature.LevelLink_DL); | ||
|  |                     break; | ||
|  |                 case EDoorType.Dm: | ||
|  |                     _mTargetLevelId = GetName(levelFeature.LevelLink_DM); | ||
|  |                     break; | ||
|  |                 case EDoorType.Dr: | ||
|  |                     _mTargetLevelId = GetName(levelFeature.LevelLink_DR); | ||
|  |                     break; | ||
|  |             } | ||
|  |             SetTargetId(_mTargetLevelId); | ||
|  |         } | ||
|  |         public bool IsFromPreLevel(string preLevelId) | ||
|  |         { | ||
|  |             return _mTargetLevelId == preLevelId; | ||
|  |         } | ||
|  |         private string GetName(ArticyObject obj) | ||
|  |         { | ||
|  |             if (obj == null) | ||
|  |             { | ||
|  |                 return ""; | ||
|  |             } | ||
|  |             return obj.TechnicalName; | ||
|  |         } | ||
|  |     } | ||
|  | } |