saltpaper 0.0.2a0__py3-none-any.whl → 0.0.4a0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
saltpaper/__init__.py CHANGED
@@ -2,5 +2,5 @@ from saltpaper.services import *
2
2
  from saltpaper.functions import *
3
3
  from saltpaper.worldsystem.world import World
4
4
 
5
- SALTPAPER_VER = "0.0.1"
5
+ SALTPAPER_VER = "0.0.3 (alpha 0)"
6
6
  print(f"saltPAPER {SALTPAPER_VER}")
@@ -57,9 +57,9 @@ class DisplayService():
57
57
  self.layers.append(layer)
58
58
  self.refresh_sorting()
59
59
 
60
- def add_many_layers(self, layers):
60
+ def add_many_layers(self, layers:list):
61
61
  self.layers.extend(layers)
62
- self.refresh_sorting
62
+ self.refresh_sorting()
63
63
 
64
64
  def remove_layer(self, layer):
65
65
  for i, item in enumerate(self.layers):
@@ -4,18 +4,19 @@ import numpy as np
4
4
  class Layer:
5
5
  def __init__(
6
6
  self,
7
- dimensions,
8
- render_priority=0,
9
- tick_priority=0,
10
- opacity_percent=100,
11
- surface=None,
7
+ dimensions:tuple[int,int],
8
+ render_priority:int=0,
9
+ tick_priority:int=0,
10
+ opacity_percent:int=100,
11
+ surface:pygame.Surface=None,
12
+ offset:tuple[int,int]=(0,0)
12
13
  ):
13
14
  self.dimensions = dimensions
14
15
  self.surface = surface if surface else pygame.Surface(dimensions, pygame.HWSURFACE | pygame.SRCALPHA)
15
16
  self.visible = True
16
17
  self.ticking = True
17
18
  self.opacity_percent = opacity_percent
18
- self.offset = (0,0)
19
+ self.offset:tuple[int,int] = offset
19
20
 
20
21
  self.render_priority = render_priority
21
22
  self.tick_priority = tick_priority
@@ -43,6 +44,11 @@ class Layer:
43
44
  surf.set_alpha(int(self.opacity_percent * 2.55))
44
45
  return surf
45
46
 
47
+ def relative_coords(self, coords):
48
+ x, y = coords
49
+ newcoords = (x - self.offset[0], y - self.offset[1])
50
+ return newcoords
51
+
46
52
 
47
53
  def loopscroll(self, dx, dy, dt=1.0):
48
54
  self._loopscroll_accum_x += dx * dt
@@ -4,4 +4,10 @@ class StateService:
4
4
  def __init__(self):
5
5
  ...
6
6
 
7
- # empty box for user to put shared variables without cluttering globals
7
+ # empty box for user to put shared variables without cluttering globals
8
+
9
+ def __getattr__(self, name):
10
+ try:
11
+ return self.__getattribute__(name)
12
+ except AttributeError:
13
+ return None
@@ -22,4 +22,7 @@ class Position():
22
22
 
23
23
  def move(self, dx, dy):
24
24
  self.x += dx
25
- self.y += dy
25
+ self.y += dy
26
+
27
+ def is_point_inside(self, point):
28
+ x, y = point
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: saltpaper
3
- Version: 0.0.2a0
3
+ Version: 0.0.4a0
4
4
  Summary: A small game-engine/framework built on top of pygame
5
5
  Author-email: Lauren Kinder <mail@hermod.uk>
6
6
  License-Expression: MIT
@@ -1,4 +1,4 @@
1
- saltpaper/__init__.py,sha256=cZ3wNR0lUAwlyUgL4GWFUMvQ5Z1k6QkfIe1RD8ICbWg,173
1
+ saltpaper/__init__.py,sha256=WS0LGqyVLYMYR_phOyjkdV5zo75ZSwlid4UvH7_h4XM,183
2
2
  saltpaper/assets/.DS_Store,sha256=7-Z-79uIc0CMx4UUj3sSlYE6KAWyk5qlKRTLRnrq8N8,8196
3
3
  saltpaper/assets/talk.wav,sha256=rRmMxGFBFGiU59VqfmhIcwdZfuYdY9fUdkv7Os7S3hU,30624
4
4
  saltpaper/assets/fonts/LibertinusMono-Regular.ttf,sha256=q9MJTt9ehi35gD8LH8jgr66CFH2oyxsylV3nqPsIOPA,153120
