Exemplo n.º 1
0
 /// <summary>
 /// Full process of getting hit.
 /// </summary>
 /// <param name="hitDamage"></param>
 /// <param name="knockBack"></param>
 /// <param name="hit"></param>
 /// <returns></returns>
 public IEnumerator receiveHit(float hitDamage, float knockBack, Hitter hit)
 {
     hitEffect();
     rbd.gravityScale = gravityAmount;
     if (attackEffect)
     {
         Destroy(attackEffect);
     }
     state = Utilities.state.Hit;
     if (!(hit is Item))
     {
         if (hitlag != null)
         {
             StopCoroutine(hitlag);
         }
         yield return(hitlag = StartCoroutine(hitLag(hitDamage, true)));
     }
     if (hitstun != null)
     {
         StopCoroutine(hitstun);
     }
     hit.knockBackEntity(this, knockBack);
     hitstun = StartCoroutine(hitStun(knockBack));
     yield return(0);
 }
        public void Handle(PlayerYearAdded theEvent)
        {
            //add this to Solr
            var hitter = new Hitter()
            {
                Average      = theEvent.Average,
                Doubles      = theEvent.Doubles,
                FirstName    = theEvent.FirstName,
                Hits         = theEvent.Hits,
                HomeRuns     = theEvent.HomeRuns,
                Id           = String.Format("{0}_{1}", theEvent.Id.ToString(), theEvent.Year.ToString()),
                LahmanId     = theEvent.Id,
                LastName     = theEvent.LastName,
                PlayerId     = theEvent.PlayerId,
                RunsBattedIn = theEvent.RunsBattedIn,
                Salary       = theEvent.Salary,
                StrikeOuts   = theEvent.StrikeOuts,
                TeamName     = theEvent.Team,
                Triples      = theEvent.Triples,
                Year         = theEvent.Year
            };
            var search = SearchFactory.GetSearchService();

            search.AddHitter(hitter);
        }
Exemplo n.º 3
0
    public override void Init(Enemy enemy)
    {
        Mover m = enemy as Mover;

        if (m != null)
        {
            speed = m.AngularSpeed;
        }

        if (Collider)
        {
            Hitter h = enemy as Hitter;
            if (h != null)
            {
                h.OnHit += () => { hit = true; }
            }
            ;
        }
        else
        {
            Trigger trg = enemy as Trigger;
            if (trg != null)
            {
                trg.OnTrigger += () => { trg.Sound.PlayOneShot("Hit"); hit = true; trg.Animator.SetTrigger("Hit"); trg.Entered = false; }
            }
            ;
        }

        rb = enemy.Rb;
    }
Exemplo n.º 4
0
    public override void Init(Enemy enemy)
    {
        if (Collider)
        {
            Hitter h = enemy as Hitter;
            if (h != null)
            {
                h.OnHit += () => { Other = h.Hitted; }
            }
            ;
        }
        else
        {
            Trigger t = enemy as Trigger;
            if (t != null)
            {
                t.OnTrigger += () => { Other = t.Triggered;  t.Animator.SetTrigger("Hit"); t.Entered = false; }
            }
            ;
        }

        Enemy = enemy;
        s     = Enemy.Sound;
        tr    = Enemy.Tr;
    }
Exemplo n.º 5
0
    public override void Init(Enemy enemy)
    {
        if (enemy is Patroller)
        {
            p       = enemy as Patroller;
            points  = p.Positions;
            p.Index = 0;
            data    = p.MoveData;
            p.Hit   = false;
        }

        if (Collider)
        {
            Hitter h = enemy as Hitter;
            if (h != null)
            {
                h.OnHit += () => { Hit(); }
            }
            ;
        }
        else
        {
            Trigger trg = enemy as Trigger;
            if (trg != null)
            {
                trg.OnTrigger += () => { Hit(); trg.Animator.SetTrigger("Hit"); trg.Entered = false; }
            }
            ;
        }

        rb = enemy.Rb;
        tr = enemy.Tr;
    }
Exemplo n.º 6
0
 void onHit(Hitter hitter)
 {
     if (mainMovementState != null && mainMovementState is NPCState)
     {
         NPCState npcState = (NPCState)mainMovementState;
         npcState.OnHit(hitter);
     }
 }
Exemplo n.º 7
0
 public override void Init(Enemy enemy)
 {
     tr = enemy.transform;
     s  = enemy.Sound;
     if (enemy is Hitter)
     {
         h = enemy as Hitter;
     }
 }
Exemplo n.º 8
0
    private void OnCollisionExit(Collision collision)
    {
        Hitter hitter = collision.transform.gameObject.GetComponent <Hitter>();

        if (hitter != null)
        {
            OnHitterExit?.Invoke(hitter);
        }
    }
