changeset 600:2a748aa29c3f

Add a sample character.
author Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
date Sat, 25 Oct 2014 18:52:56 +0200
parents d471b07ce4fd
children 016f6b937893
files pytouhou/games/sample/game.py pytouhou/games/sample/shots.py
diffstat 2 files changed, 46 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/pytouhou/games/sample/game.py
+++ b/pytouhou/games/sample/game.py
@@ -23,7 +23,7 @@ from pytouhou.game.orb import Orb
 from pytouhou.game.background import Background
 
 from pytouhou.vm import PythonMainRunner
-from . import enemies
+from . import enemies, shots
 
 
 class Common(object):
@@ -78,7 +78,7 @@ class Common(object):
 
         default_power = [0, 64, 128, 128, 128, 128, 0][stage]
 
-        eosd_characters = resource_loader.get_eosd_characters()
+        sample_characters = shots.characters
         self.first_character = player_characters[0] // 2
         self.player_anms = {}
         self.players = [None] * len(player_characters)
@@ -92,7 +92,7 @@ class Common(object):
                 self.player_anms[character] = (anm, face)
 
             self.players[i] = Player(i, self.player_anms[character][0],
-                                     eosd_characters[player_character],
+                                     sample_characters[player_character],
                                      character, default_power, continues)
 
 
new file mode 100644
--- /dev/null
+++ b/pytouhou/games/sample/shots.py
@@ -0,0 +1,43 @@
+# -*- encoding: utf-8 -*-
+##
+## Copyright (C) 2014 Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
+##
+## This program is free software; you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published
+## by the Free Software Foundation; version 3 only.
+##
+## This program is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+## GNU General Public License for more details.
+##
+
+from math import radians
+from pytouhou.formats.exe import SHT, Shot
+
+
+player = SHT()
+player.horizontal_vertical_speed = 2.
+player.horizontal_vertical_focused_speed = 1.5
+player.diagonal_speed = 1.5
+player.diagonal_focused_speed = 1.
+
+shot = Shot()
+shot.interval = 10
+shot.delay = 5
+shot.pos = (0, -32)
+shot.hitbox = (5, 5)
+shot.angle = radians(-90)
+shot.speed = 5.
+shot.damage = 16
+shot.orb = 0
+shot.type = 2
+shot.sprite = 64
+shot.unknown1 = 0
+
+# Dict of list of shots, each for one power level.
+# Always define at least the shot for max power, usually 999.
+player.shots[999] = [shot]
+
+# List of (unfocused, focused) shot types.
+characters = [(player, player)]