LibRPC Z

From NPC for VCMP 0.4 Servers
Revision as of 07:01, 28 June 2023 by Habi (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

This function was added in LibRPC (API 1.4) (released on 27.Jun.2023) and will not work on previous versions.


Description:
Perform sq_get on remote HSQUIRRELVM. Unlike other functions, this is a first order function.


Parameters:

( p1, p2, ... )

p1 : If string, a sq_get will be performed by pushing roottable and if p2 is present second sq_get will be performed on this resultant object. If p1 is not string, then p1 is pushed and sq_get will be done on p1, they key being p2.
Optional Parameters
p2, p3, ... : A key which will be pushed and sq_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.