projects
/
koperkapel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add a sensible license
[koperkapel.git]
/
koperkapel
/
serums.py
diff --git
a/koperkapel/serums.py
b/koperkapel/serums.py
index 40ebfbac59f11950847f662e80906e6107e6c4a7..f80163932538b22e83db90ac3875eedd0aed760f 100644
(file)
--- a/
koperkapel/serums.py
+++ b/
koperkapel/serums.py
@@
-1,8
+1,11
@@
""" Tools for creating serum actors. """
""" Tools for creating serum actors. """
+import random
from pgzero.loaders import images
from pygame.constants import BLEND_RGBA_MULT
from pgzero.loaders import images
from pygame.constants import BLEND_RGBA_MULT
+from pygame.transform import rotate
from .actors.surf import SurfActor
from .actors.surf import SurfActor
+from .util import safepath
SERUMS = ["smart", "fast", "strong"]
SERUMS = ["smart", "fast", "strong"]
@@
-16,6
+19,7
@@
SERUM_OVERLAY_COLORS = {
"smart": (0, 0, 255, 255), # blue
"fast": (0, 255, 0, 255), # green
"strong": (255, 0, 255, 255), # purple
"smart": (0, 0, 255, 255), # blue
"fast": (0, 255, 0, 255), # green
"strong": (255, 0, 255, 255), # purple
+ "health": (255, 0, 0, 255), # red
"none": (170, 68, 0, 255), # brown
}
"none": (170, 68, 0, 255), # brown
}
@@
-38,10
+42,20
@@
class SerumFactory:
def __init__(self, suffix):
self.suffix = suffix
def __init__(self, suffix):
self.suffix = suffix
+ def assemble_icon(self, name, color=None):
+ assert name in SERUMS
+ color = color or name
+ serum_icon = images.load(safepath("serum%s/%s") % (
+ self.suffix, SERUM_TILENAME_MAP[name],))
+ frame = serum_icon.copy()
+ frame.fill(SERUM_OVERLAY_COLORS[color], None, BLEND_RGBA_MULT)
+ return frame
+
def assemble(self, name):
assert name in SERUMS
def assemble(self, name):
assert name in SERUMS
- puddle = images.load("serum%s/serum" % (self.suffix,))
- serum_icon = images.load("serum%s/%s" % (
+ puddle = images.load(safepath("serum%s/serum") % (self.suffix,))
+ puddle = rotate(puddle, 90 * random.randint(0, 3))
+ serum_icon = images.load(safepath("serum%s/%s") % (
self.suffix, SERUM_TILENAME_MAP[name],))
frame = puddle.copy()
frame.fill(SERUM_OVERLAY_COLORS[name], None, BLEND_RGBA_MULT)
self.suffix, SERUM_TILENAME_MAP[name],))
frame = puddle.copy()
frame.fill(SERUM_OVERLAY_COLORS[name], None, BLEND_RGBA_MULT)