로블록스(Roblox)/아이템별 스크립트

로블록스 대포 구현 및 범위 피해 스크립트

JM GAME 2025. 2. 6. 10:21
반응형

로블록스에서 대포로 범위 공격을 구현하는 스크립트 입니다. 탄환이 특정 지점에 닿으면 폭발하고, 일정 범위 내의 모든 플레이어에게 피해를 주는 방식을 구현해봅시다.

 

-- 대포 스크립트 (ServerScript)
local cannon = script.Parent -- 대포 오브젝트
local firePoint = cannon.FirePoint -- 탄환이 발사될 위치
local projectileSpeed = 100 -- 탄환 속도
local explosionRadius = 10 -- 폭발 반경
local damage = 30 -- 피해량

local function onFire()
    local projectile = Instance.new("Part")
    projectile.Size = Vector3.new(1, 1, 1)
    projectile.Shape =Enum.PartType.Ball
    projectile.Material = Enum.Material.Metal 
    projectile.Color = Color3.fromRGB(255, 0, 0)
    projectile.Position = firePoint.Position
    projectile.Velocity = firePoint.CFrame.LookVector * projectileSpeed
    projectile.Anchored = false
    projectile.CanCollide = false
    projectile.Parent = game.Workspace
    
    -- 충돌 감지
    projectile.Touched:Connect(function(hit)
        if hit and hit.Parent then
            -- 폭발 생성
            local explosion = Instance.new("Explosion")
            explosion.Position = projectile.Position
            explosion.BlastRadius = explosionRadius
            explosion.BlastPressure = 50000
            explosion.Parent = game.Workspace
            
            -- 피해 처리
            for _, player in pairs(game.Players:GetPlayers()) do
                if player.Character and player.Character:FindFirstChild("HumanoidRootPart") then
                    local distance = (player.Character.HumanoidRootPart.Position - projectile.Position).Magnitude
                    if distance <= explosionRadius then
                        local humanoid = player.Character:FindFirstChild("Humanoid")
                        if humanoid then
                            humanoid:TakeDamage(damage)
                        end
                    end
                end
            end
            
            projectile:Destroy()
        end
    end)
end

-- 대포 발사 트리거
cannon.FireEvent.OnServerEvent:Connect(onFire)

 

대포에서 탄환을 발사하고, 탄환이 충돌하면 폭발하여 반경 내 플레이어들에게 피해를 주는 기능을 포함하고 있어 

대포뿐만이 아닌 다른형태로 참고해서 쓸수 있습니다. (Ex_범위마법, 샷건피해등)

반응형