public void SendSyncExploreBoss(ExploreStatus explore, int toClientId = -1) { Coop_Model_RoomSyncExploreBoss coop_Model_RoomSyncExploreBoss = new Coop_Model_RoomSyncExploreBoss(); coop_Model_RoomSyncExploreBoss.id = 1001; coop_Model_RoomSyncExploreBoss.mId = explore.GetCurrentBossMapId(); if (explore.bossStatus != null) { coop_Model_RoomSyncExploreBoss.hp = explore.bossStatus.hp; coop_Model_RoomSyncExploreBoss.hpm = explore.bossStatus.hpMax; coop_Model_RoomSyncExploreBoss.bhp = explore.bossStatus.barrierHp; coop_Model_RoomSyncExploreBoss.shp = explore.bossStatus.shieldHp; coop_Model_RoomSyncExploreBoss.SetRegions(explore.bossStatus.regionWorks); coop_Model_RoomSyncExploreBoss.angid = explore.bossStatus.nowAngryId; coop_Model_RoomSyncExploreBoss.eangids = explore.bossStatus.execAngryIds; coop_Model_RoomSyncExploreBoss.isMM = explore.bossStatus.isMadMode; } else { coop_Model_RoomSyncExploreBoss.hp = -1; } if (toClientId > 0) { MonoBehaviourSingleton <CoopNetworkManager> .I.SendTo(toClientId, coop_Model_RoomSyncExploreBoss, true, null, null); } else { MonoBehaviourSingleton <CoopNetworkManager> .I.SendBroadcast(coop_Model_RoomSyncExploreBoss, true, null, null); } }
public void OnRecvSyncExploreBoss(Coop_Model_RoomSyncExploreBoss model) { if (MonoBehaviourSingleton <InGameManager> .IsValid() && (!MonoBehaviourSingleton <QuestManager> .I.IsExploreBossMap() || !MonoBehaviourSingleton <QuestManager> .I.IsBossAppearMap(model.mId))) { int bossMapId = (int)MonoBehaviourSingleton <QuestManager> .I.GetBossMapId(); if (bossMapId != 0 && bossMapId != model.mId) { MonoBehaviourSingleton <QuestManager> .I.UpdatePassedPortal(); } } MonoBehaviourSingleton <QuestManager> .I.SyncExploreBossStatus(model); }
public void SyncBoss(Coop_Model_RoomSyncExploreBoss boss) { if (bossMapIdHistory.Count == 0) { bossMapIdHistory.Add(boss.mId); } else if (bossMapIdHistory[bossMapIdHistory.Count - 1] != boss.mId) { bossMapIdHistory.Add(boss.mId); } if (boss.hp >= 0) { if (bossStatus == null) { bossStatus = new ExploreBossStatus(); } bossStatus.UpdateStatus(boss); } }
public void UpdateStatus(Coop_Model_RoomSyncExploreBoss boss) { hpMax = boss.hpm; hp = boss.hp; barrierHp = boss.bhp; downCount = boss.downCount; shieldHp = boss.shp; regionWorks = new EnemyRegionWork[boss.rs.Length]; int i = 0; for (int num = boss.rs.Length; i < num; i++) { EnemyRegionWork enemyRegionWork = new EnemyRegionWork(); boss.rs[i].ApplyTo(enemyRegionWork); regionWorks[i] = enemyRegionWork; } nowAngryId = boss.angid; execAngryIds = boss.eangids; isMadMode = boss.isMM; }
protected override bool HandleCoopEvent(CoopPacket packet) { bool result = false; switch (packet.packetType) { case PACKET_TYPE.ROOM_SYNC_ALL_PORTAL_POINT: { Coop_Model_RoomSyncAllPortalPoint model16 = packet.GetModel <Coop_Model_RoomSyncAllPortalPoint>(); coopRoom.OnRecvSyncAllPortalPoint(model16); result = true; break; } case PACKET_TYPE.ROOM_UPDATE_PORTAL_POINT: { Coop_Model_RoomUpdatePortalPoint model15 = packet.GetModel <Coop_Model_RoomUpdatePortalPoint>(); coopRoom.OnRecvRoomUpdatePortalPoint(model15); result = true; break; } case PACKET_TYPE.ROOM_SYNC_EXPLORE_BOSS: { Coop_Model_RoomSyncExploreBoss model14 = packet.GetModel <Coop_Model_RoomSyncExploreBoss>(); coopRoom.OnRecvSyncExploreBoss(model14); result = true; break; } case PACKET_TYPE.ROOM_SYNC_EXPLORE_BOSS_MAP: { Coop_Model_RoomSyncExploreBossMap model13 = packet.GetModel <Coop_Model_RoomSyncExploreBossMap>(); coopRoom.OnRecvSyncExploreBossMap(model13); result = true; break; } case PACKET_TYPE.ROOM_EXPLORE_BOSS_DAMAGE: { Coop_Model_RoomExploreBossDamage model12 = packet.GetModel <Coop_Model_RoomExploreBossDamage>(); coopRoom.OnRecvExploreBossDamage(packet.fromClientId, model12); result = true; break; } case PACKET_TYPE.ROOM_EXPLORE_ALIVE: { Coop_Model_RoomExploreAlive model11 = packet.GetModel <Coop_Model_RoomExploreAlive>(); coopRoom.OnRecvExploreAlive(); result = true; break; } case PACKET_TYPE.ROOM_EXPLORE_ALIVE_REQUEST: { Coop_Model_RoomExploreAliveRequest model10 = packet.GetModel <Coop_Model_RoomExploreAliveRequest>(); coopRoom.OnRecvExploreAliveRequest(); result = true; break; } case PACKET_TYPE.ROOM_EXPLORE_BOSS_DEAD: { Coop_Model_RoomExploreBossDead model9 = packet.GetModel <Coop_Model_RoomExploreBossDead>(); result = coopRoom.OnRecvExploreBossDead(model9); break; } case PACKET_TYPE.ROOM_NOTIFY_ENCOUNTER_BOSS: { Coop_Model_RoomNotifyEncounterBoss model8 = packet.GetModel <Coop_Model_RoomNotifyEncounterBoss>(); coopRoom.OnRecvNotifyEncounterBoss(packet.fromClientId, model8); result = true; break; } case PACKET_TYPE.ROOM_SYNC_PLAYER_STATUS: { Coop_Model_RoomSyncPlayerStatus model7 = packet.GetModel <Coop_Model_RoomSyncPlayerStatus>(); coopRoom.OnRecvSyncPlayerStatus(packet.fromClientId, model7); result = true; break; } case PACKET_TYPE.ROOM_CHAT_STAMP: { Coop_Model_RoomChatStamp model6 = packet.GetModel <Coop_Model_RoomChatStamp>(); coopRoom.OnRecvChatStamp(packet.fromClientId, model6); result = true; break; } case PACKET_TYPE.ROOM_MOVE_FIELD: { Coop_Model_RoomMoveField model5 = packet.GetModel <Coop_Model_RoomMoveField>(); coopRoom.OnRecvMoveField(model5); result = true; break; } case PACKET_TYPE.ROOM_RUSH_REQUEST: { Coop_Model_RushRequest model4 = packet.GetModel <Coop_Model_RushRequest>(); coopRoom.OnRecvRushRequest(packet.fromClientId, model4); result = true; break; } case PACKET_TYPE.ROOM_RUSH_REQUESTED: { Coop_Model_RushRequested model3 = packet.GetModel <Coop_Model_RushRequested>(); coopRoom.OnRecvRushRequested(model3); result = true; break; } case PACKET_TYPE.ROOM_SYNC_DEFENSE_BATTLE: { Coop_Model_RoomSyncDefenseBattle model2 = packet.GetModel <Coop_Model_RoomSyncDefenseBattle>(); coopRoom.OnRecvSyncDefenseBattle(model2); result = true; break; } case PACKET_TYPE.ROOM_NOTIFY_TRACE_BOSS: { Coop_Model_RoomNotifyTraceBoss model = packet.GetModel <Coop_Model_RoomNotifyTraceBoss>(); coopRoom.OnRecvNotifyTraceBoss(packet.fromClientId, model); result = true; break; } } return(result); }