Example #1
0
        private static void ServerMessageReceived(PSMessage psMessage, bool isPusher)
        {
            if (!isPusher)
            {
                return;
            }
            if (psMessage.ActivityType == ActivityType.MembershipChanged && isPusher)
            {
                if (SingletonManager <UserManager> .Instance.user.Id == psMessage.ToUserId)
                {
                    Debug.LogWarning((object)"Membership Changed", (Object)null);
                    SingletonManager <UserManager> .Instance.user.AllianceMembership = AllianceManager.MembershipStringToEnum(psMessage.ActivityArgument);
                }
                if (SingletonManager <UserManager> .Instance.user.AllianceMembership == AllianceMembership.None)
                {
                    Debug.LogWarning((object)"Membership Reset", (Object)null);
                    SingletonManager <AllianceManager> .Instance.ResetCurrentAlliance();
                }
            }
            if (psMessage.ActivityType == ActivityType.DeviceLogin && !psMessage.ActivityArgument.Equals(UserManager.Md5Sum(SingletonManager <UserManager> .Instance.deviceKey)))
            {
                AlertController.ShowDisconnectPanel(SingletonManager <LocalizationManager> .Instance.GetLocalizedText("Disconnected"), psMessage.MessageString, SingletonManager <LocalizationManager> .Instance.GetLocalizedText("Reload"));
            }
            if (psMessage.ActivityType != ActivityType.ModelUpdate || string.IsNullOrEmpty(psMessage.ActivityArgument))
            {
                return;
            }
            PSMainRoom room = SingletonManager <RoomManager> .Instance.ParseRoom <PSMainRoom>(Regex.Unescape(psMessage.ActivityArgument));

            SingletonManager <ShipManager> .Instance.PlayerShip.GetRoomByRoomId(room.RoomId).ConstructionStartDate = room.ConstructionStartDate;
        }