File indexing completed on 2024-04-21 04:02:06

0001 /***************************************************************************
0002 *   KBlocks, a falling blocks game by KDE                                *
0003 *   SPDX-FileCopyrightText: 2010 Zhongjie Cai <squall.leonhart.cai@gmail.com>       *
0004 *                                                                         *
0005 *   SPDX-License-Identifier: GPL-2.0-or-later
0006 ***************************************************************************/
0007 
0008 #ifndef KBLOCKSDEFINE_H
0009 #define KBLOCKSDEFINE_H
0010 
0011 #define PREPARE_AREA_WIDTH    5
0012 
0013 #define FADE_ANIM_TIME_LINE   250
0014 #define DROP_ANIM_TIME_LINE   250
0015 
0016 typedef unsigned long         timeLong;
0017 
0018 enum KBlocks_Game_Action {
0019     GameAction_None = 0,
0020     GameAction_Punish_Line,
0021     GameAction_Remove_Line,
0022     GameAction_Freeze_Piece_Color,
0023     GameAction_Freeze_Piece_X,
0024     GameAction_Freeze_Piece_Y,
0025     GameAction_New_Piece_X,
0026     GameAction_New_Piece_Y,
0027     GameAction_Max_Count
0028 };
0029 
0030 enum KBlocks_Game_Result {
0031     GameResult_None = 0,
0032     GameResult_Game_Over,
0033     GameResult_One_Step,
0034     GameResult_Next_Piece,
0035     GameResult_Remove_Line_1,
0036     GameResult_Remove_Line_2,
0037     GameResult_Remove_Line_3,
0038     GameResult_Remove_Line_4,
0039     GameResult_Max_Count
0040 };
0041 
0042 enum KBlocks_Game_State {
0043     GameState_Stop = 0,
0044     GameState_Running,
0045     GameState_Pause,
0046     GameState_Max_Count
0047 };
0048 
0049 enum KBlocks_Record_DataType {
0050     RecordDataType_GameCount = 0,
0051     RecordDataType_GameSeed,
0052 
0053     RecordDataType_Skipped,
0054     RecordDataType_MovePieceLeft,
0055     RecordDataType_MovePieceRight,
0056     RecordDataType_MovePieceUp,
0057     RecordDataType_MovePieceDown,
0058     RecordDataType_RotatePieceCW,
0059     RecordDataType_RotatePieceCCW,
0060     RecordDataType_GameOneStep,
0061     RecordDataType_PunishLineCount,
0062     RecordDataType_PunishLineSeed,
0063 
0064     RecordDataType_Max_Count
0065 };
0066 
0067 extern const char *KBlocksRecordText[RecordDataType_Max_Count];
0068 
0069 #endif
0070