@@ -12,18 +12,18 @@ saltpaper/functions/test.py,sha256=sNpRCjy1CrMrlHv770RTtN6iDwB3Hq7-rKdKaTi3b8s,3
12
12
  saltpaper/functions/vectortools.py,sha256=I2ok4i0kZqGq5YXgY1nLblgA14mnlC53D2BBSHrbsHM,752
13
13
  saltpaper/services/__init__.py,sha256=Sseu7zdeaB3InIIcs5DIRFK4hhGBqxwvTQaAQP8ksaw,292
14
14
  saltpaper/services/assetservice.py,sha256=DQOEo3IXWYdrDXrvLztC1Z6f2QeCNk41oGP08w8Ya_c,1957
15
- saltpaper/services/displayservice.py,sha256=ihyMK8gy3IDYl2HGFhsVMxbTAQo0_r8KiaEk644ummc,2992
15
+ saltpaper/services/displayservice.py,sha256=NzBmzuaVMcygNv2HnEJZDU5AqV3I_9giGGybvcu2sgY,2999
16
16
  saltpaper/services/inputservice.py,sha256=WNdD0wE2okTbRJDtMBPnxyHmkde0dIocbtSAlX-V408,4884
17
- saltpaper/services/layer.py,sha256=YoJQ0fwQ4EgXkJWHlgwVd8uv9TnafnmQL1NljoRRxRQ,3089
17
+ saltpaper/services/layer.py,sha256=eIDzZmt1CwjbApnzGsGkM-rJQ-TXmBF-6ho_hNSCPGc,3339
18
18
  saltpaper/services/renderservice.py,sha256=jwhnWoa1a_mHXkoHnK-wREGR0cIBKkGf-pVythHkU1E,1250
19
- saltpaper/services/stateservice.py,sha256=dxA7H_ABTFyfoClXplFprfD45koN2PGTUQL8-UprO7s,138
19
+ saltpaper/services/stateservice.py,sha256=KviqdOkEgZyOiwadOz1nn5QB4jdHUwbGYf355NcqkhM,287
20
20
  saltpaper/worldsystem/entity.py,sha256=bRyFMfHblzMwzo81YshDkDjvpMXZrEVrvWjgXtdlS5c,987
21
21
  saltpaper/worldsystem/world.py,sha256=-8ckweO6pcwaLb42PGKPveuuHNeR_o0cVqUDFcEt93w,442
22
22
  saltpaper/worldsystem/components/__init__.py,sha256=ZYfSsWkkqC-Dkl9QwAjPBydca7ifBzxEhG9_OOcMgRs,57
23
- saltpaper/worldsystem/components/position.py,sha256=lNNh6BoErEEq7SgM347ceLNMOAdnkq1e2LMr_ejZmwE,500
23
+ saltpaper/worldsystem/components/position.py,sha256=RqSwUxQ7rXKcZalNWqUp4gc5T4fy0CD3uh567U7W7HU,561
24
24
  saltpaper/worldsystem/components/sprite.py,sha256=pQHkyNNKv_iy33LLbqZlOXTU-dqoPzFX7ojjYMOH_BY,102
25
- saltpaper-0.0.2a0.dist-info/licenses/LICENSE,sha256=Fh0aFC8RSdix3JzjFyLJ3IuzsD1FfsbGFkyqDj5qvXQ,1075
26
- saltpaper-0.0.2a0.dist-info/METADATA,sha256=bA-yImAorT8KaS85kmudg4tQZIJ7Ma3zquGG18eEmuY,646
27
- saltpaper-0.0.2a0.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
28
- saltpaper-0.0.2a0.dist-info/top_level.txt,sha256=JACZnZhYYkgmdSz3T1JXacHS4L0UM6NbeReLoNLu6jw,10
29
- saltpaper-0.0.2a0.dist-info/RECORD,,
25
+ saltpaper-0.0.4a0.dist-info/licenses/LICENSE,sha256=Fh0aFC8RSdix3JzjFyLJ3IuzsD1FfsbGFkyqDj5qvXQ,1075
26
+ saltpaper-0.0.4a0.dist-info/METADATA,sha256=EnuvxSNmF0z8gzT5-wle7PiyQlfc9bD5N9Q0_dWBb5E,646
27
+ saltpaper-0.0.4a0.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
28
+ saltpaper-0.0.4a0.dist-info/top_level.txt,sha256=JACZnZhYYkgmdSz3T1JXacHS4L0UM6NbeReLoNLu6jw,10
29
+ saltpaper-0.0.4a0.dist-info/RECORD,,