Vitajte, Roblox vývojári! 🌟 Ste pripravení pridať do svojej hry super teleportačný skript v Roblox? Teleportácia umožňuje hráčom okamžite presunúť sa na iné miesto, čo robí hru dynamickejšou a zábavnejšou. V tomto kompletnom sprievodcovi sa dozviete všetko od základov po pokročilé triky – bez zbytočností, len praktické kroky. Poďme rovno na vec a vytvorte svoj prvý funkčný skript!
Čo Budete Potrebovať Pred Začiatkom? 👍
Predtým, než sa pustíme do kódu, zabezpečte si:
- Roblox Studio – stiahnite si ho zadarmo z oficiálnej stránky Roblox.
- Základné znalosti Lua scripting – ak ste nováčik, nebojte sa, vysvetlíme všetko.
- Nový projekt v Roblox Studio (Place) – vytvorte ho cez File > New.
Tip: Pracujte v ServerScriptService pre serverové skripty, ktoré fungujú pre všetkých hráčov. Pre lokálne efekty použite LocalScript v StarterPlayerScripts.
Krok 1: Jednoduchý Teleport Pre Nového Hráča ⭐
Začnime najzákladnejším teleportačným skriptom v Roblox. Tento skript presunie hráča na špecifickú pozíciu hneď po spawnovaní.
- Otvorte ServerScriptService v Explorer paneli.
- Kliknite pravým tlačidlom > Insert Object > Script.
- Nahraďte obsah tohto kódu:
local Players = game:GetService("Players")
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character)
wait(1) -- Počkajte na kompletné načítanie postavy
local humanoidRootPart = character:WaitForChild("HumanoidRootPart")
humanoidRootPart.CFrame = CFrame.new(Vector3.new(0, 10, 0)) -- Pozícia x=0, y=10, z=0
end)
end)
Tento skript používa CFrame namiesto MoveTo pre presnejší teleport v Roblox. HumanoidRootPart je kľúčová časť postavy pre pohyb.
Testujte: Stlačte Play v Studio a sledujte, ako sa váš avatar teleportuje! 😎
Krok 2: Interaktívny Teleport Pomocou Časti (Part) 🖱️
Chcete teleport cez kliknutie na objekt? Vytvorte teleportačný skript spojený s Part.
- V Workspace pridajte Part (napr. modrý kváder ako teleport dvere).
- Do Part vložte ClickDetector.
- Pridajte tento ServerScript do Part:
local part = script.Parent
local clickDetector = part:WaitForChild("ClickDetector")
local Players = game:GetService("Players")
local teleportPosition = Vector3.new(50, 20, 50) -- Vaša cieľová pozícia
clickDetector.MouseClick:Connect(function(player)
local character = player.Character
if character then
local humanoidRootPart = character:WaitForChild("HumanoidRootPart")
humanoidRootPart.CFrame = CFrame.new(teleportPosition)
end
end)
Prečo CFrame? Je stabilnejší ako MoveTo, zabraňuje zaseknutiu v stenách. Upravte teleportPosition podľa potreby!
Pokročilý Teleport: Použitie RemoteEvents pre Multiplayer 🎮
Pre hry s viacerými hráčmi použite RemoteEvent – klient pošle požiadavku serveru.
| Funkcia |
LocalScript (Client) |
ServerScript (Server) |
| Výhody |
Rýchla odozva, UI tlačidlá |
Bezpečnosť, synchronizácia |
| Dezavantáže |
Môže byť zneužitý |
Pomalší prenos |
- V ReplicatedStorage pridajte RemoteEvent s názvom "TeleportEvent".
- LocalScript v StarterGui (pre GUI tlačidlo):
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local teleportEvent = ReplicatedStorage:WaitForChild("TeleportEvent")
-- Príklad: Pri kliknutí na GUI tlačidlo
teleportEvent:FireServer(Vector3.new(100, 5, 100))
ServerScript v ServerScriptService:
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local teleportEvent = Instance.new("RemoteEvent")
teleportEvent.Name = "TeleportEvent"
teleportEvent.Parent = ReplicatedStorage
teleportEvent.OnServerEvent:Connect(function(player, position)
local character = player.Character
if character and position then
local humanoidRootPart = character:WaitForChild("HumanoidRootPart")
humanoidRootPart.CFrame = CFrame.new(position)
end
end)
Tento setup je ideálny pre Roblox scripting v multiplayeri. Viac na Roblox Developer Hub.
Bežné Chyby a Ako Ich Opravovať ❌➡️✅
1️⃣ Chyba: Character je nil – Použite WaitForChild a wait(1).
2️⃣ Zaseknutie v zemi – Nastavte Y súradnicu vyššie (napr. +10).
3️⃣ Nefunguje v multiplayeri – Vždy server-side validácia cez RemoteEvents.
4️⃣ Anti-exploit ochrana – Pridajte distance check: if (position.Magnitude < 1000)="">.
Bonus tip: Pre smooth teleport pridajte TweenService pre animáciu pohybu!
Záver: Ste Pripravený Dominovať Roblox Hry! 👏
Gratulujeme! Teraz viete vytvoriť plnohodnotný teleportačný skript v Roblox. Experimentujte s pozíciami, pridajte efekty ako časticové emisie alebo zvuky. Vaša hra bude nezabudnuteľná! 🚀
Čo ďalej? Skúste integrovať do obelisku alebo lobby. Podeľte sa o svoje kreácie v komentároch a sledujte ďalšie tutoriály na pokročilé Roblox scripting. Šťastné kódovanie! ✨