00001 00008 /* 00009 This file is part of Teapot Colony Wars. 00010 00011 Teapot Colony Wars is free software: you can redistribute it and/or modify 00012 it under the terms of the GNU General Public License as published by 00013 the Free Software Foundation, either version 2 of the License, or 00014 (at your option) any later version. 00015 00016 Teapot Colony Wars is distributed in the hope that it will be useful, 00017 but WITHOUT ANY WARRANTY; without even the implied warranty of 00018 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00019 GNU General Public License for more details. 00020 00021 You should have received a copy of the GNU General Public License 00022 along with Teapot Colony Wars. If not, see <http://www.gnu.org/licenses/>. 00023 */ 00024 00025 #include "Random.h" 00026 00027 #include <cstdlib> 00028 #include <ctime> 00029 00030 Random *Random::_instance = NULL; 00031 00032 Random::Random() { 00033 srand(time(0)); 00034 } 00035 00036 long int Random::value() { 00037 if(_instance == NULL) { 00038 _instance = new Random(); 00039 } 00040 00041 return rand(); 00042 } 00043 00044 void Random::destroy() { 00045 if(_instance != NULL) { 00046 delete _instance; 00047 _instance = NULL; 00048 } 00049 } 00050 00051 long int Random::getMaxVal() { 00052 return RAND_MAX; 00053 } 00054 00055 long int Random::getMinVal() { 00056 return 0; 00057 }