RobloxScripterAI
Discord ↗
Link Copied to Clipboard
×
"make sure it remembers the player even after they leave the server"
-- server script local DataStoreService = game:GetService("DataStoreService") local myDataStore = DataStoreService:GetDataStore("MyDataStore") local button = script.Parent local Player = game:GetService('Players') local words = {["code"] = 50, ["code2"] = 90, ["code3"] = 70} local hoverSound = script.Parent.Hover local clickSound = script.Parent.Click local successsound = script.Parent.Success local errorsound = script.Parent.Error local textbox = script.Parent.Parent.RedeemTextBox local redeemedCodes = {} button.MouseButton1Click:Connect(function() local player = Player.LocalPlayer local textboxText = textbox.Text local found = false for word, value in pairs(words) do if textboxText == word then local redeemedCodes = myDataStore:GetAsync(player.UserId .. "redeemedCodes") or {} if redeemedCodes[word] then errorsound:Play() button.BackgroundColor3 = Color3.new(167/255, 55/255, 28/255) textbox.TextEditable = false wait(0.5) textbox.TextEditable = true button.BackgroundColor3 = Color3.new(68/255, 167/255, 57/255) return end clickSound:Play() wait(0.5) player.leaderstats.Dollar.Value = player.leaderstats.Dollar.Value + value found = true successsound:Play() redeemedCodes[word] = true myDataStore:SetAsync(player.UserId .. "redeemedCodes", redeemedCodes) break end end if not found then found = false errorsound:Play() button.BackgroundColor3 = Color3.new(167/255, 55/255, 28/255) textbox.TextEditable = false wait(0.5) textbox.TextEditable = true button.BackgroundColor3 = Color3.new(68/255, 167/255, 57/255) end end) local function hover() hoverSound:Play() end button.MouseEnter:Connect(hover) Player.PlayerRemoving:Connect(function(player) local redeemedCodes = myDataStore:GetAsync(player.UserId .. "redeemedCodes") or {} myDataStore:SetAsync(player.UserId .. "redeemedCodes", redeemedCodes) end)