Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
0

Made a bomb, but its having 2 problems at a time?? [FIXED BY SUPERALP1111]

Asked by 7 years ago
Edited 7 years ago

So this time i yet again tried and script something entirely myself, from scratch, and no tutorials. this one turned out to have a problem yet again.

so i made a bomb, but when i drop it, it pierces the floor. i did add the bomb.CanCollide = true part but it still pierces the floor. it comes with 3 scripts :

localscript

local tool = script.Parent
local cooldown = 2
local client = game.Players.LocalPlayer
local mouse = client:getMouse()
local enabled = true

mouse.Button1Down:connect(function()
    if enabled == true then
        local bomb = tool.Handle:Clone()
        bomb.Parent = game.Workspace
        bomb.CFrame = Vector3.new(tool.Handle.Position)
        bomb.Name = "Jumper Bomb"
        bomb.CanCollide = true
        local tick_ = tool.PlaySound:Clone()
        tick_.Parent = bomb
        tick_.Disabled = false
        local EB = tool.ExplodeBomb:Clone()
        EB.Parent = bomb
        EB.Disabled = false
        enabled = false
        wait(cooldown)
        enabled = true
    end
end)

ticking sound script

while true do
    wait(1)
    script.Tick:Play()
end

the script that makes the bomb actually explode

--repeat wait(0.1) until script.Parent.Parent == game.Workspace
--repeat wait(0.1) until script.Parent.Name == "Jumper Bomb"
wait(1)
local boom_damage = false
local boom_radius = 5
local fuse = 3
if script.Parent.Name == "Jumper Bomb" then
    wait(fuse)
    local explosion = Instance.new("Explosion")
    explosion.Position = Vector3.new(script.Parent.Position)
    explosion.Parent = game.Workspace
    explosion.ExplosionType = Enum.ExplosionType.NoCraters
    explosion.BlastRadius = boom_radius
    if boom_damage == true then
        explosion.DestroyJointRadiusPercent = 1
    elseif boom_damage == false then
        explosion.DestroyJointRadiusPercent = 0
    end
end

output also says

23:01:27.620 - Players.Player1.Backpack.Jumper Bomb.LocalScript:16: bad argument #3 to 'CFrame' (CFrame expected, got Vector3) << even though it does place the bomb at my handle

23:01:27.620 - Stack Begin

23:01:27.621 - Script 'Players.Player1.Backpack.Jumper Bomb.LocalScript', Line 16

23:01:27.622 - Stack End

here are all the 3 scripts and output, any idea why it keeps doing this??

i also tried to jump and throw bombs to see if they do the tick sound/explodes but they actually dont

0
plot twist : it doesnt even change the bomb clone's name and cooldown doesnt work. loulou1112 35 — 7y
0
change bomb.CFrame = Vector3.new(tool.Handle.Position) to bomb.CFrame = CFrame.new(tool.Handle.Position) DeveloperSolo 370 — 7y
1
Why are you using a CFrame for explosion when it's asking for a Position which is a Vector3? Same with using a Vector3 for CFrame. Meltdown81 309 — 7y
0
didnt know i could do cframe.new, also as i said the cooldown doesnt work and the bomb name/cancollide doesnt change. loulou1112 35 — 7y
0
ok cooldown/bomb name/ticking sound/collision fixed, but now it just keeps ticking without exploding loulou1112 35 — 7y

Answer this question