Example #1
0
        public void OnFanbao(ISFSObject data)
        {
            FanbaoData fanData = new FanbaoData();

            fanData.SetData(data);
            //设置宝牌
            var tempCard = Game.TableManager.GetParts <MahjongDisplayCard>(TablePartsType.DisplayCard).DisplayMahjong;
            //宝牌是否显示

            bool isShowCard = !DataCenter.ConfigData.AnBao && DataCenter.OneselfData.IsAuto;

            if (tempCard != null)
            {
                if (fanData.IsHuanbao)
                {
                    FanbaoAnimation(fanData);
                    var card = Game.TableManager.SetShowBao(fanData.Bao, isShowCard);
                    var obj  = GameCenter.Pools.GetPool <ObjectPoolComponent>(PoolUitlity.Po_EffectObject).Pop <EffectObject>(EffectObject.AssetsNamePrefix + PoolObjectType.huanbao, (go) =>
                    {
                        return(go.Type == PoolObjectType.huanbao);
                    });
                    if (null != obj)
                    {
                        obj.transform.position = card.transform.position;
                        obj.Execute();
                    }
                }
                else if (DataCenter.CurrOpSeat == DataCenter.OneselfData.Seat && !fanData.Filter)
                {
                    Game.TableManager.SetShowBao(fanData.Bao, isShowCard);
                }
            }
            else
            {
                FanbaoAnimation(fanData);
                //第一次翻宝
                Game.TableManager.SetShowBao(fanData.Bao, isShowCard);
            }
        }