Mercurial > touhou
annotate pytouhou/game/games.py @ 189:ba3297ab3bde
Fix handling for replay files not beginning with stage 1
author | Thibaut Girka <thib@sitedethib.com> |
---|---|
date | Thu, 27 Oct 2011 21:53:26 +0200 |
parents | 008f90ebfdc0 |
children |
rev | line source |
---|---|
122
174324a4da51
Add support for launch animations! (Warning: slow :()
Thibaut Girka <thib@sitedethib.com>
parents:
diff
changeset
|
1 # -*- encoding: utf-8 -*- |
174324a4da51
Add support for launch animations! (Warning: slow :()
Thibaut Girka <thib@sitedethib.com>
parents:
diff
changeset
|
2 ## |
174324a4da51
Add support for launch animations! (Warning: slow :()
Thibaut Girka <thib@sitedethib.com>
parents:
diff
changeset
|
3 ## Copyright (C) 2011 Thibaut Girka <thib@sitedethib.com> |
174324a4da51
Add support for launch animations! (Warning: slow :()
Thibaut Girka <thib@sitedethib.com>
parents:
diff
changeset
|
4 ## |
174324a4da51
Add support for launch animations! (Warning: slow :()
Thibaut Girka <thib@sitedethib.com>
parents:
diff
changeset
|
5 ## This program is free software; you can redistribute it and/or modify |
174324a4da51
Add support for launch animations! (Warning: slow :()
Thibaut Girka <thib@sitedethib.com>
parents:
diff
changeset
|
6 ## it under the terms of the GNU General Public License as published |
174324a4da51
Add support for launch animations! (Warning: slow :()
Thibaut Girka <thib@sitedethib.com>
parents:
diff
changeset
|
7 ## by the Free Software Foundation; version 3 only. |
174324a4da51
Add support for launch animations! (Warning: slow :()
Thibaut Girka <thib@sitedethib.com>
parents:
diff
changeset
|
8 ## |
174324a4da51
Add support for launch animations! (Warning: slow :()
Thibaut Girka <thib@sitedethib.com>
parents:
diff
changeset
|
9 ## This program is distributed in the hope that it will be useful, |
174324a4da51
Add support for launch animations! (Warning: slow :()
Thibaut Girka <thib@sitedethib.com>
parents:
diff
changeset
|
10 ## but WITHOUT ANY WARRANTY; without even the implied warranty of |
174324a4da51
Add support for launch animations! (Warning: slow :()
Thibaut Girka <thib@sitedethib.com>
parents:
diff
changeset
|
11 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
174324a4da51
Add support for launch animations! (Warning: slow :()
Thibaut Girka <thib@sitedethib.com>
parents:
diff
changeset
|
12 ## GNU General Public License for more details. |
174324a4da51
Add support for launch animations! (Warning: slow :()
Thibaut Girka <thib@sitedethib.com>
parents:
diff
changeset
|
13 ## |
174324a4da51
Add support for launch animations! (Warning: slow :()
Thibaut Girka <thib@sitedethib.com>
parents:
diff
changeset
|
14 |
174324a4da51
Add support for launch animations! (Warning: slow :()
Thibaut Girka <thib@sitedethib.com>
parents:
diff
changeset
|
15 from pytouhou.game.game import Game |
130 | 16 from pytouhou.game.character import Character |
122
174324a4da51
Add support for launch animations! (Warning: slow :()
Thibaut Girka <thib@sitedethib.com>
parents:
diff
changeset
|
17 from pytouhou.game.bullettype import BulletType |
150
4f46717390aa
Introduce items, implement ECL instruction 83
Thibaut Girka <thib@sitedethib.com>
parents:
143
diff
changeset
|
18 from pytouhou.game.itemtype import ItemType |
122
174324a4da51
Add support for launch animations! (Warning: slow :()
Thibaut Girka <thib@sitedethib.com>
parents:
diff
changeset
|
19 |
174324a4da51
Add support for launch animations! (Warning: slow :()
Thibaut Girka <thib@sitedethib.com>
parents:
diff
changeset
|
20 class EoSDGame(Game): |
188
008f90ebfdc0
Fix replay handling and add support for encrypted replays
Thibaut Girka <thib@sitedethib.com>
parents:
176
diff
changeset
|
21 def __init__(self, resource_loader, players, stage, rank, difficulty, **kwargs): |
122
174324a4da51
Add support for launch animations! (Warning: slow :()
Thibaut Girka <thib@sitedethib.com>
parents:
diff
changeset
|
22 etama3 = resource_loader.get_anm_wrapper(('etama3.anm',)) |
174324a4da51
Add support for launch animations! (Warning: slow :()
Thibaut Girka <thib@sitedethib.com>
parents:
diff
changeset
|
23 etama4 = resource_loader.get_anm_wrapper(('etama4.anm',)) |
139 | 24 bullet_types = [BulletType(etama3, 0, 11, 14, 15, 16, hitbox_size=4), |
25 BulletType(etama3, 1, 12, 17, 18, 19, hitbox_size=6), | |
26 BulletType(etama3, 2, 12, 17, 18, 19, hitbox_size=4), | |
27 BulletType(etama3, 3, 12, 17, 18, 19, hitbox_size=6), | |
28 BulletType(etama3, 4, 12, 17, 18, 19, hitbox_size=5), | |
29 BulletType(etama3, 5, 12, 17, 18, 19, hitbox_size=4), | |
30 BulletType(etama3, 6, 13, 20, 20, 20, hitbox_size=16), | |
31 BulletType(etama3, 7, 13, 20, 20, 20, hitbox_size=11), | |
32 BulletType(etama3, 8, 13, 20, 20, 20, hitbox_size=9), | |
33 BulletType(etama4, 0, 1, 2, 2, 2, hitbox_size=32)] | |
153
37df8c618c2e
Add falling items.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
150
diff
changeset
|
34 #TODO: hitbox |
37df8c618c2e
Add falling items.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
150
diff
changeset
|
35 item_types = [ItemType(etama3, 0, 7, hitbox_size=42, score=10), #Power |
37df8c618c2e
Add falling items.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
150
diff
changeset
|
36 ItemType(etama3, 1, 8, hitbox_size=42, score=100000), #Point, TODO: changes for hard, lunatic and poc |
37df8c618c2e
Add falling items.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
150
diff
changeset
|
37 ItemType(etama3, 2, 9, hitbox_size=42, score=10), #Big power |
37df8c618c2e
Add falling items.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
150
diff
changeset
|
38 ItemType(etama3, 3, 10, hitbox_size=42), #Bomb |
37df8c618c2e
Add falling items.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
150
diff
changeset
|
39 ItemType(etama3, 4, 11, hitbox_size=42, score=1000), #Full power |
37df8c618c2e
Add falling items.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
150
diff
changeset
|
40 ItemType(etama3, 5, 12, hitbox_size=42), #1up |
37df8c618c2e
Add falling items.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
150
diff
changeset
|
41 ItemType(etama3, 6, 13, hitbox_size=42, score=500)] #Star |
122
174324a4da51
Add support for launch animations! (Warning: slow :()
Thibaut Girka <thib@sitedethib.com>
parents:
diff
changeset
|
42 |
130 | 43 player00 = resource_loader.get_anm_wrapper(('player00.anm',)) |
44 player01 = resource_loader.get_anm_wrapper(('player01.anm',)) | |
176
80a4c7ed43b3
Add grazing check.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
153
diff
changeset
|
45 characters = [Character(player00, 4., 2., 2.5, 42.), |
80a4c7ed43b3
Add grazing check.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
153
diff
changeset
|
46 Character(player00, 4., 2., 2.5, 42.), |
80a4c7ed43b3
Add grazing check.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
153
diff
changeset
|
47 Character(player01, 5., 2.5, 2.5, 42.), |
80a4c7ed43b3
Add grazing check.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
153
diff
changeset
|
48 Character(player01, 5., 2.5, 2.5, 42.)] |
130 | 49 |
50 Game.__init__(self, resource_loader, players, stage, rank, difficulty, | |
188
008f90ebfdc0
Fix replay handling and add support for encrypted replays
Thibaut Girka <thib@sitedethib.com>
parents:
176
diff
changeset
|
51 bullet_types, item_types, characters, nb_bullets_max=640, **kwargs) |
130 | 52 |