public UserManager()
 {
     _users          = new Dictionary <string, User>();
     _connectedUsers = new Dictionary <string, User>();
     SaveVersions.Version_Current.User userSave = new SaveVersions.Version_Current.User("_server_", User.PermissionLevel.Server, new User.ModeratorAction[0]);
     AddUser(new User(userSave));
 }
        public void Save(string folder)
        {
            try {
                if (!Directory.Exists(folder))
                {
                    Directory.CreateDirectory(folder);
                }

                User[] userList = GetUsers();
                for (int i = 0; i < userList.Length; i++)
                {
                    SaveVersions.Version_Current.User userSave = userList[i].Save();
                    string userFoler = folder + userSave.name + GameServer.sepChar;
                    if (!Directory.Exists(userFoler))
                    {
                        Directory.CreateDirectory(userFoler);
                    }
                    FileManager.SaveConfigFile(userFoler + userSave.name + ".json", userSave, false);
                    userList[i].SaveStructures();
                }
            }
            catch (Exception e) {
                Logger.LogError("{0}: {1}\n{2}", e.GetType(), e.Message, e.StackTrace);
            }
            //Logger.Log ("{0} users saved.", userList.Length.ToString());
        }
Example #3
0
 public UserManager()
 {
     _users = new Dictionary<string, User>();
     _connectedUsers = new Dictionary<string, User>();
     SaveVersions.Version_Current.User userSave = new SaveVersions.Version_Current.User("_server_", User.PermissionLevel.Server, new User.ModeratorAction[0]);
     AddUser(new User(userSave));
 }
 public void LoadUsers(string folder)
 {
     if (Directory.Exists(folder))
     {
         string[] userFolders = Directory.GetDirectories(folder);
         for (int i = 0; i < userFolders.Length; i++)
         {
             string player   = new DirectoryInfo(userFolders[i]).Name;
             string savePath = folder + player + GameServer.sepChar + player + ".json";
             if (File.Exists(savePath))
             {
                 SaveVersions.Version_Current.User userSave = FileManager.LoadObject <SaveVersions.Version_Current.User>(savePath, false);
                 if (UserExists(userSave.name))
                 {
                     _users[userSave.name].Load(userSave);
                 }
                 else
                 {
                     AddUser(new User(userSave));
                 }
             }
             else
             {
                 Logger.LogError("cannot find user path: " + savePath);
             }
         }
     }
     else
     {
         Directory.CreateDirectory(folder);
     }
 }
Example #5
0
 public User CreateUser(string name)
 {
     SaveVersions.Version_Current.User usrSave = new SaveVersions.Version_Current.User ();
     usrSave.name = name;
     User user = new User (usrSave);
     _users.Add (name, user);
     return user;
 }
Example #6
0
 public SaveVersions.Version_Current.User Save()
 {
     SaveVersions.Version_Current.User user = new SaveVersions.Version_Current.User();
     user.name       = Name;
     user.permission = Permission;
     SaveSquads();
     return(user);
 }
        public User CreateUser(string name)
        {
            SaveVersions.Version_Current.User usrSave = new SaveVersions.Version_Current.User();
            usrSave.name = name;
            User user = new User(usrSave);

            _users.Add(name, user);
            return(user);
        }
Example #8
0
 public void Load(SaveVersions.Version_Current.User user)
 {
     Name = user.name;
     if (user.permission != PermissionLevel.Server)
     {
         string permissionStr = GameServer.Instance.DB.GetPermission(Name);
         Permission = (PermissionLevel)Enum.Parse(typeof(PermissionLevel), permissionStr, true);
     }
     else
     {
         Permission = PermissionLevel.Server;
     }
     SetFolderName();
     LoadStructures();
     LoadSquads();
 }
Example #9
0
 public User(SaveVersions.Version_Current.User user) : this()
 {
     Load(user);
 }
Example #10
0
 public SaveVersions.Version_Current.User Save()
 {
     SaveVersions.Version_Current.User user = new SaveVersions.Version_Current.User ();
     user.name = Name;
     user.permission = Permission;
     SaveSquads();
     return user;
 }