From ef267420f0e74b1b0a8168c766b65bfc5c19c1a8 Mon Sep 17 00:00:00 2001 From: Justin Clark-Casey Date: Sat, 6 Sep 2014 00:26:15 +0100 Subject: [PATCH] Add set last location example program. --- .../grid-user-service-connector.php | 13 +++++ .../programs/grid-user/set-last-location.php | 55 +++++++++++++++++++ 2 files changed, 68 insertions(+) create mode 100644 integration/php/src/programs/grid-user/set-last-location.php diff --git a/integration/php/src/connectors/grid-user-service-connector.php b/integration/php/src/connectors/grid-user-service-connector.php index 5d6fdcf..28610a3 100644 --- a/integration/php/src/connectors/grid-user-service-connector.php +++ b/integration/php/src/connectors/grid-user-service-connector.php @@ -26,4 +26,17 @@ function SetHome($serviceUri, $userId, $regionId, $posX, $posY, $posZ, $lookAtX, return PostToService($serviceUri, http_build_query($params), $debug); } +function SetLastLocation($serviceUri, $userId, $regionId, $posX, $posY, $posZ, $lookAtX, $lookAtY, $debug = FALSE) +{ + $params + = array( + 'UserID' => $userId, + 'RegionID' => $regionId, + 'Position' => "<$posX,$posY,$posZ>", + 'LookAt' => "<$lookAtX,$lookAtY,0>", + 'METHOD' => "setposition"); + + return PostToService($serviceUri, http_build_query($params), $debug); +} + ?> \ No newline at end of file diff --git a/integration/php/src/programs/grid-user/set-last-location.php b/integration/php/src/programs/grid-user/set-last-location.php new file mode 100644 index 0000000..48d03e3 --- /dev/null +++ b/integration/php/src/programs/grid-user/set-last-location.php @@ -0,0 +1,55 @@ +addArgument('userID'); +$parser->addArgument('regionID'); +$parser->addArgument('posX'); +$parser->addArgument('posY'); +$parser->addArgument('posZ'); +$parser->addArgument('lookAtX'); +$parser->addArgument('lookAtY'); + +try +{ + $params = $parser->parse(); +} +catch (Exception $e) +{ + $parser->displayError($e->getMessage()); +} + +$userId = $params->args['userID']; + +if (!IsUuid($userId)) +{ + print "ERROR: [$userId] is not a well-formed user UUID.\n"; + exit(1); +} + +$regionId = $params->args['regionID']; + +if (!IsUuid($userId)) +{ + print "ERROR: [homeRegionID] is not a well-formed user UUID.\n"; + exit(2); +} + +$posX = $params->args['posX']; +$posY = $params->args['posY']; +$posZ = $params->args['posZ']; +$lookAtX = $params->args['lookAtX']; +$lookAtY = $params->args['lookAtY']; + +SetLastLocation($GRID_USER_SERVICE_URI, $userId, $regionId, $posX, $posY, $posZ, $lookAtX, $lookAtY, TRUE); + +?> \ No newline at end of file