1. Создайте предмет:
- Вставьте модель предмета в рабочее пространство.
- Добавьте к предмету скрипт, который позволит его поднимать.
2. Настройте LeaderStats:
- В ServerScriptService создайте новый скрипт и назовите его "LeaderStats".
- Вставьте следующий код в этот скрипт:
game.Players.PlayerAdded:Connect(function(player)
local leaderstats = Instance.new("Folder")
leaderstats.Name = "leaderstats"
leaderstats.Parent = player
local coins = Instance.new("IntValue")
coins.Name = "Coins"
coins.Value = 0
coins.Parent = leaderstats
end)
3. Создайте скрипт для подбора предмета:
- Добавьте новый скрипт к предмету и назовите его "PickupScript".
- Вставьте следующий код:
local tool = script.Parent
local equipped = false
tool.Equipped:Connect(function()
equipped = true
end)
tool.Unequipped:Connect(function()
equipped = false
end)
game.ReplicatedStorage.GiveCoins.OnServerEvent:Connect(function(player)
if equipped then
local leaderstats = player:FindFirstChild("leaderstats")
if leaderstats then
local coins = leaderstats:FindFirstChild("Coins")
if coins then
coins.Value = coins.Value + 1
end
end
end
end)
4. Создайте RemoteEvent:
- В ReplicatedStorage создайте новый RemoteEvent и назовите его "GiveCoins".
5. Создайте LocalScript для обработки нажатий:
- В StarterPlayerScripts создайте новый LocalScript и назовите его "ClickHandler".
- Вставьте следующий код:
local player = game.Players.LocalPlayer
local userInputService = game:GetService("UserInputService")
userInputService.TouchTapInWorld:Connect(function()
game.ReplicatedStorage.GiveCoins:FireServer()
end)
-- Для ПК-версии
userInputService.InputBegan:Connect(function(input, gameProcessed)
if not gameProcessed and input.UserInputType == Enum.UserInputType.MouseButton1 then
game.ReplicatedStorage.GiveCoins:FireServer()
end
end)
6. Настройте предмет как инструмент:
- Убедитесь, что ваш предмет является экземпляром Tool.
- Переместите предмет в StarterPack, чтобы игроки получали его при входе в игру.
Этот код позволит игрокам брать предмет в руки и получать монеты при нажатии на экран или клике мышью. Монеты будут отображаться в LeaderStats.
Несколько важных моментов:
- Код учитывает как мобильные устройства (касание экрана), так и ПК (клик мышью).
- Монеты начисляются только когда предмет экипирован.
- Вы можете настроить количество получаемых монет, изменив значение в строке `coins.Value = coins.Value + 1`.