matproxy.Add

From Garry's Mod
Jump to: navigation, search
 matproxy.Add( )

Contents

Description

Adds a material proxy.

Arguments

table MatProxyData

The information about the proxy. See MatProxyData structure

Examples

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.

Examples

Example

Material proxy values are stored like this:

  • In the .vmt:
Proxies {
    PlayerColor {
       resultVar $color2
       myVariable $color
    }
}
values = {
    resultvar = "$color2"
    myvariable = "$color"
}


Personal tools
Navigation