Exemplo n.º 9
0
    void OnParticleCollision(GameObject other)
    {
        Hitter hitter = other.GetComponent <Hitter>();

        if (hitter != null)
        {
            OnHitterEnter?.Invoke(hitter);
        }
    }
Exemplo n.º 10
0
        public void TakeHit(Hitter hitter)
        {
            m_EnemyTarget = hitter.gameObject;
            Knockback(hitter.HitDirection, hitter.HitPower);
            m_DazeTimer = m_HitDazeTime;
            m_TimeSinceLastTargetView = m_LostTargetTime;

            CharacterAnimator.SetTrigger("Flick");
            CharacterAnimator.SetBool("TargetSpotted", IsEnemyTargetSpotted());
        }
        public IHttpActionResult GetHitter(int id)
        {
            Hitter hitter = db.Hitters.Find(id);

            if (hitter == null)
            {
                return(NotFound());
            }

            return(Ok(Mapper.Map <HitterModel>(hitter)));
        }
Exemplo n.º 12
0
    internal void OnHit(Hitter hitter)
    {
        Hit.Invoke();
        var dmg    = hitter.GetComponent <Damage>();
        var health = GetComponent <Health>();

        if (dmg != null && health != null)
        {
            health.Damage(dmg.damage);
        }
    }
Exemplo n.º 13
0
 void OnCollisionEnter(Collision collision)
 {
     Collider[] colliders = Physics.OverlapSphere(transform.position, explosionRadius);
     foreach (var collider in colliders)
     {
         if (Shooter.IsTargetWithRigidBody(collider))
         {
             collider.gameObject.rigidbody.AddExplosionForce(explostionForce, transform.position, explosionRadius, upwardsForce, ForceMode.Impulse);
             var damageRatio = Mathf.Max(0, explosionRadius - Vector3.Distance(transform.position, collider.gameObject.transform.position)) / explosionRadius;
             Hitter.HitGameObject(collider.gameObject, (int)(maxDamage * damageRatio));
         }
     }
     GameObject.Destroy(gameObject);
 }
Exemplo n.º 14
0
    void onHitterEnter(Hitter hitter)
    {
        if (hitter.HitterType == HitterType.PROJECTILE)
        {
            if (!IsGrounded)
            {
                Vector3 velocity = this.Velocity;
                velocity.y = 5.5f;
                SetVelocity(velocity);
            }

            onHit(hitter);
        }
    }
        public IHttpActionResult DeleteHitter(int id)
        {
            Hitter hitter = db.Hitters.Find(id);

            if (hitter == null)
            {
                return(NotFound());
            }

            db.Hitters.Remove(hitter);
            db.SaveChanges();

            return(Ok(Mapper.Map <HitterModel>(hitter)));
        }
Exemplo n.º 16
0
        public void TakeHit(Hitter hitter)
        {
            if (m_InvincibleTimer > 0f && !hitter.IgnoreInvincible)
            {
                return;
            }

            m_InvincibleTimer = Player.InvincibleTime;
            Knockback(hitter.HitDirection, hitter.HitPower);

            if (!IsInvoking("FlashSprite"))
            {
                InvokeRepeating("FlashSprite", 0f, m_FlashRepeatTime);
            }
        }
        public IHttpActionResult PostHitter(HitterModel hitter)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var dbHitter = new Hitter(hitter);

            db.Hitters.Add(dbHitter);
            db.SaveChanges();

            hitter.HitterId = dbHitter.HitterId;

            return(CreatedAtRoute("DefaultApi", new { id = hitter.HitterId }, hitter));
        }
        // PUT api/hitters/5
        public void Put(int id, [FromBody] Hitter hitter)
        {
            var hitterInDb = context.Hitters.Where(p => p.Id == id).SingleOrDefault();

            hitterInDb.AtBats         = hitter.AtBats;
            hitterInDb.BattingAverage = hitter.BattingAverage;
            hitterInDb.FirstName      = hitter.FirstName;
            hitterInDb.LastName       = hitter.LastName;
            hitterInDb.Position       = hitter.Position;
            hitterInDb.Runs           = hitter.Runs;
            hitterInDb.RunsBattedIn   = hitter.RunsBattedIn;
            hitterInDb.HomeRuns       = hitter.HomeRuns;
            hitterInDb.Games          = hitter.Games;

            context.SaveChanges();
        }
Exemplo n.º 19
0
    public override void OnHit(Hitter hitter)
    {
        Vector3 forward      = Parent.transform.forward;
        Vector3 hitDirection = Parent.transform.position - hitter.transform.position;

        hitDirection.Normalize();
        float d = Vector3.Dot(forward, hitDirection);

        if (d >= 0)
        {
            NPCController.Animator.SetTrigger("HitFront");
        }
        else
        {
            NPCController.Animator.SetTrigger("HitBack");
        }
    }
