Simulator.h

00001 // ----------------------------------------------------------------------------
00002 //
00003 // tagGame - Example code from the book:
00004 //
00005 //           Artficial Intelligence for Computer Games: An Introduction
00006 //           by John David Funge
00007 //
00008 //           www.ai4games.org
00009 //
00010 // Source code distributed under the Copyright (c) 2003-2007, John David Funge
00011 // Original author: John David Funge (www.jfunge.com)
00012 //
00013 // Licensed under the Academic Free License version 3.0 
00014 // (for details see LICENSE.txt in this directory).
00015 //
00016 // ----------------------------------------------------------------------------
00017 
00018 #ifndef TG_SIMULATOR_H
00019 #define TG_SIMULATOR_H
00020 
00021 #include "Action.h"
00022 #include "GameState.h"
00023 
00024 namespace tagGame
00025 {
00028    class Simulator
00029    {
00030    public:
00031       Simulator(GameState* gs);
00032       void forward(Real const deltaT);
00033    protected:
00034    private:
00035       void generateActions();
00036       void processActions(Real const deltaT);
00037       void updateCharacter(Real const deltaT, Character* c);
00038       void resolveCollisions();
00039       void updateGameState(Real const deltaT);
00040       void setTagged(Character& newTagged, Character& oldTagged);
00041 
00042       GameState* gs;
00043    };
00044 }
00045 
00046 #endif

Generated on Sat Mar 31 22:30:54 2007 for tagGame by  doxygen 1.5.1