public void DepthChangeEnd(FruitItem item)
 {
     if (depthChangeEnd != null)
     {
         depthChangeEnd(item);
     }
 }
 public void DepthChangeStart(FruitItem item)
 {
     if (depthChangeStart != null)
     {
         depthChangeStart(item);
     }
 }
Exemple #3
0
    private void InitGame(int c)
    {
        Debug.Log("InitGame========");
        FruitController.instance.SetChapter(c);

        int fruitNum = FruitController.instance.GenFruitNumber(c);

        SetNeedFruitNumber(fruitType, fruitNum);

        SetFruitNumber(0);

        List <int> indexList = FruitController.instance.GenFruitIndex(fruitNum);

        for (int i = 0; i < indexList.Count; i++)
        {
            GameObject item      = UIHelper.instance.LoadPrefab("Prefabs/game/fruit|fruit_item", FruitTrans[indexList[i]], Vector3.zero, Vector3.zero, false);
            FruitItem  fruitItem = item.GetComponent <FruitItem>();
            fruitItem.InitItem(fruitType, indexList[i]);
            fruitList.Add(fruitItem);
        }
        //篮子动画
        if (c != 1)
        {
            Sequence basketSequence = DOTween.Sequence();
            basketSequence.Append(Basket.transform.DOLocalMoveY(oriBasketPos.y - 500, 0.7f).OnComplete(() => {
                //清空篮子
                foreach (Transform child in Basket.transform)
                {
                    if (child.GetSiblingIndex() != 0)
                    {
                        Destroy(child.gameObject);
                    }
                }
            }));
            basketSequence.Join(ImgBasket.DOLocalMoveY(oriImgBasketPos.y - 500, 0.7f));
            basketSequence.Append(Basket.transform.DOLocalMoveY(oriBasketPos.y, 0.7f));
            basketSequence.Join(ImgBasket.DOLocalMoveY(oriImgBasketPos.y, 0.7f));
        }

        //出场动画
        Sequence s = DOTween.Sequence();

        for (int i = 0; i < fruitList.Count; i++)
        {
            s.Append(fruitList[i].transform.DOScale(Vector3.one, 0.25f));
        }
        s.AppendCallback(() =>
        {
            if (PersonParent.childCount != 0 && haveGreeting == false)
            {
                haveGreeting = true;
                Greeting();
            }
        });
        s.Append(BubbleCanvaGroup.DOFade(1, 0.5f));
    }
    public void FruitToBasketEnd(FruitItem item)
    {
        bool chapterEnd = false;

        getFruitCount += 1;
        if (getFruitCount >= needFruitCount)
        {
            chapterEnd = true;
        }
        if (comeToBasketEnd != null)
        {
            comeToBasketEnd(item, chapterEnd, getFruitCount);
        }
    }
    public void FruitToBasketBegin(FruitItem item)
    {
        tempGetFruitCount = tempGetFruitCount + 1;
        bool chapterEnd = false;

        if (tempGetFruitCount >= needFruitCount)
        {
            chapterEnd = true;
        }
        if (comeToBasketBegin != null)
        {
            comeToBasketBegin(chapterEnd, tempGetFruitCount);
        }
    }
Exemple #6
0
    private void ComeToBasketEnd(FruitItem item, bool chapterEnd, int number)
    {
        //复制一个水果到篮子里
        GameObject cloneFruit = Instantiate(item.gameObject);

        cloneFruit.transform.SetParent(Basket.transform, false);
        cloneFruit.transform.position = item.transform.position;
        item.gameObject.SetActive(false);
        cloneFruit.GetComponent <FruitItem>().PlayParticle(number);

        //冒星星的动画
        //item.PlayParticle(number);
        if (chapterEnd)
        {
            //切换关卡
            StartCoroutine(NextChapter(number));
        }
    }
