Currently i am trying to make custom servers that people can join and if you are in a different server then the colour of the part is different. for some reason when I test it, it doesn’t replicate but if i wait between every time i call the function then for some reason it does end up replicating. Does anyone know why this is happening? Here is the script:
game.ReplicatedStorage.SendMsg.OnServerEvent:Connect(function(player, Server)
local messagingService = game:GetService("MessagingService")
local connection
function event()
if Server == "Server1" then
local nmp = Instance.new("MeshPart", workspace)
nmp.Anchored = false
nmp.Position = Vector3.new(0,2,0)
local newattachment = Instance.new("Attachment", nmp)
local newlv = Instance.new("LinearVelocity", newattachment)
newlv.VectorVelocity = Vector3.new(0,1,0)
newlv.MaxForce = math.huge
newlv.Attachment0 = newattachment
newlv.RelativeTo = "Attachment0"
nmp.BrickColor = BrickColor.new("Bright violet")
elseif Server == "Server2" then
local nmp = Instance.new("MeshPart", workspace)
nmp.Anchored = false
nmp.Position = Vector3.new(0,2,0)
local newattachment = Instance.new("Attachment", nmp)
local newlv = Instance.new("LinearVelocity", newattachment)
newlv.VectorVelocity = Vector3.new(0,1,0)
newlv.MaxForce = math.huge
newlv.Attachment0 = newattachment
newlv.RelativeTo = "Attachment0"
nmp.BrickColor = BrickColor.new("Bright violet")
end
connection:Disconnect()
wait(10)
establishConnection()
end
function establishConnection()
connection = messagingService:SubscribeAsync("event", event)
end
establishConnection()
messagingService:PublishAsync("event")
end)