00001 00007 #ifndef _SPLAYER_H_ 00008 #define _SPLAYER_H_ 00009 00010 #include "../Math/Vector.h" 00011 #include "Weapon.h" 00012 #include "../Graphics/Renderer.h" 00013 00014 #define SPLAYER_MAX_PLAYERS 16 00015 00016 #define PLAYER_STATE_OFFLINE 0 00017 #define PLAYER_STATE_INVISIBLE 1 00018 #define PLAYER_STATE_SPAWNING 2 00019 #define PLAYER_STATE_USER 3 00020 #define PLAYER_STATE_LOADING 4 00021 #define PLAYER_STATE_READY 5 00022 #define PLAYER_STATE_MENU 6 00023 #define PLAYER_STATE_WAITING 7 00024 00025 #define PLAYER_ROTATION_NONE 0 00026 #define PLAYER_ROTATION_LEFT 1 00027 #define PLAYER_ROTATION_RIGHT 2 00028 00029 #define PLAYER_MOVING_NONE 0 00030 #define PLAYER_MOVING_FORWARD 1 00031 #define PLAYER_MOVING_BACKWARD 2 00032 00033 #define PLAYER_EXTRAS 8 // SAME AS PLAY_EXTRAS IN "Play.h" 00034 00035 struct SPlayer { 00036 char name[16]; // common 00037 int avatar; 00038 //int modelID; 00039 //char modelFile[32]; 00040 //MilkShape model; 00041 int model; 00042 char skin[32]; 00043 TextureID textureID; 00044 Vec4 chatClr; 00045 00046 float life; // stats 00047 int ammo; 00048 int frags; 00049 int kills; 00050 int deaths; 00051 SWeapon weapon; 00052 int state; 00053 00054 int extras[PLAYER_EXTRAS]; // extras 00055 float timeExtras[PLAYER_EXTRAS]; 00056 00057 float speed; // positioning 00058 Vec3 pos; 00059 Vec3 dir; 00060 float angle; 00061 int moving; 00062 int moveVal; 00063 int rotation; 00064 float lastPos; 00065 00066 int ownsParticleSystem; // other 00067 float spawnTime; 00068 }; 00069 00070 #endif