1. -- 
  2. -- Copyright (c) 2012 Kevin Wellwood 
  3. -- All rights reserved. 
  4. -- 
  5. -- This source code is distributed under the Modified BSD License. For terms and 
  6. -- conditions, see license.txt. 
  7. -- 
  8.  
  9. private package Entities.Players.Little_Keen.States is 
  10.  
  11.     -- Returns a reference to the singleton State object for the corresponding 
  12.     -- Action_Type. 
  13.     function Get_State( action : Action_Type ) return A_State; 
  14.     pragma Postcondition( Get_State'Result /= null ); 
  15.  
  16.     ---------------------------------------------------------------------------- 
  17.  
  18.     type Moving_State is new State with null record; 
  19.     type Bored_State is new State with null record; 
  20.  
  21.     function Get_Frame( this : Moving_State; k : Little_Keen'Class ) return Natural; 
  22.     function Get_Frame( this : Bored_State;  k : Little_Keen'Class ) return Natural; 
  23.  
  24.     procedure Update( this : Moving_State; k : A_Little_Keen ); 
  25.     procedure Update( this : Bored_State;  k : A_Little_Keen ); 
  26.  
  27. end Entities.Players.Little_Keen.States;