Untitled
unknown
plain_text
a year ago
2.8 kB
4
Indexable
--// 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
Editor is loading...
Leave a Comment