Revision Difference
duplicator.RegisterEntityClass#519097
<function name="RegisterEntityClass" parent="duplicator" type="libraryfunc">
<description>
This allows you to specify a specific function to be run when your SENT is pasted with the duplicator, instead of relying on the generic automatic functions.
<note>Automatically calls <page>duplicator.Allow</page> for the entity class.</note>
</description>
<realm>Shared</realm>
<args>
<arg name="name" type="string">The ClassName of the entity you wish to register a factory for</arg>
<arg name="function" type="function">The factory function you want to have called. It should have the arguments (Player, ...) where ... is whatever arguments you request to be passed.</arg>
<arg name="args" type="vararg">Strings of the names of arguments you want passed to function the from the <page>EntityCopyData</page>. As a special case, "Data" will pass the whole structure.</arg>
<arg name="args" type="vararg">Strings of the names of arguments you want passed to function the from the <page>Structures/EntityCopyData</page>. As a special case, "Data" will pass the whole structure.</arg>
</args>
</function>
<example>
<description>Prints the datatable and then lets the duplicator do it's job</description>
<code>
duplicator.RegisterEntityClass("prop_physics", function(ply, data)
PrintTable(data)
duplicator.GenericDuplicatorFunction(ply, data)
end, "Data")
</code>
<output>
```
Skin = 0
Mins = -14.357550 -14.390250 -25.934851
Flex:
ColGroup = 0
Pos = -292.415070 -157.575043 -12262.056641
PhysicsObjects:
0:
Frozen = false
Pos = 13.750092 0.490356 -4.675781
Angle = 0.057 87.808 -0.031
Class = prop_physics
FlexScale = 1
Maxs = 14.438149 14.405550 25.995348
Model = models/props_borealis/bluebarrel001.mdl
Angle = 0.057 134.318 -0.031
```
</output>
</example>