Python SDK demo
This commit is contained in:
@ -5,37 +5,42 @@ const FAIRHOPPER_PORT = 8010;
|
||||
|
||||
async function main() {
|
||||
const fh = new sdk.FairHopper(FAIRHOPPER_HOST, FAIRHOPPER_PORT);
|
||||
await fh.ping();
|
||||
|
||||
console.log(`Pinging FairHopper server on ${FAIRHOPPER_HOST}:${FAIRHOPPER_PORT}`);
|
||||
const pingResult = await fh.ping();
|
||||
console.log("Ping result:", pingResult);
|
||||
console.log();
|
||||
|
||||
game = await fh.startGame("Mirko");
|
||||
console.log("Board dimensions:", game.board);
|
||||
console.log("Destination position:", game.destination.position);
|
||||
console.log();
|
||||
|
||||
const playerUuid = game.player.uuid;
|
||||
|
||||
console.log("Current position is", game.player.position);
|
||||
console.log("Initial player position is", game.player.position);
|
||||
|
||||
let moveResult;
|
||||
const playerUuid = game.player.uuid;
|
||||
|
||||
try {
|
||||
console.log("Trying to move right");
|
||||
moveResult = await fh.move(playerUuid, "right");
|
||||
moveResult = await fh.move(playerUuid, sdk.Direction.RIGHT);
|
||||
console.log("Successfully moved to", moveResult.player.position);
|
||||
|
||||
console.log("Trying to move right");
|
||||
moveResult = await fh.move(playerUuid, "right");
|
||||
moveResult = await fh.move(playerUuid, sdk.Direction.RIGHT);
|
||||
console.log("Successfully moved to", moveResult.player.position);
|
||||
|
||||
console.log("Trying to move right");
|
||||
moveResult = await fh.move(playerUuid, "right");
|
||||
moveResult = await fh.move(playerUuid, sdk.Direction.RIGHT);
|
||||
console.log("Successfully moved to", moveResult.player.position);
|
||||
|
||||
console.log("Trying to move down");
|
||||
moveResult = await fh.move(playerUuid, "down");
|
||||
moveResult = await fh.move(playerUuid, sdk.Direction.DOWN);
|
||||
console.log("Successfully moved to", moveResult.player.position);
|
||||
} catch (err) {
|
||||
if (err instanceof sdk.PositionError) {
|
||||
console.error("Cant't move in this direction");
|
||||
} else {
|
||||
console.error(err);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -28,6 +28,13 @@ class PositionError extends Error {
|
||||
}
|
||||
}
|
||||
|
||||
const Direction = {
|
||||
LEFT: "left",
|
||||
RIGHT: "right",
|
||||
UP: "up",
|
||||
DOWN: "down",
|
||||
};
|
||||
|
||||
class FairHopper {
|
||||
constructor(host, port) {
|
||||
this.host = host;
|
||||
@ -121,4 +128,5 @@ module.exports = {
|
||||
PlayerNotFoundError,
|
||||
PlayerInactiveError,
|
||||
PositionError,
|
||||
Direction,
|
||||
};
|
||||
|
||||
44
python/demo.py
Normal file
44
python/demo.py
Normal file
@ -0,0 +1,44 @@
|
||||
from fh_sdk import Direction, FairHopper, PositionError
|
||||
|
||||
FAIRHOPPER_HOST = "http://127.0.0.1"
|
||||
FAIRHOPPER_PORT = 8010
|
||||
|
||||
|
||||
def main() -> None:
|
||||
fh = FairHopper(FAIRHOPPER_HOST, FAIRHOPPER_PORT)
|
||||
|
||||
print(f"Pinging FairHopper server on {FAIRHOPPER_HOST}:{FAIRHOPPER_PORT}")
|
||||
res = fh.ping()
|
||||
print("Ping result:", res)
|
||||
print()
|
||||
|
||||
game = fh.start_game(player_name="Mirko")
|
||||
print("Board dimensions:", game.board)
|
||||
print("Destination position:", game.destination.position)
|
||||
print()
|
||||
print("Initial player position is", game.player.position)
|
||||
|
||||
player_uuid = game.player.uuid
|
||||
|
||||
try:
|
||||
print("Trying to move right")
|
||||
moveResult = fh.move(player_uuid, Direction.RIGHT)
|
||||
print("Successfully moved to", moveResult.player.position)
|
||||
|
||||
print("Trying to move right")
|
||||
moveResult = fh.move(player_uuid, Direction.RIGHT)
|
||||
print("Successfully moved to", moveResult.player.position)
|
||||
|
||||
print("Trying to move right")
|
||||
moveResult = fh.move(player_uuid, Direction.RIGHT)
|
||||
print("Successfully moved to", moveResult.player.position)
|
||||
|
||||
print("Trying to move down")
|
||||
moveResult = fh.move(player_uuid, Direction.DOWN)
|
||||
print("Successfully moved to", moveResult.player.position)
|
||||
except PositionError:
|
||||
print("Cant't move in this direction")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
Reference in New Issue
Block a user