Skip to content

Commit

Permalink
flag as part of environment _I think_ works better as global variable
Browse files Browse the repository at this point in the history
  • Loading branch information
etam committed Jun 13, 2012
1 parent e3d2ef5 commit e616ee4
Show file tree
Hide file tree
Showing 10 changed files with 34 additions and 36 deletions.
3 changes: 2 additions & 1 deletion OpenGOO.pro
Expand Up @@ -74,7 +74,8 @@ SOURCES += \
mainmenu.cpp \
stickygoo.cpp \
backgroundwidget.cpp \
backtracer.cpp
backtracer.cpp \
flags.cpp


##FOR TOUCHPAD COMPILE
Expand Down
3 changes: 3 additions & 0 deletions flags.cpp
@@ -0,0 +1,3 @@
#include "flags.h"

unsigned char flag = STANDARD;
9 changes: 5 additions & 4 deletions flags.h
Expand Up @@ -2,10 +2,11 @@
#define FLAGS_H


#define STANDARD 0x0000
#define DEBUG 0x0001
#define OPENGL 0x0010
#define ONLYTEXT 0x0100
static const unsigned char STANDARD = 0;
static const unsigned char DEBUG = 1<<0;
static const unsigned char OPENGL = 1<<1;
static const unsigned char ONLYTEXT = 1<<2;

extern unsigned char flag;

#endif // FLAGS_H
8 changes: 4 additions & 4 deletions level.cpp
Expand Up @@ -19,6 +19,8 @@
#include "ropejoint.h"
#include "collisionlistener.h"

#include "flags.h"

#include <QPolygon>
#include <QTextFormat>

Expand All @@ -27,13 +29,11 @@
#define DELAY 10


Level::Level(QRect geometry, QString level,BackGroundWidget *bg,int flag, QWidget *parent) :
Level::Level(QRect geometry, QString level,BackGroundWidget *bg,QWidget *parent) :
QWidget(parent), backGroundWidget(bg)
{
scale=1.0;
goal = 100;
//Set enviroment flag
this->flag=flag;

//set the display geometry
this->setGeometry(0,0,geometry.width(),geometry.height());
Expand Down Expand Up @@ -87,7 +87,7 @@ Level::Level(QRect geometry, QString level,BackGroundWidget *bg,int flag, QWidge
if (flag & DEBUG) qWarning()<<"Game variable initialized!";


menu=new Menu(geometry,this,flag & DEBUG);
menu=new Menu(geometry,this);
onMenu=false;
mooving=false;
connect(menu,SIGNAL(eventClose()),this,SLOT(closeAll()));
Expand Down
5 changes: 1 addition & 4 deletions level.h
Expand Up @@ -28,7 +28,6 @@
#include "svglevelloader.h"

#include "qb2draw.h"
#include "flags.h"


#include "backgroundwidget.h"
Expand All @@ -49,7 +48,7 @@ class Level : public QWidget //QWidget <--To use without openGL
{
Q_OBJECT
public:
explicit Level(QRect geometry,QString level,BackGroundWidget *bg,int flag = STANDARD,QWidget *parent = 0); //Geometry is needed to have the display dimension information, level is the level to load
explicit Level(QRect geometry,QString level,BackGroundWidget *bg,QWidget *parent = 0); //Geometry is needed to have the display dimension information, level is the level to load
~Level(){
clean();
}
Expand All @@ -59,8 +58,6 @@ class Level : public QWidget //QWidget <--To use without openGL

private:
float scale;
//Run type flag
int flag;
//LOADER
SvgLevelLoader * loader;
//PROPERTY
Expand Down
20 changes: 9 additions & 11 deletions main.cpp
Expand Up @@ -45,34 +45,32 @@ int main(int argc, char *argv[])
qsrand(QTime().currentTime().toString("hh:mm:ss.zzz").remove(':').toFloat());

bool forceScreen=false;
int flag=STANDARD;
//Default is screen 0
int screen=0;
QString arg;
//Check for the run parameters
for (int i=1;i<argc;i++){
arg=QString::fromAscii(argv[i]);
QString arg(argv[i]);
//Check for debug Option
if (!arg.compare("-Debug",Qt::CaseInsensitive)){
flag=flag|DEBUG;
flag|=DEBUG;
qWarning("DEBUG MODE ON");
}
//Check for screen force option
else if (!arg.split('=').at(0).compare("-Screen",Qt::CaseInsensitive)){
screen=arg.split('=').at(1).toInt(&forceScreen);
}
else if (!arg.compare("-opengl",Qt::CaseInsensitive)){
flag=flag|OPENGL;
flag|=OPENGL;
}
else if (!arg.compare("-text",Qt::CaseInsensitive)){
flag=flag|ONLYTEXT|DEBUG;
flag|=ONLYTEXT|DEBUG;
}
}
if (flag & STANDARD ) qWarning("STD MODE");
if (flag == STANDARD) qWarning("STD MODE");
if (flag & OPENGL){ qWarning("OPENGL ACTIVATED");
argc+=2;
argv[argc-2]="-graphicssystem";
argv[argc-1]="opengl";
argc+=2; // TODO: check if it's valid
argv[argc-2]=strdup("-graphicssystem");
argv[argc-1]=strdup("opengl");
}


Expand Down Expand Up @@ -120,7 +118,7 @@ int main(int argc, char *argv[])
}
else if (flag & DEBUG) qWarning()<<"Game dir exist!";
//Create the main widget in the bigger screen
MainWidget w(a.desktop()->screenGeometry(screen),flag);
MainWidget w(a.desktop()->screenGeometry(screen));
w.show();

return a.exec();
Expand Down
9 changes: 4 additions & 5 deletions mainwidget.cpp
@@ -1,18 +1,17 @@
#include "mainwidget.h"
#include <QDebug>


#include "svglevelloader.h"

MainWidget::MainWidget(QRect geometry,int flag,QWidget *parent)
#include "flags.h"

MainWidget::MainWidget(QRect geometry,QWidget *parent)
: QWidget(parent)
{
this->showFullScreen();//To have the game full screen
this->setGeometry(geometry);
this->geometry=geometry;

this->flag=flag;

levelS=new LevelSelector(geometry,this);//Create the level selector
levelS->show();//Show the level selector
level=NULL;
Expand Down Expand Up @@ -55,7 +54,7 @@ void MainWidget::levelSelected()//Create the level selected
bgWidget->setGeometry(0,0,geometry.width(),geometry.height());
bgWidget->show();

level=new Level(geometry,levelS->getLevelSelected(),bgWidget,flag,this); //Create the level
level=new Level(geometry,levelS->getLevelSelected(),bgWidget,this); //Create the level
if (flag & DEBUG) qWarning()<<"LEVEL OBJECT INITILIZED";


Expand Down
3 changes: 1 addition & 2 deletions mainwidget.h
Expand Up @@ -13,15 +13,14 @@ class MainWidget : public QWidget
Q_OBJECT

public:
MainWidget(QRect geometry,int flag,QWidget *parent = 0);
MainWidget(QRect geometry,QWidget *parent = 0);
~MainWidget();
private:
Level *level;
LevelSelector *levelS;
BackGroundWidget * bgWidget;

QRect geometry;
int flag;
protected:
void closeEvent(QCloseEvent *);
private slots:
Expand Down
7 changes: 4 additions & 3 deletions menu.cpp
Expand Up @@ -6,11 +6,12 @@
#include <QFontMetrics>
#include <QDebug>

Menu::Menu(QRect geometry, QObject *parent,bool debug) :
#include "flags.h"

Menu::Menu(QRect geometry, QObject *parent) :
QObject(parent)
{
this->geometry=geometry;
this->debug=debug;
computeHeight();

loadMenuFile();
Expand All @@ -27,7 +28,7 @@ void Menu::paint(QPainter &p){
p.setBrush(Qt::white);
for (int i=0;i<index.length();i++)
paintButton(i,p);
if(debug) p.drawRect(geometry.width()/2-1,geometry.height()/2-1,2,2);//Draw center of the screen
if(flag & DEBUG) p.drawRect(geometry.width()/2-1,geometry.height()/2-1,2,2);//Draw center of the screen
}

void Menu::loadMenuFile(){
Expand Down
3 changes: 1 addition & 2 deletions menu.h
Expand Up @@ -15,7 +15,7 @@ class Menu : public QObject
{
Q_OBJECT
public:
explicit Menu(QRect geometry,QObject *parent = 0,bool debug=false);
explicit Menu(QRect geometry,QObject *parent = 0);
void mouseRelease(QMouseEvent *e);
private:
QStringList index;
Expand All @@ -24,7 +24,6 @@ class Menu : public QObject
QRect geometry;
int selected;
int height;
bool debug;

void loadMenuFile();
void computeHeight();
Expand Down

0 comments on commit e616ee4

Please sign in to comment.