Just trying to shoot a basic bullet, still new to this, so I wasn't sure where else to go. I've been following some tutorials, but for some reason I keep getting a blue underline under the first "Bullet" and "Workspace"
Player = game.Players.LocalPlayer Gun = script.Parent Ammo = 5 mouse = Player:GetMouse() function Shoot() if Ammo > 0 then Bullet = Instance.new("Part", Workspace) game.Debris:AddItem(Bullet, 2) Bullet.Shape = "Ball" Bullet.Size = Vector3.new(0.2, 0.2, 0.2) Bullet.TopSurface = "Smooth" Bullet.BottomSurface = "Smooth" Bullet.BrickColor = BrickColor.new("Dark stone grey") Bullet.CanCollide = false Bullet.CFrame = Gun.Handle.Cframe Bullet.CFrame = CFrame.new(Bullet.Position, mouse.Hit.p) v = Instance.new("BodyVelocity", Bullet) v.velocity = Bullet.CFrame.lookVector *90 v.maxForce = Vector3.new(math.huge, math.huge, math.huge) end end Gun.Activated:connect(Shoot)
The blue underlines, in this case, aren't actual errors. In this case they are harmless, but you should still correct it for, at the least, force of habit.
They are warnings that ROBLOX is guessing you're doing something bad.
It wants you to make Bullet
local to the function (define it as local Bullet = Instance....
) because using local variables is best practice.
It also wants you to use workspace
instead of Workspace
. While both work, ROBLOX has deprecated the Workspace
variable (meaning they try to discourage people from using it) probably because it doesn't follow Lua's standard naming convention of using first-letter-lowercase-names.
The line in question would be corrected to this:
local Bullet = Instance.new("Part", workspace)