public static void HideDeckCanvasUnit() { foreach (var item in m_CanvanUnitBG) { if (item.Key.Layer == 4) { CanvasUnitBG bg = item.Value; bg.SetCanvasUnitState(CanvasUnitState.Normal); } } }
/// <summary> /// 设定格子背景 /// </summary> public static void SetGridBgState(Int2 grid, CanvasUnitState state, bool bClearAllBgNorml) { if (m_CanvanUnitBG.ContainsKey(grid) == true) { CanvasUnitBG bk = m_CanvanUnitBG[grid]; if (bk != null) { bk.SetCanvasUnitState(state); } } }
/// <summary> /// 状态背景加入管理 /// </summary> public static void JoinCanvasUnitBk(Int2 pos, CanvasUnitBG bk) { if (/*RGrid == null ||*/ bk == null) { return; } if (m_CanvanUnitBG.ContainsKey(pos) == false) { m_CanvanUnitBG.Add(pos, bk); } }
public void LoadCanvasBox() { CanvasUnitBG unitBg = TouchMoveManager.GetCanvasUnitBG(Int2.zero); if (unitBg) { m_GoCanvasBox = GameObjectLoader.LoadPath("Prefabs/Others/", "CanvasBox", WndManager.GetWndRoot().transform); Vector3 worldPos = unitBg.transform.position; NGUIUtil.Set3DUIPos(m_GoCanvasBox, worldPos); } }
/// <summary> /// 设置全部背景状态(目前未被使用) /// </summary> public static void SetAllGridBgStates(Int2 l, CanvasUnitState state, bool bClearAllBgNorml) { if (bClearAllBgNorml) { SetAllGridBgStates(CanvasUnitState.Normal); } if (m_CanvanUnitBG.ContainsKey(l) == true) { CanvasUnitBG bk = m_CanvanUnitBG[l]; if (bk != null) { bk.SetCanvasUnitState(state); } } }
/// <summary> /// 加载船的画布表现 /// </summary> public static void LoadShipCanvans(int shipDesignID) { Transform parent = GetLifeMBornNode(true); if (parent != null) { GameObjectLoader.LoadPath("Prefabs/Others/", "PlaneCollider", parent); Int2 n2Pos = new Int2(0, 0); Int2 nEndPos = GetEndPosByShape(shipDesignID); string [] ShapeList = GetDesignShape(shipDesignID); if (ShapeList == null || ShapeList.Length != nEndPos.Layer) { NGUIUtil.DebugLog(" low version"); return; } RoomMap.RealMapSize = nEndPos; for (n2Pos.Layer = RoomMap.Mapv2Start.Layer; n2Pos.Layer < nEndPos.Layer; n2Pos.Layer++) { for (n2Pos.Unit = RoomMap.Mapv2Start.Unit; n2Pos.Unit < nEndPos.Unit; n2Pos.Unit++) { if (ShapeList.Length > 0 && ShapeList.Length <= nEndPos.Layer && ShapeList[n2Pos.Layer].Length <= nEndPos.Unit) { bool bDeck = CheckIsDeckGrid(ShapeList, n2Pos.Layer, n2Pos.Unit); if (ShapeList[n2Pos.Layer][n2Pos.Unit] == '0' && !bDeck) { continue; } } GameObject go = GameObjectLoader.LoadPath("Prefabs/Others/", "CanvasUnitBG", parent); go.name = string.Format("[{0},{1}]", n2Pos.Layer, n2Pos.Unit); go.transform.localPosition = new Vector3(3.0f * n2Pos.Unit, (3.0f + 0.3f) * n2Pos.Layer, 8.1f); CanvasUnitBG bk = go.GetComponent <CanvasUnitBG>(); if (bk != null) { TouchMoveManager.JoinCanvasUnitBk(n2Pos, bk); } } } } TouchMoveManager.SetAllGridBgStates(CanvasUnitState.Normal); TouchMoveManager.ShowCanvas(true); Vector3 pos = MainCameraM.GetDiffenceDisignCameraPos(); MainCameraM.s_Instance.SetCameraLimitParam(MainCameraM.s_reaLimitPyramidBoatView); MainCameraM.s_Instance.AutoMoveTo(pos, 0f); }
/// <summary> /// 设置全部背景状态 /// </summary> public static void SetGridsBgStates(List <Int2> l, CanvasUnitState state, bool bClearAllBgNorml) { if (bClearAllBgNorml) { SetAllGridBgStates(CanvasUnitState.Normal); } for (int i = 0; i < l.Count; i++) { if (m_CanvanUnitBG.ContainsKey(l[i]) == true) { CanvasUnitBG bk = m_CanvanUnitBG[l[i]]; if (bk != null) { bk.SetCanvasUnitState(state); } } } }
/// <summary> /// 画布显示控制 /// </summary> public static void ShowCanvas(bool isShow) { int nLayerTop = RoomMap.DeckRoomTopLayer; //if (isShow==true&&curTouchCore!=null&&curTouchCore.IsDeckRoom == false) // nLayerTop = RoomMap.DeckTopLayer - 1; foreach (var item in m_CanvanUnitBG) { if (item.Key.Layer < 0 || item.Key.Unit < 0 || item.Key.Layer > nLayerTop || item.Key.Unit >= RoomMap.RealMapSize.Unit) { continue; } CanvasUnitBG bk = item.Value; if (bk == null) { return; } bk.Fade(isShow, 0.1f, true); } }