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

Lua roblox studio скрипт на выдачу предмета по клавише

Арсеинй Титов Ученик (167), на голосовании 10 месяцев назад
помогите, я написал скрипт на клонирование предмета из репликейтед сторег в инвентарь игрока, но не чего не происходило


local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Players = game:GetService("Players")


local itemPath = "ReplicatedStorage.Item"


local function onKeyPress(input)

if input.KeyCode == Enum.KeyCode.G and game.Players.LocalPlayer.Character then

local player = Players.LocalPlayer


if player:FindFirstChild("Backpack") then

local itemClone = ReplicatedStorage:FindFirstChild(itemPath):Clone()


itemClone.Parent = player.Backpack
end
end
end


game:GetService("UserInputService").InputBegan:Connect(onKeyPress)
Голосование за лучший ответ
Татьяна Просветленный (36563) 11 месяцев назад
Ваш скрипт имеет несколько ошибок и недочетов. Давайте исправим их и добавим недостающие части:

itemPath содержит строку, которая не используется для поиска в ReplicatedStorage. Вам нужно использовать прямой путь к объекту в ReplicatedStorage.
Добавим проверку на существование предмета в ReplicatedStorage.
Проверим правильное использование UserInputService и его подключения.
 local ReplicatedStorage = game:GetService("ReplicatedStorage") 
local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")

-- Указываем правильный путь к предмету
local itemPath = ReplicatedStorage:WaitForChild("Item")

-- Функция, которая выполняется при нажатии клавиши
local function onKeyPress(input, gameProcessedEvent)
-- Проверяем, что клавиша "G" была нажата и событие не было обработано игрой
if input.KeyCode == Enum.KeyCode.G and not gameProcessedEvent then
local player = Players.LocalPlayer
-- Проверяем, существует ли игрок и его рюкзак
if player and player:FindFirstChild("Backpack") then
-- Проверяем, существует ли предмет в ReplicatedStorage
if itemPath then
local itemClone = itemPath:Clone()
itemClone.Parent = player.Backpack
else
warn("Item not found in ReplicatedStorage")
end
end
end
end

-- Подключаем функцию к событию нажатия клавиши
UserInputService.InputBegan:Connect(onKeyPress)
Арсеинй ТитовУченик (167) 11 месяцев назад
Спасибо вам огромное!
Zinarhack Zinarhack Xyinya Мастер (1102) 11 месяцев назад
У тебя в скобках путь, если это локальный скрипт, то всегда используй FindFirstChild, на себе проверил, но не советую WaitForChild использовать, в логах будет спамить ,что бесконечное ожидание идет
Похожие вопросы