Develop and Download Open Source Software

Browse Subversion Repository

Contents of /trunk/CSceneryMode.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 11 - (show annotations) (download) (as text)
Sun Sep 9 04:21:31 2012 UTC (11 years, 8 months ago) by okadu
File MIME type: text/x-chdr
File size: 3669 byte(s)
[okadu] Version 2.14a バグ修正いろいろ

1 #ifndef CSCENERYMODE_H_INCLUDED
2 #define CSCENERYMODE_H_INCLUDED
3
4 #include "CWindowCtrl.h"
5 #include "CStaticCtrl.h"
6 #include "CCheckBox.h"
7 #include "CRadioButton.h"
8 #include "CEditCtrl.h"
9 #include "CGameMode.h"
10
11 /*
12 * シーンモード
13 */
14 class CSceneryMode: public CGameMode{
15 protected:
16 static int ms_PhotoMode; // 撮影モード
17 static bool ms_NeedResetViewport;
18 public:
19 static int GetPhotoMode(){ return ms_PhotoMode; }
20 CSceneryMode(){}
21 virtual ~CSceneryMode(){}
22 virtual bool CameraCtrlExp(){ return false; }
23 virtual bool CameraCtrlLock(){ return false; }
24 char *LoadSetting(char *str){ return LoadScenerySetting(str); }
25 virtual char *LoadScenerySetting(char *str){ return str; }
26 void SaveSetting(FILE *file){ SaveScenerySetting(file); }
27 virtual void SaveScenerySetting(FILE *){}
28 CCamera *GetCamera();
29 void EnterGame();
30 virtual void EnterScenery() = 0;
31 void SpinGame();
32 void ResetViewport();
33 virtual void ApplyCamera();
34 virtual void ScanInputScenery() = 0;
35 virtual void RenderScenery() = 0;
36 bool IsPaused(){ return IsPausedScenery(); }
37 virtual bool IsPausedScenery() = 0;
38 bool ProcessShortcutKey();
39 virtual bool IsArrowMode(){ return false; }
40 virtual bool IsWindowDivisible(){ return false; }
41 };
42
43 /*
44 * 矢印シーンモード
45 */
46 class CArrowSceneryMode: public CSceneryMode{
47 protected:
48 static CWindowCtrl ms_OptionWindow; // 汎用設定窓
49 static CStaticCtrl ms_SnapLabel; // スナップラベル
50 static CCheckBox ms_Grid; // グリッドチェック
51 static CRadioButton ms_Snap[]; // スナップラジオ
52 static CCheckBox ms_Axle[]; // スナップ適用軸
53 static CStaticCtrl ms_BuildLabel; // 設置方法ラベル
54 static CCheckBox ms_Build[]; // 高架チェック
55 bool m_ArrowMode; // 3D モード
56 VEC3 m_SnapPos; // スナップ適用後座標
57 public:
58 static void InitInterface();
59 static int GetAltMask();
60 static float GetSnapScale();
61 CArrowSceneryMode();
62 virtual ~CArrowSceneryMode(){}
63 VEC3 *ArrowPos();
64 VEC3 GetSnapPos();
65 void DrawGrid();
66 void EnterScenery();
67 char *LoadScenerySetting(char *str){ return LoadArrowScenerySetting(str); }
68 virtual char *LoadArrowScenerySetting(char *str){ return str; }
69 void SaveScenerySetting(FILE *file){ SaveArrowScenerySetting(file); }
70 virtual void SaveArrowScenerySetting(FILE *){}
71 virtual void EnterArrowScenery() = 0;
72 virtual void ModalFuncArrowScenery(){}
73 void ScanInputScenery();
74 virtual void ScanInputArrowScenery() = 0;
75 void RenderScenery();
76 virtual void RenderArrowScenery(){}
77 bool IsPausedScenery(){ return IsPausedArrowScenery(); }
78 virtual bool IsPausedArrowScenery(){ return false; }
79 virtual bool IsArrowMode(){ return m_ArrowMode; }
80 };
81
82 /*
83 * カーソルシーンモード
84 */
85 class CCursorSceneryMode: public CSceneryMode{
86 protected:
87 public:
88 CCursorSceneryMode(){}
89 virtual ~CCursorSceneryMode(){}
90 virtual bool CameraCtrlExp(){ return false; }
91 virtual bool CameraCtrlLock(){ return false; }
92 char *LoadScenerySetting(char *str){ return LoadCursorScenerySetting(str); }
93 virtual char *LoadCursorScenerySetting(char *str){ return str; }
94 void SaveScenerySetting(FILE *file){ SaveCursorScenerySetting(file); }
95 virtual void SaveCursorScenerySetting(FILE *){}
96 void EnterScenery();
97 virtual void EnterCursorScenery() = 0;
98 virtual void ModalFuncCursorScenery(){}
99 virtual void ApplyCamera(){ CSceneryMode::ApplyCamera(); }
100 void ScanInputScenery();
101 virtual void ScanInputCursorScenery() = 0;
102 void RenderScenery();
103 virtual void RenderCursorScenery(){}
104 virtual void RenderCursorSceneryFull(){}
105 bool IsPausedScenery(){ return IsPausedCursorScenery(); }
106 virtual bool IsPausedCursorScenery(){ return false; }
107 };
108
109 #endif

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26