1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116
|
//Dark GDK - The Game Creators - www.thegamecreators.com
//the wizard has created a very simple project that uses Dark GDK
//it contains the basic code for a GDK application
//whenever using Dark GDK you must ensure you include the header file
#include "DarkGDK.h"
//Global
int Block_Size=20;
const DWORD Red = dbRGB(255,0,0);
const DWORD Green = dbRGB(0,255,0);
const DWORD Blue = dbRGB(0,0,255);
const DWORD Magenta = dbRGB(255,0,255);
const DWORD Black = dbRGB(0,0,0);
const DWORD White = dbRGB(255,255,255);
const DWORD Yellow = dbRGB(255,255,0);
const DWORD Cyan = dbRGB(0,255,255);
const DWORD Orange = dbRGB(255,165,0);
//end global
//Classes
class Block {
private:
int x,y;
DWORD color;
public:
Block(int, int, DWORD);
void draw();
void move(int, int);
void clear();
};
//Methods (Block)
Block::Block(int X, int Y, DWORD COLOR)
{
x=X;
y=Y;
color=COLOR;
}
void Block::draw()
{
int x1, y1, x2, y2;
x1=x*Block_Size;
y1=y*Block_Size;
x2=x1+Block_Size;
y2=y1+Block_Size;
dbInk(color, Black);
dbBox(x1,y1,x2,y2);
}
void Block::move(int dx, int dy)
{
x=x+dx;
y=y+dy;
draw();
}
//End Method (Block)
class Shape {
private:
Block blocks[4]
public:
void move_shape(int,int);
void clear_shape();
void draw_shape();
};
class I_Shape: public Shape{
public:
I_Shape(int,int);
private:
DWORD color;
int pos[8];
};
//Methods (I_Shape)
I_Shape::I_Shape(int x, int y):Shape()
{
color=Blue;
pos[0]=x-1;
pos[1]=y;
pos[2]=x;
pos[3]=y;
pos[4]=x+1;
pos[5]=y;
pos[6]=x+2;
pos[7]=y
}
// the main entry point for the application is this function
void DarkGDK ( void )
{
// turn on sync rate and set maximum rate to 1 fps
dbSyncOn ( );
dbSyncRate ( 1 );
// our main loop
while ( LoopGDK ( ) )
{
// update the screen
dbSync ( );
}
// return back to windows
return;
}
|