Scripting HelpersARCHIVE
A little piece of Roblox history. Preserved for everyone, one question at a time.Read about the archive →
COMMUNITY QUESTION

How to do FireServer when variable asked?

So, I'm trying to make a Part appear using instance RemoteEvent, renamed it FireMagicStarter. Then when a key functions, then does RemoteEvent:FireServer(variables) but appears to not appear on people's screen(s). So, anyway to fix it? I want to keep my variables and do less work because it took me few days to function a NON-FE magic then I'm trying to convert it to FE

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local RemoteEvent = ReplicatedStorage:WaitForChild("FireMagicStarter")

Player = game.Players.LocalPlayer
Character = Player.Character
Humanoid = Character.Humanoid
Mouse = Player:GetMouse()
Tool = script.Parent

MagicCircle = script.Parent.MagicCircle.Value
MagicSound = script.Parent.MagicSound.Value
MagicSound2 = script.Parent.MagicSound2.Value
MagicSound3 = script.Parent.MagicSound3.Value
MagicParticles = script.Parent.MagicParticles.Value
ColorMagic = script.Parent.Color.Value

Animations = script.Parent.Animations
  FireSkill1 = Animations.FireSkill1
  FireSkill2 = Animations.FireSkill2
Damage = script.Parent.Damage
  FireQ = Damage.FireQ
  FireE = Damage.FireE


if Tool.Equipped ~= true and not Tool.Equipped ~= true then 
Mouse.KeyDown:connect(function(key)
	
if (key == "q") then

		local FireQAnim = Humanoid:LoadAnimation(Animations.FireSkill1)
		local Current = FireQAnim
		Current:Play()
		local FireCircle = Instance.new("Part")
		FireCircle.Parent = workspace
		FireCircle.Name = "Fire Magic Circle Tier 1"
		FireCircle.Anchored = true
		FireCircle.CanCollide= false
		FireCircle.Transparency = 1
		FireCircle.Size = Vector3.new(0.5,0.5,0.05)
		FireCircle.Position = Character.UpperTorso.Position
		FireCircle.CFrame = CFrame.new(FireCircle.Position, Vector3.new(-1400,0,0))
	    RemoteEvent:FireServer(FireCircle)

		
		local Sound = Instance.new("Sound")
		Sound.Parent = FireCircle
		Sound.SoundId = "rbxassetid://"..MagicSound
		Sound.Pitch = .75
		Sound.Volume = 2
		Sound:Play()
		local CircleFront = Instance.new("Decal")
		CircleFront.Parent = FireCircle
		CircleFront.Face = "Front"
		CircleFront.Texture = "rbxassetid://"..MagicCircle
	    local CircleBack = Instance.new("Decal")
		CircleBack.Parent = FireCircle
		CircleBack.Face = "Back"
		CircleBack.Texture = "rbxassetid://"..MagicCircle	
		local LightEmit = Instance.new("PointLight")
		LightEmit.Parent = FireCircle
		LightEmit.Brightness = 15 
		LightEmit.Range = 6
		LightEmit.Color = Color3.new(255, 140, 0)
		RemoteEvent:FireServer(CircleFront, CircleBack, Sound, LightEmit)

local cam = game.Workspace.CurrentCamera
local tor = Character.HumanoidRootPart
local hum = Character.Humanoid
local Mouse = Player:GetMouse()
local prev_mousehit

tor.CFrame = CFrame.new(tor.Position, Vector3.new(Mouse.Hit.p.x,Mouse.Hit.p.y,Mouse.Hit.p.z))
FireCircle.CFrame = CFrame.new(FireCircle.Position, Vector3.new(Mouse.Hit.p.x,Mouse.Hit.p.y,Mouse.Hit.p.z))
		
		
		--
		FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)
FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
        wait(0.007)



		--
Sound.SoundId = "rbxassetid://"..MagicSound2
Sound:Play()
local FireBeam = Instance.new("Part")
FireBeam.Parent = workspace
FireBeam.Name = "Tier 1 Fire Projectile Q"
FireBeam.Material = "Neon"
FireBeam.BrickColor = BrickColor.new("CGA brown")
FireBeam.Position = FireCircle.Position
FireBeam.Orientation = FireCircle.Orientation
FireBeam.Transparency = 1
FireBeam.Anchored = true
FireBeam.CanCollide = false
local FireParticles = Instance.new("ParticleEmitter")
FireParticles.Parent = FireBeam
FireParticles.Name = "Fire Particles"
FireParticles.Texture = "rbxassetid://"..MagicParticles
FireParticles.EmissionDirection = "Back"
FireParticles.Lifetime = NumberRange.new(1)
FireParticles.Speed = NumberRange.new(7)
FireParticles.Rotation = NumberRange.new(-180,180)
FireParticles.Color = ColorSequence.new(ColorMagic)
FireParticles.LightEmission = 2
FireParticles.LightInfluence = 1
FireParticles.Size = NumberSequence.new(3)
FireParticles.Rate = 54
end



if (key == "e") then
local FireEAnim = Humanoid:LoadAnimation(Animations.FireSkill2)
local Current = FireEAnim
Current:Play()
local FireCircle = Instance.new("Part")
FireCircle.Parent = workspace
FireCircle.Name = "Fire Magic Circle Tier 1 Radius"
FireCircle.Anchored = true
FireCircle.CanCollide= false
FireCircle.Transparency = 1
FireCircle.Size = Vector3.new(8,0.05,8)
FireCircle.Position = Character.UpperTorso.Position
FireCircle.Position = FireCircle.Position + Vector3.new(0,-3.1,0)

local Sound = Instance.new("Sound")
Sound.Parent = FireCircle
Sound.SoundId = "rbxassetid://"..MagicSound
Sound.Pitch = .75
Sound.Volume = 2
Sound:Play()
local CircleFront = Instance.new("Decal")
CircleFront.Parent = FireCircle
CircleFront.Face = "Top"
CircleFront.Texture = "rbxassetid://"..MagicCircle
local CircleBack = Instance.new("Decal")
CircleBack.Parent = FireCircle
CircleBack.Face = "Bottom"
CircleBack.Texture = "rbxassetid://"..MagicCircle	
local LightEmit = Instance.new("PointLight")
LightEmit.Parent = FireCircle
LightEmit.Brightness = 15 
LightEmit.Range = 6
LightEmit.Color = Color3.new(255, 140, 0)

wait(5)

Sound.SoundId = "rbxassetid://"..MagicSound3
Sound.Pitch = .6
Sound:Play()
local FirePulse = Instance.new("Part")
FirePulse.Parent = workspace
FirePulse.Name = "Fire E Tier 1 Radius"
FirePulse.Position = FireCircle.Position
FirePulse.BrickColor = BrickColor.new("CGA brown")
FirePulse.Material = "Neon"
FirePulse.Anchored = true
FirePulse.CanCollide = false
FirePulse.Shape = "Cylinder"
FirePulse.Orientation = Vector3.new(0,0,90)
FirePulse.Position = FirePulse.Position + Vector3.new(0,-3.3,0)

wait(1)
Current:Stop()
end


end)
end


	

1 comment

0

Mouse.KeyDown is deprecated, use UserInputService instead.

1 answer

Instead of having the event fire and then continue to make the part with the local script, you need to have a server script be the one to make the part and also to have it grow. Another thing is instead of posting this FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0) 79 times, try using a for loop that looks a bit like this

for i = 1,39 do
	FireCircle.Size = FireCircle.Size + Vector3.new(0.15,0.15,0)
	wait(.007)
end

This discussion is preserved as it was. New answers, comments, and votes are closed.