public override void Init() { base.Init(); //pStatics = PlayerStatics.Instance; playerData = PlayerDataOperator.Instance.playerData; lvMgr = LevelInfoMgr.Instance; mBtn_Shop = Find <Button>("Btn_Shop"); mBtn_Achievement = Find <Button>("Btn_Achievement"); mBtn_Set = Find <Button>("Btn_Set"); mBtn_Help = Find <Button>("Btn_Help"); mTxt_Count = Find <Text>("Txt_Count"); mSetPanel = Find <Image>("SetPanel"); mDeletePanel = Find <Image>("DeletePanel"); mBtn_SoundEffects = UITool.FindChild <Button>(mSetPanel.gameObject, "Btn_SoundEffects"); mBtn_Music = UITool.FindChild <Button>(mSetPanel.gameObject, "Btn_Music"); mBtn_Home = UITool.FindChild <Button>(mSetPanel.gameObject, "Btn_Home"); mBtn_Delete = UITool.FindChild <Button>(mSetPanel.gameObject, "Btn_Delete"); mImg_EffectsOff = UITool.FindChild <Image>(mSetPanel.gameObject, "Img_EffectsOff"); mImg_MusicOff = UITool.FindChild <Image>(mSetPanel.gameObject, "Img_MusicOff"); mBtn_Sure = UITool.FindChild <Button>(mDeletePanel.gameObject, "Btn_Sure"); mBtn_Cancle = UITool.FindChild <Button>(mDeletePanel.gameObject, "Btn_Cancle"); mImg_Map = Find <Image>("Img_Map"); mImg_MapEventTrigger = mImg_Map.GetComponent <EventTrigger>(); onDragEntry = new EventTrigger.Entry(); onDragEntry.eventID = EventTriggerType.Drag; onPointerDownEntry = new EventTrigger.Entry(); onPointerDownEntry.eventID = EventTriggerType.PointerDown; lvBtnList = new List <LevelButton>(); }
private void Awake() { _instance = this; gameTrans = UnityTool.FindChild(gameObject, "Game").transform; lvInfoMgr = LevelInfoMgr.Instance; mapMaker = GetComponent <MapMaker>(); enemyBuilder = new EnemyBuilder(); towerBuilder = new TowerBuilder(); bullectBuilder = new BullectBuilder(); currentLevel = GameRoot.Instance.pickLevel; info = lvInfoMgr.levelInfoList[currentLevel]; //初始化地图 mapMaker.InitAllGrid(); mapMaker.LoadLevelMap(currentLevel); //获得关卡数据和回合数据 SetLevelData(info); level = new Level(info); level.HandleRound(); beginPos = level.roundInfoList[0].pathList[0]; EventCenter.Broadcast(EventType.SetStartPos, beginPos); isPause = true; EventCenter.AddListener <int>(EventType.UseItemInGame, UseItem); }
public static void ExcelToAsset() { fileName = "LevelInfo"; LevelInfoMgr mgr = ScriptableObject.CreateInstance <LevelInfoMgr>(); mgr.levelInfoList = ReadExcel(excelPath); CreateAsset(mgr); }
public override void Init() { base.Init(); lvMgr = LevelInfoMgr.Instance; closeBtn = Find <Button>("Btn_Close"); Btn_Begin = Find <Button>("Btn_Begin"); smallMap = Find <Image>("SmallMap"); levelName = Find <Text>("Txt_LevelName"); levelIntroduce = Find <Text>("Txt_LevelIntroduce"); }
public override void Init() { base.Init(); lvInfoMgr = LevelInfoMgr.Instance; pauseBtn = Find <Button>("Btn_Pause"); startBtn = Find <Button>("Btn_Start"); Txt_TotalRound = Find <Text>("Txt_TotalRound"); Txt_NowRound = Find <Text>("Txt_NowRound"); Txt_Life = Find <Text>("Txt_Life"); Txt_Coin = Find <Text>("Txt_Coin"); enemyInfoPanel = UnityTool.FindChild(rootUI, "EnemyInfo"); towerInfoPanel = UnityTool.FindChild(rootUI, "TowerInfo"); Txt_EnemyName = UITool.FindChild <Text>(enemyInfoPanel, "Txt_Name"); Txt_TowerName = UITool.FindChild <Text>(towerInfoPanel, "Txt_Name"); Txt_NowLife = UITool.FindChild <Text>(enemyInfoPanel, "Txt_NowLife"); Txt_TotalLife = UITool.FindChild <Text>(enemyInfoPanel, "Txt_TotalLife"); Txt_Heart = UITool.FindChild <Text>(enemyInfoPanel, "Txt_Heart"); Txt_Def = UITool.FindChild <Text>(enemyInfoPanel, "Txt_Def"); Txt_Mdef = UITool.FindChild <Text>(enemyInfoPanel, "Txt_Mdef"); Txt_Speed = UITool.FindChild <Text>(enemyInfoPanel, "Txt_Speed"); Txt_Phy = UITool.FindChild <Text>(towerInfoPanel, "Txt_Phy"); Txt_Magic = UITool.FindChild <Text>(towerInfoPanel, "Txt_Magic"); Txt_CD = UITool.FindChild <Text>(towerInfoPanel, "Txt_CD"); Txt_Range = UITool.FindChild <Text>(towerInfoPanel, "Txt_Range"); Btn_Bag = Find <Button>("Btn_Bag"); Bag_BG = Find <Transform>("Bag_BG").gameObject; ItemContent = UITool.FindChild <Transform>(Bag_BG, "ItemContent"); Bag_BG.SetActive(false); enemyInfoPanel.SetActive(false); towerInfoPanel.SetActive(false); EventCenter.AddListener <int>(EventType.Play_CoinUpdate, SetCoinNum); EventCenter.AddListener <int>(EventType.Play_LifeUpdate, SetLifeNum); EventCenter.AddListener <int>(EventType.Play_NowRoundUpdate, SetNowRound); EventCenter.AddListener(EventType.RestartGame, RestartGame); EventCenter.AddListener <GridPoint>(EventType.HandleGrid, HandleGrid); EventCenter.AddListener <BaseEnemy>(EventType.HandleEnemy, HandleEnemy); EventCenter.AddListener <Vector3>(EventType.SetStartPos, SetStartBtnPos); EventCenter.AddListener(EventType.LeaveGameScene, RestartGame); pauseBtn.onClick.AddListener(OnPauseClick); startBtn.onClick.AddListener(OnStartClick); startBtn.gameObject.SetActive(false); Btn_Bag.onClick.AddListener(OnBtnBGClick); itemBtnList = new List <ItemHoldBtn>(); SetItemHoldBtn(); }
public override void OnInspectorGUI() { base.OnInspectorGUI(); if (Application.isPlaying) { EditorGUILayout.BeginHorizontal(); if (GUILayout.Button("读取")) { Init(); int count = lvInfoMgr.levelInfoList.Count; for (int i = 0; i < count; i++) { Vector3 pos = lvInfoMgr.levelInfoList[i].levelPos; if (pos == Vector3.zero) { continue; } else { GameObject go = GameObject.Instantiate(maker.levelGO, maker.parent); go.transform.localPosition = pos; } } } if (GUILayout.Button("搜集")) { maker.posList = null; posList.Clear(); int num = maker.parent.childCount; for (int i = 0; i < num; i++) { posList.Add(maker.parent.GetChild(i).localPosition); } maker.posList = posList; } if (GUILayout.Button("重置")) { Init(); } if (GUILayout.Button("保存")) { if (posList.Count != lvInfoMgr.levelInfoList.Count) { Debug.LogError("数目不对 toolcount " + posList.Count + ", dataCount " + lvInfoMgr.levelInfoList.Count); } else { for (int i = 0; i < posList.Count; i++) { if (lvInfoMgr.levelInfoList[i].levelPos != posList[i]) { lvInfoMgr.levelInfoList[i].levelPos = posList[i]; } } LevelInfoMgr mgr = ScriptableObject.CreateInstance <LevelInfoMgr>(); mgr.levelInfoList = new List <LevelInfo>(); for (int i = 0; i < posList.Count; i++) { mgr.levelInfoList.Add(lvInfoMgr.levelInfoList[i]); } UnityEditor.AssetDatabase.CreateAsset(mgr, "Assets/Resources/AssetData/LevelInfo.asset"); UnityEditor.AssetDatabase.SaveAssets(); UnityEditor.AssetDatabase.Refresh(); Debug.Log("保存成功"); } } EditorGUILayout.EndHorizontal(); } }
private void Awake() { maker = LevelButonMaker.Instance; posList = new List <Vector3>(); lvInfoMgr = LevelInfoMgr.Instance; }