Line 443 =
rating1 = rating1()
Line 443 =
rating1 = rating1()
okay so I noticed you have 3 variables with the same name Rating1 and rating1 and function rating1, do you think you can change them, it could be messing up everything
In the future try to declare variables with more unique names so you donāt replace existing variables
done, what now? omg roblox let me post
show me local script code so i can see changes
it prints my correct value but says a bad request from HTTP 400 (Bad Request)
Fr_Loaderā, Line 29
local gui = script.Parent
local Main = gui.Main
-- ID's: Empty: 8528934593 | Half: 8528935468 | Full: 8528936413
local Rating1 = Main.Rating1
Rating1.Star1_Service_Half.MouseButton1Click:Connect(function()
Rating1.Star1_Service_Image_Half.Visible = true
Rating1.Star2_Service_Image_Half.Visible = false
Rating1.Star3_Service_Image_Half.Visible = false
Rating1.Star4_Service_Image_Half.Visible = false
Rating1.Star5_Service_Image_Half.Visible = false
Rating1.Star1_Service_Image_Full.Visible = false
Rating1.Star2_Service_Image_Full.Visible = false
Rating1.Star3_Service_Image_Full.Visible = false
Rating1.Star4_Service_Image_Full.Visible = false
Rating1.Star5_Service_Image_Full.Visible = false
end)
Rating1.Star1_Service_Full.MouseButton1Click:Connect(function()
Rating1.Star1_Service_Image_Half.Visible = false
Rating1.Star2_Service_Image_Half.Visible = false
Rating1.Star3_Service_Image_Half.Visible = false
Rating1.Star4_Service_Image_Half.Visible = false
Rating1.Star5_Service_Image_Half.Visible = false
Rating1.Star1_Service_Image_Full.Visible = true
Rating1.Star2_Service_Image_Full.Visible = false
Rating1.Star3_Service_Image_Full.Visible = false
Rating1.Star4_Service_Image_Full.Visible = false
Rating1.Star5_Service_Image_Full.Visible = false
end)
Rating1.Star2_Service_Half.MouseButton1Click:Connect(function()
Rating1.Star1_Service_Image_Half.Visible = false
Rating1.Star2_Service_Image_Half.Visible = true
Rating1.Star3_Service_Image_Half.Visible = false
Rating1.Star4_Service_Image_Half.Visible = false
Rating1.Star5_Service_Image_Half.Visible = false
Rating1.Star1_Service_Image_Full.Visible = true
Rating1.Star2_Service_Image_Full.Visible = false
Rating1.Star3_Service_Image_Full.Visible = false
Rating1.Star4_Service_Image_Full.Visible = false
Rating1.Star5_Service_Image_Full.Visible = false
end)
Rating1.Star2_Service_Full.MouseButton1Click:Connect(function()
Rating1.Star1_Service_Image_Half.Visible = false
Rating1.Star2_Service_Image_Half.Visible = false
Rating1.Star3_Service_Image_Half.Visible = false
Rating1.Star4_Service_Image_Half.Visible = false
Rating1.Star5_Service_Image_Half.Visible = false
Rating1.Star1_Service_Image_Full.Visible = true
Rating1.Star2_Service_Image_Full.Visible = true
Rating1.Star3_Service_Image_Full.Visible = false
Rating1.Star4_Service_Image_Full.Visible = false
Rating1.Star5_Service_Image_Full.Visible = false
end)
Rating1.Star3_Service_Half.MouseButton1Click:Connect(function()
Rating1.Star1_Service_Image_Half.Visible = false
Rating1.Star2_Service_Image_Half.Visible = false
Rating1.Star3_Service_Image_Half.Visible = true
Rating1.Star4_Service_Image_Half.Visible = false
Rating1.Star5_Service_Image_Half.Visible = false
Rating1.Star1_Service_Image_Full.Visible = true
Rating1.Star2_Service_Image_Full.Visible = true
Rating1.Star3_Service_Image_Full.Visible = false
Rating1.Star4_Service_Image_Full.Visible = false
Rating1.Star5_Service_Image_Full.Visible = false
end)
Rating1.Star3_Service_Full.MouseButton1Click:Connect(function()
Rating1.Star1_Service_Image_Half.Visible = false
Rating1.Star2_Service_Image_Half.Visible = false
Rating1.Star3_Service_Image_Half.Visible = false
Rating1.Star4_Service_Image_Half.Visible = false
Rating1.Star5_Service_Image_Half.Visible = false
Rating1.Star1_Service_Image_Full.Visible = true
Rating1.Star2_Service_Image_Full.Visible = true
Rating1.Star3_Service_Image_Full.Visible = true
Rating1.Star4_Service_Image_Full.Visible = false
Rating1.Star5_Service_Image_Full.Visible = false
end)
Rating1.Star4_Service_Half.MouseButton1Click:Connect(function()
Rating1.Star1_Service_Image_Half.Visible = false
Rating1.Star2_Service_Image_Half.Visible = false
Rating1.Star3_Service_Image_Half.Visible = false
Rating1.Star4_Service_Image_Half.Visible = true
Rating1.Star5_Service_Image_Half.Visible = false
Rating1.Star1_Service_Image_Full.Visible = true
Rating1.Star2_Service_Image_Full.Visible = true
Rating1.Star3_Service_Image_Full.Visible = true
Rating1.Star4_Service_Image_Full.Visible = false
Rating1.Star5_Service_Image_Full.Visible = false
end)
Rating1.Star4_Service_Full.MouseButton1Click:Connect(function()
Rating1.Star1_Service_Image_Half.Visible = false
Rating1.Star2_Service_Image_Half.Visible = false
Rating1.Star3_Service_Image_Half.Visible = false
Rating1.Star4_Service_Image_Half.Visible = false
Rating1.Star5_Service_Image_Half.Visible = false
Rating1.Star1_Service_Image_Full.Visible = true
Rating1.Star2_Service_Image_Full.Visible = true
Rating1.Star3_Service_Image_Full.Visible = true
Rating1.Star4_Service_Image_Full.Visible = true
Rating1.Star5_Service_Image_Full.Visible = false
end)
Rating1.Star5_Service_Half.MouseButton1Click:Connect(function()
Rating1.Star1_Service_Image_Half.Visible = false
Rating1.Star2_Service_Image_Half.Visible = false
Rating1.Star3_Service_Image_Half.Visible = false
Rating1.Star4_Service_Image_Half.Visible = false
Rating1.Star5_Service_Image_Half.Visible = true
Rating1.Star1_Service_Image_Full.Visible = true
Rating1.Star2_Service_Image_Full.Visible = true
Rating1.Star3_Service_Image_Full.Visible = true
Rating1.Star4_Service_Image_Full.Visible = true
Rating1.Star5_Service_Image_Full.Visible = false
end)
Rating1.Star5_Service_Full.MouseButton1Click:Connect(function()
Rating1.Star1_Service_Image_Half.Visible = false
Rating1.Star2_Service_Image_Half.Visible = false
Rating1.Star3_Service_Image_Half.Visible = false
Rating1.Star4_Service_Image_Half.Visible = false
Rating1.Star5_Service_Image_Half.Visible = false
Rating1.Star1_Service_Image_Full.Visible = true
Rating1.Star2_Service_Image_Full.Visible = true
Rating1.Star3_Service_Image_Full.Visible = true
Rating1.Star4_Service_Image_Full.Visible = true
Rating1.Star5_Service_Image_Full.Visible = true
end)
-- Rating2
local Rating2 = Main.Rating2
Rating2.Star1_Service_Half.MouseButton1Click:Connect(function()
Rating2.Star1_Service_Image_Half.Visible = true
Rating2.Star2_Service_Image_Half.Visible = false
Rating2.Star3_Service_Image_Half.Visible = false
Rating2.Star4_Service_Image_Half.Visible = false
Rating2.Star5_Service_Image_Half.Visible = false
Rating2.Star1_Service_Image_Full.Visible = false
Rating2.Star2_Service_Image_Full.Visible = false
Rating2.Star3_Service_Image_Full.Visible = false
Rating2.Star4_Service_Image_Full.Visible = false
Rating2.Star5_Service_Image_Full.Visible = false
end)
Rating2.Star1_Service_Full.MouseButton1Click:Connect(function()
Rating2.Star1_Service_Image_Half.Visible = false
Rating2.Star2_Service_Image_Half.Visible = false
Rating2.Star3_Service_Image_Half.Visible = false
Rating2.Star4_Service_Image_Half.Visible = false
Rating2.Star5_Service_Image_Half.Visible = false
Rating2.Star1_Service_Image_Full.Visible = true
Rating2.Star2_Service_Image_Full.Visible = false
Rating2.Star3_Service_Image_Full.Visible = false
Rating2.Star4_Service_Image_Full.Visible = false
Rating2.Star5_Service_Image_Full.Visible = false
end)
Rating2.Star2_Service_Half.MouseButton1Click:Connect(function()
Rating2.Star1_Service_Image_Half.Visible = false
Rating2.Star2_Service_Image_Half.Visible = true
Rating2.Star3_Service_Image_Half.Visible = false
Rating2.Star4_Service_Image_Half.Visible = false
Rating2.Star5_Service_Image_Half.Visible = false
Rating2.Star1_Service_Image_Full.Visible = true
Rating2.Star2_Service_Image_Full.Visible = false
Rating2.Star3_Service_Image_Full.Visible = false
Rating2.Star4_Service_Image_Full.Visible = false
Rating2.Star5_Service_Image_Full.Visible = false
end)
Rating2.Star2_Service_Full.MouseButton1Click:Connect(function()
Rating2.Star1_Service_Image_Half.Visible = false
Rating2.Star2_Service_Image_Half.Visible = false
Rating2.Star3_Service_Image_Half.Visible = false
Rating2.Star4_Service_Image_Half.Visible = false
Rating2.Star5_Service_Image_Half.Visible = false
Rating2.Star1_Service_Image_Full.Visible = true
Rating2.Star2_Service_Image_Full.Visible = true
Rating2.Star3_Service_Image_Full.Visible = false
Rating2.Star4_Service_Image_Full.Visible = false
Rating2.Star5_Service_Image_Full.Visible = false
end)
Rating2.Star3_Service_Half.MouseButton1Click:Connect(function()
Rating2.Star1_Service_Image_Half.Visible = false
Rating2.Star2_Service_Image_Half.Visible = false
Rating2.Star3_Service_Image_Half.Visible = true
Rating2.Star4_Service_Image_Half.Visible = false
Rating2.Star5_Service_Image_Half.Visible = false
Rating2.Star1_Service_Image_Full.Visible = true
Rating2.Star2_Service_Image_Full.Visible = true
Rating2.Star3_Service_Image_Full.Visible = false
Rating2.Star4_Service_Image_Full.Visible = false
Rating2.Star5_Service_Image_Full.Visible = false
end)
Rating2.Star3_Service_Full.MouseButton1Click:Connect(function()
Rating2.Star1_Service_Image_Half.Visible = false
Rating2.Star2_Service_Image_Half.Visible = false
Rating2.Star3_Service_Image_Half.Visible = false
Rating2.Star4_Service_Image_Half.Visible = false
Rating2.Star5_Service_Image_Half.Visible = false
Rating2.Star1_Service_Image_Full.Visible = true
Rating2.Star2_Service_Image_Full.Visible = true
Rating2.Star3_Service_Image_Full.Visible = true
Rating2.Star4_Service_Image_Full.Visible = false
Rating2.Star5_Service_Image_Full.Visible = false
end)
Rating2.Star4_Service_Half.MouseButton1Click:Connect(function()
Rating2.Star1_Service_Image_Half.Visible = false
Rating2.Star2_Service_Image_Half.Visible = false
Rating2.Star3_Service_Image_Half.Visible = false
Rating2.Star4_Service_Image_Half.Visible = true
Rating2.Star5_Service_Image_Half.Visible = false
Rating2.Star1_Service_Image_Full.Visible = true
Rating2.Star2_Service_Image_Full.Visible = true
Rating2.Star3_Service_Image_Full.Visible = true
Rating2.Star4_Service_Image_Full.Visible = false
Rating2.Star5_Service_Image_Full.Visible = false
end)
Rating2.Star4_Service_Full.MouseButton1Click:Connect(function()
Rating2.Star1_Service_Image_Half.Visible = false
Rating2.Star2_Service_Image_Half.Visible = false
Rating2.Star3_Service_Image_Half.Visible = false
Rating2.Star4_Service_Image_Half.Visible = false
Rating2.Star5_Service_Image_Half.Visible = false
Rating2.Star1_Service_Image_Full.Visible = true
Rating2.Star2_Service_Image_Full.Visible = true
Rating2.Star3_Service_Image_Full.Visible = true
Rating2.Star4_Service_Image_Full.Visible = true
Rating2.Star5_Service_Image_Full.Visible = false
end)
Rating2.Star5_Service_Half.MouseButton1Click:Connect(function()
Rating2.Star1_Service_Image_Half.Visible = false
Rating2.Star2_Service_Image_Half.Visible = false
Rating2.Star3_Service_Image_Half.Visible = false
Rating2.Star4_Service_Image_Half.Visible = false
Rating2.Star5_Service_Image_Half.Visible = true
Rating2.Star1_Service_Image_Full.Visible = true
Rating2.Star2_Service_Image_Full.Visible = true
Rating2.Star3_Service_Image_Full.Visible = true
Rating2.Star4_Service_Image_Full.Visible = true
Rating2.Star5_Service_Image_Full.Visible = false
end)
Rating2.Star5_Service_Full.MouseButton1Click:Connect(function()
Rating2.Star1_Service_Image_Half.Visible = false
Rating2.Star2_Service_Image_Half.Visible = false
Rating2.Star3_Service_Image_Half.Visible = false
Rating2.Star4_Service_Image_Half.Visible = false
Rating2.Star5_Service_Image_Half.Visible = false
Rating2.Star1_Service_Image_Full.Visible = true
Rating2.Star2_Service_Image_Full.Visible = true
Rating2.Star3_Service_Image_Full.Visible = true
Rating2.Star4_Service_Image_Full.Visible = true
Rating2.Star5_Service_Image_Full.Visible = true
end)
-- Rating 3
local Rating3 = Main.Rating3
Rating3.Star1_Service_Half.MouseButton1Click:Connect(function()
Rating3.Star1_Service_Image_Half.Visible = true
Rating3.Star2_Service_Image_Half.Visible = false
Rating3.Star3_Service_Image_Half.Visible = false
Rating3.Star4_Service_Image_Half.Visible = false
Rating3.Star5_Service_Image_Half.Visible = false
Rating3.Star1_Service_Image_Full.Visible = false
Rating3.Star2_Service_Image_Full.Visible = false
Rating3.Star3_Service_Image_Full.Visible = false
Rating3.Star4_Service_Image_Full.Visible = false
Rating3.Star5_Service_Image_Full.Visible = false
end)
Rating3.Star1_Service_Full.MouseButton1Click:Connect(function()
Rating3.Star1_Service_Image_Half.Visible = false
Rating3.Star2_Service_Image_Half.Visible = false
Rating3.Star3_Service_Image_Half.Visible = false
Rating3.Star4_Service_Image_Half.Visible = false
Rating3.Star5_Service_Image_Half.Visible = false
Rating3.Star1_Service_Image_Full.Visible = true
Rating3.Star2_Service_Image_Full.Visible = false
Rating3.Star3_Service_Image_Full.Visible = false
Rating3.Star4_Service_Image_Full.Visible = false
Rating3.Star5_Service_Image_Full.Visible = false
end)
Rating3.Star2_Service_Half.MouseButton1Click:Connect(function()
Rating3.Star1_Service_Image_Half.Visible = false
Rating3.Star2_Service_Image_Half.Visible = true
Rating3.Star3_Service_Image_Half.Visible = false
Rating3.Star4_Service_Image_Half.Visible = false
Rating3.Star5_Service_Image_Half.Visible = false
Rating3.Star1_Service_Image_Full.Visible = true
Rating3.Star2_Service_Image_Full.Visible = false
Rating3.Star3_Service_Image_Full.Visible = false
Rating3.Star4_Service_Image_Full.Visible = false
Rating3.Star5_Service_Image_Full.Visible = false
end)
Rating3.Star2_Service_Full.MouseButton1Click:Connect(function()
Rating3.Star1_Service_Image_Half.Visible = false
Rating3.Star2_Service_Image_Half.Visible = false
Rating3.Star3_Service_Image_Half.Visible = false
Rating3.Star4_Service_Image_Half.Visible = false
Rating3.Star5_Service_Image_Half.Visible = false
Rating3.Star1_Service_Image_Full.Visible = true
Rating3.Star2_Service_Image_Full.Visible = true
Rating3.Star3_Service_Image_Full.Visible = false
Rating3.Star4_Service_Image_Full.Visible = false
Rating3.Star5_Service_Image_Full.Visible = false
end)
Rating3.Star3_Service_Half.MouseButton1Click:Connect(function()
Rating3.Star1_Service_Image_Half.Visible = false
Rating3.Star2_Service_Image_Half.Visible = false
Rating3.Star3_Service_Image_Half.Visible = true
Rating3.Star4_Service_Image_Half.Visible = false
Rating3.Star5_Service_Image_Half.Visible = false
Rating3.Star1_Service_Image_Full.Visible = true
Rating3.Star2_Service_Image_Full.Visible = true
Rating3.Star3_Service_Image_Full.Visible = false
Rating3.Star4_Service_Image_Full.Visible = false
Rating3.Star5_Service_Image_Full.Visible = false
end)
Rating3.Star3_Service_Full.MouseButton1Click:Connect(function()
Rating3.Star1_Service_Image_Half.Visible = false
Rating3.Star2_Service_Image_Half.Visible = false
Rating3.Star3_Service_Image_Half.Visible = false
Rating3.Star4_Service_Image_Half.Visible = false
Rating3.Star5_Service_Image_Half.Visible = false
Rating3.Star1_Service_Image_Full.Visible = true
Rating3.Star2_Service_Image_Full.Visible = true
Rating3.Star3_Service_Image_Full.Visible = true
Rating3.Star4_Service_Image_Full.Visible = false
Rating3.Star5_Service_Image_Full.Visible = false
end)
Rating3.Star4_Service_Half.MouseButton1Click:Connect(function()
Rating3.Star1_Service_Image_Half.Visible = false
Rating3.Star2_Service_Image_Half.Visible = false
Rating3.Star3_Service_Image_Half.Visible = false
Rating3.Star4_Service_Image_Half.Visible = true
Rating3.Star5_Service_Image_Half.Visible = false
Rating3.Star1_Service_Image_Full.Visible = true
Rating3.Star2_Service_Image_Full.Visible = true
Rating3.Star3_Service_Image_Full.Visible = true
Rating3.Star4_Service_Image_Full.Visible = false
Rating3.Star5_Service_Image_Full.Visible = false
end)
Rating3.Star4_Service_Full.MouseButton1Click:Connect(function()
Rating3.Star1_Service_Image_Half.Visible = false
Rating3.Star2_Service_Image_Half.Visible = false
Rating3.Star3_Service_Image_Half.Visible = false
Rating3.Star4_Service_Image_Half.Visible = false
Rating3.Star5_Service_Image_Half.Visible = false
Rating3.Star1_Service_Image_Full.Visible = true
Rating3.Star2_Service_Image_Full.Visible = true
Rating3.Star3_Service_Image_Full.Visible = true
Rating3.Star4_Service_Image_Full.Visible = true
Rating3.Star5_Service_Image_Full.Visible = false
end)
Rating3.Star5_Service_Half.MouseButton1Click:Connect(function()
Rating3.Star1_Service_Image_Half.Visible = false
Rating3.Star2_Service_Image_Half.Visible = false
Rating3.Star3_Service_Image_Half.Visible = false
Rating3.Star4_Service_Image_Half.Visible = false
Rating3.Star5_Service_Image_Half.Visible = true
Rating3.Star1_Service_Image_Full.Visible = true
Rating3.Star2_Service_Image_Full.Visible = true
Rating3.Star3_Service_Image_Full.Visible = true
Rating3.Star4_Service_Image_Full.Visible = true
Rating3.Star5_Service_Image_Full.Visible = false
end)
Rating3.Star5_Service_Full.MouseButton1Click:Connect(function()
Rating3.Star1_Service_Image_Half.Visible = false
Rating3.Star2_Service_Image_Half.Visible = false
Rating3.Star3_Service_Image_Half.Visible = false
Rating3.Star4_Service_Image_Half.Visible = false
Rating3.Star5_Service_Image_Half.Visible = false
Rating3.Star1_Service_Image_Full.Visible = true
Rating3.Star2_Service_Image_Full.Visible = true
Rating3.Star3_Service_Image_Full.Visible = true
Rating3.Star4_Service_Image_Full.Visible = true
Rating3.Star5_Service_Image_Full.Visible = true
end)
local function rating1check()
if Rating1.Star5_Service_Image_Full.Visible == true then
return "5"
elseif Rating1.Star5_Service_Image_Half.Visible == true then
return "4.5"
elseif Rating1.Star4_Service_Image_Full.Visible == true then
return "4"
elseif Rating1.Star4_Service_Image_Half.Visible == true then
return "3.5"
elseif Rating1.Star3_Service_Image_Full.Visible == true then
return "3"
elseif Rating1.Star3_Service_Image_Half.Visible == true then
return "2.5"
elseif Rating1.Star2_Service_Image_Full.Visible == true then
return "2"
elseif Rating1.Star2_Service_Image_Half.Visible == true then
return "1.5"
elseif Rating1.Star1_Service_Image_Full.Visible == true then
return "1"
elseif Rating1.Star1_Service_Image_Half.Visible == true then
return "0.5"
end
return "0"
end
Main.SendBtn.MouseButton1Click:Connect(function(rating1checked)
rating1checked = rating1check()
game.ReplicatedStorage.FlightRating.RE.Main:FireServer(rating1checked)
end)
local url = "i removed the webhook for safety purposes"
local http = game:GetService("HttpService")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local folder = Instance.new("Folder")
folder.Name = "ratings"
folder.Parent = script
ReplicatedStorage.FlightRating.RE.Main.OnServerEvent:Connect(function(plr)
local function rating(number)
for _, child in ipairs(plr.PlayerGui.FlightRating.Main["Rating"..number]:GetChildren()) do
local stars, shape = child.Name:match("^Star(%d)_Service_Image_(%a+)$")
if stars and shape then
if shape == "Full" then
return stars
elseif shape == "Half" then
return tostring(tonumber(stars) - 0.5)
end
end
end
end
local rating1data, rating2data, rating3data = rating(1), rating(2), rating(3)
local data = {
['embeds'] = {{
['title'] = "New Rating from "..plr.Name,
['description'] = "Service: "..rating1data,
['color'] = 3769131,
['url'] = "https://www.roblox.com/isers/"..plr.UserId.."/profile"
}}
}
local finaldata = http:JSONEncode(data)
http:PostAsync(url, finaldata)
end)
You donāt have to use this, I just like cutting down scripts.
hmm I am not sure exactly what is wrong but maybe take a look at this:
The reason the error occurs is because the server canāt see local changes on the player UI, made by a LocalScript. To make the script work you should move the UI code on the client, and use remotes to send the ratings to the server(I also cleaned the script for the shake of readability):
--LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Players = game:GetService("Players")
local Player = Players.LocalPlayer
local PlayerUI = Player:WaitForChild("PlayerGui")
local main = PlayerUI:WaitForChild("FlightRating"):WaitForChild("Main")
function getRating(category)
local UI = main:WaitForChild("Rating"..category)
local highestStar = 0
local isFull = false
for _, frame in pairs(UI:GetChildren()) do
if not (frame:IsA("GuiObject") and frame.Visible) then continue end --ignore if the star isn't selected
local starString = frame.Name:gsub("%D", "") --only keeping the number inside the frame name(the star)
local star = tonumber(starString)
if not star then continue end
--if the star is bigger than the old one, or a FULL and same as the old one, update the highest value
local full = frame.Name:find("Full")
if star > highestStar or (star == highestStar and full) then
highestStar = star
isFull = full
end
end
if isFull then
return highestStar
else
return highestStar-0.5
end
end
--code here should run after the player rates the game
local rating1data = getRating(1)
local rating2data = getRating(2)
local rating3data = getRating(3)
ReplicatedStorage.FlightRating.RE.Main:FireServer({rating1data, rating2data, rating3data})
--Your server script
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local HttpService = game:GetService("HttpService")
local webhook = ""
local folder = Instance.new("Folder", script)
folder.Name = "ratings"
function validate(ratings)
local function check(rate)
if not rate then return false end
rate = tonumber(rate)
if rate >= 0 and rate <= 5 then
return true
else
return false
end
end
local rate1 = ratings[1]
local rate2 = ratings[2]
local rate3 = ratings[3]
if check(rate1) and check(rate2) and check(rate3) then
return true --only returns true if all the ratings are between 0 and 5
else
return false
end
end
ReplicatedStorage.FlightRating.RE.Main.OnServerEvent:Connect(function(player, ratings)
if not validate(ratings) then --also only allow each user to vote once, they may use it as a way to spam your webhook requests
warn(player.Name, " rating request was invalid!") --maybe exploiting?
return
end
local data = {
embeds = {{
title = "New Rating from "..player.Name,
description = "Service: "..ratings[1], --currently only sends the first rating, you can change that by formatting text using ratings[2], ratings[3], etc.
color = 3769131,
url = "https://www.roblox.com/users/"..player.UserId.."/profile"
}}
}
local encodedData = HttpService:JSONEncode(data)
HttpService:PostAsync(webhook, encodedData)
end)
PS: Also as far Iām aware, Discord blocks any requests made by Roblox servers, which means in order to make the webhook work on actual live servers(outside studio) you must use a proxy.