Top.Mail.Ru
Ответы

Как в роблокс студио сделать так чтоб у тебя в руках был предмет и когда его дастоёш нажимая на экран давали монетки

Я создаю свой режим в роблокс Студио как сделать так чтобы ты брал предмет в руки и когда тыкал тебе давали coin в leaderstats

По дате
По Рейтингу
Аватар пользователя
Новичок
7мес

1. Создайте предмет:
- Вставьте модель предмета в рабочее пространство.
- Добавьте к предмету скрипт, который позволит его поднимать.

2. Настройте LeaderStats:
- В ServerScriptService создайте новый скрипт и назовите его "LeaderStats".
- Вставьте следующий код в этот скрипт:

12345678910
 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".
- Вставьте следующий код:

12345678910111213141516171819202122
 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".
- Вставьте следующий код:

12345678910111213
 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`.

Аватар пользователя
Мастер
7мес

для этого нужно написать скрипт