Ignore:
Timestamp:
Aug 30, 2014, 8:08:25 PM (10 years ago)
Author:
alloc
Message:

Fixes

Location:
binary-improvements/7dtd-server-fixes/src/PersistentData
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • binary-improvements/7dtd-server-fixes/src/PersistentData/PersistentContainer.cs

    r144 r146  
    4545                {
    4646                        if (File.Exists (StaticDirectories.GetSaveGameDir () + "/AllocsPeristentData.bin")) {
    47                                 PersistentContainer obj;
    48                                 Stream stream = File.Open (StaticDirectories.GetSaveGameDir () + "/AllocsPeristentData.bin", FileMode.Open);
    49                                 BinaryFormatter bFormatter = new BinaryFormatter ();
    50                                 obj = (PersistentContainer)bFormatter.Deserialize (stream);
    51                                 stream.Close ();
    52                                 instance = obj;
    53                                 return true;
    54                         } else
    55                                 return false;
     47                                try {
     48                                        PersistentContainer obj;
     49                                        Stream stream = File.Open (StaticDirectories.GetSaveGameDir () + "/AllocsPeristentData.bin", FileMode.Open);
     50                                        BinaryFormatter bFormatter = new BinaryFormatter ();
     51                                        obj = (PersistentContainer)bFormatter.Deserialize (stream);
     52                                        stream.Close ();
     53                                        instance = obj;
     54                                        return true;
     55                                } catch (Exception e) {
     56                                        Log.Out ("Exception in PersistentContainer.Load: " + e.Message);
     57                                }
     58                        }
     59                        return false;
    5660                }
    5761
  • binary-improvements/7dtd-server-fixes/src/PersistentData/Player.cs

    r145 r146  
    1313                private string ip;
    1414                private long totalPlayTime;
     15                [OptionalField]
     16                private DateTime
     17                        lastOnline;
    1518                private Inventory inventory;
    1619                [NonSerialized]
     
    7073                }
    7174
     75                public DateTime LastOnline {
     76                        get {
     77                                if (IsOnline)
     78                                        return DateTime.Now;
     79                                else
     80                                        return lastOnline;
     81                        }
     82                }
     83
    7284                public void SetOffline ()
    7385                {
    7486                        Log.Out ("Player set to offline: " + steamId);
    7587                        totalPlayTime += (long)(Time.timeSinceLevelLoad - Entity.CreationTimeSinceLevelLoad);
     88                        lastOnline = DateTime.Now;
    7689                        clientInfo = null;
    7790                }
  • binary-improvements/7dtd-server-fixes/src/PersistentData/Players.cs

    r145 r146  
    2929                public List<string> SteamIDs {
    3030                        get { return new List<string> (players.Keys); }
     31                }
     32
     33                public int Count {
     34                        get { return players.Count; }
    3135                }
    3236
Note: See TracChangeset for help on using the changeset viewer.