anchor.diff:  %%	along with EGS.  If not, see <http://www.gnu.org/licenses/>.
   
   -module(egs).
  --export([start/0, stop/0, global/1, warp/4, warp/5]).
  +-export([start/0, stop/0, global/1, warp/4, warp/5]). %% API.
   
  -%% @spec ensure_started(App) -> ok
  -%% @doc Make sure the given App is started.
  -ensure_started(App) ->
  -	case application:start(App) of
  -		ok -> ok;
  -		{error, {already_started, App}} -> ok
  -	end.
  +%% @todo Don't use an include file for type specs.
  +-include("include/types.hrl").
   
  -%% @spec start() -> ok
  -%% @doc Start the EGS server.
  +%% API.
  +
  +-spec start() -> ok.
   start() ->
   	ensure_started(crypto),
   	ensure_started(public_key),
  
positive.code: 	Res.
  
  %% @doc Send a global message.
  global(Message) ->
  	if	length(Message) > 511 ->
  			io:format("global: message too long~n");
  		true ->
  			egs_users:broadcast_all({egs, notice, top, Message})
  	end.
  
  %% @doc Warp all players to a new map.
  warp(QuestID, ZoneID, MapID, EntryID) ->
  	egs_users:broadcast_all({egs, warp, QuestID, ZoneID, MapID, EntryID}).
  
  %% @doc Warp one player to a new map.
  warp(GID, QuestID, ZoneID, MapID, EntryID) ->
  	egs_users:broadcast({egs, warp, QuestID, ZoneID, MapID, EntryID}, [GID]).
  
negative.code: %% @author Loïc Hoguin <essen@dev-extend.eu>
  %% @copyright 2010-2011 Loïc Hoguin.
  %% @doc EGS startup code and utility functions.
  %%
  %%	This file is part of EGS.
  %%
  