frontengine 1.0.17__tar.gz → 1.0.18__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.
Files changed (136) hide show
  1. {frontengine-1.0.17 → frontengine-1.0.18}/PKG-INFO +1 -1
  2. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/pet/desktop_pet.py +27 -7
  3. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine.egg-info/PKG-INFO +1 -1
  4. {frontengine-1.0.17 → frontengine-1.0.18}/pyproject.toml +1 -1
  5. {frontengine-1.0.17 → frontengine-1.0.18}/LICENSE +0 -0
  6. {frontengine-1.0.17 → frontengine-1.0.18}/README.md +0 -0
  7. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/__init__.py +0 -0
  8. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/__main__.py +0 -0
  9. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/__init__.py +0 -0
  10. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/base_widget.py +0 -0
  11. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/gif/__init__.py +0 -0
  12. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/gif/paint_gif.py +0 -0
  13. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/image/__init__.py +0 -0
  14. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/image/paint_image.py +0 -0
  15. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/load/__init__.py +0 -0
  16. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/load/load_someone_make_ui.py +0 -0
  17. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/overlay_factory.py +0 -0
  18. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/particle/__init__.py +0 -0
  19. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/particle/particle_ui.py +0 -0
  20. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/pet/__init__.py +0 -0
  21. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/scene/__init__.py +0 -0
  22. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/scene/extend_graphic_scene.py +0 -0
  23. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/scene/extend_graphic_view.py +0 -0
  24. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/scene/scene.py +0 -0
  25. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/sound_player/__init__.py +0 -0
  26. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/sound_player/sound_effect.py +0 -0
  27. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/sound_player/sound_player.py +0 -0
  28. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/text/__init__.py +0 -0
  29. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/text/draw_text.py +0 -0
  30. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/video/__init__.py +0 -0
  31. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/video/video_player.py +0 -0
  32. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/web/__init__.py +0 -0
  33. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/web/webview.py +0 -0
  34. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/show/window_helpers.py +0 -0
  35. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/system_tray/__init__.py +0 -0
  36. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/system_tray/extend_system_tray.py +0 -0
  37. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/__init__.py +0 -0
  38. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/color/__init__.py +0 -0
  39. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/color/global_color.py +0 -0
  40. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/dialog/__init__.py +0 -0
  41. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/dialog/choose_file_dialog.py +0 -0
  42. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/dialog/hotkey_settings_dialog.py +0 -0
  43. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/dialog/save_file_dialog.py +0 -0
  44. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/main_ui.py +0 -0
  45. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/menu/__init__.py +0 -0
  46. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/menu/help_menu.py +0 -0
  47. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/menu/how_to_menu.py +0 -0
  48. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/menu/language_menu.py +0 -0
  49. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/menu/preset_menu.py +0 -0
  50. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/menu/settings_menu.py +0 -0
  51. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/__init__.py +0 -0
  52. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/control_center/__init__.py +0 -0
  53. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/control_center/control_center_ui.py +0 -0
  54. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/gif/__init__.py +0 -0
  55. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/gif/gif_setting_ui.py +0 -0
  56. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/image/__init__.py +0 -0
  57. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/image/image_setting_ui.py +0 -0
  58. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/particle/__init__.py +0 -0
  59. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/particle/particle_setting_ui.py +0 -0
  60. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/pet/__init__.py +0 -0
  61. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/pet/pet_setting_ui.py +0 -0
  62. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/scene_setting/__init__.py +0 -0
  63. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/scene_setting/scene_manager.py +0 -0
  64. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/scene_setting/scene_page/__init__.py +0 -0
  65. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/scene_setting/scene_page/base_scene_page.py +0 -0
  66. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/scene_setting/scene_page/gif.py +0 -0
  67. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/scene_setting/scene_page/image.py +0 -0
  68. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/scene_setting/scene_page/registry.py +0 -0
  69. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/scene_setting/scene_page/sound.py +0 -0
  70. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/scene_setting/scene_page/text.py +0 -0
  71. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/scene_setting/scene_page/video.py +0 -0
  72. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/scene_setting/scene_page/web.py +0 -0
  73. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/scene_setting/scene_setting_ui.py +0 -0
  74. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/sound_player/__init__.py +0 -0
  75. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/sound_player/sound_player_setting_ui.py +0 -0
  76. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/text/__init__.py +0 -0
  77. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/text/text_setting_ui.py +0 -0
  78. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/utils.py +0 -0
  79. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/video/__init__.py +0 -0
  80. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/video/video_setting_ui.py +0 -0
  81. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/web/__init__.py +0 -0
  82. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/ui/page/web/web_setting_ui.py +0 -0
  83. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/user_setting/__init__.py +0 -0
  84. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/user_setting/preset_repository.py +0 -0
  85. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/user_setting/scene_setting.py +0 -0
  86. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/user_setting/user_setting_file.py +0 -0
  87. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/__init__.py +0 -0
  88. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/browser/__init__.py +0 -0
  89. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/browser/browser.py +0 -0
  90. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/critical_exit/__init__.py +0 -0
  91. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/critical_exit/check_key_is_press.py +0 -0
  92. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/critical_exit/critical_exit.py +0 -0
  93. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/critical_exit/win32_vk.py +0 -0
  94. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/exception/__init__.py +0 -0
  95. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/exception/exception_tags.py +0 -0
  96. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/exception/exceptions.py +0 -0
  97. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/file/__init__.py +0 -0
  98. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/file/open/__init__.py +0 -0
  99. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/file/open/open_file.py +0 -0
  100. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/file/save/__init__.py +0 -0
  101. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/file/save/save_file.py +0 -0
  102. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/hotkey/__init__.py +0 -0
  103. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/hotkey/hotkey_service.py +0 -0
  104. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/json/__init__.py +0 -0
  105. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/json/json_file.py +0 -0
  106. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/json/json_repository.py +0 -0
  107. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/json_format/__init__.py +0 -0
  108. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/json_format/json_process.py +0 -0
  109. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/logging/__init__.py +0 -0
  110. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/logging/loggin_instance.py +0 -0
  111. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/multi_language/__init__.py +0 -0
  112. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/multi_language/english.py +0 -0
  113. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/multi_language/france.py +0 -0
  114. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/multi_language/germany.py +0 -0
  115. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/multi_language/italy.py +0 -0
  116. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/multi_language/language_wrapper.py +0 -0
  117. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/multi_language/russian.py +0 -0
  118. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/multi_language/simplified_chinese.py +0 -0
  119. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/multi_language/traditional_chinese.py +0 -0
  120. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/preset_schedule/__init__.py +0 -0
  121. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/preset_schedule/preset_schedule_service.py +0 -0
  122. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/redirect_manager/__init__.py +0 -0
  123. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/redirect_manager/redirect_manager_class.py +0 -0
  124. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/smart_pause/__init__.py +0 -0
  125. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/smart_pause/smart_pause_service.py +0 -0
  126. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/theme_schedule/__init__.py +0 -0
  127. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/theme_schedule/theme_schedule_service.py +0 -0
  128. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/utils/web_url.py +0 -0
  129. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/worker/__init__.py +0 -0
  130. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine/worker/qthread_worker.py +0 -0
  131. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine.egg-info/SOURCES.txt +0 -0
  132. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine.egg-info/dependency_links.txt +0 -0
  133. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine.egg-info/entry_points.txt +0 -0
  134. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine.egg-info/requires.txt +0 -0
  135. {frontengine-1.0.17 → frontengine-1.0.18}/frontengine.egg-info/top_level.txt +0 -0
  136. {frontengine-1.0.17 → frontengine-1.0.18}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: frontengine
3
- Version: 1.0.17
3
+ Version: 1.0.18
4
4
  Summary: FrontEngine is use-define frontview or only use like screen saver
5
5
  Author-email: JE-Chen <jechenmailman@gmail.com>
6
6
  Project-URL: Homepage, https://github.com/Intergration-Automation-Testing/FrontEngine
@@ -318,6 +318,12 @@ class PetGrowth:
318
318
  return self.level() > before
319
319
 
320
320
 
321
+ def size_for_level(base_size: int, level: int) -> int:
322
+ """依等級放大基礎尺寸(每級 +8%,上限 +50%)/ Grow base size by level (cap +50%)."""
323
+ factor = min(1.5, 1.0 + 0.08 * max(0, int(level) - 1))
324
+ return max(16, int(round(int(base_size) * factor)))
325
+
326
+
321
327
  class PetHunger:
322
328
  """
323
329
  寵物飽足值 0~100:餵食上升、隨時間下降;level() 回傳 full/ok/hungry。
@@ -763,7 +769,10 @@ class DesktopPetWidget(BaseWidget):
763
769
  )
764
770
  super().__init__()
765
771
  self.opacity = 1.0
766
- self.pet_size: int = max(16, int(size))
772
+ # 基礎尺寸依已存等級放大 / Base size grown by the persisted level.
773
+ self._base_size: int = max(16, int(size))
774
+ self._growth = PetGrowth(user_setting_dict.get("pet_affection", 0))
775
+ self.pet_size: int = size_for_level(self._base_size, self._growth.level())
767
776
  self.image_path: Path = Path(image_path)
768
777
  self._dragging: bool = False
769
778
  self._drag_offset = None
@@ -796,7 +805,6 @@ class DesktopPetWidget(BaseWidget):
796
805
  self._mood = PetMood(user_setting_dict.get("pet_mood", 60))
797
806
  self._hunger = PetHunger(user_setting_dict.get("pet_hunger", 70))
798
807
  self._hunger_warned = False
799
- self._growth = PetGrowth(user_setting_dict.get("pet_affection", 0))
800
808
  self._messages = self._load_messages()
801
809
  self._sound: Optional[QSoundEffect] = None
802
810
  self._init_sound(sound_path)
@@ -976,13 +984,25 @@ class DesktopPetWidget(BaseWidget):
976
984
  }
977
985
 
978
986
  def _gain_affection(self, amount: int) -> None:
979
- """互動累加親密度;升級時慶祝一下並保存。"""
987
+ """互動累加親密度;升級時長大、慶祝一下並保存。"""
980
988
  leveled = self._growth.add(amount)
981
989
  user_setting_dict["pet_affection"] = self._growth.affection
982
- if leveled and self._talk:
983
- pool = self._messages.get("levelup") or []
984
- if pool:
985
- self.say(pool[self._chatter_rng.randrange(len(pool))])
990
+ if leveled:
991
+ self._apply_growth_size()
992
+ if self._talk:
993
+ pool = self._messages.get("levelup") or []
994
+ if pool:
995
+ self.say(pool[self._chatter_rng.randrange(len(pool))])
996
+
997
+ def _apply_growth_size(self) -> None:
998
+ """依目前等級調整體型(motion 下一步會自動重新落地)。"""
999
+ new_size = size_for_level(self._base_size, self._growth.level())
1000
+ if new_size == self.pet_size:
1001
+ return
1002
+ self.pet_size = new_size
1003
+ self.resize(new_size, new_size)
1004
+ self.motion.width = new_size
1005
+ self.motion.height = new_size
986
1006
 
987
1007
  def _persist_mood(self) -> None:
988
1008
  user_setting_dict["pet_mood"] = self._mood.value
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: frontengine
3
- Version: 1.0.17
3
+ Version: 1.0.18
4
4
  Summary: FrontEngine is use-define frontview or only use like screen saver
5
5
  Author-email: JE-Chen <jechenmailman@gmail.com>
6
6
  Project-URL: Homepage, https://github.com/Intergration-Automation-Testing/FrontEngine
@@ -6,7 +6,7 @@ build-backend = "setuptools.build_meta"
6
6
 
7
7
  [project]
8
8
  name = "frontengine"
9
- version = "1.0.17"
9
+ version = "1.0.18"
10
10
  authors = [
11
11
  { name = "JE-Chen", email = "jechenmailman@gmail.com" },
12
12
  ]
File without changes
File without changes
File without changes