2024-08-17 19:43:08 +02:00
|
|
|
defmodule Example.Game do
|
2024-08-18 13:44:09 +02:00
|
|
|
require Logger
|
2024-08-28 14:52:13 +02:00
|
|
|
@behaviour Amethyst.API.Game
|
2024-08-17 19:43:08 +02:00
|
|
|
|
|
|
|
@impl true
|
2024-08-25 13:17:25 +02:00
|
|
|
def instantiate(supervisor) do
|
|
|
|
Logger.info("The supervisor for this game is at #{inspect(supervisor)}")
|
|
|
|
{:ok, %{}}
|
2024-08-17 19:43:08 +02:00
|
|
|
end
|
2024-08-18 13:44:09 +02:00
|
|
|
|
|
|
|
@impl true
|
2024-08-25 21:03:09 +02:00
|
|
|
def login(from, cfg, refs) do
|
2024-08-19 00:00:03 +02:00
|
|
|
Logger.info("Player logged in from #{inspect(from)}: #{inspect(cfg)}")
|
2024-08-25 21:03:09 +02:00
|
|
|
Logger.info("The refs for this game are #{inspect(refs)}")
|
2024-09-04 13:13:34 +02:00
|
|
|
:accept
|
2024-08-18 13:44:09 +02:00
|
|
|
end
|
2024-09-03 19:29:19 +02:00
|
|
|
|
|
|
|
@impl true
|
|
|
|
def player_position(from, {x, y, z}, refs) do
|
|
|
|
Logger.info("Player at #{inspect(from)} moved to #{x}, #{y}, #{z}")
|
|
|
|
:ok
|
|
|
|
end
|
2024-09-04 11:24:04 +02:00
|
|
|
|
|
|
|
@impl true
|
|
|
|
def joinable?(refs) do
|
|
|
|
true
|
|
|
|
end
|
2024-08-17 19:43:08 +02:00
|
|
|
end
|