示例#1
0
 void Awake()
 {
     instance        = this;
     itemTBGDespList = new List <TBGiftDespItem> ();
     nameList        = new List <List <string> > ();
     doubleNum       = new List <int> ();
 }
示例#2
0
 public static TreasureBoxController CreatTreasureBoxCtr()
 {
     UnityEngine.Object obj = WXLLoadPrefab.GetPrefab(WXLPrefabsName.UITreasurePanel);
     if (obj != null)
     {
         GameObject            go      = Instantiate(obj) as GameObject;
         TreasureBoxController fc      = go.GetComponent <TreasureBoxController> ();
         Transform             goTrans = go.transform;
         go.transform.parent        = DBUIController.mDBUIInstance._bottomRoot.transform;
         go.transform.localPosition = Vector3.zero;
         goTrans.localScale         = Vector3.one;
         return(fc);
     }
     return(null);
 }
    public static void CreatActivity(ActivityItemType type, object objPos, System.Action callback = null)
    {
        //	AbsActivity AbsA= null;
        switch (type)
        {
        case ActivityItemType.festivalItem:
            if (_ActFestivalCtrl == null)
            {
                _ActFestivalCtrl = WXLActivityFestivalController.CreateFestivalPanel(ActivityItemType.festivalItem, (GameObject)objPos);
            }
            else
            {
                _ActFestivalCtrl.gameObject.SetActive(true);
            }

            //	ActivityNetController.GetInstance().SendLoginFestival ();
            break;

        case  ActivityItemType.mosterComeItem:
            if (_ActMonsterCtrl == null)
            {
                _ActMonsterCtrl = UIActMonsterComeController.CreateMonsterPanel(ActivityItemType.mosterComeItem, (GameObject)objPos);
            }
            else
            {
                _ActMonsterCtrl.gameObject.SetActive(true);
            }
            break;

        case ActivityItemType.taobaoItem:
            if (_ActTaoBaoCtrl == null)
            {
                _ActTaoBaoCtrl = UITaoBaoController.CreateTaoBaoPanel(ActivityItemType.taobaoItem, (GameObject)objPos);
            }
            else
            {
                _ActTaoBaoCtrl.gameObject.SetActive(true);
            }
            break;

        case ActivityItemType.dinnerItem:
            if (_ActDinnerCtrl == null)
            {
                _ActDinnerCtrl = ActDinnerController.CreateDinnerPanel(ActivityItemType.dinnerItem, (GameObject)objPos);
            }
            else
            {
                _ActDinnerCtrl.gameObject.SetActive(true);
            }
            break;

        case ActivityItemType.qiandaoItem:
            if (_ActDateSignCtrl == null)
            {
                _ActDateSignCtrl = UIDateSignController.CreateUIdateSignPanel(ActivityItemType.qiandaoItem, (GameObject)objPos);
            }
            else
            {
                _ActDateSignCtrl.gameObject.SetActive(true);
            }
            break;

        case ActivityItemType.levelRewardItem:
            if (_ActLevelRewardCtrl == null)
            {
                _ActLevelRewardCtrl = UILevelRewardController.CreateUILevelRewardPanel(ActivityItemType.levelRewardItem, (GameObject)objPos, callback);
            }
            else
            {
                _ActLevelRewardCtrl.gameObject.SetActive(true);
            }
            break;

        case ActivityItemType.gonggaoItem:
            AnnounceMrg.GetInstance().SetInfoPanel(true);
            break;

        case ActivityItemType.secretShopItem:
            SecretShopMgr.GetInstance().SetSecretShop(true, 1);
            DBUIController.mDBUIInstance.HiddenFor3D_UI();
            break;

        case ActivityItemType.vipEnter:
            UIDragonMallMgr.GetInstance().SetVipLibao();
            break;

        case ActivityItemType.TreasureBoxItem:
            if (_ActTreasureBoxCtrl == null)
            {
                _ActTreasureBoxCtrl = TreasureBoxController.CreatTreasureBoxCtr();
            }
            else
            {
                _ActTreasureBoxCtrl.gameObject.SetActive(true);
            }
            break;

        case ActivityItemType.RollGamblePanel:
            RollGambleController.CreatRollGamblePanel();
            break;

        case ActivityItemType.DailyGiftPanel:
            DailyGiftController.CreatDailyGiftController();
            break;

        case ActivityItemType.DragonBank:
            DragonBankController.CreatDragonBankController();
            break;

        default:
            //	AbsA = null;
            break;
        }
    }
    /// <summary>
    /// 创建关卡Npc;
    /// </summary>
    /// <returns></returns>
    public void CreateStageNpc(StageData stage)
    {
        if (stage == null)
        {
            return;
        }

        NpcData npcData = DataManager.s_NpcDataManager.GetData(stage.NpcID);

        if (npcData == null)
        {
            return;
        }

        Npc npc = new Npc(stage.NpcID);

        Quaternion rotate = Quaternion.Euler(new Vector3(0, stage.Orient * Mathf.Rad2Deg, 0));
        GameObject prefab = ResourcesManager.Instance.LoadUnitObject(npcData.Model, UNIT_TYPE.NPC);
        GameObject npcobj = GameObject.Instantiate(prefab) as GameObject;

        npcobj.transform.position = stage.Position;
        npcobj.transform.rotation = rotate;

        UnityEngine.AI.NavMeshAgent agent = npcobj.AddComponent <UnityEngine.AI.NavMeshAgent>();
        agent.speed             = 0;
        agent.acceleration      = 0;
        agent.angularSpeed      = 0;
        agent.avoidancePriority = (int)NavmeshPriority.NPC;
        agent.height            = npcData.Height;
        agent.radius            = npcData.Radius;
        agent.stoppingDistance  = agent.radius;

        /*NavMeshObstacle obstacle = npcobj.AddComponent<NavMeshObstacle>();
         * obstacle.height = npcData.Height;
         * obstacle.radius = npcData.Radius;
         * obstacle.carving = true;*/

        CapsuleCollider collider = npcobj.AddComponent <CapsuleCollider>();

        collider.height = npcData.Height;
        collider.radius = npcData.Radius;
        collider.center = Vector3.up * (Mathf.Max(collider.height / 2.0f, collider.radius) + 0.03f);

        npcobj.SetLayerRecursively(LayerMask.NameToLayer("AttackNpc"));

        if (stage.NpcType == NpcTypes.Battle)
        {
            NpcController controller = npcobj.AddComponent <NpcController>();
            controller.m_Npc          = npc;
            controller.m_CurStageData = stage;
            m_StageNpcControllerDic.Add(stage.ID, controller);
        }
        else if (stage.NpcType == NpcTypes.TreasureBox)
        {
            TreasureBoxController controller = npcobj.AddComponent <TreasureBoxController>();
            controller.m_Npc          = npc;
            controller.m_CurStageData = stage;
            m_StageNpcControllerDic.Add(stage.ID, controller);
        }
        else if (stage.NpcType == NpcTypes.Stone || stage.NpcType == NpcTypes.Crystal ||
                 stage.NpcType == NpcTypes.Wood)
        {
            DungeonCollectController controller = npcobj.AddComponent <DungeonCollectController>();
            controller.m_Npc          = npc;
            controller.m_CurStageData = stage;
            m_StageNpcControllerDic.Add(stage.ID, controller);
        }
    }