Untitled
--// Subscriber Collectibles sa dodatnim proverama local modelsFolder = game:GetService("ReplicatedStorage"):WaitForChild("Models", 5) -- Folder gde je sačuvan model Subscriber if not modelsFolder then error("Folder 'Models' nije pronađen u ReplicatedStorage!") end local collectiblesFolder = game.Workspace:FindFirstChild("Collectibles") -- Folder za generisane collectible NPC-ove if not collectiblesFolder then warn("Folder 'Collectibles' nije pronađen u Workspace! Kreiram novi...") collectiblesFolder = Instance.new("Folder") collectiblesFolder.Name = "Collectibles" collectiblesFolder.Parent = game.Workspace end local CurrencyOld = PlayerData.Currency.Value -- Funkcija za generisanje Subscriber-a local function generateSubscriber() local subscriberTemplate = modelsFolder:FindFirstChild("Subscriber") -- Pretpostavljamo da se model zove 'Subscriber' if not subscriberTemplate then warn("Model 'Subscriber' nije pronađen u ReplicatedStorage > Models!") return end -- Kloniraj Subscriber-a local newSubscriber = subscriberTemplate:Clone() newSubscriber.Parent = collectiblesFolder -- Dodaj ga u Collectibles folder -- Nasumično postavljanje na mapi local randomPosition = CFrame.new( math.random(-50, 50), -- Nasumična X pozicija 5, -- Visina na Y osi math.random(-50, 50) -- Nasumična Z pozicija ) newSubscriber:SetPrimaryPartCFrame(randomPosition) print("Generisan Subscriber na poziciji:", randomPosition) -- Dodaj detekciju prikupljanja local function onTouched(hit) local player = game.Players:GetPlayerFromCharacter(hit.Parent) -- Proverava da li je objekat igrač if player then -- Povećaj Currency vrednost PlayerData.Currency.Value = PlayerData.Currency.Value + 1 print(player.Name, "je prikupio Subscriber-a!") -- Ukloni Subscriber iz igre newSubscriber:Destroy() end end -- Poveži funkciju za detekciju if newSubscriber:FindFirstChild("Humanoid") then newSubscriber.PrimaryPart.Touched:Connect(onTouched) else warn("Subscriber nema 'Humanoid' ili 'PrimaryPart', preskačem dodir funkcionalnost.") end -- Ukloni Subscriber nakon 30 sekundi ako nije prikupljen task.delay(30, function() if newSubscriber.Parent then print("Subscriber uklonjen zbog isteka vremena.") newSubscriber:Destroy() end end) end -- Generiši Subscriber-a svakih 10 sekundi while true do generateSubscriber() task.wait(10) -- Pauza između generisanja novih Subscriber-a end
Leave a Comment