Skip to content

CPyMO v1.1.2

Compare
Choose a tag to compare
@Seng-Jik Seng-Jik released this 26 Sep 16:55
· 359 commits to main since this release

新功能

  • 支持iOS。
  • 现在允许仅跳过已读部分,可以在游戏设置中开关此功能。
  • 已读内容变暗。
  • 增加software后端用于在脱离硬件和系统API的情况下进行软件渲染,将输出RGB帧缓冲。
  • CPyMO ASCII Art现在支持rule图淡化过场。
  • SDL2后端可以通过DISABLE_VSYNC宏关闭垂直同步以提升快进速度。

PyMO行为一致性

  • 现在say命令将会取消fade_out状态。
  • goto和if goto失败时不会崩溃,而是继续执行。
  • change不应该破坏调用栈。

Bug修正

  • 历史记录中max_lines字段没有进行初始化。
  • 已修正Win32与UWP平台下鼠标和触屏混合操作时List UI不灵敏的问题。
  • 修复List UI上可能崩溃的问题。
  • 加载带mask图像失败时可能会导致双重free。

体验改进

  • 桌面版CPyMO在使用时若游戏窗口大小超过屏幕大小,则直接创建最大化窗口,并且挑选一个合适的窗口大小。
  • SDL2后端新增Menu键支持。
  • 支持在SDL 2.0.18及以上版本响应高精度触摸板的平滑滚动。
  • 支持在SDL2、SDL1后端上当用户即将关闭窗口时询问是否确定关闭。
  • 优化触屏长按操作手感,现在不再需要松开才能响应。
  • CPyMO ASCII Art在Windows上的输出效率得到大幅优化,现在GitHub Action上提供Windows版CPyMO ASCII Art的二进制文件。
  • rule图淡化方向现在与ONScripter一致。
  • 滚动列表要在页面还满的时候就停止滚动,而不是滚动到只有一行。

优化

  • 当使用call命令时,若该脚本已经被加载于其他的解释器,则直接调用其他解释器的脚本,而不是重新加载。
  • 使用stb_ds优化cpymo_hash_flagscpymo_vars
  • 使用柔性数组优化cpymo_chara
  • cpymo_interpreter中拆分出cpymo_script
  • cpymo_parser_stream_span改名为cpymo_str
  • backlog功能的存储被移动到了堆上以减少静态存储区占用过大导致的崩溃问题。
  • 使用stb_leakcheck进行内存泄漏检查。
  • text后端上禁用了图像加载功能以减少内存占用。