Пример #1
0
 private void SetWeaponStats(MeleeScript weapon)
 {
     Damage      = weapon.Damage;
     ClipSize    = 1;
     RoF         = weapon.RoF;
     ReloadSpeed = 0;
     Range       = weapon.Range;
 }
Пример #2
0
        public override void Open(HSDReader Reader)
        {
            List <byte> data = new List <byte>();
            byte        cmd  = Reader.ReadByte();

            while (cmd != 0)
            {
                int size = MeleeScript.GetCommandSize(cmd);
                data.Add(cmd);
                data.AddRange(Reader.ReadBytes(size - 1));
                cmd = Reader.ReadByte();
            }
            Data = data.ToArray();
        }
Пример #3
0
    // Use this for initialization
    void Start()
    {
        theHeroMeleeSystem = GetComponent <MeleeScript>();
        #if UNITY_STANDALONE
        theHeroRangeSystem = GetComponent <HeroRangeScript>();
        //theAttackButton = GameObject.Find("AttackButton");
        //theAttackButton.SetActive(false);
        //ItemUI = GameObject.Find(m_ItemUI_Name);
        //Debug.Log("Item Canvas name: " + ItemUI.name);
        //ItemUI.gameObject.SetActive(false);
#else
        thePlayerJoystick = GameObject.FindObjectOfType <PlayerDrag>();
        //theAttackButton = GameObject.Find("AttackButton");
#endif
    }
Пример #4
0
    public void ManageMeleeAttack(MeleeScript attacker, HealthScript victim)
    {
        //if (particleSystem == null)
        //{
        //    Debug.Log("Finding blood particle: " + m_NameOfParticleSys);
        //    particleSystem = GameObject.Find(m_NameOfParticleSys);
        //}
        //if (debugginMesh == null)
        //    debugginMesh = GameObject.Find("Remove TODO").GetComponent<TextMesh>();
        float m_damage_ = attacker.m_damage_;

        // If the enemy has a magic defense
        //Debug.Log("Passing to ManageMeleeAttack");
        if (victim.GetComponent <MagicDefendScript>() != null)
        {
            // If the attack has no magic attack, reduce the damage!
            if (attacker.GetComponent <MagicAttackScript>() == null)
            {
                m_damage_ *= 0.75f;
            }
            else
            {
                m_damage_ *= attacker.GetComponent <MagicAttackScript>().CompareEffectiveOfThisToOtherMagic(victim.GetComponent <MagicDefendScript>());
            }
        }
        // If the victim has no magic defense and the attack has a magic attack, just multiply the health!
        else if (attacker.GetComponent <MagicAttackScript>() != null)
        {
            m_damage_ *= 1.25f;
        }
        victim.modifyHealth(-m_damage_);
        //Debug.Log("Trying to play particle effects in: " + particleSystem.name);
        //debugginMesh.text = "Trying to find particle system: " + particleSystem.name;
        if (m_bloodParticleSystem != null)
        {
            Debug.Log("Playing particle effects");
            //debugginMesh.text = "Successful playing particle effects";
#if UNITY_ANDROID
            //particleSystem.SetActive(true);
            //particleSystem.GetComponent<ParticleScript>().resetToActive();
#endif
            //Vector3 directionOfParticle = victim.transform.position - attacker.transform.position;
            //directionOfParticle = new Vector3(directionOfParticle.x * victim.transform.localScale.x, directionOfParticle.y * victim.transform.localScale.y);
            //particleSystem.transform.position = directionOfParticle + victim.transform.position;
            m_bloodParticleSystem.transform.position = victim.transform.position;
            m_bloodParticleSystem.GetComponent <ParticleScript>().playEffect();
        }
    }