Exemple #7
0
        public LevelProps(
            IntroCutScene introCutScene,

            FruitItem fruit,
            int fruitPoints,

            float pacManSpeedPc,
            float pacManDotsSpeedPc,

            float ghostSpeedPc,
            float ghostTunnelSpeedPc,

            int elroy1DotsLeft,
            float elroy1SpeedPc,
            int elroy2DotsLeft,
            float elroy2SpeedPc,

            float frightPacManSpeedPc,
            float frightPacManDotSpeedPc,

            float frightGhostSpeedPc,
            int frightGhostTime,
            int frightGhostFlashes)
        {
            IntroCutScene          = introCutScene;
            Fruit                  = fruit;
            FruitPoints            = fruitPoints;
            PacManSpeedPc          = pacManSpeedPc;
            PacManDotsSpeedPc      = pacManDotsSpeedPc;
            GhostSpeedPc           = ghostSpeedPc;
            GhostTunnelSpeedPc     = ghostTunnelSpeedPc;
            Elroy1DotsLeft         = elroy1DotsLeft;
            Elroy1SpeedPc          = elroy1SpeedPc;
            Elroy2DotsLeft         = elroy2DotsLeft;
            Elroy2SpeedPc          = elroy2SpeedPc;
            FrightPacManSpeedPc    = frightPacManSpeedPc;
            FrightPacManDotSpeedPc = frightPacManDotSpeedPc;
            FrightGhostSpeedPc     = frightGhostSpeedPc;
            FrightGhostTime        = frightGhostTime;
            FrightGhostFlashes     = frightGhostFlashes;
        }
Exemple #8
0
        public void SetFruitItem(FruitItem item)
        {
            int x = 16 * (int)item;

            SpriteSheetPos = new Vector2(490 + x, 50);
        }
Exemple #9
0
    void itemInit()
    {
        _hero.iBood = 5;
        _hero.iMoveSpeed = 210f;

        _data.jqName = "level1JQ";

        FruitData fd = new FruitData();
        fd.name = "order1";
        fd.interval = 0.4f;
        fd.minGet = 7;
        FruitItem fi = new FruitItem();
        fi.name = "fruit1";
        fi.weight = 1;
        fi.speed = 100;
        for(int i = 0; i < 11; ++i)
            fd.fruits.Add(fi);

        _data.fruit = fd;

        EnemyData ed = new EnemyData();
        ed.iBoold = 8;
        ed.moveSpeed = 160;
        ed.interval = 1f;
        ed.iBulCount = 12;
        for (int i = 0; i < ed.iBulCount; ++i)
        {
            BulletItem bd = new BulletItem();
            int range = Random.Range(0, 2);
            bd.bCanRebound = range == 0 ? false : true;
            bd.weight = 1;
            bd.speed = 100;
            ed.bullets.Add(bd);
        }

        _data.enemy = ed;

    }
Exemple #10
0
 private void DepthChangeEnd(FruitItem item)
 {
     //Debug.Log(item.depthIndex);
 }
    private void OnCollisionEnter(Collision collision)
    {
        // Check for player collision
        if (collision.gameObject.tag == "Player")
        {
            player.GetComponent <PlayerController>().RemoveObserver(this);

            Collider[] colliders = gameObject.GetComponents <Collider>();
            foreach (Collider collider in colliders)
            {
                colliderItems.Remove(collider.gameObject);
                collider.enabled = false;
            }

            foreach (Transform child in transform)
            {
                child.GetComponent <MeshRenderer>().enabled = false;
            }

            if (gameObject.GetComponent <MeshRenderer>() != null)
            {
                gameObject.GetComponent <MeshRenderer>().enabled = false;
            }

            ParticleBehavior pb = null;

            switch (itemType)
            {
            case ItemType.BREAD:
                pb = new BreadItem();
                break;

            case ItemType.CAN:
                pb = new CanItem();
                break;

            case ItemType.CHEESE:
                pb = new CheeseItem();
                break;

            case ItemType.FRUIT:
                pb = new FruitItem();
                break;

            case ItemType.LIQUID:
                pb = new LiquidItem();
                break;

            case ItemType.MEAT:
                pb = new MeatItem();
                break;

            case ItemType.SHELF:
                pb = new ShelfItem();
                break;
            }

            if (gameObject.transform.parent == true)
            {
                pb.InstantiateParticles(collision.contacts[0].point, gameObject.transform.parent.gameObject);
            }
            else
            {
                pb.InstantiateParticles(collision.contacts[0].point, gameObject);
            }
        }
    }