Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Roblox studio (rebirth)

Максим Захарычев Ученик (185), открыт 3 дня назад
Что делать если у меня забираются все коины за ребирт хоть сумма ребирта меньше

вот мой код:

local replicatedStorage = game:GetService("ReplicatedStorage")
local remoteEvents = replicatedStorage:WaitForChild("remoteEvents")
local rebirthEvent = remoteEvents:WaitForChild("rebirth")

rebirthEvent.OnServerEvent:Connect(function(player, rebirthsAmount, gemsGiven)
local leaderstats = player.leaderstats

leaderstats.Clicks.Value = 0
leaderstats.Rebirths.Value = leaderstats.Rebirths.Value + rebirthsAmount
leaderstats.Gems.Value = leaderstats.Gems.Value + gemsGiven
end)
Дополнен 3 дня назад
не коины а клики все забирает
1 ответ
PS Просветленный (22525) 3 дня назад
Этот кусок кода ВООБЩЕ не трогает монеты. Он только сбрасывает клики и насыпает ребирс/гемы. Где логика списания? Проблема очевидно не здесь. Ищи скрипт, который реально ФАЙРИТ этот ивент и списывает валюту, гений.
Максим ЗахарычевУченик (185) 3 дня назад
Может быть это?:

local rebirthButton = script.Parent

local replicatedStorage = game:GetService("ReplicatedStorage")
local remoteEvents = replicatedStorage:WaitForChild("remoteEvents")
local rebirthEvent = remoteEvents:WaitForChild("rebirth")

local Players = game:GetService("Players")
local player = Players.LocalPlayer
local leaderstats = player:WaitForChild("leaderstats")

rebirthButton.MouseButton1Up:Connect(function()
local clicks = leaderstats.Clicks.Value
local rebirths = leaderstats.Rebirths.Value

local rebirthsAmount = tonumber( rebirthButton.Name )
local cost = 100
local gemsGiven = rebirthsAmount*10

if clicks >= cost then
rebirthEvent:FireServer(rebirthsAmount, gemsGiven)
end
end)
PS Просветленный (22525) Максим Захарычев, проверка стоимости происходит НА КЛИЕНТЕ, а потом просто сигнал улетает на сервер. Гениально. А сервер что делает? Правильно, он тупо СТАВИТ КЛИКИ В НОЛЬ (leaderstats.Clicks.Value = 0), как и было показано в куске кода. Вообще по барабану ему на стоимость, проверенную клиентом. Где тут логика вычитания нужного количества, а не всего? Ее нет. Сервер должен проверять и вычитать, а не клиентская показуха, которую любой пятиклассник обойдет. Проблема все еще в первом скрипте, который обнуляет счетчик.
Похожие вопросы