public override void HandleEvent(string eventName, object data) { switch (eventName) { case Consts.E_ShowSpawnPanel: ShowSpawnPanelArgs showSpawn = data as ShowSpawnPanelArgs; if (showSpawn != null) { ShowSpawnPanel(showSpawn.Pos, showSpawn.UpSide); } break; case Consts.E_ShowUpgradePanel: ShowUpgradePanelArgs showUpgrade = data as ShowUpgradePanelArgs; if (showUpgrade != null) { ShowUpgradePanel(showUpgrade.Tower); } break; case Consts.E_HiedPopup: HiedPopup(); break; default: break; } }
/// <summary> /// 点击地图格子事件 /// </summary> /// <param name="sender"></param> /// <param name="tileClickEventArgs"></param> private void MapOnOnTileClick(object sender, TileClickEventArgs tileArgs) { GameModel gameModel = GetModel <GameModel>(); if (gameModel.IsPlaying && tileArgs.Tile.CanHold) { Tile tile = tileArgs.Tile; if (tile.Data == null) { //空格子,可以放塔 ShowSpawnPanelArgs show = new ShowSpawnPanelArgs { Pos = _map.GetPosition(tile), UpSide = tile.Y < Map.RowCount / 2 }; SendEvent(Consts.E_ShowSpawnPanel, show); } else { //有塔,可以操作塔 Tower tower = tile.Data as Tower; ShowUpgradePanelArgs show = new ShowUpgradePanelArgs { Tower = tower }; SendEvent(Consts.E_ShowUpgradePanel, show); } } }
void Map_OnTileClick(object sender, TileClickEventArgs e) { GameModel gm = GetModel <GameModel>(); //游戏还未开始,那么不操作菜单 if (!gm.IsPlaying) { return; } //如果有菜单显示,那么隐藏菜单 if (TowerPopup.Instance.IsPopShow) { SendEvent(Consts.E_HidePopups); return; } if (!e.Tile.CanHold) { SendEvent(Consts.E_HidePopups); } if (e.Tile.Data == null) { ShowSpawnPanelArgs e1 = new ShowSpawnPanelArgs() { // Position = null, Position = m_Map.GetPosition(e.Tile), UpSide = e.Tile.Y < (m_Map.RowCount / 2), }; // SendEvent(Consts.E_ShowSpawnPanel, e1); } else { ShowUpgradePanelArgs e2 = new ShowUpgradePanelArgs() { Tower = e.Tile.Data as Tower, }; SendEvent(Consts.E_ShowUpgradePanel, e2); } }
public override void HandleEvent(string eventName, object data) { switch (eventName) { case Consts.E_ShowSpawnPanel: ShowSpawnPanelArgs e1 = data as ShowSpawnPanelArgs; ShowSpawnPanel(e1.Position, e1.UpSide); break; case Consts.E_ShowUpgradePanel: ShowUpgradePanelArgs e2 = data as ShowUpgradePanelArgs; ShowUpgradePanel(e2.Tower); break; case Consts.E_HidePopups: HideAllPopups(); break; default: break; } }