--PRINT HIỂN THỊ TRONG CONSOLE.TXT

local GetPlayerGlobalModDataQ1 = VLGMD.GetPlayerGlobalModDataQ1
local GetPlayerModDataQuest = VLPL.GetPlayerModDataQuest
local GetPlayerGlobalModData = VLGMD.GetPlayerGlobalModData
local GetPlayerGlobalModDataQ3 = VLGMD.GetPlayerGlobalModDataQ3

--Hàm đệ quy truy xuất table và table con bên trong
local function DumpTable(tbl, indent)
    indent = indent or 0
    local prefix = string.rep("  ", indent)

    for k, v in pairs(tbl) do
        if type(v) == "table" then
            print(prefix .. tostring(k) .. " = {")
            DumpTable(v, indent + 1)
            print(prefix .. "}\n")
        else
            print(prefix .. tostring(k) .. " = " .. tostring(v))
        end
    end
end

local hour = 1

local function EveryHours_Prints()
	if hour % 6 == 0 then
		local player = getPlayer()
		if not player then return end		
		--[[
		--Print --danh sách các NPC đang chờ spawn --quest step đang active == true trong NPCsQueueToSpawn
		local questMD = ModData.getOrCreate("VL_Quest")
		if questMD.NPCsQueueToSpawn then
			for qStep, val in pairs(questMD.NPCsQueueToSpawn) do
				if qStep then
					print("Client---NPCsQueueToSpawn List= ", qStep, val)
				end
			end
		end
		]]
		
		--Print --tất cả dữ liệu của Global ModData ModData.getOrCreate("VL_Quest")
		local questMD = ModData.getOrCreate("VL_Quest")
		print("=========== GLOBAL MOD DATA VL_Quest ===== questMD ===========")
		DumpTable(questMD)
		print("========================== END ===========================")
		
		--Print --tất cả dữ liệu ModData của GetPlayerGlobalModDataQ1
		local playerGMD_Quest_Q1 = GetPlayerGlobalModDataQ1(player, nil)
		print("=========== PLAYER GLOBAL MOD DATA Q1 ===== playerGMD_Quest_Q1 ===========")
		DumpTable(playerGMD_Quest_Q1)
		print("========================== END ============================")
		
		--Print --tất cả dữ liệu của Player ModData
		local pDataQ = GetPlayerModDataQuest(nil)
		print("=========== PLAYER QUEST MOD DATA ===== player:getModData() ===========")
		DumpTable(pDataQ)
		print("=========================== END ===========================")
		
		--Print --tất cả dữ liệu của playerGMD.Data
		local playerGMD = GetPlayerGlobalModData(player)
		print("=========== PLAYER MODDATA ===== playerGMD.Data ===========")
		DumpTable(playerGMD.Data)
		print("=========================== END ===========================")
		
		--Print --tất cả dữ liệu của playerGMD.Event
		print("========== PLAYER MODDATA ===== playerGMD.Event ===========")
		DumpTable(playerGMD.Event)
		print("=========================== END ===========================")
		
		--Print --tất cả dữ liệu ModData của GetPlayerGlobalModDataQ3
		local playerGMD_Quest_Q3 = GetPlayerGlobalModDataQ3(player, nil)
		print("========= PLAYER GLOBAL MOD DATA Q3 ===== playerGMD_Quest_Q3 =========")
		DumpTable(playerGMD_Quest_Q3)
		print("========================== END ============================")
		
		--Print --tất cả dữ liệu ModData của questMD.Events["ReliefSupply"]
		local questMD = VLGMD.GetQuestGlobalModData(nil)
		questMD.Events["ReliefSupply"] = questMD.Events["ReliefSupply"] or {}
		print("========= MOD DATA ===== questMD.Events.ReliefSupply =========")
		DumpTable(questMD.Events["ReliefSupply"])
		print("========================== END ============================")
		
		
		--Print --tất cả dữ liệu ModData của questMD.Events["CarpetBombing"]
		local questMD = VLGMD.GetQuestGlobalModData(nil)
		questMD.Events["CarpetBombing"] = questMD.Events["CarpetBombing"] or {}
		print("========= MOD DATA ===== questMD.Events.CarpetBombing =========")
		DumpTable(questMD.Events["CarpetBombing"])
		print("========================== END ============================")
	end
	hour = hour + 1
end

--Events.EveryHours.Remove(EveryHours_Prints)
--Events.EveryHours.Add(EveryHours_Prints)