Пример #5
0
    public void Explode()
    {
        if (!exploded)
        {
            Instantiate(explosionParticle, transform.position, transform.rotation);
            Collider2D collider = Physics2D.OverlapCircle(transform.position, radius);


            Enemy            enemy      = collider.GetComponent <Enemy>();
            Patrol2          enemyMech  = collider.GetComponent <Patrol2>();
            MeleeScript      enemyMelee = collider.GetComponent <MeleeScript>();
            flyEnemy         enemyfly   = collider.GetComponent <flyEnemy>();
            GroundMechScript groundMech = collider.GetComponent <GroundMechScript>();
            BossAI           boss       = collider.GetComponent <BossAI>();
            if (enemy != null)
            {
                enemy.TakeDamage(damage);
            }
            else if (enemyMech != null)
            {
                enemyMech.TakeDamage(damage);
            }
            else if (enemyMelee != null)
            {
                enemyMelee.TakeDamage(damage);
            }
            else if (enemyfly != null)
            {
                enemyfly.TakeDamage(damage);
            }
            else if (groundMech != null)
            {
                groundMech.TakeDamage(damage);
            }
            else if (boss != null)
            {
                boss.TakeDamage(damage);
            }
            //Destroy(gameObject);
            exploded   = true;
            sound.clip = explodeSound;
            sound.Play();
            grenadeCollider.enabled = false;
            spriteRenderer.enabled  = false;
            player.GetComponent <Weapon>().activeGrenadeCount -= 1;
        }
    }
Пример #6
0
    // use this to kill the AI
    //void OnTriggerEnter2D(Collider2D hitInfo)
    //{
    //    Enemy enemy = hitInfo.GetComponent<Enemy>();
    //    Patrol2 enemyMech = hitInfo.GetComponent<Patrol2>();
    //    MeleeScript enemyMelee = hitInfo.GetComponent<MeleeScript>();
    //    flyEnemy enemyfly = hitInfo.GetComponent<flyEnemy>();
    //    GroundMechScript groundMech = hitInfo.GetComponent<GroundMechScript>();
    //    BossAI boss = hitInfo.GetComponent<BossAI>();
    //    if (enemy != null)
    //    {
    //        enemy.TakeDamage(Damage);

    //    }
    //    else if (enemyMech != null)
    //    {
    //        enemyMech.TakeDamage(Damage);
    //    }
    //    else if (enemyMelee != null)
    //    {
    //        enemyMelee.TakeDamage(Damage);
    //    }
    //    else if (enemyfly != null)
    //    {
    //        enemyfly.TakeDamage(Damage);
    //    }
    //    else if (groundMech != null)
    //    {
    //        groundMech.TakeDamage(Damage);
    //    }
    //    else if (boss != null)
    //    {
    //        boss.TakeDamage(Damage);
    //    }
    //    Instantiate(impactEffect, transform.position, transform.rotation);
    //    Destroy(gameObject);
    //    Destroy(other);
    //}
    void OnCollisionEnter2D(Collision2D hitInfo)
    {
        GameObject ultsomthing = GameObject.FindGameObjectWithTag("ulttag");
        Ultimate   u           = ultsomthing.GetComponent <Ultimate>();

        Enemy            enemy      = hitInfo.gameObject.GetComponent <Enemy>();
        Patrol2          enemyMech  = hitInfo.gameObject.GetComponent <Patrol2>();
        MeleeScript      enemyMelee = hitInfo.gameObject.GetComponent <MeleeScript>();
        flyEnemy         enemyfly   = hitInfo.gameObject.GetComponent <flyEnemy>();
        GroundMechScript groundMech = hitInfo.gameObject.GetComponent <GroundMechScript>();
        BossAI           boss       = hitInfo.gameObject.GetComponent <BossAI>();

        if (enemy != null)
        {
            enemy.TakeDamage(Damage);
        }
        else if (enemyMech != null)
        {
            enemyMech.TakeDamage(Damage);
            u.Ult += 0.03f;
        }
        else if (enemyMelee != null)
        {
            enemyMelee.TakeDamage(Damage);
            u.Ult += 0.03f;
        }
        else if (enemyfly != null)
        {
            enemyfly.TakeDamage(Damage);
            u.Ult += 0.03f;
        }
        else if (groundMech != null)
        {
            groundMech.TakeDamage(Damage);
            u.Ult += 0.03f;
        }
        else if (boss != null)
        {
            boss.TakeDamage(Damage);
        }
        Instantiate(impactEffect, transform.position, transform.rotation);
        Destroy(gameObject);
        Destroy(other);
    }
Пример #7
0
 private void SetWeaponStats(MeleeScript weapon)
 {
     Damage = weapon.Damage;
     ClipSize = 1;
     RoF = weapon.RoF;
     ReloadSpeed = 0;
     Range = weapon.Range;
 }