public void LobbyChatUpdated(LobbyChatUpdate_t update) { try { EChatMemberStateChange change = (EChatMemberStateChange)update.m_rgfChatMemberStateChange; if (change == EChatMemberStateChange.k_EChatMemberStateChangeEntered) { MultiplayerChat.AddChat(string.Format("User {0} joined the game!", SteamFriends.GetFriendPersonaName(new CSteamID(update.m_ulSteamIDUserChanged)))); if (!connectedPlayers.Contains(update.m_ulSteamIDUserChanged)) { PlayerJoinedManagers(update.m_ulSteamIDUserChanged); connectedPlayers.Add(update.m_ulSteamIDUserChanged); } if (update.m_ulSteamIDUserChanged != SteamUser.GetSteamID().m_SteamID) { otherPlayers.Add(update.m_ulSteamIDUserChanged); } } else if (change == EChatMemberStateChange.k_EChatMemberStateChangeLeft || change == EChatMemberStateChange.k_EChatMemberStateChangeKicked || change == EChatMemberStateChange.k_EChatMemberStateChangeDisconnected) { MultiplayerChat.AddChat(string.Format("User {0} left the game!", SteamFriends.GetFriendPersonaName(new CSteamID(update.m_ulSteamIDUserChanged)))); PlayerLeftManagers(update.m_ulSteamIDUserChanged); connectedPlayers.Remove(update.m_ulSteamIDUserChanged); MultiplayerPlayerList.RemovePlayerLabel(update.m_ulSteamIDUserChanged); if (update.m_ulSteamIDUserChanged != SteamUser.GetSteamID().m_SteamID) { otherPlayers.Remove(update.m_ulSteamIDUserChanged); } } } catch (System.Exception e) { Debug.LogError(e); } }
public void LobbyCreated(LobbyCreated_t result) { SteamMatchmaking.JoinLobby((CSteamID)result.m_ulSteamIDLobby); MultiplayerChat.AddChat("Created Lobby!"); SteamMatchmaking.SetLobbyData((CSteamID)result.m_ulSteamIDLobby, MANAGER_ID, SteamUser.GetSteamID().ToString()); }
public void LobbyEntered(LobbyEnter_t enterLobby) { connectedPlayers.Clear(); otherPlayers.Clear(); ResetManagers(); { if (!(RainWorldHK.mainRW.processManager.currentMainLoop is SteamMultiplayerMenu)) { ProcessManagerHK.ImmediateSwitchCustom(RainWorldHK.mainRW.processManager, new SteamMultiplayerMenu(RainWorldHK.mainRW.processManager)); } } joining = false; lobbyID = (CSteamID)enterLobby.m_ulSteamIDLobby; int playerCount = SteamMatchmaking.GetNumLobbyMembers((CSteamID)enterLobby.m_ulSteamIDLobby); MultiplayerChat.AddChat("Entered Lobby!"); //Send packets to all players, to establish P2P connections with them if (playerCount > 1) { for (int i = 0; i < playerCount; i++) { CSteamID lobbyMember = SteamMatchmaking.GetLobbyMemberByIndex(lobbyID, i); SteamNetworking.SendP2PPacket(lobbyMember, new byte[] { 255 }, 1, EP2PSend.k_EP2PSendReliable, 0); SteamNetworking.SendP2PPacket(lobbyMember, new byte[] { 255 }, 1, EP2PSend.k_EP2PSendReliable, 1); SteamNetworking.SendP2PPacket(lobbyMember, new byte[] { 255 }, 1, EP2PSend.k_EP2PSendReliable, 2); if (!connectedPlayers.Contains(lobbyMember.m_SteamID)) { connectedPlayers.Add(lobbyMember.m_SteamID); PlayerJoinedManagers(lobbyMember.m_SteamID); } if (lobbyMember != SteamUser.GetSteamID()) { otherPlayers.Add(lobbyMember.m_SteamID); } } } //Set up network data NetworkGameManager.managerID = ulong.Parse(SteamMatchmaking.GetLobbyData(lobbyID, MANAGER_ID)); NetworkGameManager.playerID = SteamUser.GetSteamID().m_SteamID; if (NetworkGameManager.managerID != NetworkGameManager.playerID) { lobbyInfo = new LobbyInfo((CSteamID)enterLobby.m_ulSteamIDLobby); lobbyInfo.UpdateLobbyInfo((CSteamID)enterLobby.m_ulSteamIDLobby); lobbyInfo.owner = new CSteamID(NetworkGameManager.managerID); } if (!connectedPlayers.Contains(SteamUser.GetSteamID().m_SteamID)) { connectedPlayers.Add(SteamUser.GetSteamID().m_SteamID); PlayerJoinedManagers(SteamUser.GetSteamID().m_SteamID); } MultiplayerChat.AddChat("This game's manager is " + SteamFriends.GetFriendPersonaName((CSteamID)NetworkGameManager.managerID)); isInGame = true; Log("Entered Lobby! \nThis game's manager is " + SteamFriends.GetFriendPersonaName((CSteamID)NetworkGameManager.managerID)); }
public void LobbyChatUpdated(LobbyChatUpdate_t update) { try { EChatMemberStateChange change = (EChatMemberStateChange)update.m_rgfChatMemberStateChange; if (change == EChatMemberStateChange.k_EChatMemberStateChangeEntered) { MultiplayerChat.AddChat(string.Format("User {0} joined the game!", SteamFriends.GetFriendPersonaName(new CSteamID(update.m_ulSteamIDUserChanged)))); Log(string.Format("User {0} joined the game!", SteamFriends.GetFriendPersonaName(new CSteamID(update.m_ulSteamIDUserChanged)))); if (!connectedPlayers.Contains(update.m_ulSteamIDUserChanged)) { PlayerJoinedManagers(update.m_ulSteamIDUserChanged); connectedPlayers.Add(update.m_ulSteamIDUserChanged); } if (update.m_ulSteamIDUserChanged != SteamUser.GetSteamID().m_SteamID) { otherPlayers.Add(update.m_ulSteamIDUserChanged); } } else if (change == EChatMemberStateChange.k_EChatMemberStateChangeLeft || change == EChatMemberStateChange.k_EChatMemberStateChangeKicked || change == EChatMemberStateChange.k_EChatMemberStateChangeDisconnected) { MultiplayerChat.AddChat(string.Format("User {0} left the game!", SteamFriends.GetFriendPersonaName(new CSteamID(update.m_ulSteamIDUserChanged)))); Log(string.Format("User {0} left the game!", SteamFriends.GetFriendPersonaName(new CSteamID(update.m_ulSteamIDUserChanged)))); PlayerLeftManagers(update.m_ulSteamIDUserChanged); connectedPlayers.Remove(update.m_ulSteamIDUserChanged); MultiplayerPlayerList.RemovePlayerLabel(update.m_ulSteamIDUserChanged); if (update.m_ulSteamIDUserChanged != SteamUser.GetSteamID().m_SteamID) { otherPlayers.Remove(update.m_ulSteamIDUserChanged); } if (update.m_ulSteamIDUserChanged == NetworkGameManager.managerID) { patch_ProcessManager patchPM = ((patch_ProcessManager)Patches.patch_Rainworld.mainRW.processManager); //if ((patchPM.currentMainLoop is MultiplayerSleepAndDeathScreen) || (patchPM.currentMainLoop is SteamMultiplayerMenu) if (patchPM.musicPlayer != null) { patchPM.musicPlayer.FadeOutAllSongs(5f); patchPM.musicPlayer.MenuRequestsSong("RW_8 - Sundown", 1.4f, 2f); } if (patchPM.currentMainLoop is RainWorldGame) { (patchPM.currentMainLoop as RainWorldGame).ExitToMenu(); } else { patchPM.RequestMainProcessSwitch(ProcessManager.ProcessID.MainMenu); } if (monklandUI != null) { monklandUI.ClearSprites(); monklandUI = null; } this.OnGameExit(); } } } catch (System.Exception e) { Debug.LogError(e); } }
public void LobbyEntered(LobbyEnter_t enterLobby) { connectedPlayers.Clear(); otherPlayers.Clear(); ResetManagers(); lobbyID = (CSteamID)enterLobby.m_ulSteamIDLobby; int playerCount = SteamMatchmaking.GetNumLobbyMembers(lobbyID); MultiplayerChat.AddChat("Entered Lobby!"); //Send packets to all players, to establish P2P connections with them if (playerCount > 1) { for (int i = 0; i < playerCount; i++) { CSteamID lobbyMember = SteamMatchmaking.GetLobbyMemberByIndex(lobbyID, i); SteamNetworking.SendP2PPacket(lobbyMember, new byte[] { 255 }, 1, EP2PSend.k_EP2PSendReliable, 0); SteamNetworking.SendP2PPacket(lobbyMember, new byte[] { 255 }, 1, EP2PSend.k_EP2PSendReliable, 1); SteamNetworking.SendP2PPacket(lobbyMember, new byte[] { 255 }, 1, EP2PSend.k_EP2PSendReliable, 2); if (!connectedPlayers.Contains(lobbyMember.m_SteamID)) { connectedPlayers.Add(lobbyMember.m_SteamID); PlayerJoinedManagers(lobbyMember.m_SteamID); } if (lobbyMember != SteamUser.GetSteamID()) { otherPlayers.Add(lobbyMember.m_SteamID); } } } //Set up network data NetworkGameManager.managerID = ulong.Parse(SteamMatchmaking.GetLobbyData(lobbyID, MANAGER_ID)); NetworkGameManager.playerID = SteamUser.GetSteamID().m_SteamID; if (!connectedPlayers.Contains(SteamUser.GetSteamID().m_SteamID)) { connectedPlayers.Add(SteamUser.GetSteamID().m_SteamID); PlayerJoinedManagers(SteamUser.GetSteamID().m_SteamID); } MultiplayerChat.AddChat("This game's manager is " + SteamFriends.GetFriendPersonaName((CSteamID)NetworkGameManager.managerID)); isInGame = true; Log("Entered Lobby! \nThis game's manager is " + SteamFriends.GetFriendPersonaName((CSteamID)NetworkGameManager.managerID)); }
// Use this for initialization void Start() { transform.GetChild(0).gameObject.camera.farClipPlane = 1; //Connect to Photon Cloud /*if(!PhotonNetwork.connected) * PhotonNetwork.ConnectUsingSettings("v1.0");*/ allRooms = PhotonNetwork.GetRoomList(); newRoomName = "Room Name " + Random.Range(111, 999); playerName = "Player " + Random.Range(111, 999); pmn = GetComponent <RoomMultiplayerMenu>(); mc = GetComponent <MultiplayerChat>(); pmn.enabled = false; mc.enabled = false; }
public void LobbyCreated(LobbyCreated_t result) { SteamMatchmaking.JoinLobby((CSteamID)result.m_ulSteamIDLobby); lobbyID = (CSteamID)result.m_ulSteamIDLobby; lobbyInfo = new LobbyInfo((CSteamID)result.m_ulSteamIDLobby); MultiplayerChat.AddChat("Created Lobby!"); joining = false; SteamMatchmaking.SetLobbyData((CSteamID)result.m_ulSteamIDLobby, MANAGER_ID, SteamUser.GetSteamID().ToString()); lobbyInfo.owner = SteamUser.GetSteamID(); SteamMatchmaking.SetLobbyData((CSteamID)result.m_ulSteamIDLobby, "AllowDebug", (debugAllowed ? "True" : "False")); lobbyInfo.debugAllowed = debugAllowed; SteamMatchmaking.SetLobbyData((CSteamID)result.m_ulSteamIDLobby, "SpearsHit", (spearsHit ? "True" : "False")); lobbyInfo.spearsHit = spearsHit; //SteamMatchmaking.SetLobbyData((CSteamID)result.m_ulSteamIDLobby, "OtherStart", (otherStart ? "True" : "False")); //lobbyInfo.otherStart = otherStart; lobbyInfo.memberLimit = lobbyMax; lobbyInfo.memberNum = 1; SteamMatchmaking.SetLobbyData((CSteamID)result.m_ulSteamIDLobby, "Version", Monkland.VERSION); lobbyInfo.version = Monkland.VERSION; }
private void ReadyChat(CSteamID sentPlayer) { MultiplayerChat.AddChat(string.Format("User {0} is now: " + (readiedPlayers.Contains(sentPlayer.m_SteamID) ? "Ready!" : "Not Ready."), SteamFriends.GetFriendPersonaName(sentPlayer))); //MultiplayerChat.chatStrings.Add(string.Format("User {0} changed their color to: " + playerColors[MonklandSteamManager.connectedPlayers.IndexOf(sentPlayer.m_SteamID)].r + ", " + playerColors[MonklandSteamManager.connectedPlayers.IndexOf(sentPlayer.m_SteamID)].g + ", " + playerColors[MonklandSteamManager.connectedPlayers.IndexOf(sentPlayer.m_SteamID)].b, SteamFriends.GetFriendPersonaName(sentPlayer))); }
void Awake() { SP = this; }
void Awake() { SP = this; rmm = gameObject.GetComponent <RoomMultiplayerMenu>(); }