Beispiel #1
0
    public void SavePlayerRpg(SerialPlayerRpg spr, string playerName)
    {
        string playerId = QueryReady(GetPlayerId(playerName));

        using (IDbConnection dbconn = new SqliteConnection(connectionString))
        {
            dbconn.Open();
            using (IDbCommand dbcmd = dbconn.CreateCommand())
            {
                string sqlQuery = "UPDATE Characters"
                                  + " SET CName=" + QueryReady(spr.cName)
                                  + ", Yang=" + QueryReady(spr.yang)
                                  + ", Level=" + QueryReady(spr.level)
                                  + ", Exp=" + QueryReady(spr.exp)
                                  + ", StatusPoints=" + QueryReady(spr.sPoints)
                                  + ", StatusPointsTab=" + QueryReady(spr.sPointsTab)
                                  + ", CurrentHp=" + QueryReady(spr.cHp)
                                  + ", CurrentEnergy=" + QueryReady(spr.cEn)
                                  + ", CurrentStamina=" + QueryReady(spr.cSt)
                                  + ", BaseVit=" + QueryReady(spr.bVit)
                                  + ", BaseInt=" + QueryReady(spr.bInt)
                                  + ", BaseStr=" + QueryReady(spr.bStr)
                                  + ", BaseDex=" + QueryReady(spr.bDex)
                                  + " WHERE IdC=" + playerId;
                dbcmd.CommandText = sqlQuery;
                dbcmd.ExecuteNonQuery();
            }
        }
    }
Beispiel #2
0
    private void CmdSerializePlayerRpg(string cName, long yang, int level, long exp,
                                       int sPoints, string sPointsTab, float cHp, float cEn, float cSt,
                                       int bVit, int bInt, int bStr, int bDex, string playerName)
    {
        SerialPlayerRpg spr = new SerialPlayerRpg(cName, yang, level, exp, sPoints, sPointsTab, cHp, cEn, cSt, bVit, bInt, bStr, bDex);

        SerializationDatabase.instance.databaseControl.SavePlayerRpg(spr, playerName);
    }
Beispiel #3
0
 public void CallRpcLoadPlayerRpgFromDatabase(SerialPlayerRpg spr, string playerName)
 {
     if (isServer)
     {
         RpcLoadPlayerRpgFromDatabase(spr.cName, spr.yang, spr.level, spr.exp,
                                      spr.sPoints, spr.sPointsTab, spr.cHp, spr.cEn, spr.cSt,
                                      spr.bVit, spr.bInt, spr.bStr, spr.bDex, playerName);
     }
 }
Beispiel #4
0
 public void CallCmdSerializePlayerRpg()
 {
     if (isLocalPlayer)
     {
         SerialPlayerRpg spr = GlobalSerialization.SerializePlayerRpg(GetComponent <PlayerRpg>());
         CmdSerializePlayerRpg(spr.cName, spr.yang, spr.level, spr.exp,
                               spr.sPoints, spr.sPointsTab, spr.cHp, spr.cEn, spr.cSt,
                               spr.bVit, spr.bInt, spr.bStr, spr.bDex, GetComponent <PlayerRpg>().playerName);
     }
 }
Beispiel #5
0
    public void SetupSerializedValues(SerialPlayerRpg spr)
    {
        CmdSetName(spr.cName);
        Yang  = spr.yang;
        Level = spr.level;
        RefreshMaxExp();
        Exp                = spr.exp;
        StatusPoints       = spr.sPoints;
        spAcquisitionTable = GlobalSerialization.DeserializeSpAquisitionTable(spr.sPointsTab);

        BaseVit = spr.bVit;
        BaseInt = spr.bInt;
        BaseStr = spr.bStr;
        BaseDex = spr.bDex;
        CalculateStatsDerivatives();

        CmdManipulateHealth(spr.cHp);
        Energy  = spr.cEn;
        Stamina = spr.cSt;
    }
Beispiel #6
0
    public SerialPlayerRpg LoadPlayerRpg(string playerName)
    {
        string          playerId = QueryReady(GetPlayerId(playerName));
        SerialPlayerRpg spr      = null;

        using (IDbConnection dbconn = new SqliteConnection(connectionString))
        {
            dbconn.Open();
            using (IDbCommand dbcmd = dbconn.CreateCommand())
            {
                string sqlQuery = "SELECT CName, Yang, Level, Exp, StatusPoints, StatusPointsTab, CurrentHp,"
                                  + " CurrentEnergy, CurrentStamina, BaseVit, BaseInt, BaseStr, BaseDex"
                                  + " FROM Characters WHERE IdC=" + playerId;
                dbcmd.CommandText = sqlQuery;
                using (IDataReader reader = dbcmd.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        string cname      = reader.GetString(0);
                        long   yang       = reader.GetInt64(1);
                        int    lvl        = reader.GetInt32(2);
                        long   exp        = reader.GetInt64(3);
                        int    spoints    = reader.GetInt32(4);
                        string spointstab = reader.GetString(5);
                        float  chp        = reader.GetFloat(6);
                        float  cen        = reader.GetFloat(7);
                        float  cst        = reader.GetFloat(8);
                        int    bvit       = reader.GetInt32(9);
                        int    bint       = reader.GetInt32(10);
                        int    bstr       = reader.GetInt32(11);
                        int    bdex       = reader.GetInt32(12);

                        spr = new SerialPlayerRpg(cname, yang, lvl, exp, spoints, spointstab, chp, cen, cst, bvit, bint, bstr, bdex);
                    }
                }
            }
        }

        return(spr);
    }
 public static void DeserializePlayerRpg(SerialPlayerRpg serialPlayer, PlayerRpg player)
 {
     player.SetupSerializedValues(serialPlayer);
 }