Mercurial > otakunoraifu
comparison system/file.h @ 35:2c574c3d50a9
* Moved XOR key related things to a proper location
* xclannad -v now displays the real version (as specified in configure.ac)
author | thib |
---|---|
date | Sun, 08 Mar 2009 19:16:36 +0000 |
parents | 3fe3e5f184b5 |
children | 5f548e5957a8 |
comparison
equal
deleted
inserted
replaced
34:b76a8da75ec3 | 35:2c574c3d50a9 |
---|---|
103 class DIRFILE; | 103 class DIRFILE; |
104 class SCN2kFILE; | 104 class SCN2kFILE; |
105 /* ARCINFO はファイルを読み込むために必要 */ | 105 /* ARCINFO はファイルを読み込むために必要 */ |
106 class ARCINFO; | 106 class ARCINFO; |
107 class ARCFILE_ATOM; | 107 class ARCFILE_ATOM; |
108 | |
109 class KEYHOLDER { | |
110 public: | |
111 void SetKey(char[16]); | |
112 void SetKey2(char[33]); | |
113 void GuessKey(char*); | |
114 const char* GetKey(void); | |
115 private: | |
116 char key[16]; | |
117 }; | |
118 | |
108 class FILESEARCH { | 119 class FILESEARCH { |
109 public: | 120 public: |
110 #define TYPEMAX 14 | 121 #define TYPEMAX 14 |
111 enum FILETYPE { | 122 enum FILETYPE { |
112 /* 一応、0 - 15 まで reserved */ | 123 /* 一応、0 - 15 まで reserved */ |
134 ARCTYPE is_archived[TYPEMAX]; | 145 ARCTYPE is_archived[TYPEMAX]; |
135 char* filenames[TYPEMAX]; | 146 char* filenames[TYPEMAX]; |
136 /* デフォルトの information */ | 147 /* デフォルトの information */ |
137 static ARCTYPE default_is_archived[TYPEMAX]; | 148 static ARCTYPE default_is_archived[TYPEMAX]; |
138 static char* default_dirnames[TYPEMAX]; | 149 static char* default_dirnames[TYPEMAX]; |
139 char xor_key[16]; | |
140 public: | 150 public: |
141 FILESEARCH(void); | 151 FILESEARCH(void); |
142 ~FILESEARCH(); | 152 ~FILESEARCH(); |
143 /* 初めにゲームのデータがあるディレクトリを設定する必要がある */ | 153 /* 初めにゲームのデータがあるディレクトリを設定する必要がある */ |
144 int InitRoot(char* root); | 154 int InitRoot(char* root); |
152 /* fname で指定された名前のファイルを検索 */ | 162 /* fname で指定された名前のファイルを検索 */ |
153 class ARCINFO* Find(FILETYPE type, const char* fname, const char* ext=0); | 163 class ARCINFO* Find(FILETYPE type, const char* fname, const char* ext=0); |
154 /* ある種類のファイルをすべてリストアップ | 164 /* ある種類のファイルをすべてリストアップ |
155 ** 末尾は NULL pointer | 165 ** 末尾は NULL pointer |
156 */ | 166 */ |
157 void SetXorKey(char*); | |
158 void GuessXorKey(char*); | |
159 const char* GetXorKey(void); | |
160 char** ListAll(FILETYPE type); | 167 char** ListAll(FILETYPE type); |
161 }; | 168 }; |
162 | 169 |
163 class ARCINFO { | 170 class ARCINFO { |
164 protected: | 171 protected: |
223 void CopyRGBA_rev(char* image, const char* from); | 230 void CopyRGBA_rev(char* image, const char* from); |
224 void CopyRGB_rev(char* image, const char* from); | 231 void CopyRGB_rev(char* image, const char* from); |
225 }; | 232 }; |
226 | 233 |
227 extern FILESEARCH file_searcher; | 234 extern FILESEARCH file_searcher; |
235 extern KEYHOLDER key_holder; | |
228 | 236 |
229 #endif // !defined(__KANON_FILE_H__) | 237 #endif // !defined(__KANON_FILE_H__) |