home *** CD-ROM | disk | FTP | other *** search
/ Enter 2005 March / ENTER.ISO / files / fwp-0.0.6-win32-installer.exe / GameInfo.cpp < prev    next >
Encoding:
C/C++ Source or Header  |  2004-12-24  |  10.5 KB  |  271 lines

  1. #include "GameInfo.h"
  2.  
  3. #include "Gui.h"
  4. #include "GuiInfo.h"
  5. #include "log.h"
  6. #include "Game.h"
  7. #include "Renderer.h"
  8. #include "Client.h"
  9. //#include "Weapon.h"
  10.  
  11. #ifndef WIN32
  12. #include <string.h>
  13. #endif
  14.  
  15.  
  16. GameInfoVar_t GameInfo::var;
  17. GameInfoCVar_t GameInfo::cvar;
  18. GameInfoCCmd_t GameInfo::ccmd;
  19.  
  20.  
  21. bool GameInfo::registerCVarsAndCCmds(){
  22.     var.arena=new char[CON_MAX_STRING_LENGTH];
  23.     strcpy(var.arena, "arenas/cubes.arena");
  24.     cvar.game_arena=new CVarString("game.arena", &var.arena, false);
  25.     cvar.game_arena->flags |= CON_FLAG_SYSTEM;
  26.     cvar.game_arena->changeStr="(new arena will load after a 'game.restart')";
  27.     console->registerCVar(cvar.game_arena);
  28.  
  29.     var.useArenaCycle = false;
  30.     cvar.game_useArenaCycle = new CVarBool("game.useArenaCycle", &var.useArenaCycle, false);
  31.     cvar.game_useArenaCycle->flags |= CON_FLAG_SYSTEM;
  32.     cvar.game_useArenaCycle->changeStr="(changes will take effect after a 'game.restart')";
  33.     console->registerCVar(cvar.game_useArenaCycle);
  34.  
  35.     var.arenaCycleList=new char[CON_MAX_STRING_LENGTH];
  36.     strcpy(var.arenaCycleList, "arenas/arenacycle.list");
  37.     cvar.game_arenaCycleList=new CVarString("game.arenaCycleList", &var.arenaCycleList, false);
  38.     cvar.game_arenaCycleList->flags |= CON_FLAG_SYSTEM;
  39.     cvar.game_arenaCycleList->changeStr="(changes will take effect after a 'game.restart')";
  40.     console->registerCVar(cvar.game_arenaCycleList);
  41.  
  42. //    var.showScoresMillis = 30000;
  43. //    cvar.game_showScoresMillis = new CVarInt("game.showScoresMillis", &var.showScoresMillis, false);
  44. //    cvar.game_showScoresMillis->flags |= CON_FLAG_SYSTEM;
  45. //    cvar.game_showScoresMillis->changeStr="(changes will take effect after a 'game.restart')";
  46. //    cvar.game_showScoresMillis->setValRange(1000, 60000);
  47. //    console->registerCVar(cvar.game_showScoresMillis);
  48.  
  49.     var.mode = GAME_MODE_DEATHMATCH;
  50.     cvar.game_mode = new CVarInt("game.mode", &var.mode, false);
  51.     cvar.game_mode->flags |= CON_FLAG_SYSTEM;
  52.     cvar.game_mode->changeStr="(changes will take effect after a 'game.restart')";
  53.     cvar.game_mode->setValRange(0, GAME_NUM_MODES-1);
  54.     console->registerCVar(cvar.game_mode);
  55.  
  56.     var.clientGame = false;
  57.     cvar.game_clientGame = new CVarBool("game.clientGame", &var.clientGame, false);
  58.     cvar.game_clientGame->flags |= CON_FLAG_SYSTEM;
  59.     cvar.game_clientGame->changeStr="(changes will take effect after a 'game.restart')";
  60.     console->registerCVar(cvar.game_clientGame);
  61.  
  62.     var.ghostTime = 5000;
  63.     cvar.game_ghostTime = new CVarInt("game.ghostTime", &var.ghostTime, false);
  64.     cvar.game_ghostTime->flags |= CON_FLAG_SYSTEM;
  65.     cvar.game_ghostTime->changeStr="(changes will take effect after a 'game.restart')";
  66.     cvar.game_ghostTime->setValRange(100, 60000);
  67.     console->registerCVar(cvar.game_ghostTime);
  68.  
  69.     var.allowVoiceMessages = 2;
  70.     cvar.game_allowVoiceMessages = new CVarInt("game.allowVoiceMessages", &var.allowVoiceMessages, true);
  71.     cvar.game_allowVoiceMessages->flags |= CON_FLAG_SYSTEM;
  72.     cvar.game_allowVoiceMessages->setValRange(0, 2);
  73.     console->registerCVar(cvar.game_allowVoiceMessages);
  74.  
  75.     var.enableFriendlyFire = true;
  76.     cvar.game_enableFriendlyFire = new CVarBool("game.enableFriendlyFire", &var.enableFriendlyFire, false);
  77.     cvar.game_enableFriendlyFire->flags |= CON_FLAG_SYSTEM;
  78.     cvar.game_enableFriendlyFire->changeStr="(changes will take effect after a 'game.restart')";
  79.     console->registerCVar(cvar.game_enableFriendlyFire);
  80.  
  81.  
  82.     // player
  83.     var.player_name = new char[CON_MAX_STRING_LENGTH];
  84.     strcpy(var.player_name, "Unnamed Player");
  85.     cvar.game_player_name = new CVarString("game.player.name", &var.player_name, false);
  86.     cvar.game_player_name->flags |= CON_FLAG_SYSTEM;
  87.     cvar.game_player_name->setValRange(1, CLIENT_MAX_NAME_LENGTH);
  88.     cvar.game_player_name->changeStr = "(changes will take effect after a 'game.restart')";
  89.     console->registerCVar(cvar.game_player_name);
  90.  
  91.     var.player_team = GAME_TEAM_SPECTATORS;
  92.     cvar.game_player_team = new CVarInt("game.player.team", &var.player_team, false);
  93.     cvar.game_player_team->flags |= CON_FLAG_SYSTEM;
  94.     cvar.game_player_team->setValRange(0, GAME_NUM_TEAMS-1);
  95.     cvar.game_player_team->changeStr = "(changes will take effect after next respawn)";
  96.     console->registerCVar(cvar.game_player_team);
  97.  
  98.     var.player_vehicle = 0;
  99.     cvar.game_player_vehicle = new CVarInt("game.player.vehicle", &var.player_vehicle, false);
  100.     cvar.game_player_vehicle->flags |= CON_FLAG_SYSTEM;
  101.     cvar.game_player_vehicle->setValRange(0, 2);
  102.     cvar.game_player_vehicle->changeStr = "(changes will take effect after next respawn)";
  103.     console->registerCVar(cvar.game_player_vehicle);
  104.  
  105.     var.player_weapon1 = GAME_WEAPON_NO_WEAPON;
  106.     cvar.game_player_weapon1 = new CVarInt("game.player.weapon1", &var.player_weapon1, false);
  107.     cvar.game_player_weapon1->flags |= CON_FLAG_SYSTEM;
  108.     cvar.game_player_weapon1->setValRange(0, GAME_NUM_WEAPONS-1);
  109.     cvar.game_player_weapon1->changeStr = "(changes will take effect after next respawn)";
  110.     console->registerCVar(cvar.game_player_weapon1);
  111.  
  112.     var.player_weapon2 = GAME_WEAPON_NO_WEAPON;
  113.     cvar.game_player_weapon2 = new CVarInt("game.player.weapon2", &var.player_weapon2, false);
  114.     cvar.game_player_weapon2->flags |= CON_FLAG_SYSTEM;
  115.     cvar.game_player_weapon2->setValRange(0, GAME_NUM_WEAPONS-1);
  116.     cvar.game_player_weapon2->changeStr = "(changes will take effect after next respawn)";
  117.     console->registerCVar(cvar.game_player_weapon2);
  118.  
  119.     var.player_weapon3 = GAME_WEAPON_NO_WEAPON;
  120.     cvar.game_player_weapon3 = new CVarInt("game.player.weapon3", &var.player_weapon3, false);
  121.     cvar.game_player_weapon3->flags |= CON_FLAG_SYSTEM;
  122.     cvar.game_player_weapon3->setValRange(0, GAME_NUM_WEAPONS-1);
  123.     cvar.game_player_weapon3->changeStr = "(changes will take effect after next respawn)";
  124.     console->registerCVar(cvar.game_player_weapon3);
  125.  
  126.     var.player_weapon4 = GAME_WEAPON_NO_WEAPON;
  127.     cvar.game_player_weapon4 = new CVarInt("game.player.weapon4", &var.player_weapon4, false);
  128.     cvar.game_player_weapon4->flags |= CON_FLAG_SYSTEM;
  129.     cvar.game_player_weapon4->setValRange(0, GAME_NUM_WEAPONS-1);
  130.     cvar.game_player_weapon4->changeStr = "(changes will take effect after next respawn)";
  131.     console->registerCVar(cvar.game_player_weapon4);
  132.  
  133.     // cam
  134.     Game::cam.moveSpeed=20.0f;
  135.     cvar.game_camera_moveSpeed=new CVarReal("game.camera.moveSpeed", &Game::cam.moveSpeed, true);
  136.     cvar.game_camera_moveSpeed->flags |= CON_FLAG_SYSTEM;
  137.     cvar.game_camera_moveSpeed->setValRange(0, 1000.0f);
  138.     console->registerCVar(cvar.game_camera_moveSpeed);
  139.  
  140.     Game::cam.turnSpeed=2.0f;
  141.     cvar.game_camera_turnSpeed=new CVarReal("game.camera.turnSpeed", &Game::cam.turnSpeed, true);
  142.     cvar.game_camera_turnSpeed->flags |= CON_FLAG_SYSTEM;
  143.     cvar.game_camera_turnSpeed->setValRange(0, 100.0f);
  144.     console->registerCVar(cvar.game_camera_turnSpeed);
  145.  
  146.     Game::cam.mode=CAMERA_MODE_FIRST_PERSON;
  147.     cvar.game_camera_mode=new CVarInt("game.camera.mode", &Game::cam.mode, true);
  148.     cvar.game_camera_mode->flags |= CON_FLAG_SYSTEM;
  149.     cvar.game_camera_mode->setValRange(0, NUM_CAMERA_MODES-1);
  150.     console->registerCVar(cvar.game_camera_mode);
  151. /*
  152.     Game::cam.noclip=false;
  153.     cvar.game_camera_noclip=new CVarBool("game.camera.noclip", &Game::cam.noclip, true);
  154.     cvar.game_camera_noclip->flags |= CON_FLAG_SYSTEM;
  155.     console->registerCVar(cvar.game_camera_noclip);
  156. */
  157.  
  158.     ccmd.game_restart=new CCmdGameRestart();
  159.     console->registerCCmd(ccmd.game_restart);
  160.  
  161.     ccmd.game_shutdown=new CCmdGameShutdown();
  162.     console->registerCCmd(ccmd.game_shutdown);
  163.  
  164.     ccmd.game_startClientGame = new CCmdGameStartClientGame();
  165.     console->registerCCmd(ccmd.game_startClientGame);
  166.  
  167.     ccmd.game_startServer = new CCmdGameStartServer();
  168.     console->registerCCmd(ccmd.game_startServer);
  169.  
  170.     ccmd.game_kill = new CCmdGameKill();
  171.     console->registerCCmd(ccmd.game_kill);
  172.  
  173.     ccmd.game_chatAll = new CCmdGameChatAll();
  174.     console->registerCCmd(ccmd.game_chatAll);
  175.     ccmd.game_chatTeam = new CCmdGameChatTeam();
  176.     console->registerCCmd(ccmd.game_chatTeam);
  177.  
  178.     ccmd.game_voiceAll = new CCmdGameVoiceAll();
  179.     console->registerCCmd(ccmd.game_voiceAll);
  180.     ccmd.game_voiceTeam = new CCmdGameVoiceTeam();
  181.     console->registerCCmd(ccmd.game_voiceTeam);
  182.  
  183.     ccmd.game_camera_chaseNext = new CCmdGameCameraChaseNext();
  184.     console->registerCCmd(ccmd.game_camera_chaseNext);
  185.  
  186.     ccmd.game_camera_chasePrevious = new CCmdGameCameraChasePrevious();
  187.     console->registerCCmd(ccmd.game_camera_chasePrevious);
  188.  
  189.     // FIXME: spΣter weg!
  190.     console->registerCCmd(new CCmdGameDebugCmd1());
  191.  
  192.     return true;
  193. }
  194.  
  195. bool GameInfo::unregisterCVarsAndCCmds(){
  196.     console->unregisterCVar(cvar.game_arena);
  197.     delete[] var.arena;
  198.     delete cvar.game_arena;
  199.  
  200.     console->unregisterCVar(cvar.game_useArenaCycle);
  201.     delete cvar.game_useArenaCycle;
  202.  
  203.     console->unregisterCVar(cvar.game_arenaCycleList);
  204.     delete[] var.arenaCycleList;
  205.     delete cvar.game_arenaCycleList;
  206.  
  207. //    console->unregisterCVar(cvar.game_showScoresMillis);
  208. //    delete cvar.game_showScoresMillis;
  209.  
  210.     console->unregisterCVar(cvar.game_mode);
  211.     delete cvar.game_mode;
  212.  
  213.     console->unregisterCVar(cvar.game_clientGame);
  214.     delete cvar.game_clientGame;
  215.  
  216.     console->unregisterCVar(cvar.game_ghostTime);
  217.     delete cvar.game_ghostTime;
  218.  
  219.     console->unregisterCVar(cvar.game_allowVoiceMessages);
  220.     delete cvar.game_allowVoiceMessages;
  221.     
  222.     console->unregisterCVar(cvar.game_enableFriendlyFire);
  223.     delete cvar.game_enableFriendlyFire;
  224.  
  225.  
  226.     console->unregisterCVar(cvar.game_player_name);
  227.     delete[] var.player_name;
  228.     delete cvar.game_player_name;
  229.  
  230.     console->unregisterCVar(cvar.game_camera_moveSpeed);
  231.     delete cvar.game_camera_moveSpeed;
  232.     console->unregisterCVar(cvar.game_camera_turnSpeed);
  233.     delete cvar.game_camera_turnSpeed;
  234.     console->unregisterCVar(cvar.game_camera_mode);
  235.     delete cvar.game_camera_mode;
  236. //    console->unregisterCVar(cvar.game_camera_noclip);
  237. //    delete cvar.game_camera_noclip;
  238.  
  239.     console->unregisterCCmd(ccmd.game_restart);
  240.     delete ccmd.game_restart;
  241.  
  242.     console->unregisterCCmd(ccmd.game_shutdown);
  243.     delete ccmd.game_shutdown;
  244.  
  245.     console->unregisterCCmd(ccmd.game_startClientGame);
  246.     delete ccmd.game_startClientGame;
  247.  
  248.     console->unregisterCCmd(ccmd.game_startServer);
  249.     delete ccmd.game_startServer;
  250.  
  251.     console->unregisterCCmd(ccmd.game_kill);
  252.     delete ccmd.game_kill;
  253.  
  254.     console->unregisterCCmd(ccmd.game_chatAll);
  255.     delete ccmd.game_chatAll;
  256.     console->unregisterCCmd(ccmd.game_chatTeam);
  257.     delete ccmd.game_chatTeam;
  258.  
  259.     console->unregisterCCmd(ccmd.game_voiceAll);
  260.     delete ccmd.game_voiceAll;
  261.     console->unregisterCCmd(ccmd.game_voiceTeam);
  262.     delete ccmd.game_voiceTeam;
  263.  
  264.     console->unregisterCCmd(ccmd.game_camera_chaseNext);
  265.     delete ccmd.game_camera_chaseNext;
  266.     console->unregisterCCmd(ccmd.game_camera_chasePrevious);
  267.     delete ccmd.game_camera_chasePrevious;
  268.  
  269.     return true;
  270. }
  271.