Added Few Classes:
Game Region and RegionManager These classes are the main core of the game to make it work. Also added the main.cpp inside the src folder
This commit is contained in:
parent
2b2d4931fc
commit
24d1e5b779
122
main.cpp
122
main.cpp
|
|
@ -1,122 +0,0 @@
|
||||||
#include <iostream>
|
|
||||||
#include <vector>
|
|
||||||
#include <map>
|
|
||||||
|
|
||||||
#define MAX_TURNS 30
|
|
||||||
enum Objects{
|
|
||||||
Acid,
|
|
||||||
Weed,
|
|
||||||
Speed,
|
|
||||||
Cocaine,
|
|
||||||
Ludes
|
|
||||||
|
|
||||||
|
|
||||||
};
|
|
||||||
class Bags{
|
|
||||||
public:
|
|
||||||
|
|
||||||
int max_Number_Items;
|
|
||||||
std::vector<Objects> items;
|
|
||||||
std::map<std::string, std::vector<int>> indexesMap;
|
|
||||||
|
|
||||||
Bags(){
|
|
||||||
indexesMap["Acid"] = std::vector<int>();
|
|
||||||
indexesMap["Weed"] = std::vector<int>();
|
|
||||||
indexesMap["Speed"] = std::vector<int>();
|
|
||||||
indexesMap["Cocaine"] = std::vector<int>();
|
|
||||||
indexesMap["Ludes"] = std::vector<int>();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
void setCapacity(int size){
|
|
||||||
this->max_Number_Items = size;
|
|
||||||
|
|
||||||
};
|
|
||||||
void addItem(Objects item){
|
|
||||||
items.push_back(item);
|
|
||||||
addIndexToIndexesMap(item);
|
|
||||||
|
|
||||||
}
|
|
||||||
void addIndexToIndexesMap(Objects item){
|
|
||||||
switch (item) {
|
|
||||||
case Acid:
|
|
||||||
indexesMap["Acid"].push_back(items.size()-1);
|
|
||||||
break;
|
|
||||||
case Weed:
|
|
||||||
indexesMap["Weed"].push_back(items.size()-1);
|
|
||||||
break;
|
|
||||||
case Speed:
|
|
||||||
indexesMap["Speed"].push_back(items.size()-1);
|
|
||||||
break;
|
|
||||||
case Cocaine:
|
|
||||||
indexesMap["Cocaine"].push_back(items.size()-1);
|
|
||||||
break;
|
|
||||||
case Ludes:
|
|
||||||
indexesMap["Ludes"].push_back(items.size()-1);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
void addMultipleItems(Objects item, int n){
|
|
||||||
for (int i = 0; i< n;i++){
|
|
||||||
addItem(item);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
class Basic_Trenchcoat: public Bags{
|
|
||||||
public:
|
|
||||||
Basic_Trenchcoat(): Bags(){
|
|
||||||
this->setCapacity(100);
|
|
||||||
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
class Player{
|
|
||||||
private:
|
|
||||||
int Money = 0;
|
|
||||||
Bags *inventory = new Basic_Trenchcoat();
|
|
||||||
|
|
||||||
public:
|
|
||||||
|
|
||||||
~Player(){
|
|
||||||
delete inventory;
|
|
||||||
}
|
|
||||||
|
|
||||||
void addItemsToInventory(Objects items, int n){
|
|
||||||
inventory->addMultipleItems(items,n);
|
|
||||||
}
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
class Game{
|
|
||||||
private:
|
|
||||||
Player *player = new Player();
|
|
||||||
int current_Turn = 0;
|
|
||||||
|
|
||||||
|
|
||||||
public:
|
|
||||||
void Run(){
|
|
||||||
player->addItemsToInventory(Acid,150);
|
|
||||||
|
|
||||||
|
|
||||||
};
|
|
||||||
~Game(){
|
|
||||||
delete player;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
int main() {
|
|
||||||
Game *main = new Game;
|
|
||||||
main->Run();
|
|
||||||
|
|
||||||
delete main;
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
@ -0,0 +1,16 @@
|
||||||
|
//
|
||||||
|
// Created by gustavomiranda on 27/09/24.
|
||||||
|
//
|
||||||
|
|
||||||
|
#include "Game.h"
|
||||||
|
|
||||||
|
void Game::setup() {
|
||||||
|
Region *ghetto = new Region;
|
||||||
|
Region *centralPark = new Region;
|
||||||
|
Region *manhattan = new Region;
|
||||||
|
Region *conneyIsland = new Region;
|
||||||
|
Region *brooklyn = new Region;
|
||||||
|
regionManager = new RegionManager(ghetto,centralPark,manhattan,
|
||||||
|
conneyIsland,brooklyn);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,23 @@
|
||||||
|
//
|
||||||
|
// Created by gustavomiranda on 27/09/24.
|
||||||
|
//
|
||||||
|
#include "Region.h"
|
||||||
|
|
||||||
|
Region::Region(RegionManager *regionmanagerreference, Places regioname) {
|
||||||
|
setRegionManagerReference(regionmanagerreference);
|
||||||
|
setName(regioname);
|
||||||
|
}
|
||||||
|
|
||||||
|
void Region::setRegionManagerReference(RegionManager *reference){
|
||||||
|
regionManager = reference;
|
||||||
|
}
|
||||||
|
|
||||||
|
void Region::setName(Places regionname){
|
||||||
|
name = regionname;
|
||||||
|
}
|
||||||
|
|
||||||
|
RegionManager* Region::getRegionManagerReference(){
|
||||||
|
return regionManager;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -0,0 +1,13 @@
|
||||||
|
//
|
||||||
|
// Created by gustavomiranda on 27/09/24.
|
||||||
|
//
|
||||||
|
#include "RegionManager.h"
|
||||||
|
|
||||||
|
RegionManager::RegionManager(Region *ghettoref, Region *centralparkref, Region *manhattanref, Region *conneyislandref,
|
||||||
|
Region *brooklynref) {
|
||||||
|
ghetto = ghettoref;
|
||||||
|
centralPark = centralparkref;
|
||||||
|
manhattan = manhattanref;
|
||||||
|
conneyIsland = conneyislandref;
|
||||||
|
brooklyn = brooklynref;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,23 @@
|
||||||
|
//
|
||||||
|
// Created by gustavomiranda on 27/09/24.
|
||||||
|
//
|
||||||
|
|
||||||
|
#ifndef DRUGWARS_GAME_H
|
||||||
|
#define DRUGWARS_GAME_H
|
||||||
|
|
||||||
|
|
||||||
|
#include "RegionManager.h"
|
||||||
|
#include "Player.h"
|
||||||
|
|
||||||
|
class Game {
|
||||||
|
private:
|
||||||
|
Player *player = new Player();
|
||||||
|
RegionManager *regionManager;
|
||||||
|
public:
|
||||||
|
void setup();
|
||||||
|
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
#endif //DRUGWARS_GAME_H
|
||||||
|
|
@ -0,0 +1,27 @@
|
||||||
|
//
|
||||||
|
// Created by gustavomiranda on 27/09/24.
|
||||||
|
//
|
||||||
|
|
||||||
|
#ifndef DRUGWARS_REGION_H
|
||||||
|
#define DRUGWARS_REGION_H
|
||||||
|
|
||||||
|
#include <map>
|
||||||
|
#include "RegionManager.h"
|
||||||
|
#include "Bag.h"
|
||||||
|
|
||||||
|
class RegionManager;
|
||||||
|
|
||||||
|
class Region{
|
||||||
|
private:
|
||||||
|
RegionManager* regionManager;
|
||||||
|
Places name;
|
||||||
|
std::map<DrugTypes,int> prices;
|
||||||
|
void setRegionManagerReference(RegionManager *reference);
|
||||||
|
void setName(Places regionname);
|
||||||
|
public:
|
||||||
|
Region(RegionManager *regionmanagerreference,Places regioname);
|
||||||
|
|
||||||
|
RegionManager *getRegionManagerReference();
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif //DRUGWARS_REGION_H
|
||||||
|
|
@ -0,0 +1,34 @@
|
||||||
|
//
|
||||||
|
// Created by gustavomiranda on 27/09/24.
|
||||||
|
//
|
||||||
|
|
||||||
|
#ifndef DRUGWARS_REGIONMANAGER_H
|
||||||
|
#define DRUGWARS_REGIONMANAGER_H
|
||||||
|
#include "Region.h"
|
||||||
|
|
||||||
|
|
||||||
|
enum Places{
|
||||||
|
Bronx,
|
||||||
|
Ghetto,
|
||||||
|
Central_Park,
|
||||||
|
Manhattan,
|
||||||
|
Conney_Island,
|
||||||
|
Brooklyn
|
||||||
|
};
|
||||||
|
|
||||||
|
class RegionManager{
|
||||||
|
private:
|
||||||
|
Region *ghetto;
|
||||||
|
Region *centralPark;
|
||||||
|
Region *manhattan;
|
||||||
|
Region *conneyIsland;
|
||||||
|
Region *brooklyn;
|
||||||
|
public:
|
||||||
|
RegionManager(Region *ghettoref, Region* centralparkref, Region* manhattanref, Region* conneyislandref, Region* brooklynref);
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#endif //DRUGWARS_REGIONMANAGER_H
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#define MAX_TURNS 30
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int main() {
|
||||||
|
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue