Looking for Krastorio support?
https://mods.factorio.com/mod/vanilla-loaders-hd-krastorio
Adding custom loaders:
For interested mod authors, you can create a vanilla-style loader with your own coloring very easily by setting this mod as a dependency and calling the following function:
local api = require("__vanilla-loaders-hd__.prototypes.api")
---@class LoaderCreationParameters
---@field mask_tint data.Color The color of the loader arrows and explosion particles. An alpha value of 0.82 is suggested for optimal results.
---@field base_tint? data.Color The color of the metal housing of the loader icon and entity sprites.
---@field ingredients? data.FluidIngredientPrototype[]|data.ItemIngredientPrototype[] A custom loader recipe. If omitted, the default recipe will be used.
---@field previous_tier? string The name of the previous tier of loader. Sets the `next_tier` property on the given loader, and to provide an additional ingredient to the default recipe.
---@field next_tier? string The name of the loader that this loader will be upgraded to when used with the Upgrade Planner.
---@field technology? string The name of the technology that unlocks the loader.
---@field heating_energy? string The energy cost of heating the loader. If omitted, defaults to "60kW". Only used if loaded with Factorio: Space Age.
---Creates, or if a loader already exists, reskins, the loader with the given `loader` name and
---associates it with the transport belt prototype with the given `transport_belt` name, for the
---given `parameters`.
---@param name string The name of the loader to be created.
---@param belt_name string The name of the transport belt to be associated with the loader.
---@param parameters LoaderCreationParameters Setup parameters governing the creation of the loader.
api.create_loader(name, belt_name, parameters)
To enable your loader to use the snapping logic in this mod, register your loader with the remote interface in control.lua
:
remote.call("vanilla-loaders", "subscribe", [loader_name])