Menu
CoddyTech

Le convoyeur

Leçon 3 sur 22 du cours Jeu Roblox : Tycoon d’usine de Coddy.

Le minerai qui s’accumule sous le distributeur ne rapporte rien. Il doit atteindre le collecteur, et un convoyeur l’y transporte.

Dans Roblox, un convoyeur est une pièce ancrée dotée d’une vitesse. Définir AssemblyLinearVelocity sur une pièce ancrée ne la fait pas bouger à elle seule, mais tout ce qui repose dessus est entraîné à cette vitesse, y compris les joueurs :

tycoon.Conveyor.AssemblyLinearVelocity = Vector3.new(12, 0, 0)

Le vecteur indique la direction et la vitesse : 12 studs par seconde le long de l’axe X. La vitesse de ton jeu est définie dans Settings.BeltSpeed.

challenge icon

Défi

Facile

Lance le convoyeur pour qu’il transporte le minerai jusqu’au collecteur.

  1. Sous le code du distributeur, définis tycoon.Conveyor.AssemblyLinearVelocity.
  2. Donne-lui la valeur Vector3.new(Settings.BeltSpeed, 0, 0) : BeltSpeed studs par seconde selon l’axe X.

Appuie sur « Jouer » : le minerai avance sur le tapis jusqu’au bloc vert, et toi aussi si tu montes dessus. Puis appuie sur « Vérifier ».

Essayez vous-même

local Players = game:GetService("Players")
local Settings = require(game.ReplicatedStorage.Settings)

local tycoon = workspace.Tycoon

print("Ore is worth " .. Settings.OreValue .. " Cash")

-- Chaque joueur reçoit du Cash dans le classement
Players.PlayerAdded:Connect(function(player)
	local leaderstats = Instance.new("Folder")
	leaderstats.Name = "leaderstats"
	leaderstats.Parent = player

	local cash = Instance.new("IntValue")
	cash.Name = "Cash"
	cash.Parent = leaderstats
end)

-- Ore : une petite pièce qui vaut du Cash, déposée sous un dropper
local function dropOre(dropper)
	local ore = Instance.new("Part")
	ore.Name = "Ore"
	ore.Size = Vector3.new(1, 1, 1)
	ore.Color = Color3.fromRGB(150, 150, 160)
	ore.Position = dropper.Position - Vector3.new(0, 2.5, 0)
	ore:SetAttribute("Value", Settings.OreValue)
	ore.Parent = workspace
end

local function startDropper(dropper)
	task.spawn(function()
		while dropper:IsDescendantOf(workspace) do
			dropOre(dropper)
			task.wait(Settings.DropInterval)
		end
	end)
end

startDropper(tycoon.Dropper)

-- Leçon 3 : le Conveyor se place ici

Toutes les leçons de Jeu Roblox : Tycoon d’usine

Entraînez-vous par vous-même : Playground Roblox