/*
    ANTLand simulation
    (C) 2004 justin_sane

    This program is free software; you can redistribute it and/or
    modify it under the terms of the GNU General Public License
    as published by the Free Software Foundation; either version 2
    of the License, or (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.

    Contact: justinsanemsu@msu.edu

    FILE: utility.h
    Authors: justin_sane
*/


#ifndef utilityH

#include <vcl>

#include "point.h"

typedef enum {forw, back, turn_left, turn_right, up,
              down, stop_forw, stop_turn, ang_up,
              ang_down, slide_left, slide_right} move_type;


typedef struct {
    float dir_sin, dir_cos;
    float y_dir_sin, y_dir_cos;
} trig_data_type;




extern float sin_table[];
extern float cos_table[];

void debug(AnsiString s);

float __fastcall fast_sin(int a);
float __fastcall fast_cos(int a);

void make_trig_table( void );

float rval(float max);
float rvalplus(float max);

point __fastcall forward_vector(point p, float dist, float angle);

TColor random_color( void );

#define utilityH
#endif



