LibRPC Z

From NPC for VCMP 0.4 Servers
Revision as of 05:07, 27 June 2023 by Habi (talk | contribs)
Jump to navigation Jump to search

This function was added in LibRPC (API 1.3) (not released as on writing this page) and will not work on previous versions.


Description:
Creates userdata when passed to RFC/F/Fa/RFCa has the effect of rawget. Unlike other functions, this is a first order function.


Parameters:

( p1, p2, ... )

p1 : If string, a rawget will be performed on the roottable and if p2 is present rawget will be performed on this object. If p1 is not string, then p2 is required.
Optional Parameters
p2, p3, ... : A key which will be popped and get operation performed on p(i-1)


Return Values:
Returns userdata which can be passed to F/Fa/RFC/RFCa or Z itself.


Example

Goal Corresponding code
FindPlayer( 0 ).Name Z( F("FindPlayer")(0), "Name" )
FindPlayer( 0 ).Pos.x Z( F("FindPlayer")(0), "Pos", "x" )
print( b )
where b is some global variable
RFC("print")(Z("b"))
print(b.x)
b is Vector
RFC("print")(Z("b", "x") )

Related Functions

The following functions may be helpful as they relate to this function in one way or another.