Code/Resource
Windows Develop
Linux-Unix program
Internet-Socket-Network
Web Server
Browser Client
Ftp Server
Ftp Client
Browser Plugins
Proxy Server
Email Server
Email Client
WEB Mail
Firewall-Security
Telnet Server
Telnet Client
ICQ-IM-Chat
Search Engine
Sniffer Package capture
Remote Control
xml-soap-webservice
P2P
WEB(ASP,PHP,...)
TCP/IP Stack
SNMP
Grid Computing
SilverLight
DNS
Cluster Service
Network Security
Communication-Mobile
Game Program
Editor
Multimedia program
Graph program
Compiler program
Compress-Decompress algrithms
Crypt_Decrypt algrithms
Mathimatics-Numerical algorithms
MultiLanguage
Disk/Storage
Java Develop
assembly language
Applications
Other systems
Database system
Embeded-SCM Develop
FlashMX/Flex
source in ebook
Delphi VCL
OS Develop
MiddleWare
MPI
MacOS develop
LabView
ELanguage
Software/Tools
E-Books
Artical/Document
MasterX.h
Package: DirectX_2D.zip [view]
Upload User: hnktjx
Upload Date: 2009-12-18
Package Size: 39k
Code Size: 5k
Category:
Game Program
Development Platform:
C/C++
- /* MasterX System Devlopment Kit (SDK)
- DirectX API Encapsulation For easy game programming.
- Written by Jared Bruni
- Age 17 Years Old.
- Email Me: MasterOnLSD@lostsidedead.com
- www.lostsidedead.com
- for MasterX SDK documentation check out
- www.lostsidedead.com/gameprog/
- I LOVE VIDEO GAMES!! :) THEY ROCK
- note required librarys within your project link settings
- dxguid.lib dddraw.lib dsound.lib dinput.lib
- */
- #include <ddraw.h>
- #include <windows.h>
- #include <mmsystem.h>
- #include <dsound.h>
- #include <dinput.h>
- // for register based calling convention rather then stack based (speed)
- #define FAST __fastcall
- // for std based calling convention
- #define XSTD __stdcall
- #define MXENTRY __stdcall
- // for pascal based calling convention
- #define XPAS __pascal
- // Helper typedef's so you dont gotta use evil MS stuff
- typedef int MASTERSCREEN;
- typedef int MASTERMSG;
- typedef long MXRESULT;
- typedef unsigned long WindowHandle;
- enum DisplayColor { COLOR_8, COLOR_16,COLOR_24,COLOR_32,COLOR_DEFAULT };
- struct MasterScreen
- {
- LPDIRECTDRAW lpDD;
- LPDIRECTDRAWSURFACE lpBack;
- LPDIRECTDRAWSURFACE lpFront;
- ~MasterScreen();
- };
- class MasterText
- {
- public:
- MasterScreen* scr;
- HFONT font;
- HFONT underfont;
- COLORREF bk;
- COLORREF text;
- void init(MasterScreen*);
- void setfont(HFONT);
- void setunderfont(HFONT);
- void setbkcolor(COLORREF);
- void settextcolor(COLORREF);
- void FAST printtext(char*,int x,int y);
- void FAST printtextunderline(char*, int x, int y);
- void FAST printtextrect(char*, int x, int y, int w, int h);
- void setdefaultfont();
- };
- typedef class MasterGraphic
- {
- MasterScreen* scr;
- LPDIRECTDRAWSURFACE surf;
- char filename[50];
- bool ckey;
- public:
- int w;
- int h;
- void init(MasterScreen* scr);
- bool LoadGraphic(char* filename);
- bool LoadGraphic(char* filename,MasterScreen* scr);
- void ReLoadGraphic();
- void SetColorKey(COLORREF r);
- void DisplayGraphic(int x, int y);
- ~MasterGraphic();
- MasterGraphic();
- void Release();
- }MasterSprite;
- class MasterSound
- {
- public:
- IDirectSoundBuffer *pSound;
- bool LoadSound(IDirectSound* pds,LPCTSTR name);
- void Play();
- bool PlayStatus();
- void Release();
- MasterSound();
- ~MasterSound();
- };
- // Painting Functions
- class MasterPaint
- {
- MasterScreen* scr;
- public:
- void init(MasterScreen* xscr);
- void FAST mxdrawrect(int x, int y, int x2, int y2,COLORREF fill,COLORREF outline);
- void FAST mxdrawroundrect(int x, int y, int x2, int y2,int cw, int ch, COLORREF fill,COLORREF outline);
- void FAST mxdrawpie(int x, int y, int x2, int y2, int nx, int ny, int nx2, int ny2,COLORREF fill, COLORREF outline);
- void FAST mxdrawchord(int x, int y, int x2, int y2, int nx, int ny, int nx2, int ny2, COLORREF fill, COLORREF outline);
- void FAST mxdrawellipse(int x, int y, int x2, int y2,COLORREF fill,COLORREF outline);
- };
- class MasterXHWND
- {
- MASTERSCREEN mscr;
- void Destroy();
- DDBLTFX ddbltfx;
- bool setprimarysurface();
- bool initSound();
- void initInput();
- public:
- HWND hwnd;
- MasterScreen scr;
- MasterText text;
- MasterPaint paint;
- bool alive;
- UINT activeapp;
- IDirectInput *pDI;
- IDirectInputDevice *pKeyboard;
- IDirectSound *pDS;
- void (* update) (MASTERSCREEN xscr);
- bool CreateMasterX(char* mytitle,int width,int height,DisplayColor color,WNDPROC proc,HINSTANCE hInst,HICON icon,HCURSOR cursor);
- WPARAM InitLoop( void (* update) (MASTERSCREEN xscr));
- void Kill();
- MASTERSCREEN GetScreen();
- void SetScreen(MASTERSCREEN xmscr);
- LRESULT SendMasterMessage(UINT msg,WPARAM wParam,LPARAM lParam);
- void clear();
- void mx_update();
- bool LoadGraphic(MasterGraphic* g, char* filename);
- bool LoadSound(MasterSound* s,LPCSTR resourceID);
- bool KeyCheck(int key);
- bool AsyncKeyCheck(int key);
- };
- //******************************** DirectDraw/DirectSound Helper Functions.. from ddutil
- IDirectDrawSurface* DDLoadBitmap(IDirectDraw* pdd, LPCSTR szBitmap);
- IDirectDrawSurface* CreateOffScreenSurface(IDirectDraw* pdd, int dx, int dy); // Creating the Surface
- HRESULT DDCopyBitmap(IDirectDrawSurface* pdds, HBITMAP hbm, int dx, int dy); // Copy Bitmap
- ///////////////////////////////////////////////////////////////////////////////
- IDirectSoundBuffer *DSLoadSoundBuffer(IDirectSound *pDS, LPCTSTR lpName);
- BOOL DSReloadSoundBuffer(IDirectSoundBuffer *pDSB, LPCTSTR lpName);
- BOOL DSGetWaveResource(HMODULE hModule, LPCTSTR lpName,
- WAVEFORMATEX **ppWaveHeader, BYTE **ppbWaveData, DWORD *pdwWaveSize);
- BOOL DSFillSoundBuffer(IDirectSoundBuffer *pDSB, BYTE *pbWaveData, DWORD dwWaveSize);
- BOOL DSParseWaveResource(void *pvRes, WAVEFORMATEX **ppWaveHeader, BYTE **ppbWaveData,
- DWORD *pdwWaveSize);
- HRESULT
- DDSetColorKey(IDirectDrawSurface * pdds, COLORREF rgb);
- DWORD
- DDColorMatch(IDirectDrawSurface * pdds, COLORREF rgb);
- HRESULT
- DDCopyBitmap2(IDirectDrawSurface * pdds, HBITMAP hbm, int x, int y,
- int dx, int dy);
- HRESULT
- DDReLoadBitmap(IDirectDrawSurface * pdds, LPCSTR szBitmap);
- int APIENTRY MasterMain(HINSTANCE hInst,LPSTR line);
- struct mxbitmap
- {
- int w;
- int h;
- IDirectDrawSurface* surf;
- };
- static int MXWIDTH;
- static int MXHEIGHT;