Am I using OnUpdate() right? Because the code below doesn't print "Updating Messages" when I change the data store's value.
local MessageData = game:GetService("DataStoreService"):GetDataStore("test36Messages") local PlayerKey = "user_"..script.Parent.Parent.Parent.UserId local MessagesUpdated = MessageData:OnUpdate(PlayerKey, function() print("Updating Messages") local data = game.ServerStorage.SAVEDDATA:FindFirstChild(script.Parent.Parent.Parent.Name) for i,v in pairs (data.Messages) do v:Destroy() end for number, message in pairs (MessageData:GetAsync(PlayerKey)) do local value = game.ServerStorage.messagefolder:Clone() value.Name = message["Name"] value.Text.Value = message["Text"] value.GiveReward.Value = message["GiveReward"] value.GiveReward.RewardType.Value = message["RewardType"] value.GiveReward.Reward.Value = message["Reward"]["Gold"] if message["Reward"]["Units"] ~= {} then for i, v in pairs (message["Reward"]["Units"]) do local unit = Instance.new("StringValue") unit.Name = v unit.Value = v unit.Parent = value.GiveReward.Reward end end value.Parent = data.Messages end end ) MessagesUpdated:disconnect()