Ignore:
Timestamp:
Apr 30, 2015, 1:55:16 AM (10 years ago)
Author:
alloc
Message:

Fixes for 11.4

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

Legend:

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

    r230 r233  
    2020                private int
    2121                        lastPositionX, lastPositionY, lastPositionZ;
     22                [OptionalField]
     23                private uint experience;
    2224                [NonSerialized]
    2325                private ClientInfo
     
    9496                }
    9597
     98                public uint Experience {
     99                        get {
     100                                return experience;
     101                        }
     102                }
     103
     104                public float Level {
     105                        get {
     106                                float perc = (float)experience / 600000;
     107                                perc = Mathf.Sqrt (perc);
     108                                return Mathf.Clamp ((perc * 60) + 1, 1, 60);
     109                        }
     110                }
     111
    96112                public void SetOffline ()
    97113                {
     
    121137                }
    122138
     139                public void Update (PlayerDataFile _pdf) {
     140                        experience = _pdf.experience;
     141                        inventory.Update (_pdf);
     142                }
     143
    123144                public Player (string steamId)
    124145                {
  • binary-improvements/7dtd-server-fixes/src/PersistentData/Players.cs

    r202 r233  
    1111                private Dictionary<string, Player> players = new Dictionary<string, Player> ();
    1212
    13                 public Player this [string steamId] {
     13                public Player this [string steamId, bool create] {
    1414                        get {
    1515                                if (players.ContainsKey (steamId))
    1616                                        return players [steamId];
    1717                                else {
    18                                         if (steamId != null && steamId.Length == 17) {
     18                                        if (create && steamId != null && steamId.Length == 17) {
    1919                                                Log.Out ("Created new player entry for ID: " + steamId);
    2020                                                Player p = new Player (steamId);
     
    3535                }
    3636
    37                 public Player GetPlayerByClientId (int _clientid)
    38                 {
    39                         foreach (Player p in players.Values) {
    40                                 if (p.ClientInfo != null && p.ClientInfo.clientId == _clientid) {
    41                                         return p;
    42                                 }
    43                         }
    44                         return null;
    45                 }
    46 
    47                 public Player GetPlayerByNameOrId (string _nameOrId, bool _ignoreColorCodes)
    48                 {
    49                         string sid = GetSteamID (_nameOrId, _ignoreColorCodes);
    50                         if (sid != null)
    51                                 return this [sid];
    52                         else
    53                                 return null;
    54                 }
     37//              public Player GetPlayerByNameOrId (string _nameOrId, bool _ignoreColorCodes)
     38//              {
     39//                      string sid = GetSteamID (_nameOrId, _ignoreColorCodes);
     40//                      if (sid != null)
     41//                              return this [sid];
     42//                      else
     43//                              return null;
     44//              }
    5545
    5646                public string GetSteamID (string _nameOrId, bool _ignoreColorCodes)
Note: See TracChangeset for help on using the changeset viewer.