matproxy.Add
Description
Adds a material proxy.
Arguments
Example
Adds PlayerColor proxy. Example taken from lua/matproxy/player_color.lua.
matproxy.Add({
name = "PlayerColor",
init = function( self, mat, values )
-- Store the name of the variable we want to set
self.ResultTo = values.resultvar
end,
bind = function( self, mat, ent )
-- If the target ent has a function called GetPlayerColor then use that
-- The function SHOULD return a Vector with the chosen player's colour.
-- In sandbox this function is created as a network function,
-- in player_sandbox.lua in SetupDataTables
if ( ent.GetPlayerColor ) then
mat:SetVector( self.ResultTo, ent:GetPlayerColor() )
end
end
})
Output: Adds PlayerColor proxy.
Example
Material proxy values are stored like this:
- In the .vmt:
Proxies {
PlayerColor {
resultVar $color2
myVariable $color
}
}
- In Lua ( The Init function of Structures/MatProxyData )
values = {
resultvar = "$color2"
myvariable = "$color"
}