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.
		
		
		
		
		
			
		
			
	
	
		
			50 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C#
		
	
		
		
			
		
	
	
			50 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C#
		
	
| 
											2 years ago
										 | using Entitas; | ||
|  | using UnityEngine; | ||
|  | 
 | ||
|  | public enum EPointType | ||
|  | { | ||
|  |     Red, | ||
|  |     Blue, | ||
|  | } | ||
|  | public enum EPointState | ||
|  | { | ||
|  |     Create, | ||
|  |     CreateWait, | ||
|  |     Running, | ||
|  |     Destroy, | ||
|  | } | ||
|  | [Game] | ||
|  | public class PointComponent : IComponent | ||
|  | { | ||
|  |     public EPointState State; | ||
|  |     public EPointType PointType; | ||
|  |     public Vector3 CastSpeed; | ||
|  |     public float TimeLeft; | ||
|  | } | ||
|  | namespace Game | ||
|  | { | ||
|  |     public abstract partial class Util | ||
|  |     { | ||
|  |         public static void ClearPoint(GameEntity entity) | ||
|  |         { | ||
|  |             var point = entity.point; | ||
|  |             point.State = EPointState.Create; | ||
|  |         } | ||
|  |         public static void CreatePt(Vector3 pos, Vector3 direction) | ||
|  |         { | ||
|  |             pos = new Vector3(pos.x, 0, pos.z); | ||
|  |             var count = GameRandom.Randint(1, 4); | ||
|  |             for (int i = 0; i < count; i++) | ||
|  |             { | ||
|  |                 var pointPos = pos + GameRandom.RandomVector3(-0.4f, 0.4f); | ||
|  |                 var dir = pointPos - pos + direction; | ||
|  |                 var cfgId = GameRandom.Roll(0.7f) ? GameConst.PtRedId : GameConst.PtBlueId; | ||
|  |                 Util.CreateEntity(cfgId, (entity) => | ||
|  |                 { | ||
|  |                     entity.point.CastSpeed = dir; | ||
|  |                     Util.SetEntityPos(entity, pointPos); | ||
|  |                 }); | ||
|  |             } | ||
|  |         } | ||
|  |     } | ||
|  | } |