public void AddShowMark(COM_PLAYERCAMP targetCamp, HorizonConfig.ShowMark sm, int count) { if (this._campMarkers != null) { if (targetCamp == COM_PLAYERCAMP.COM_PLAYERCAMP_COUNT) { for (int i = 0; i < this._campMarkers.Length; i++) { CampMarker marker = this._campMarkers[i]; bool ruleVisible = marker.RuleVisible; marker.AddShowMark(sm, count); Player hostPlayer = Singleton <GamePlayerCenter> .instance.GetHostPlayer(); if (((hostPlayer != null) && (marker.RuleVisible != ruleVisible)) && (i == BattleLogic.MapOtherCampIndex(base.actor.TheActorMeta.ActorCamp, hostPlayer.PlayerCamp))) { this.RefreshVisible(); } } } else { int index = BattleLogic.MapOtherCampIndex(base.actor.TheActorMeta.ActorCamp, targetCamp); if ((index >= 0) && (index < this._campMarkers.Length)) { CampMarker marker2 = this._campMarkers[index]; bool flag2 = marker2.RuleVisible; marker2.AddShowMark(sm, count); Player player2 = Singleton <GamePlayerCenter> .instance.GetHostPlayer(); if (((player2 != null) && (marker2.RuleVisible != flag2)) && (targetCamp == player2.PlayerCamp)) { this.RefreshVisible(); } } } } }