ROBLOX — #2 Присвоение территории

Автор: | 23 октября, 2019
Поделиться...

Нечаянно нашёл глюк — если сделать объект не видимым и проходимым и при этом внутри него ничего нет, то объект вообще удаляется из игры и больше с ним ничего нельзя сделать. Ну а если точней, то как только вы делаете объект проходимым CanCollide = false, так он тут же пропадает.

И так. Переделываем старт с нуля. Бросаем плоскость Footer. Из неё делаем модель добавляем скрипт и строковую переменную (чтобы не удалилась модель)

local me = script.Parent -- указываем родителя скрипта
me.Transparency = 1 -- полная прозрачность
me.CanCollide=false -- обработка коллизий, чтобы он был проходимый

И немного исправляем скрипт застолбления территории:

trap = script.Parent -- работаем с родителем скрипта
trap.Touched:Connect(function(Part) -- вызываем событие, когда касаемся столбика
 local player = game.Players:GetPlayerFromCharacter(Part.Parent) -- сохраняем информацию об игроке
 if Part.Parent:FindFirstChild("Humanoid") and player.Neutral == true then -- если игрок Гуманоид и не состоит в команде
 trap.Parent.Name = Part.Parent.Name .. "'s Tycoon" -- задаём новое имя для столбика
 trap.Transparency = 0.95 -- выставляем прозрачность
 player.Team = game.Teams["Tycoon"] -- нашего игрока переносим в команду
 player.Neutral = false -- и убираем из нейтральных
 
 -- game.Workspace.Tycoons.Tycoon1:FindFirstChild("Owner").Value = Part.Parent.Name
 trap.Parent.Parent:FindFirstChild("Owner").Value = Part.Parent.Name -- прописываем владельца данного Tycoon

 
 -------------------------------------------------------------------
 --    Добавлено для восстановления отображения и физики пола     --
 -------------------------------------------------------------------
 trap.Parent.Parent.Footer:FindFirstChild("Footer").Transparency=0
 trap.Parent.Parent.Footer:FindFirstChild("Footer").CanCollide=true
 -------------------------------------------------------------------
 
 end -- конец if
end) -- конец function

Остальное остаётся неизменным. Я надеюсь смысл понятен? Добавляем первый скрипт к объекту, который изначально надо скрыть. После чего добавляем пару строк в скрипт присвоения территории, чтобы их обратно показать. Ну и если это просто блок или пустая модель, то добавляем левую переменную, чтобы оно не удалилось.

Ну и самое главное — данный метод применим только к базовым объектам, а не к самим моделям!

Total Page Visits: 1616 - Today Page Visits: 1

Поделиться...

ROBLOX — #2 Присвоение территории: 2 комментария

  1. Admin Автор записи

    Оказалось что это не глюк, а фича.
    Если у скрываемого объекта не будет установлен якорь Anchor, то тогда объект уничтожается.
    Или если он не будет привязан к объекту у которого есть якорь.

  2. Guest

    Я плохо знаю роблокс, но разве объект не упадёт вниз [в самое пекло], если он не будет заякорен и лишён коллизий?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *