void OnEndWorldBossHandler(C2G.EndWorldBoss packet, C2G.EndWorldBossAck ack) { if (packet.end_type == pe_EndBattle.Exit) { GameMain.SetBattleMode(eBattleMode.None); return; } MapStageDifficulty stage_info = Network.BattleStageInfo; _battle_end_param = new EventParamWorldBossBattleEnd(); _battle_end_param.rank = ack.info.rank; _battle_end_param.score = packet.score; if (WorldBossInfo.Info != null) { _battle_end_param.rank_up = ack.info.rank - WorldBossInfo.Info.rank; _battle_end_param.score_up = ack.info.score - WorldBossInfo.Info.score; } else { _battle_end_param.is_first = true; } WorldBossInfo.Info = ack.info; Network.PlayerInfo.UseEnergy(stage_info.Energy); MapClearDataManager.Instance.SetClearRate(stage_info, 3); }
override public void SetParams(bool is_new, object[] parms) { base.SetParams(is_new, parms); if (parms != null && parms.Length == 1) { EventParamWorldBossBattleEnd _param = (EventParamWorldBossBattleEnd)parms[0]; if (_param.is_first == true) { m_ToggleWin.Set(true); m_ToggleScoreWin.Set(false); } else if (_param.score_up > 0) { m_ToggleWin.Set(true); m_ToggleScoreWin.Set(true); m_LabelScoreUP.text = Localization.Format("WorldBossScore", _param.score_up); } else { m_ToggleWin.Set(false); m_ToggleScoreWin.Set(false); } if (_param.rank_up > 0) { m_ToggleRankWin.Set(true); m_LabelRankUP.text = _param.rank_up.ToString(); } else { m_ToggleRankWin.Set(false); } m_LabelScore.text = Localization.Format("WorldBossScore", _param.score); m_LabelRank.text = _param.rank.ToString(); } else { throw new System.Exception(string.Format("invalid parms", this.name)); } }