Шаг 1: Создание базовой карты Шаг 2: Создание ловушек Пассивные ловушки Активные ловушки Телепорт Шаг 3: Графические эффекты Шаг 4: Погодные эффекты Шаг 5: Изменение времени суток Шаг 6: Боты-противники и оружие
Шаг 1: Создание базовой карты Шаг 2: Создание ловушек Пассивные ловушки Активные ловушки Телепорт Шаг 3: Графические эффекты Шаг 4: Погодные эффекты Шаг 5: Изменение времени суток Шаг 6: Боты-противники и оружие
...Читать далее
Шаг 1: Создание базовой карты
- Открытие Roblox Studio:Запустите Roblox Studio и создайте новый проект.
Выберите шаблон "Baseplate". - Создание архитектуры:Постройте основные элементы: пол, стены, платформы.
Используйте инструмент "Part" для создания различных блоков и стен.
Убедитесь, что все стационарные блоки (неподвижные) имеют свойство "Anchored" (заморожены).
Шаг 2: Создание ловушек
Пассивные ловушки
- Стена-призрак (видимая стена, сквозь которую можно пройти):
Добавьте новый Part и назовите его "GhostWall".
В свойствах Part установите Transparency на 0.5 (чтобы было видно, что это стена).
Установите CanCollide на false, чтобы игроки могли проходить сквозь неё.
Добавьте скрипт к этому Part:
local wall = script.Parent
wall.CanCollide = false - Блок-убийца (нейтрализует персонажа при касании):
Добавьте новый Part и назовите его "KillerBlock".
В свойствах Part установите желаемые размеры и цвет.
Добавьте скрипт к этому Part:
local block = script.Parent
block.Touched:Connect(function(hit)
local character = hit.Parent
local humanoid = character:FindFirstChildOfClass("Humanoid")
if humanoid then
humanoid.Health = 0
end
end) - Шипы (статичные шипы, которые видны и не исчезают, но нейтрализуют персонажа при касании):
Добавьте новый Part и назовите его "Spikes".
Настройте форму и цвет, чтобы они выглядели как шипы.
Добавьте скрипт к этому Part:
local spikes = script.Parent
spikes.Touched:Connect(function(hit)
local character = hit.Parent
local humanoid = character:FindFirstChildOfClass("Humanoid")
if humanoid then
humanoid.Health = 0
end
end)
Активные ловушки
- Зажигающиеся лампочки (лампочки, которые зажигаются при приближении игрока):
Добавьте новый Part и назовите его "Lamp".
Вставьте внутрь этого Part объект Light и назовите его "Light".
Добавьте ProximityPrompt к этому Part.
Добавьте скрипт к этому Part:
local lamp = script.Parent
local proximity = lamp:FindFirstChild("ProximityPrompt")
proximity.Triggered:Connect(function()
lamp.Light.Enabled = not lamp.Light.Enabled
end) - Лазеры (лазеры, которые включаются при прохождении через определенную точку):
Добавьте Part и назовите его "Laser".
Добавьте Beam в этот Part и настройте свойства, чтобы они выглядели как лазер.
Создайте другой Part, который будет служить триггером, и назовите его "LaserTrigger".
Добавьте скрипт к этому Part:
local laser = workspace.Laser
local trigger = script.Parent
trigger.Touched:Connect(function(hit)
if hit.Parent:FindFirstChild("Humanoid") then
laser.Beam.Enabled = true
wait(3)
laser.Beam.Enabled = false
end
end) - Выдвигающиеся шипы (шипы, которые появляются при касании блока):
Добавьте Part и назовите его "HiddenSpikes".
Установите Transparency на 1 (чтобы шипы были невидимыми).
Создайте триггерный Part и назовите его "SpikeTrigger".
Добавьте скрипт к этому Part:
local spikes = workspace.HiddenSpikes
local trigger = script.Parent
trigger.Touched:Connect(function(hit)
if hit.Parent:FindFirstChild("Humanoid") then
spikes.Transparency = 0
wait(1)
spikes.Transparency = 1
end
end)
Телепорт
- Телепорт (телепортирует персонажа в другое место):
Добавьте Part и назовите его "Teleporter".
Создайте другой Part, который будет местом назначения, и назовите его "TeleportDestination".
Добавьте скрипт к "Teleporter":
local teleporter = script.Parent
local destination = workspace.TeleportDestination
teleporter.Touched:Connect(function(hit)
if hit.Parent:FindFirstChild("HumanoidRootPart") then
local player = hit.Parent.HumanoidRootPart
player.CFrame = destination.CFrame
end
end)
Шаг 3: Графические эффекты
- Эффект мигания при телепортации:
В скрипт телепорта добавьте графический эффект, например, ParticleEmitter:
local teleporter = script.Parent
local destination = workspace.TeleportDestination
teleporter.Touched:Connect(function(hit)
if hit.Parent:FindFirstChild("HumanoidRootPart") then
local player = hit.Parent.HumanoidRootPart
local effect = Instance.new("ParticleEmitter", player)
effect.Texture = "rbxassetid://1234567" -- замените на нужный ID
wait(0.5)
player.CFrame = destination.CFrame
effect:Destroy()
end
end)
Шаг 4: Погодные эффекты
- Создание тумана:
Вставьте следующий скрипт в StarterPlayerScripts:
game.Lighting.FogEnd = 100
Шаг 5: Изменение времени суток
- Скрипт изменения времени суток:
Вставьте следующий скрипт в ServerScriptService:
while true do
for i = 0, 24, 0.1 do
game.Lighting:SetMinutesAfterMidnight(i * 60)
wait(1)
end
end
Шаг 6: Боты-противники и оружие
- Создание противников:
Добавьте модель NPC из вкладки "View" -> "Toolbox". Вставьте её в игру.
Добавьте следующий скрипт для передвижения и атаки в NPC:
local npc = script.Parent
local humanoid = npc:FindFirstChildOfClass("Humanoid")
local function onTouch(hit)
local character = hit.Parent
local humanoid = character:FindFirstChildOfClass("Humanoid")
if humanoid then
humanoid:TakeDamage(10)
end
end
npc.Touched:Connect(onTouch) - Создание оружия:
Добавьте инструмент оружия из вкладки "View" -> "Toolbox". Вставьте его в игру.
Добавьте скрипт для использования оружия (например, меча):
local tool = script.Parent
local handle = tool:FindFirstChild("Handle")
local function onActivated()
local character = tool.Parent
local humanoid = character:FindFirstChildOfClass("Humanoid")
if humanoid then
handle.Touched:Connect(function(hit)
local enemy = hit.Parent
local enemyHumanoid = enemy:FindFirstChildOfClass("Humanoid")
if enemyHumanoid then
enemyHumanoid:TakeDamage(10)
end
end)
end
end
tool.Activated:Connect(onActivated) - Скрипт заморозки блоков:
Вставьте следующий скрипт в каждый неподвижный блок:
local block = script.Parent
block.Anchored = true