--
-- Copyright (c) 2012 Kevin Wellwood
-- All rights reserved.
--
-- This source code is distributed under the Modified BSD License. For terms and
-- conditions, see license.txt.
--
with Values; use Values;
package Game_States is
-- Presents a view of the current game session's state. The Game class
-- implements this so that game components can access the session's state
-- without having a full reference to the Game class.
type Game_State is limited interface;
type A_Game_State is access all Game_State'Class;
-- Returns the value of game session var 'var' as an integer. An exception
-- will be raised on error.
function Get_Game_Var( this : access Game_State;
var : String ) return Integer is abstract;
-- Returns the value of game session var 'var', or null if not found. The
-- caller is responsible for deleting the returned value.
function Get_Game_Var( this : access Game_State;
var : String ) return A_Value is abstract;
end Game_States;