📄 sysdef.h
字号:
#ifndef GAMEDEF_H
#define GAMEDEF_H
//#include <AEE.h> // Standard AEE definitions
//#include <AEEStdlib.h> // AEE Standard C library functions
////////////////////////////////
// ASSERT definition
////////////////////////////////
#include <afx.h>
#include <malloc.h>
#include <string.h>
#define MALLOC(A) malloc(A)
#define FREE(A) free(A)
#define MEMSET(A,B,C) memset(A,B,C)
#define STRCPY(A,B) strcpy(A,B)
#define STRCAT(A,B) strcat(A,B)
#define MEMCPY(A,B,C) memcpy(A,B,C)
#define GETUPTIMEMS() GetTickCount()
#define DBGPRINTF printf
#define SPRINTF sprintf
#define STRCMP strcmp
#define STRNCPY strncpy
#define STRLEN strlen
#define ABS abs
#define SUCCESS 0 // No error
#ifndef byte
typedef unsigned char byte;
#endif
#ifndef boolean
typedef unsigned char boolean;
#endif
#ifdef AEE_SIMULATOR
int __stdcall MessageBoxA(
void* hWnd ,
const char *lpText,
const char *lpCaption,
unsigned int uType);
__inline void Assert(int x, char *file, int line,char *s)
{
if(!x){
char msg[64];
SPRINTF(msg, "%s\n line:%d\n%s",file, line, s);
//MessageBoxA(NULL, msg, NULL, 0);
__asm int 3;
}
}
#define SYS_ASSERT(x) Assert(x,__FILE__,__LINE__,"")
#define SYS_ASSERT2(x,s) Assert(x,__FILE__,__LINE__,s)
#define LOG DBGPRINTF
#define ASSERT_OF(x, y) if ((double)(x) * (double)(y) >= 0x7fffffff) Assert(0, __FILE__, __LINE__, "");
#define ASSERT_OF2(x, y) if ((double)(x) * (double)(y) >= 0xffffffff) Assert(0, __FILE__, __LINE__, "");
#else //arm
// #ifndef __FEATURE_SIGNED_CHAR //we must use -zc in mak file
// /*use -zc in make file */#define a( //hehe
// #endif
#define SYS_ASSERT(x) //if(!(x)) DBGPRINTF("A %s:%d", __FILE__, __LINE__)
#define SYS_ASSERT2(x,s) //if(!(x)) DBGPRINTF("A %s:%d", __FILE__, __LINE__,s)
#define LOG DBGPRINTF
#define ASSERT_OF(x, y)
#define ASSERT_OF2(x, y)
#endif
//////////////////////////////////
// BREW version definition
//////////////////////////////////
//////////////////////////////////
// Resource file name
//////////////////////////////////
#define RES_FILE "res.pak"
//////////////////////////////////
// Save file name
//////////////////////////////////
#define SAVEFILE_NAME "save.dat"
#define SAVEFILE_NAME1 "save1.dat"
//////////////////////////////////
// Memory size
//////////////////////////////////
// local
#define LOCAL_MEMORY_SIZE (2600 * 1024)
#define GLOBAL_MEMORY_SIZE (1200 * 1024)
//===========================================================================//
// Device
//===========================================================================//
// screen size
#define SCREEN_WIDTH 176
#define SCREEN_HEIGHT 203
//============================================================================//
// FOR 3D RENDER
//============================================================================//
#define INTERFACE_HEIGHT 0
#define RENDER_WIDTH SCREEN_WIDTH
#define RENDER_HEIGHT SCREEN_HEIGHT - INTERFACE_HEIGHT
//=============================================================================//
#define SCREEN_WIDTH_D2 (SCREEN_WIDTH>>1)
#define SCREEN_HEIGHT_D2 (SCREEN_HEIGHT>>1)
#define MAX_ACTOR_WIDTH 30
#define MAX_ACTOR_HEIGHT 60
#define GAME_BAR_LENGTH 40
#define GAME_BAR_HEIGHT 4
//
#define MAX_CAMERA_SLIDE_VELOCITY 20 // PIXELS
// block size
#define BLOCK_WIDTH 64//128
#define BLOCK_HEIGHT 64//128
//
#define MAX_CAMERA_SLIDE_POINTS_NUMBER 7
#define MAX_HITS_NUMBER 10
#define MAX_RADAR_LIST_NUMBER 10
#define MAX_DRAW_LIST_SIZE 50
#define MAX_ENEMY_SNIPE_CROSS_NUMBER 6
#define DURATION_CAMERA_SLIDE_POINTS_STAYING 30
#define RADERWIDTH_D2 11
#define SQUARE_RADER (RADERWIDTH_D2*RADERWIDTH_D2)
#define bLoadAnimsOnce false
// Input System
#define gk_HOLD_TIME 10
// Game key
#define gk_UP 1
#define gk_DOWN (1<<1)
#define gk_LEFT (1<<2)
#define gk_RIGHT (1<<3)
#define gk_NUM0 (1<<4)
#define gk_NUM1 (1<<5)
#define gk_NUM2 (1<<6)
#define gk_NUM3 (1<<7)
#define gk_NUM4 (1<<8)
#define gk_NUM5 (1<<9)
#define gk_NUM6 (1<<10)
#define gk_NUM7 (1<<11)
#define gk_NUM8 (1<<12)
#define gk_NUM9 (1<<13)
#define gk_STAR (1<<14)
#define gk_POUND (1<<15)
#define gk_LSOFT (1<<16)
#define gk_RSOFT (1<<17)
#define gk_MSOFT (1<<18)
#define gk_BACK (1<<19)
#define gk_SEND (1<<20)
// Virtual Key
#define VKEY_SCROLL_LEFT (gk_LEFT|gk_NUM4)
#define VKEY_SCROLL_RIGHT (gk_RIGHT|gk_NUM6)
#define VKEY_SCROLL_UP (gk_UP|gk_NUM2)
#define VKEY_SCROLL_DOWN (gk_DOWN|gk_NUM8)
#define VKEY_THROW_GRENADE (gk_NUM3|gk_NUM9)
#define VKEY_COMMAND (gk_MSOFT|gk_NUM5)
#define VKEY_SNIPER (gk_STAR)
#define VKEY_KNIFE gk_NUM0
#define VKEY_THROW_FLASH (gk_NUM1|gk_NUM7)
#define VKEY_MENU_SELECT (gk_NUM5|gk_RSOFT|gk_MSOFT)
#define VKEY_MENU_BACK (gk_LSOFT|gk_BACK)
#define VKEY_MENU_UP (gk_UP|gk_NUM2)
#define VKEY_MENU_DOWN (gk_DOWN|gk_NUM8)
#define VKEY_MENU_LEFT (gk_LEFT|gk_NUM4)
#define VKEY_MENU_RIGHT (gk_RIGHT|gk_NUM6)
#define VKEY_MENU_CLR gk_BACK
#define VKEY_MENU_PAUSE gk_RSOFT
#define VKEY_MENU_RETRY gk_LSOFT
#define VKEY_MENU_EXIT gk_RSOFT
#define VKEY_MENU_CONTINUE gk_LSOFT
#define DEFAULT_SOUND_SET 0 //Milo 0 for without default sound 12-29
// Sound System
#define SOUND_NUMBER 24
#if CHECK_MATH
// ---------------------------------------------------------------------------
// Check integer arithmetics overflow
// ---------------------------------------------------------------------------
void _Check_Int_Limit(double); // Defined in IMath.cpp
void _Check_Short_Limit(double);
#define CHECK_SHORT_LIMIT(x) _Check_Short_Limit(x);
#define CHECK_LIMIT(x) _Check_Int_Limit(x);
void _Check_Precision(double fResult, int nResult, double fTolerancePercentage);
#define CHK_MULT(x,y) CHECK_LIMIT(double(x)*double(y))
#define CHK_ADD(x,y) CHECK_LIMIT(double(x)+double(y))
#define CHK_PRECISION(fResult, nResult, fTolerancePercentage) _Check_Precision(fResult, nResult, fTolerancePercentage);
#else
#define CHECK_SHORT_LIMIT(x)
#define CHECK_LIMIT(x)
#define CHK_MULT(x,y)
#define CHK_ADD(x,y)
#define CHK_PRECISION(fResult, nResult, fTolerancePercentage)
#endif //#if CHECK_MATH
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -