Example #1
0
 public static void NewQuestLog(_Quest_Log ql)
 {
     try
     {
         ByteBuffer.ByteBuffer buffer = new ByteBuffer.ByteBuffer();
         Log.log("Sending New Quest Log response.", Log.LogType.SENT);
         BuildBasePacket((int)GameServerSendPacketNumbers.NewQuestLog, ref buffer);
         buffer.WriteInteger(ql.Character_ID);
         buffer.WriteInteger(ql.Quest_ID);
         buffer.WriteInteger(ql.Log_ID);
         sendData(ConnectionType.GAMESERVER, GameServerSendPacketNumbers.NewQuestLog.ToString(), buffer.ToArray());
     }
     catch (Exception e)
     {
         Log.log("Building New Quest Log packet failed. > " + e.Message, Log.LogType.ERROR);
         return;
     }
 }
Example #2
0
        private static void UpdateQuestLog(ConnectionType type, byte[] data)
        {
            ByteBuffer.ByteBuffer buffer = new ByteBuffer.ByteBuffer();
            buffer.WriteBytes(data);
            ReadHeader(ref buffer);
            int        Quest_ID           = buffer.ReadInteger();
            int        Character_ID       = buffer.ReadInteger();
            int        Objective_Progress = buffer.ReadInteger();
            int        Quest_Status       = buffer.ReadInteger();
            _Quest_Log ql = Data.ContainsKey(Character_ID, Quest_ID);

            if (ql != null)
            {
                ql.Quest_Status = Quest_Status;
                ql.Progress     = Objective_Progress;
            }
            else
            {
                ql        = new _Quest_Log(-1, Character_ID, Quest_ID, Quest_Status, 0);
                ql.Log_ID = Database.instance.Insert_Record("CALL CreateQuestLog(" + Quest_ID + ", " + Character_ID + ", 0, " + Quest_Status + ");");
                Data.tbl_Quest_Log.TryAdd(ql.Log_ID, ql);
            }
        }