コード例 #1
0
        public EnterOrbitTask(GameObject thisGameObject, ShieldEntitySpawner entitySpawner, int shieldLayer) : base(thisGameObject, entitySpawner)
        {
            this.shieldLayer = shieldLayer;

            Vector2 direction = (gameObject.transform.position - entitySpawner.transform.position).normalized;

            currentAngle = direction.GetAngle();
        }
コード例 #2
0
 public ExitOrbitTask(GameObject thisGameObject, ShieldEntitySpawner entitySpawner, Entity prefab) : base(thisGameObject, entitySpawner)
 {
     this.prefab         = prefab;
     this.targetPosition = GetTargetPosition();
 }
コード例 #3
0
 public Task(GameObject gameObject, ShieldEntitySpawner entitySpawner)
 {
     this.gameObject    = gameObject;
     this.entitySpawner = entitySpawner;
 }
コード例 #4
0
    public void ExitOrbit(ShieldEntitySpawner entitySpawner, Entity prefab)
    {
        ExitOrbitTask orbitTask = new ExitOrbitTask(gameObject, entitySpawner, prefab);

        currentTask = orbitTask;
    }
コード例 #5
0
    public void EnterOrbit(ShieldEntitySpawner entitySpawner, int shieldLayer)
    {
        EnterOrbitTask orbitTask = new EnterOrbitTask(gameObject, entitySpawner, shieldLayer);

        currentTask = orbitTask;
    }
コード例 #6
0
 public void Initialize(ShieldEntitySpawner owner, Entity thisEntity)
 {
     this.owner = owner;
     thisEntity.Health.AddOnDeathListener(() => { owner.ElementWasDestroyed(this); });
 }