1 |
commit: 3c42289e889f9406b82f9201ccc16ece7506eb3f |
2 |
Author: Azamat H. Hackimov <azamat.hackimov <AT> gmail <DOT> com> |
3 |
AuthorDate: Tue Apr 26 10:24:57 2011 +0000 |
4 |
Commit: Azamat H. Hackimov <winterheart <AT> gentoo <DOT> ru> |
5 |
CommitDate: Tue Apr 26 10:24:57 2011 +0000 |
6 |
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/gamerlay.git;a=commit;h=3c42289e |
7 |
|
8 |
[games-action/teeworlds] teeworlds 0.6.0 from #363395 |
9 |
|
10 |
(Portage version: 2.1.9.42/git/Linux x86_64, RepoMan options: --force, unsigned Manifest commit) |
11 |
|
12 |
--- |
13 |
.../teeworlds-0.6.0-001-use-system-wavpack.patch | 105 +++++++++ |
14 |
...lds-0.6.0-002-fixed-wavpack-sound-loading.patch | 110 ++++++++++ |
15 |
.../teeworlds-0.6.0-003-use-system-pnglite.patch | 113 ++++++++++ |
16 |
games-action/teeworlds/files/teeworlds.xpm | 229 ++++++++++++++++++++ |
17 |
games-action/teeworlds/metadata.xml | 15 ++ |
18 |
games-action/teeworlds/teeworlds-0.6.0.ebuild | 93 ++++++++ |
19 |
6 files changed, 665 insertions(+), 0 deletions(-) |
20 |
|
21 |
diff --git a/games-action/teeworlds/files/teeworlds-0.6.0-001-use-system-wavpack.patch b/games-action/teeworlds/files/teeworlds-0.6.0-001-use-system-wavpack.patch |
22 |
new file mode 100644 |
23 |
index 0000000..4391172 |
24 |
--- /dev/null |
25 |
+++ b/games-action/teeworlds/files/teeworlds-0.6.0-001-use-system-wavpack.patch |
26 |
@@ -0,0 +1,105 @@ |
27 |
+From 5c5171d2de5f4d3b7926f16faa70b16ccf434c86 Mon Sep 17 00:00:00 2001 |
28 |
+From: xalduin <xalduin@×××××.com> |
29 |
+Date: Sat, 12 Feb 2011 22:22:02 -0500 |
30 |
+Subject: [PATCH 1/3] Will now use system wavpack and zlib libraries if available when |
31 |
+ compiling |
32 |
+ |
33 |
+--- |
34 |
+ bam.lua | 15 +++++++++++++-- |
35 |
+ src/engine/client/sound.cpp | 10 +++++++++- |
36 |
+ 2 files changed, 22 insertions(+), 3 deletions(-) |
37 |
+ |
38 |
+diff --git a/bam.lua b/bam.lua |
39 |
+index 0c953e8..ade4ae4 100644 |
40 |
+--- a/bam.lua |
41 |
++++ b/bam.lua |
42 |
+@@ -9,6 +9,7 @@ config = NewConfig() |
43 |
+ config:Add(OptCCompiler("compiler")) |
44 |
+ config:Add(OptTestCompileC("stackprotector", "int main(){return 0;}", "-fstack-protector -fstack-protector-all")) |
45 |
+ config:Add(OptLibrary("zlib", "zlib.h", false)) |
46 |
++config:Add(OptLibrary("wavpack", "wavpack/wavpack.h", false)) |
47 |
+ config:Add(SDL.OptFind("sdl", true)) |
48 |
+ config:Add(FreeType.OptFind("freetype", true)) |
49 |
+ config:Finalize("config.lua") |
50 |
+@@ -165,7 +166,7 @@ function build(settings) |
51 |
+ end |
52 |
+ |
53 |
+ -- compile zlib if needed |
54 |
+- if config.zlib.value == 1 then |
55 |
++ if config.zlib.value == true then |
56 |
+ settings.link.libs:Add("z") |
57 |
+ if config.zlib.include_path then |
58 |
+ settings.cc.includes:Add(config.zlib.include_path) |
59 |
+@@ -176,8 +177,18 @@ function build(settings) |
60 |
+ settings.cc.includes:Add("src/engine/external/zlib") |
61 |
+ end |
62 |
+ |
63 |
++ if config.wavpack.value == true then |
64 |
++ settings.link.libs:Add("wavpack") |
65 |
++ if config.wavpack.include_path then |
66 |
++ settings.cc.includes:Add(config.wavpack.include_path) |
67 |
++ end |
68 |
++ wavpack = {} |
69 |
++ else |
70 |
++ wavpack = Compile(settings, Collect("src/engine/external/wavpack/*.c")) |
71 |
++ settings.cc.includes:Add("src/engine/external/") --The header is wavpack/wavpack.h so include the external folder |
72 |
++ end |
73 |
++ |
74 |
+ -- build the small libraries |
75 |
+- wavpack = Compile(settings, Collect("src/engine/external/wavpack/*.c")) |
76 |
+ pnglite = Compile(settings, Collect("src/engine/external/pnglite/*.c")) |
77 |
+ |
78 |
+ -- build game components |
79 |
+diff --git a/src/engine/client/sound.cpp b/src/engine/client/sound.cpp |
80 |
+index 55ca293..e38ad32 100644 |
81 |
+--- a/src/engine/client/sound.cpp |
82 |
++++ b/src/engine/client/sound.cpp |
83 |
+@@ -10,7 +10,7 @@ |
84 |
+ #include "sound.h" |
85 |
+ |
86 |
+ extern "C" { // wavpack |
87 |
+- #include <engine/external/wavpack/wavpack.h> |
88 |
++ #include <wavpack/wavpack.h> |
89 |
+ } |
90 |
+ #include <math.h> |
91 |
+ |
92 |
+@@ -328,19 +328,25 @@ int CSound::LoadWV(const char *pFilename) |
93 |
+ if(!m_pStorage) |
94 |
+ return -1; |
95 |
+ |
96 |
++ #ifndef WAVPACK_H |
97 |
+ ms_File = m_pStorage->OpenFile(pFilename, IOFLAG_READ, IStorage::TYPE_ALL); |
98 |
+ if(!ms_File) |
99 |
+ { |
100 |
+ dbg_msg("sound/wv", "failed to open file. filename='%s'", pFilename); |
101 |
+ return -1; |
102 |
+ } |
103 |
++ #endif |
104 |
+ |
105 |
+ SampleID = AllocID(); |
106 |
+ if(SampleID < 0) |
107 |
+ return -1; |
108 |
+ pSample = &m_aSamples[SampleID]; |
109 |
+ |
110 |
++ #ifndef WAVPACK_H |
111 |
+ pContext = WavpackOpenFileInput(ReadData, aError); |
112 |
++ #else |
113 |
++ pContext = WavpackOpenFileInput(pFilename, aError, 0, 0); |
114 |
++ #endif |
115 |
+ if (pContext) |
116 |
+ { |
117 |
+ int m_aSamples = WavpackGetNumSamples(pContext); |
118 |
+@@ -395,8 +401,10 @@ int CSound::LoadWV(const char *pFilename) |
119 |
+ dbg_msg("sound/wv", "failed to open %s: %s", pFilename, aError); |
120 |
+ } |
121 |
+ |
122 |
++ #ifndef WAVPACK_H |
123 |
+ io_close(ms_File); |
124 |
+ ms_File = NULL; |
125 |
++ #endif |
126 |
+ |
127 |
+ if(g_Config.m_Debug) |
128 |
+ dbg_msg("sound/wv", "loaded %s", pFilename); |
129 |
+-- |
130 |
+1.7.3.4 |
131 |
+ |
132 |
|
133 |
diff --git a/games-action/teeworlds/files/teeworlds-0.6.0-002-fixed-wavpack-sound-loading.patch b/games-action/teeworlds/files/teeworlds-0.6.0-002-fixed-wavpack-sound-loading.patch |
134 |
new file mode 100644 |
135 |
index 0000000..206bc6a |
136 |
--- /dev/null |
137 |
+++ b/games-action/teeworlds/files/teeworlds-0.6.0-002-fixed-wavpack-sound-loading.patch |
138 |
@@ -0,0 +1,110 @@ |
139 |
+From 5a5322491704c14f5aed72148db6b134484cedec Mon Sep 17 00:00:00 2001 |
140 |
+From: xalduin <xalduin@×××××.com> |
141 |
+Date: Sat, 12 Feb 2011 23:58:55 -0500 |
142 |
+Subject: [PATCH 2/3] Fixed wavpack sound loading |
143 |
+ |
144 |
+--- |
145 |
+ src/engine/client/sound.cpp | 56 ++++++++++++++++++++++++++++++++++++++---- |
146 |
+ 1 files changed, 50 insertions(+), 6 deletions(-) |
147 |
+ |
148 |
+diff --git a/src/engine/client/sound.cpp b/src/engine/client/sound.cpp |
149 |
+index e38ad32..6101602 100644 |
150 |
+--- a/src/engine/client/sound.cpp |
151 |
++++ b/src/engine/client/sound.cpp |
152 |
+@@ -49,6 +49,54 @@ struct CVoice |
153 |
+ int m_X, m_Y; |
154 |
+ } ; |
155 |
+ |
156 |
++#ifdef WAVPACK_H |
157 |
++static int32_t ReadBytes(void *pFile, void *pBuffer, int32_t Size) |
158 |
++{ |
159 |
++ return (int32_t)io_read((IOHANDLE)pFile, pBuffer, Size); |
160 |
++} |
161 |
++static uint32_t GetPos(void *pFile) |
162 |
++{ |
163 |
++ return (uint32_t)io_tell((IOHANDLE)pFile); |
164 |
++} |
165 |
++static int SetPosAbs(void *pFile, uint32_t Offset) |
166 |
++{ |
167 |
++ return io_seek((IOHANDLE)pFile, Offset, IOSEEK_START); |
168 |
++} |
169 |
++static int SetPosRel(void *pFile, int32_t Offset, int Mode) |
170 |
++{ |
171 |
++ switch(Mode) |
172 |
++ { |
173 |
++ case SEEK_SET: |
174 |
++ Mode = IOSEEK_START; |
175 |
++ break; |
176 |
++ case SEEK_CUR: |
177 |
++ Mode = IOSEEK_CUR; |
178 |
++ break; |
179 |
++ case SEEK_END: |
180 |
++ Mode = IOSEEK_END; |
181 |
++ } |
182 |
++ return io_seek((IOHANDLE)pFile, Offset, Mode); |
183 |
++} |
184 |
++ |
185 |
++//TODO: Fix if 'real' functionality is needed by the wavpack header |
186 |
++static int PushBackByte(void *pFile, int Char) |
187 |
++{ |
188 |
++ return io_seek((IOHANDLE)pFile, -1, IOSEEK_CUR); |
189 |
++} |
190 |
++static uint32_t GetLength(void *pFile) |
191 |
++{ |
192 |
++ return (uint32_t)io_length((IOHANDLE)pFile); |
193 |
++} |
194 |
++// Essentially assuming this to always be true, should fix if this isn't the case |
195 |
++static int CanSeek(void *pFile) |
196 |
++{ |
197 |
++ return pFile != NULL; |
198 |
++} |
199 |
++static WavpackStreamReader CWavpackReader = { |
200 |
++ ReadBytes, GetPos, SetPosAbs, SetPosRel, PushBackByte, GetLength, CanSeek, 0 |
201 |
++}; |
202 |
++#endif |
203 |
++ |
204 |
+ static CSample m_aSamples[NUM_SAMPLES] = { {0} }; |
205 |
+ static CVoice m_aVoices[NUM_VOICES] = { {0} }; |
206 |
+ static CChannel m_aChannels[NUM_CHANNELS] = { {255, 0} }; |
207 |
+@@ -328,14 +376,12 @@ int CSound::LoadWV(const char *pFilename) |
208 |
+ if(!m_pStorage) |
209 |
+ return -1; |
210 |
+ |
211 |
+- #ifndef WAVPACK_H |
212 |
+ ms_File = m_pStorage->OpenFile(pFilename, IOFLAG_READ, IStorage::TYPE_ALL); |
213 |
+ if(!ms_File) |
214 |
+ { |
215 |
+ dbg_msg("sound/wv", "failed to open file. filename='%s'", pFilename); |
216 |
+ return -1; |
217 |
+ } |
218 |
+- #endif |
219 |
+ |
220 |
+ SampleID = AllocID(); |
221 |
+ if(SampleID < 0) |
222 |
+@@ -345,7 +391,7 @@ int CSound::LoadWV(const char *pFilename) |
223 |
+ #ifndef WAVPACK_H |
224 |
+ pContext = WavpackOpenFileInput(ReadData, aError); |
225 |
+ #else |
226 |
+- pContext = WavpackOpenFileInput(pFilename, aError, 0, 0); |
227 |
++ pContext = WavpackOpenFileInputEx(&CWavpackReader, ms_File, 0, aError, 0, 0); |
228 |
+ #endif |
229 |
+ if (pContext) |
230 |
+ { |
231 |
+@@ -398,13 +444,11 @@ int CSound::LoadWV(const char *pFilename) |
232 |
+ } |
233 |
+ else |
234 |
+ { |
235 |
+- dbg_msg("sound/wv", "failed to open %s: %s", pFilename, aError); |
236 |
++ dbg_msg("sound/wv", "failed to open '%s': %s", pFilename, aError); |
237 |
+ } |
238 |
+ |
239 |
+- #ifndef WAVPACK_H |
240 |
+ io_close(ms_File); |
241 |
+ ms_File = NULL; |
242 |
+- #endif |
243 |
+ |
244 |
+ if(g_Config.m_Debug) |
245 |
+ dbg_msg("sound/wv", "loaded %s", pFilename); |
246 |
+-- |
247 |
+1.7.3.4 |
248 |
+ |
249 |
|
250 |
diff --git a/games-action/teeworlds/files/teeworlds-0.6.0-003-use-system-pnglite.patch b/games-action/teeworlds/files/teeworlds-0.6.0-003-use-system-pnglite.patch |
251 |
new file mode 100644 |
252 |
index 0000000..5da5c50 |
253 |
--- /dev/null |
254 |
+++ b/games-action/teeworlds/files/teeworlds-0.6.0-003-use-system-pnglite.patch |
255 |
@@ -0,0 +1,113 @@ |
256 |
+From f4d073f439d50f49055ab75f0f1242b124f9aba2 Mon Sep 17 00:00:00 2001 |
257 |
+From: Bruno Tarquini <btarquini@×××××.com> |
258 |
+Date: Tue, 12 Apr 2011 22:53:30 +0200 |
259 |
+Subject: [PATCH 3/3] use system pnglite if available. link only the client with pnglite and wavpack |
260 |
+ |
261 |
+--- |
262 |
+ bam.lua | 33 +++++++++++++++++++++------------ |
263 |
+ src/engine/client/graphics.cpp | 2 +- |
264 |
+ src/tools/dilate.cpp | 2 +- |
265 |
+ src/tools/tileset_borderfix.cpp | 2 +- |
266 |
+ 4 files changed, 24 insertions(+), 15 deletions(-) |
267 |
+ |
268 |
+diff --git a/bam.lua b/bam.lua |
269 |
+index ade4ae4..c0c2211 100644 |
270 |
+--- a/bam.lua |
271 |
++++ b/bam.lua |
272 |
+@@ -9,6 +9,7 @@ config = NewConfig() |
273 |
+ config:Add(OptCCompiler("compiler")) |
274 |
+ config:Add(OptTestCompileC("stackprotector", "int main(){return 0;}", "-fstack-protector -fstack-protector-all")) |
275 |
+ config:Add(OptLibrary("zlib", "zlib.h", false)) |
276 |
++config:Add(OptLibrary("pnglite", "pnglite.h", false)) |
277 |
+ config:Add(OptLibrary("wavpack", "wavpack/wavpack.h", false)) |
278 |
+ config:Add(SDL.OptFind("sdl", true)) |
279 |
+ config:Add(FreeType.OptFind("freetype", true)) |
280 |
+@@ -177,26 +178,34 @@ function build(settings) |
281 |
+ settings.cc.includes:Add("src/engine/external/zlib") |
282 |
+ end |
283 |
+ |
284 |
++ -- build game components |
285 |
++ engine_settings = settings:Copy() |
286 |
++ server_settings = engine_settings:Copy() |
287 |
++ client_settings = engine_settings:Copy() |
288 |
++ launcher_settings = engine_settings:Copy() |
289 |
++ |
290 |
++ if config.pnglite.value == true then |
291 |
++ client_settings.link.libs:Add("pnglite") |
292 |
++ if config.pnglite.include_path then |
293 |
++ client_settings.cc.includes:Add(config.pnglite.include_path) |
294 |
++ end |
295 |
++ pnglite = {} |
296 |
++ else |
297 |
++ pnglite = Compile(settings, Collect("src/engine/external/pnglite/*.c")) |
298 |
++ client_settings.cc.includes:Add("src/engine/external/pnglite") |
299 |
++ end |
300 |
++ |
301 |
+ if config.wavpack.value == true then |
302 |
+- settings.link.libs:Add("wavpack") |
303 |
++ client_settings.link.libs:Add("wavpack") |
304 |
+ if config.wavpack.include_path then |
305 |
+- settings.cc.includes:Add(config.wavpack.include_path) |
306 |
++ client_settings.cc.includes:Add(config.wavpack.include_path) |
307 |
+ end |
308 |
+ wavpack = {} |
309 |
+ else |
310 |
+ wavpack = Compile(settings, Collect("src/engine/external/wavpack/*.c")) |
311 |
+- settings.cc.includes:Add("src/engine/external/") --The header is wavpack/wavpack.h so include the external folder |
312 |
++ client_settings.cc.includes:Add("src/engine/external/") --The header is wavpack/wavpack.h so include the external folder |
313 |
+ end |
314 |
+ |
315 |
+- -- build the small libraries |
316 |
+- pnglite = Compile(settings, Collect("src/engine/external/pnglite/*.c")) |
317 |
+- |
318 |
+- -- build game components |
319 |
+- engine_settings = settings:Copy() |
320 |
+- server_settings = engine_settings:Copy() |
321 |
+- client_settings = engine_settings:Copy() |
322 |
+- launcher_settings = engine_settings:Copy() |
323 |
+- |
324 |
+ if family == "unix" then |
325 |
+ if platform == "macosx" then |
326 |
+ client_settings.link.frameworks:Add("OpenGL") |
327 |
+diff --git a/src/engine/client/graphics.cpp b/src/engine/client/graphics.cpp |
328 |
+index 99f5e09..2c867ee 100644 |
329 |
+--- a/src/engine/client/graphics.cpp |
330 |
++++ b/src/engine/client/graphics.cpp |
331 |
+@@ -19,7 +19,7 @@ |
332 |
+ #endif |
333 |
+ |
334 |
+ #include <base/system.h> |
335 |
+-#include <engine/external/pnglite/pnglite.h> |
336 |
++#include <pnglite.h> |
337 |
+ |
338 |
+ #include <engine/shared/config.h> |
339 |
+ #include <engine/graphics.h> |
340 |
+diff --git a/src/tools/dilate.cpp b/src/tools/dilate.cpp |
341 |
+index b1b60ac..b773ceb 100644 |
342 |
+--- a/src/tools/dilate.cpp |
343 |
++++ b/src/tools/dilate.cpp |
344 |
+@@ -2,7 +2,7 @@ |
345 |
+ /* If you are missing that file, acquire a complete release at teeworlds.com. */ |
346 |
+ #include <base/system.h> |
347 |
+ #include <base/math.h> |
348 |
+-#include <engine/external/pnglite/pnglite.h> |
349 |
++#include <pnglite.h> |
350 |
+ |
351 |
+ typedef struct |
352 |
+ { |
353 |
+diff --git a/src/tools/tileset_borderfix.cpp b/src/tools/tileset_borderfix.cpp |
354 |
+index d28e307..b060f0d 100644 |
355 |
+--- a/src/tools/tileset_borderfix.cpp |
356 |
++++ b/src/tools/tileset_borderfix.cpp |
357 |
+@@ -2,7 +2,7 @@ |
358 |
+ /* If you are missing that file, acquire a complete release at teeworlds.com. */ |
359 |
+ #include <stdlib.h> |
360 |
+ #include <base/system.h> |
361 |
+-#include <engine/external/pnglite/pnglite.h> |
362 |
++#include <pnglite.h> |
363 |
+ |
364 |
+ typedef struct |
365 |
+ { |
366 |
+-- |
367 |
+1.7.3.4 |
368 |
+ |
369 |
|
370 |
diff --git a/games-action/teeworlds/files/teeworlds.xpm b/games-action/teeworlds/files/teeworlds.xpm |
371 |
new file mode 100644 |
372 |
index 0000000..056b408 |
373 |
--- /dev/null |
374 |
+++ b/games-action/teeworlds/files/teeworlds.xpm |
375 |
@@ -0,0 +1,229 @@ |
376 |
+/* XPM */ |
377 |
+static char *teeworlds_2[] = { |
378 |
+/* columns rows colors chars-per-pixel */ |
379 |
+"48 48 175 2 ", |
380 |
+" c #015800F7003A", |
381 |
+". c #094F067B0130", |
382 |
+"X c #0CC509B203CC", |
383 |
+"o c #0E8F0C8D0848", |
384 |
+"O c #11FB0CC70303", |
385 |
+"+ c #169610100202", |
386 |
+"@ c #1ABB129202E3", |
387 |
+"# c #151511110909", |
388 |
+"$ c #1D1D17170A0A", |
389 |
+"% c #1E1E18180E0E", |
390 |
+"& c #21A216960283", |
391 |
+"* c #248B19800505", |
392 |
+"= c #2B211CA20360", |
393 |
+"- c #24241E1E1111", |
394 |
+"; c #292920200D0D", |
395 |
+": c #345F23CE0404", |
396 |
+"> c #3C3C28C20336", |
397 |
+", c #353525250909", |
398 |
+"< c #2BAC23A41394", |
399 |
+"1 c #2B2B25251818", |
400 |
+"2 c #36362B2B1414", |
401 |
+"3 c #38382F2F1F1F", |
402 |
+"4 c #3D3D31311A1A", |
403 |
+"5 c #383831312222", |
404 |
+"6 c #42422E2E0505", |
405 |
+"7 c #464630300303", |
406 |
+"8 c #4ACA32320202", |
407 |
+"9 c #505036360202", |
408 |
+"0 c #5C1C3D3D03C4", |
409 |
+"q c #56563B3B0B0B", |
410 |
+"w c #464637371B1B", |
411 |
+"e c #424237372323", |
412 |
+"r c #44C53BBC29AA", |
413 |
+"t c #5CDD40400E0E", |
414 |
+"y c #5C5C41411212", |
415 |
+"u c #64E542C20404", |
416 |
+"i c #6A6A46C70182", |
417 |
+"p c #6D6D49490303", |
418 |
+"a c #74744D4D0202", |
419 |
+"s c #70704C4C0F0F", |
420 |
+"d c #7E7E54540303", |
421 |
+"f c #7DFE54540B0B", |
422 |
+"g c #68684B4B1616", |
423 |
+"h c #4D4D40402626", |
424 |
+"j c #4D4D41412B2B", |
425 |
+"k c #5F5F4B4B2323", |
426 |
+"l c #515144442A2A", |
427 |
+"z c #5C5C4C0C2BEC", |
428 |
+"x c #5D5D4E4E3232", |
429 |
+"c c #666654542E2E", |
430 |
+"v c #6A6A59033636", |
431 |
+"b c #6F6F5E5E3E3E", |
432 |
+"n c #747461613D3D", |
433 |
+"m c #747463E443C4", |
434 |
+"M c #747465654949", |
435 |
+"N c #808055550000", |
436 |
+"B c #848458580101", |
437 |
+"V c #8A8A5C5C0000", |
438 |
+"C c #818156560A0A", |
439 |
+"Z c #87875E5E1414", |
440 |
+"A c #85855E5E1B1B", |
441 |
+"S c #909060600101", |
442 |
+"D c #9A9A66660000", |
443 |
+"F c #961662E30A8B", |
444 |
+"G c #898961611919", |
445 |
+"H c #909061611010", |
446 |
+"J c #9B9B6B6B1717", |
447 |
+"K c #A8A86F6F0101", |
448 |
+"L c #A0A06B6B0E0E", |
449 |
+"P c #AC2C72720000", |
450 |
+"I c #B7B77A7A0101", |
451 |
+"U c #BDBD7D7D0000", |
452 |
+"Y c #B5B576760909", |
453 |
+"T c #A1A16F6F1919", |
454 |
+"R c #A2A272721F1F", |
455 |
+"E c #AAAA76761D1D", |
456 |
+"W c #ABAB79FA1D9E", |
457 |
+"Q c #B7B77A7A1111", |
458 |
+"! c #A2A273732121", |
459 |
+"~ c #ADAD7B7B2323", |
460 |
+"^ c #B6B67F7F2121", |
461 |
+"/ c #A1A17E7E3838", |
462 |
+"( c #C0C07F7F0D0D", |
463 |
+") c #83836DEE4343", |
464 |
+"_ c #929278784444", |
465 |
+"` c #828272725050", |
466 |
+"' c #BDBD80801414", |
467 |
+"] c #CF4F89090000", |
468 |
+"[ c #C69382B50CDA", |
469 |
+"{ c #C94985050E8F", |
470 |
+"} c #D3D38C360000", |
471 |
+"| c #D8D88F8F0000", |
472 |
+" . c #C5C585051494", |
473 |
+".. c #CB8B874710D1", |
474 |
+"X. c #CEAC8A6813AD", |
475 |
+"o. c #C7C788881919", |
476 |
+"O. c #D18E8D4A16A7", |
477 |
+"+. c #D3938F4F18B9", |
478 |
+"@. c #D67792331B5E", |
479 |
+"#. c #D9D995951E81", |
480 |
+"$. c #E76799190000", |
481 |
+"%. c #EBEB9BDB0000", |
482 |
+"&. c #F574A2220000", |
483 |
+"*. c #FC3BA6E60000", |
484 |
+"=. c #FEFEA8B40027", |
485 |
+"-. c #FE64AC450C3F", |
486 |
+";. c #FEFEAEEE1292", |
487 |
+":. c #FEFEB0B01717", |
488 |
+">. c #FEFEB3331E1E", |
489 |
+",. c #C3C38A8A24A5", |
490 |
+"<. c #D4D492922020", |
491 |
+"1. c #DB6997252076", |
492 |
+"2. c #DDDD99A72278", |
493 |
+"3. c #E18B9D4725F3", |
494 |
+"4. c #E3639F4928A9", |
495 |
+"5. c #E666A2342B06", |
496 |
+"6. c #EA3FA5FB2E84", |
497 |
+"7. c #FEFEB43321A2", |
498 |
+"8. c #FEFEB7772B6B", |
499 |
+"9. c #FEFEB8B82F2F", |
500 |
+"0. c #EBEBA7A73086", |
501 |
+"q. c #EE87AA433300", |
502 |
+"w. c #F0F0ACAC3535", |
503 |
+"e. c #EDEDB1B13B3B", |
504 |
+"r. c #FEFEBABA348A", |
505 |
+"t. c #FEFEBD563C09", |
506 |
+"y. c #9E9E84844F4F", |
507 |
+"u. c #9D9D86865656", |
508 |
+"i. c #9D9D86865959", |
509 |
+"p. c #B4338F0F43C4", |
510 |
+"a. c #AEAE8F8F5353", |
511 |
+"s. c #B0B095955D5D", |
512 |
+"d. c #AFAF95956161", |
513 |
+"f. c #AFAF99996A6A", |
514 |
+"g. c #B5B599996262", |
515 |
+"h. c #BEBEA0A06363", |
516 |
+"j. c #C8C8A3A35A5A", |
517 |
+"k. c #D3D3ABAB5B5B", |
518 |
+"l. c #FEFEBF694298", |
519 |
+"z. c #C0C0A2A26666", |
520 |
+"x. c #CDCDAB00650F", |
521 |
+"c. c #CCCCAD2D6CED", |
522 |
+"v. c #DDDDB5B56666", |
523 |
+"b. c #DBDBB7B76E6E", |
524 |
+"n. c #C0C0AAAA7B7B", |
525 |
+"m. c #CECEB1B17777", |
526 |
+"M. c #D7D7B6B67575", |
527 |
+"N. c #DD5DBABA7676", |
528 |
+"B. c #DC86BCBC7C26", |
529 |
+"V. c #EFEFBFBF6060", |
530 |
+"C. c #FEFEC2974C77", |
531 |
+"Z. c #FEFEC5455353", |
532 |
+"A. c #FEDCC79A5A70", |
533 |
+"S. c #FEFEC8FD5E17", |
534 |
+"D. c #FEFECB01641F", |
535 |
+"F. c #FEFECDBE6C01", |
536 |
+"G. c #E7E7C0C07373", |
537 |
+"H. c #EDEDC56F7474", |
538 |
+"J. c #EA6AC5C57C7C", |
539 |
+"K. c #EEEEC9C97D7D", |
540 |
+"L. c #FEECCFAC71E0", |
541 |
+"P. c #FEFED12E75C9", |
542 |
+"I. c #FEF4D31E7BD7", |
543 |
+"U. c #EEEECACA8080", |
544 |
+"Y. c #FEE7D5DD83CB", |
545 |
+"T. c #F5F5D1D18A8A", |
546 |
+"R. c #FEFED7D7897D", |
547 |
+"E. c #FEFED94C8DB2", |
548 |
+"W. c #EBEBCDCD9191", |
549 |
+"Q. c #F5F5D3D39090", |
550 |
+"!. c #FEFEDB79940E", |
551 |
+"~. c #FEE1DE039B6B", |
552 |
+"^. c #FEFEDFDFA0F6", |
553 |
+"/. c #FEFEE0E0A3A3", |
554 |
+"(. c None", |
555 |
+/* pixels */ |
556 |
+"(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.", |
557 |
+"(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(. (.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.", |
558 |
+"(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(. o o X . o o (.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.", |
559 |
+"(.(.(.(.(.(.(.(.(.(.(.(.(.(.(. . X # c a.x.G.I.Y.J.c.s.v # X . (.(.(.(.(.(.(.(.(.(.(.(.(.(.(.", |
560 |
+"(.(.(.(.(.(.(.(.(.(.(.(.(. X z j.L.I.I.I.Y.Y.Y.R.Y.R.E.R.c.v X (.(.(.(.(.(.(.(.(.(.(.(.(.", |
561 |
+"(.(.(.(.(.(.(.(.(.(.(.(. O w k.L.L.I.I.I.Y.Y.Y.R.R.E.E.!.E.E.E.N.j X (.(.(.(.(.(.(.(.(.(.(.(.", |
562 |
+"(.(.(.(.(.(.(.(.(.(. O W F.L.L.P.I.I.Y.Y.Y.R.E.E.E.!.!.!.!.!.E.E.g.o (.(.(.(.(.(.(.(.(.(.", |
563 |
+"(.(.(.(.(.(.(.(.(. . @ } A.F.L.P.P.I.I.Y.Y.R.R.E.!.!.!.!.!.!.!.!.!.E.M.% . (.(.(.(.(.(.(.(.(.", |
564 |
+"(.(.(.(.(.(.(.(.(. * %.7.F.F.L.L.I.I.Y.Y.Y.R.E.E.!.!.~.~.~.~.!.!.!.!.E.K.- (.(.(.(.(.(.(.(.(.", |
565 |
+"(.(.(.(.(.(.(.(. O | =.C.F.F.L.P.I.I.I.Y.R.R.E.!.!.~.~.~.~.~.~.!.!.!.R.R.N.o (.(.(.(.(.(.(.(.", |
566 |
+"(.(.(.(.(.(.(. O I =.=.D.F.L.L.P.I.Y.Y.Y.R.R.!.!.!.~.~.~././.~.~.!.!.!.E.Y.h.X (.(.(.(.(.(.(.", |
567 |
+"(.(.(.(.(.(.(.X u =.=.;.F.F.L.L.P.I.I.Y.Y.E.E.!.!.~.~.~./././.~.~.!.!.E.E.R.Y.v . (.(.(.(.(.(.(.", |
568 |
+"(.(.(.(.(.(. O $.=.=.>.D.F.F.P.P.I.I.Y.J.x j B.!.~.~.^.h.r M ^.~.!.!.E.E.R.Y.H.X (.(.(.(.(.(.", |
569 |
+"(.(.(.(.(.(.X d =.=.=.8.F.F.L.L.P.I.I.Y.x 1 !.~.~.W.# M ~.!.!.!.E.Y.Y.Y.) X (.(.(.(.(.(.", |
570 |
+"(.(.(.(.(. . $.=.=.=.t.D.F.F.L.L.I.I.Y.o B.!.~.f. 5 ~.!.!.E.R.R.Y.I.H.. (.(.(.(.(.", |
571 |
+"(.(.(.(.(. > =.=.=.=.t.F.F.F.L.P.I.I.x. i.!.~.M o T.!.E.E.R.Y.Y.Y.I.4 (.(.(.(.(.", |
572 |
+"(.(.(.(.(.O V =.=.=.=.r.D.D.F.L.L.P.I.y. b !.!.r m.!.R.R.Y.Y.Y.I.I._ X (.(.(.(.(.", |
573 |
+"(.(.(.(. O | =.=.=.=.8.D.F.F.F.L.I.I.x. u.R.E.m T.E.R.R.Y.Y.I.I.I.v.X (.(.(.(.", |
574 |
+"(.(.(.(. . &.=.=.=.=.>.D.F.F.F.L.I.P.I.X N.R.E.d. 3 E.R.R.Y.Y.Y.I.I.P.L. (.(.(.(.", |
575 |
+"(.(.(.(. O =.=.=.=.=.-.D.D.F.F.F.L.L.L.z 1 Y.R.R.J.o ) R.Y.Y.Y.Y.I.I.P.P.P.O (.(.(.(.", |
576 |
+"(.(.(.(. = =.=.=.=.=.=.C.D.D.F.F.L.P.P.H.z h b.Y.Y.Y.Y.h.e m Y.Y.Y.Y.I.I.I.I.L.L.F.< (.(.(.(.", |
577 |
+"(.(.(.(. : =.=.=.=.=.=.8.D.D.F.F.L.L.L.P.I.I.I.I.Y.Y.Y.Y.Y.Y.Y.Y.Y.I.I.I.I.L.L.L.F.2 (.(.(.(.", |
578 |
+"(.(.(.(. @ =.=.=.=.=.=.-.D.D.D.F.F.F.L.P.P.I.I.I.I.I.Y.I.Y.I.I.I.I.I.I.I.L.L.L.L.F.$ (.(.(.(.", |
579 |
+"(.(.(.(. =.=.=.=.=.=.=.r.D.D.D.F.F.F.F.P.L.P.P.I.I.I.I.I.I.I.I.I.L.I.L.L.L.F.F.F.. (.(.(.(.", |
580 |
+"(.(.(.(. O $.=.=.=.=.=.=.-.A.D.D.D.F.F.L.F.L.P.L.P.I.P.P.I.P.I.I.L.P.L.L.F.F.F.F.V. (.(.(.(.", |
581 |
+"(.(.(.(. + P =.=.=.=.=.=.=.8.S.D.D.D.D.F.F.F.L.L.L.L.L.L.P.L.L.L.L.L.L.L.F.F.D.D.p.O (.(.(.(.", |
582 |
+"(.(.(.(.(. 0 =.=.=.=.=.=.=.=.l.S.D.D.D.D.F.F.F.L.F.L.L.L.L.L.L.F.F.F.F.F.F.F.D.D.k (.(.(.(.(.", |
583 |
+"(.(.(.(.(. X *.=.=.=.=.=.=.=.-.C.S.D.D.D.D.D.F.F.F.F.F.F.L.F.F.F.F.F.F.D.D.D.D.S.o (.(.(.(.(.", |
584 |
+"(.(.(.(.(. O P =.=.=.=.=.=.=.=.-.C.S.S.D.D.D.D.D.F.D.F.F.F.D.F.F.D.D.D.D.D.D.S.p.O (.(.(.(.(.", |
585 |
+"(.(.(.(.(.(. = *.=.=.=.=.=.=.=.=.-.l.A.S.S.S.D.D.D.D.D.D.D.D.D.D.D.D.D.S.S.A.S.- (.(.(.(.(.(.", |
586 |
+"(.(.(.(.(.(. O D =.=.=.=.=.=.=.=.=.=.r.A.A.S.S.D.S.D.S.D.D.D.D.D.S.S.S.S.A.A./ X (.(.(.(.(.(.", |
587 |
+"(.(.(.(.(.(.(. @ $.=.=.=.=.=.=.=.=.=.=.;.t.A.A.S.S.A.S.S.S.S.S.S.A.S.A.A.A.e.+ (.(.(.(.(.(.(.", |
588 |
+"(.(.(.(.(.(.(.(.. > *.=.=.=.=.=.=.=.=.=.=.=.;.r.Z.S.A.A.A.A.A.A.A.A.A.Z.r.;.6 . (.(.(.(.(.(.(.", |
589 |
+"(.(.(.(.(.(.(.(. O 9 N 8 > : = > i D ] =.=.=.=.=.;.8.r.t.C.C.t.9.7.;.-.=.p X (.(.(.(.(.(.(.(.", |
590 |
+"(.(.(.(.(.(.(.(. O q J E W ,.~ A y * : K *.=.=.=.=.=.=.=.=.=.=.=.=.=.a O (.(.(.(.(.(.(.(.(.", |
591 |
+"(.(.(.(.(.(.(. X F #.1.3.4.5.6.q.w.w.0.R , @ S =.=.=.=.=.=.=.=.=.=.&.8 * . . (.(.(.(.(.(.(.(.", |
592 |
+"(.(.(.(.(.(. X Q +.@.#.3.4.4.6.w.w.w.0.6.4.E , 0 =.=.=.=.=.=.=.=.U = g 6.,.t X (.(.(.(.(.(.(.", |
593 |
+"(.(.(.(.(.(.X C O.+.@.#.#.4.4.6.6.6.6.6.5.3.3.<.> i =.=.=.=.=.] 6 * ! 6.5.5.3.Z O X (.(.(.(.(.(.", |
594 |
+"(.(.(.(.(. . Q { O.+.#.#.3.3.4.5.5.5.4.3.3.2.#.o.X %.=.| B : @ G 4.5.5.3.3.2.#.s = (.(.(.(.(.(.", |
595 |
+"(.(.(.(.(. . [ { O.O.+.#.#.2.3.3.3.4.3.2.2.#.@.+.: & O @ q R 2.3.3.3.3.2.2.#.#. .. (.(.(.(.(.", |
596 |
+"(.(.(.(.(. Y [ { X.O.@.@.#.#.2.2.2.#.#.#.@.+.X.= C Q +.@.#.#.1.2.2.2.#.#.@.+.O.O (.(.(.(.(.", |
597 |
+"(.(.(.(.(. . u [ { { X.O.O.@.@.@.@.@.@.@.+.O.O.F X [ X.O.O.@.@.@.@.@.@.@.+.O.X.L . (.(.(.(.(.", |
598 |
+"(.(.(.(.(.(. . u Y { { X.X.X.O.+.+.O.O.O.X.Q 0 X F [ { ..X.X.O.O.O.O.O.O.X. .f . (.(.(.(.(.(.", |
599 |
+"(.(.(.(.(.(.(. O & = = = = = = = = = X X = = = = = = = = = = = @ . (.(.(.(.(.(.(.", |
600 |
+"(.(.(.(.(.(.(.(. (.(.(.(.(.(.(.(.", |
601 |
+"(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.", |
602 |
+"(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.", |
603 |
+"(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(." |
604 |
+}; |
605 |
|
606 |
diff --git a/games-action/teeworlds/metadata.xml b/games-action/teeworlds/metadata.xml |
607 |
new file mode 100644 |
608 |
index 0000000..08e4071 |
609 |
--- /dev/null |
610 |
+++ b/games-action/teeworlds/metadata.xml |
611 |
@@ -0,0 +1,15 @@ |
612 |
+<?xml version="1.0" encoding="UTF-8"?> |
613 |
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> |
614 |
+<pkgmetadata> |
615 |
+<herd>no-herd</herd> |
616 |
+<maintainer> |
617 |
+<email>azamat.hackimov@×××××.com</email> |
618 |
+<name>Azamat H. Hackimov</name> |
619 |
+</maintainer> |
620 |
+<longdescription lang="en"> |
621 |
+Online multi-player platform 2D shooter. |
622 |
+</longdescription> |
623 |
+<longdescription lang="ru"> |
624 |
+Сетевой многопользовательский двумерный шутер. |
625 |
+</longdescription> |
626 |
+</pkgmetadata> |
627 |
|
628 |
diff --git a/games-action/teeworlds/teeworlds-0.6.0.ebuild b/games-action/teeworlds/teeworlds-0.6.0.ebuild |
629 |
new file mode 100644 |
630 |
index 0000000..35b90c5 |
631 |
--- /dev/null |
632 |
+++ b/games-action/teeworlds/teeworlds-0.6.0.ebuild |
633 |
@@ -0,0 +1,93 @@ |
634 |
+# Copyright 1999-2011 Gentoo Foundation |
635 |
+# Distributed under the terms of the GNU General Public License v2 |
636 |
+# $Header: /var/cvsroot/gentoo-x86/games-action/teeworlds/teeworlds-0.5.2.ebuild,v 1.2 2010/04/04 13:51:12 hwoarang Exp $ |
637 |
+ |
638 |
+EAPI=2 |
639 |
+ |
640 |
+inherit eutils python games |
641 |
+ |
642 |
+DESCRIPTION="Online multi-player platform 2D shooter" |
643 |
+HOMEPAGE="http://www.teeworlds.com/" |
644 |
+SRC_URI="http://www.teeworlds.com/files/${P}-src.tar.gz" |
645 |
+ |
646 |
+LICENSE="ZLIB" |
647 |
+SLOT="0" |
648 |
+KEYWORDS="~amd64 ~x86" |
649 |
+IUSE="debug dedicated" |
650 |
+ |
651 |
+RDEPEND=" |
652 |
+ !dedicated? ( media-libs/pnglite |
653 |
+ media-libs/libsdl[X,audio,opengl,video] |
654 |
+ media-sound/wavpack |
655 |
+ virtual/opengl |
656 |
+ x11-libs/libX11 ) |
657 |
+ sys-libs/zlib" |
658 |
+DEPEND="${RDEPEND} |
659 |
+ =dev-lang/python-2* |
660 |
+ ~dev-util/bam-0.4.0" |
661 |
+ |
662 |
+S=${WORKDIR}/${P}-source |
663 |
+ |
664 |
+pkg_setup() { |
665 |
+ python_set_active_version 2 |
666 |
+ games_pkg_setup |
667 |
+} |
668 |
+ |
669 |
+src_prepare() { |
670 |
+ # 001 & 002 from pull request: https://github.com/oy/teeworlds/pull/493 |
671 |
+ epatch \ |
672 |
+ "${FILESDIR}"/${P}-001-use-system-wavpack.patch \ |
673 |
+ "${FILESDIR}"/${P}-002-fixed-wavpack-sound-loading.patch \ |
674 |
+ "${FILESDIR}"/${P}-003-use-system-pnglite.patch |
675 |
+} |
676 |
+ |
677 |
+src_configure() { |
678 |
+ bam config || die "bam config failed" |
679 |
+} |
680 |
+ |
681 |
+src_compile() { |
682 |
+ local myopt |
683 |
+ |
684 |
+ if use debug; then |
685 |
+ myopt=" server_debug" |
686 |
+ else |
687 |
+ myopt=" server_release" |
688 |
+ fi |
689 |
+ if ! use dedicated; then |
690 |
+ if use debug; then |
691 |
+ myopt+=" client_debug" |
692 |
+ else |
693 |
+ myopt+=" client_release" |
694 |
+ fi |
695 |
+ fi |
696 |
+ |
697 |
+ bam ${myopt} || die "bam failed" |
698 |
+} |
699 |
+ |
700 |
+src_install() { |
701 |
+ if use debug; then |
702 |
+ newgamesbin ${PN}_srv_d ${PN}_srv || die "newgamesbin failed" |
703 |
+ else |
704 |
+ dogamesbin ${PN}_srv || die "dogamesbin failed" |
705 |
+ fi |
706 |
+ if ! use dedicated; then |
707 |
+ if use debug; then |
708 |
+ newgamesbin ${PN}_d ${PN} || die "newgamesbin failed" |
709 |
+ else |
710 |
+ dogamesbin ${PN} || die "dogamesbin failed" |
711 |
+ fi |
712 |
+ |
713 |
+ doicon "${FILESDIR}"/${PN}.xpm || die "doicon failed" |
714 |
+ make_desktop_entry ${PN} Teeworlds |
715 |
+ |
716 |
+ insinto "${GAMES_DATADIR}"/${PN}/data |
717 |
+ doins -r data/* || die "doins failed" |
718 |
+ else |
719 |
+ insinto "${GAMES_DATADIR}"/${PN}/data/maps |
720 |
+ doins -r data/maps/* || die "doins failed" |
721 |
+ fi |
722 |
+ |
723 |
+ dodoc readme.txt || die "dodoc failed" |
724 |
+ |
725 |
+ prepgamesdirs |
726 |
+} |