In short toggle to the server mode then assign the player the tool and it should be working. The way you are giving the players the tool is the issue. i just tested it now and it is working
yeah its still not working for me i tried doing that.
Make sure that the object/tool name is “Engine” and is being hold by the player
yup thats the name, all the parts are named correctly and im holding them.
Did you put it in workspace in the player?
here bro take a look at this script
local questItems = {"Engine", "Battery", "Tire"}
local playerProgress = {}
local TextValue = 0
function updateBillboard(player, currentStep)
local billboard = script.Parent:FindFirstChild("Billboard")
if billboard then
local billboardGui = billboard:FindFirstChild("BillboardGui")
local label = billboardGui:FindFirstChild("TextLabel")
if label then
label.Text = TextValue .. "/3"
end
end
end
function checkRequiredItem(player, currentStep)
local progressData = playerProgress[player.UserId] or {}
local requiredItem = questItems[currentStep]
local hasRequiredItem = player.Backpack:FindFirstChild(requiredItem) -- Change here
if hasRequiredItem then
hasRequiredItem:Destroy()
progressData.currentStep = currentStep + 1
TextValue = TextValue + 1
if currentStep == #questItems then
progressData.completed = true
print("Quest completed! Items removed from your inventory.")
else
print("Good job! Now bring me a " .. questItems[currentStep + 1] .. ".")
end
updateBillboard(player, progressData.currentStep)
else
print("You don't have the required item.")
end
playerProgress[player.UserId] = progressData
end
local clickDetector = script.Parent:WaitForChild("ClickDetector")
clickDetector.MouseClick:Connect(function(player)
local progressData = playerProgress[player.UserId] or {}
if not progressData.completed then
checkRequiredItem(player, progressData.currentStep or 1)
else
print("You have already completed the quest.")
end
end)
its in the npc this is what i want but the only problem is that when you equip the tool and try to click the npc you cant, you can only do it using the click detector.
ocal hasRequiredItem = player.Backpack:FindFirstChild(requiredItem)
thats the backpack only instead:
local hasRequiredItem = player.Character:FindFirstChild(requiredItem)
yeah i did that before but the problem is you cant click the npc with the tool out but thats what i want.
try putting it in the test server take a look at how it functions.
i will do that tomorrow i need to sleep now. bye!
Have you firstly searched on YouTube tutorials regarding “NPC quests”?
yeah dude nothing is like the one im trying to make.