当前位置: 首页>>代码示例>>C#>>正文


C# Entity.HitLanded方法代码示例

本文整理汇总了C#中Entity.HitLanded方法的典型用法代码示例。如果您正苦于以下问题:C# Entity.HitLanded方法的具体用法?C# Entity.HitLanded怎么用?C# Entity.HitLanded使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Entity的用法示例。


在下文中一共展示了Entity.HitLanded方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: OnShot

    public void OnShot(Entity e)
    {
        if (IsDying()) return;

        int damage = (e.WieldsWeapon) ? e.WeaponDamage : e.MeleeDamage;
        Vector2 direction = e.Orientation;

        bool died = m_lifeData.UpdateHP(-damage);
        Debug.LogFormat("Entity {0} hit! Current Hp: {1}", name, m_lifeData.HP);

        transform.Translate(direction * e.WeaponRecoil * 1.6f);
        if (died)
        {
            e.HitLanded();
            m_audioSource.PlayOneShot(m_deathSound);
            StartCoroutine(DieInSeconds(1.0f));
        }
        else
        {
            m_audioSource.PlayOneShot(m_hitSound);
            if (HitReaction(e))
            {
                m_hitTime = Time.time;

            }
        }
    }
开发者ID:wildrabbit,项目名称:ld33,代码行数:27,代码来源:Entity.cs

示例2: HitReaction

    protected override bool HitReaction(Entity attacker)
    {
        m_state = NPCState.Hit;

        attacker.HitLanded();
        Color c = m_renderer.color;
        c.a = 0.5f;
        m_renderer.color = c;
        return true;
    }
开发者ID:wildrabbit,项目名称:ld33,代码行数:10,代码来源:NPC.cs

示例3: OnBumped

    public void OnBumped(Entity e)
    {
        if (IsEthereal()) return;
        if (!e.CanBumpEntity(this))
        {
            return;
        }

        bool dead = m_lifeData.UpdateHP(-1);
        Debug.LogFormat("Entity {0} hit! Current Hp: {1}", name, m_lifeData.HP);
        if (dead)
        {
            e.HitLanded();
            StartCoroutine(DieInSeconds(1.0f));
        }
        else
        {
            HitReaction(e);
            m_hitTime = Time.time;
        }
    }
开发者ID:wildrabbit,项目名称:ld33,代码行数:21,代码来源:Entity.cs

示例4: HitReaction

    protected override bool HitReaction(Entity attacker)
    {
        if (m_state == PlayerState.Hit)
        {
            Debug.LogFormat("Already hit!!");
            return false;
        }
        else
        {
            m_state = PlayerState.Hit;
            attacker.HitLanded();
            m_oldState = m_state;

            Color c = m_renderer.color;
            c.a = 0.5f;
            m_renderer.color = c;
            return true;
        }
    }
开发者ID:wildrabbit,项目名称:ld33,代码行数:19,代码来源:PlayerControl.cs


注:本文中的Entity.HitLanded方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。