Exemplo n.º 20
0
    public override void Init(Enemy enemy)
    {
        rb = enemy.Rb;

        GravitySetter gr = enemy as GravitySetter;
        if (gr!=null) fallMul = gr.FallMultiplier;

        if (enemy is Trigger)
        {
            trg = enemy as Trigger;
            trg.OnTrigger += () => { Fall(trg.Animator); };
            trg.OnPlayerDeath += () => { PosCheck(); };
        }

        Hitter h = enemy as Hitter;
        if (h!=null) h.OnHit += () => { h.Animator.SetBool("PosReached", false); rb.gravityScale = 0f; };
    }    
Exemplo n.º 21
0
    public void Load()
    {
        if (load == null)
        {
            load = (GameObject)Instantiate(ball, transform.position, transform.rotation);
            load.SetActive(true);

            CircleCollider2D collider = load.GetComponent <CircleCollider2D>();
            if (collider != null)
            {
                collider.enabled = false;
            }

            Hitter hitter = load.GetComponent <Hitter>();
            if (hitter != null)
            {
                hitter.parent = gameObject;
            }
        }
    }
Exemplo n.º 22
0
    private void OnTriggerExit(Collider other)
    {
        Hitter hitter = other.transform.gameObject.GetComponent <Hitter>();

        if (hitter != null)
        {
            OnHitterExit?.Invoke(hitter);

            if (hitter is ActivatableHitter)
            {
                ActivatableHitter activatableHitter = (ActivatableHitter)hitter;

                if (registeredHitters.Contains(activatableHitter))
                {
                    activatableHitter.OnActivate -= onHitterActivated;
                    int index = registeredHitters.IndexOf(activatableHitter);
                    registeredHitters.RemoveAt(index);
                }
            }
        }
    }
Exemplo n.º 23
0
    public void Load()
    {
        if (nextBubble == null)
        {
            nextBubble = (GameObject)Instantiate(Bubble_shootball, transform.position, transform.rotation);
            nextBubble.SetActive(true);
            gotemp = nextBubble;

            CircleCollider2D collider = nextBubble.GetComponent <CircleCollider2D>();
            if (collider != null)
            {
                collider.enabled = false;
            }

            Hitter hitter = nextBubble.GetComponent <Hitter>();

            if (hitter != null)
            {
                hitter.parent = gameObject;
            }
        }
    }
Exemplo n.º 24
0
    public override void Init(Enemy enemy)
    {
        if (Collider)
        {
            Hitter h = enemy as Hitter;
            if (h != null)
            {
                h.OnHit += () => { other = h.Hitted; }
            }
            ;
        }
        else
        {
            Trigger t = enemy as Trigger;
            if (t != null)
            {
                t.OnTrigger += () => { other = t.Triggered; t.Entered = false; }
            }
            ;
        }

        s = enemy.Sound;
    }
Exemplo n.º 25
0
    private void OnTriggerEnter(Collider other)
    {
        Hitter hitter = other.transform.gameObject.GetComponent <Hitter>();

        if (hitter != null && hitter.gameObject.activeInHierarchy)
        {
            OnHitterEnter?.Invoke(hitter);

            if (hitter.GetType() == typeof(ActivatableHitter))
            {
                ActivatableHitter activatableHitter = (ActivatableHitter)hitter;

                if (activatableHitter.IsActive)
                {
                    onHitterActivated(activatableHitter, activatableHitter.LastParameters);
                }
                else if (!registeredHitters.Contains(activatableHitter))
                {
                    activatableHitter.OnActivate += onHitterActivated;
                    registeredHitters.Add(activatableHitter);
                }
            }
        }
    }
Exemplo n.º 26
0
 internal void DoDeflect(Hitter hitter)
 {
     Deflected.Invoke();
 }
Exemplo n.º 27
0
 public void ContactHit(Hitter hitter)
 {
     m_EnemyTarget             = hitter.GetHitColliderList()[0].gameObject;
     m_TimeSinceLastTargetView = m_LostTargetTime;
     CharacterAnimator.SetBool("TargetSpotted", IsEnemyTargetSpotted());
 }
Exemplo n.º 28
0
 public void AttackHit(Hitter hitter)
 {
     m_EnemyTarget = hitter.GetHitColliderList()[0].gameObject;
 }
Exemplo n.º 29
0
 public virtual void OnHit(Hitter hitter)
 {
 }
 // POST api/hitters
 public void Post([FromBody] Hitter hitter)
 {
     context.Hitters.Add(hitter);
     context.SaveChanges();
 }