Пример #1
0
    public void CollisionCheck(ObjectBase obj, BulletBase.BulletTeam team)
    {
        ObjectLink link = activeFront;

        if (link == null)
        {
            return;
        }

        while (true)
        {
            link.me.CopyList();

            if (link.me.gameObject.activeSelf)
            {
                if (link.me.IsTeam(team))
                {
                    if (obj.Collision(link.me))
                    {
                        //Debug.Log(obj.GetColliderInfo().radius);
                        link.me.ColliseionActive(obj);
                    }
                }
            }

            //link.me.DeleteExitObjects();

            link = link.back;

            if (link == null)
            {
                break;
            }
        }
    }
Пример #2
0
    public BulletBase ObjectActive(ObjectBase sht, EnemyDatabase.EnemyInfo enemyInfo, float attack, EnemyDatabase.BulletInfo info, Vector2 pos, bool scObj, bool guided, BulletBase.BulletTeam team = BulletBase.BulletTeam.Enemy)
    {
        if (disableFront == null)
        {
            return(null);
        }

        ++bulletCount;

        disableFront.me.SetBullet(sht, pos + enemyInfo.shotPoint[info.shotPoint], info.speed, attack, info.angle, guided, scObj, team).SetRadius(0.1f);

        ObjectLink save = disableFront.back;

        disableFront.back = null;

        if (activeFront == null)
        {
            activeFront = disableFront;
            activeBack  = activeFront;
        }
        else
        {
            activeBack.back = disableFront;
            activeBack      = disableFront;
        }

        disableFront = save;

        return(activeBack.me);
    }
Пример #3
0
    public BulletBase ObjectActive(ObjectBase sht, Vector2 pos, float speed, float attack, float angle, bool scObj, bool guided = false, BulletBase.BulletTeam team = BulletBase.BulletTeam.Enemy)
    {
        if (disableFront == null)
        {
            return(null);
        }

        ++bulletCount;

        disableFront.me.SetBullet(sht, pos, speed, attack, angle, guided, scObj, team).SetRadius(0.1f);

        ObjectLink save = disableFront.back;

        disableFront.back = null;

        if (activeFront == null)
        {
            activeFront = disableFront;
            activeBack  = activeFront;
        }
        else
        {
            activeBack.back = disableFront;
            activeBack      = disableFront;
        }

        disableFront = save;

        return(activeBack.me);
    }