crystalwindow 5.6__tar.gz → 5.7__tar.gz
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.
- {crystalwindow-5.6/crystalwindow.egg-info → crystalwindow-5.7}/PKG-INFO +1 -1
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/__init__.py +5 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/gametests/gravitytest.py +5 -4
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/objects.py +16 -0
- crystalwindow-5.7/crystalwindow/scores.py +35 -0
- {crystalwindow-5.6 → crystalwindow-5.7/crystalwindow.egg-info}/PKG-INFO +1 -1
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow.egg-info/SOURCES.txt +1 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/setup.py +1 -1
- {crystalwindow-5.6 → crystalwindow-5.7}/LICENSE +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/MANIFEST.in +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/README.md +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/FileHelper.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/Fonts.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/Icons/default_icon.png +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/Icons/file_icons.png +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/System.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/ai.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/animation.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/apphelper.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/assets.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/camera.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/chatvpn.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/clock.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/collision.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/color_handler.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/crystal3d.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/docs/getting_started.md +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/docs/index.md +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/draw_helpers.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/draw_rects.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/draw_text_helper.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/draw_tool.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/fun_helpers.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/gametests/3dsquare.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/gametests/__init__.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/gametests/__main__.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/gametests/guitesting.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/gametests/sandbox.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/gametests/squaremove.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/gametests/testtttagain.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/gametests/windowtesting.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/gravity.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/gui.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/gui_ext.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/math.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/messagebus.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/sprites.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/tilemap.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/ver_warner.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/websearch.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow/window.py +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow.egg-info/dependency_links.txt +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow.egg-info/requires.txt +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/crystalwindow.egg-info/top_level.txt +0 -0
- {crystalwindow-5.6 → crystalwindow-5.7}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: crystalwindow
|
|
3
|
-
Version: 5.
|
|
3
|
+
Version: 5.7
|
|
4
4
|
Summary: A Tkinter powered window + GUI toolkit made by Crystal (ME)! Easier apps, smoother UI and all-in-one helpers!, Gui, Buttons, FileHelper, Sprites, Animations, Colors, Math, Gravity, Camera, 3D and more!
|
|
5
5
|
Home-page: https://pypi.org/project/crystalwindow/
|
|
6
6
|
Author: CrystalBallyHereXD
|
|
@@ -67,6 +67,8 @@ from .apphelper import GameAppHelper
|
|
|
67
67
|
# === System ===
|
|
68
68
|
from .System import System, Watchdog
|
|
69
69
|
|
|
70
|
+
# === Score System ===
|
|
71
|
+
from .scores import Score
|
|
70
72
|
|
|
71
73
|
__all__ = [
|
|
72
74
|
# --- Core ---
|
|
@@ -122,4 +124,7 @@ __all__ = [
|
|
|
122
124
|
|
|
123
125
|
# --- System ---
|
|
124
126
|
"System", "Watchdog",
|
|
127
|
+
|
|
128
|
+
# --- Scores ---
|
|
129
|
+
"Score",
|
|
125
130
|
]
|
|
@@ -46,11 +46,11 @@ def toggle_fly():
|
|
|
46
46
|
fly_button.text = f"Fly: {'ON' if fly_mode else 'OFF'}"
|
|
47
47
|
|
|
48
48
|
# create buttons
|
|
49
|
-
fly_button = Button(
|
|
49
|
+
fly_button = Button((35, 60), (180, 40),
|
|
50
50
|
text="Fly: OFF",
|
|
51
51
|
color=(150,150,150),
|
|
52
52
|
hover_color=(200,200,200),
|
|
53
|
-
|
|
53
|
+
)
|
|
54
54
|
|
|
55
55
|
gui.add(fly_button)
|
|
56
56
|
|
|
@@ -103,8 +103,9 @@ def update(win):
|
|
|
103
103
|
|
|
104
104
|
if enemy.collide_with(player):
|
|
105
105
|
player.hp -= enemy.dmg
|
|
106
|
-
if player.
|
|
107
|
-
player.
|
|
106
|
+
if player.hp == 0:
|
|
107
|
+
player.redraw(win, new_pos=(0,0))
|
|
108
|
+
player.hp = 100
|
|
108
109
|
|
|
109
110
|
win.draw_text(f"CurrentHP: {player.hp}", font="Arial", size=16, color=(255, 255, 255))
|
|
110
111
|
# -------------------------------
|
|
@@ -177,3 +177,19 @@ class Enemy(Sprite):
|
|
|
177
177
|
if self.cooldown <= 0:
|
|
178
178
|
player.take_damage(self.dmg)
|
|
179
179
|
self.cooldown = self.cooldown_max
|
|
180
|
+
|
|
181
|
+
# the X and Y is an check like if you want the enemy to chase the player horizontally or vertaically or both like chase_player(player, x=True, y=False) so it chases the player only thru horizontal
|
|
182
|
+
def chase_player(self, obj, mode = "xy"):
|
|
183
|
+
if mode == "x" or mode == "xy":
|
|
184
|
+
if obj.x < self.x:
|
|
185
|
+
self.x -= self.speed
|
|
186
|
+
elif obj.x > self.x:
|
|
187
|
+
self.x += self.speed
|
|
188
|
+
|
|
189
|
+
if mode == "y" or mode == "xy":
|
|
190
|
+
if obj.y < self.y:
|
|
191
|
+
self.y -= self.speed
|
|
192
|
+
elif obj.y > self.y:
|
|
193
|
+
self.y += self.speed
|
|
194
|
+
|
|
195
|
+
self.pos = (self.x, self.y)
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
class Score:
|
|
2
|
+
def __init__(self, name: str, value: int = 0, max_value: int | None = None):
|
|
3
|
+
self.name = name
|
|
4
|
+
self.value = value
|
|
5
|
+
self.max_value = max_value
|
|
6
|
+
|
|
7
|
+
def __str__(self):
|
|
8
|
+
return f"{self.name}: {self.value}"
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
def score_up(self, amount: int = 1):
|
|
12
|
+
self.value += amount
|
|
13
|
+
if self.max_value is not None:
|
|
14
|
+
self.value = min(self.value, self.max_value)
|
|
15
|
+
|
|
16
|
+
def reset(self):
|
|
17
|
+
self.value = 0
|
|
18
|
+
|
|
19
|
+
def score_down(self, amount: int = 1):
|
|
20
|
+
self.value = max(0, self.value - amount)
|
|
21
|
+
|
|
22
|
+
def set_score(self, value: int):
|
|
23
|
+
self.value = value
|
|
24
|
+
if self.max_value is not None:
|
|
25
|
+
self.value = min(self.value, self.max_value)
|
|
26
|
+
def set_maxv(self, value: int):
|
|
27
|
+
self.max_value = value
|
|
28
|
+
if self.value > self.max_value:
|
|
29
|
+
self.value = self.max_value
|
|
30
|
+
|
|
31
|
+
def get_score(name: str, scores: list[Score]) -> Score | None:
|
|
32
|
+
for score in scores:
|
|
33
|
+
if score.name == name:
|
|
34
|
+
return score
|
|
35
|
+
return None
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: crystalwindow
|
|
3
|
-
Version: 5.
|
|
3
|
+
Version: 5.7
|
|
4
4
|
Summary: A Tkinter powered window + GUI toolkit made by Crystal (ME)! Easier apps, smoother UI and all-in-one helpers!, Gui, Buttons, FileHelper, Sprites, Animations, Colors, Math, Gravity, Camera, 3D and more!
|
|
5
5
|
Home-page: https://pypi.org/project/crystalwindow/
|
|
6
6
|
Author: CrystalBallyHereXD
|
|
@@ -7,7 +7,7 @@ with open("README.md", encoding="utf-8") as f:
|
|
|
7
7
|
|
|
8
8
|
setup(
|
|
9
9
|
name="crystalwindow",
|
|
10
|
-
version="5.
|
|
10
|
+
version="5.7", # Force metadata refresh
|
|
11
11
|
packages=find_packages(include=["crystalwindow", "crystalwindow.*"]),
|
|
12
12
|
|
|
13
13
|
include_package_data=True, # include package_data files
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|