Advertisement
gespnit

reddit comment lmao

Apr 23rd, 2025
28
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.09 KB | None | 0 0
  1. i'm just trying to trigger a remoteEvent on touch which will update my Completions value in my database. Also note that the event is called UpdateLeaderboardEvent
  2. Local script (in StarterPlayerScripts):
  3. local ReplicatedStorage = game:GetService("ReplicatedStorage")
  4. local Players = game:GetService("Players")
  5. local player = Players.LocalPlayer
  6.  
  7. local debounce = false
  8. local event = ReplicatedStorage:WaitForChild("UpdateLeaderboardEvent")
  9.  
  10. local testPart = workspace.testPart
  11.  
  12. -- Check if testPart exists
  13. if testPart then
  14. testPart.Touched:Connect(function(hit)
  15. if hit.Parent:FindFirstChild("Humanoid") and not debounce then
  16. debounce = true
  17. event:FireServer()
  18. print("Requested leaderboard update")
  19. task.delay(2, function()
  20. debounce = false
  21. end)
  22. end
  23. end)
  24. else
  25. warn("Could not find 'test' part in 'Lobby/Spawn'.")
  26. end
  27. Script inside my testPart:
  28. local ReplicatedStorage = game:GetService("ReplicatedStorage")
  29. local ServerStorage = game:GetService("ServerStorage")
  30. local Players = game:GetService("Players")
  31. local DataStoreService = game:GetService("DataStoreService")
  32. local towerCompletionDataStore = DataStoreService:GetDataStore("TowerCompletionDataStore")
  33.  
  34. local event = ReplicatedStorage:WaitForChild("UpdateLeaderboardEvent")
  35. local TowerCompletionUpdater = require(ServerStorage:WaitForChild("TowerCompletionUpdater"))
  36.  
  37. event.OnServerEvent:Connect(function(player)
  38. local success, Completions = pcall(function()
  39. return towerCompletionDataStore:GetAsync(player.UserId)
  40. end)
  41.  
  42. if not success or Completions == nil then
  43. Completions = 0
  44. end
  45.  
  46. Completions = Completions + 1
  47.  
  48. local saveSuccess, errorMessage = pcall(function()
  49. towerCompletionDataStore:SetAsync(player.UserId, Completions)
  50. end)
  51.  
  52. if saveSuccess then
  53. print("Leaderboard updated for", player.Name, "with new completion count:", Completions)
  54. else
  55. print("Failed to update leaderboard for", player.Name, "due to error:", errorMessage)
  56. end
  57.  
  58. TowerCompletionUpdater.updateLeaderboard(player)
  59. end)
  60. This is everything related to it (apart from the database and leaderboard setup, of course)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement