public static Player ToPlayer(this Playerdb self)
        {
            Player player = ComponentFactory.CreateWithId <Player>(self.Id);

            player.UserId        = self.userid;
            player.createdate    = self.createdate;
            player.exp           = self.exp;
            player.level         = self.level;
            player.hp            = self.hp;
            player.spawnPosition = new Vector3((float)self.spawnVec[0], (float)self.spawnVec[1], (float)self.spawnVec[2]);
            return(player);
        }
        public static Playerdb ToPlayerdb(this Player self)
        {
            Playerdb playerdb = ComponentFactory.CreateWithId <Playerdb>(self.Id);

            playerdb.userid = self.UserId;
            playerdb.exp    = self.exp;
            playerdb.level  = self.level;
            playerdb.hp     = self.hp;
            playerdb.spawnVec.Add(self.spawnPosition.x);
            playerdb.spawnVec.Add(self.spawnPosition.y);
            playerdb.spawnVec.Add(self.spawnPosition.z);
            playerdb.createdate = DateTime.Now.ToString("yyyyMMdd HH:mm:ss");
            return(playerdb);
        }
        void SavePlayer(Player[] players)
        {
            DBProxyComponent dBProxy = Game.Scene.GetComponent <DBProxyComponent>();

            foreach (Player tem in players)
            {
                Playerdb playerdb = ComponentFactory.CreateWithId <Playerdb>(tem.Id);
                playerdb.level = 10;
                playerdb.exp   = 0;
                playerdb.hp    = 40;
                playerdb.spawnVec.Add(tem.spawnPosition.x);
                playerdb.spawnVec.Add(tem.spawnPosition.y);
                playerdb.spawnVec.Add(tem.spawnPosition.z);

                dBProxy.Save(playerdb).Coroutine();
            }
        }