MCphone NeoForge 1.21.1 v1.9.3
Curse Maven Snippet
What's new
MCphone v1.9.3
手机可以自己调大小了 —— 「设置 → 界面大小」,75% 到 300%,不用去动全局的 GUI 缩放。 换肤表里最后七个空位也补齐了,44 个位现在一张不缺。
运行环境: Minecraft 1.21.1 · NeoForge 21.1.200 或更高 · 客户端与服务端都需安装 可选: Curios —— 装了多一个手机槽 可选: Waystones(传送石碑)—— 装了多一个「传送石」App 可选: MCEF —— 装了多一个「浏览器」App 可选: NetMusic(网络音乐机)—— 装了唱片仓还收它刻的 CD 可选: Patchouli(教程手册)—— 装了多一个「阅读」App 可选: FTB Quests —— 装了多一个「任务书」App 可选: Integrated Dynamics —— 装了不多任何东西,只让崩溃报告指认对人
从 1.9.x 升级: 直接替换 jar。这一版改的全在客户端,没动网络包,也没动任何存储格式——存档、好友、聊天记录、购买记录、App 安装状态、主屏图标位置、手机里的唱片全部原样保留。
服务端可以晚一步换。 网络包的注册版本仍是 1,包的种类也一个没变。
📐 界面大小
「设置 → 界面大小」多了一页:拖那条,或者点 − +,范围 75%–300%,默认 100%。改的时候整个手机(连同这一页自己)就在跟着变,所以不需要另做预览。
为什么不用原版的 GUI 缩放。 那一项是全局的:为了看清手机把它调大,聊天框、物品栏、所有界面都跟着变大。4K 屏配 GUI 缩放 2 时手机小得像块邮票,而调大 GUI 缩放又会让别的东西全都变笨重——这一档只管手机。
「贴合清晰倍数」默认开着。 字是位图、按最近邻画,所以每个像素方不方正只看一个乘积:GUI 缩放 × 界面大小。是整数就横平竖直,不是整数就有的列占两像素、有的占三像素,细线时粗时细。开着的时候档位自动对齐到 1/GUI缩放——缩放 2 是 100/150/200…,缩放 3 是 100/133/166…,缩放 4 是 100/125/150…,− + 一次正好走一档。关掉就能拖到任意值,代价就是上面那点不匀。
窗口放不下时自动夹回去,但配置里的数不动——窗口是随时会变的,一次临时的小窗口不该把你的设置永久改小;被夹着的时候那一页会写一行「窗口放不下,实际 xxx%」。
放大是整体缩放,不是重排布局:手机里所有东西的相对位置一点不变。这也是客户端设置,存在 config/mcphone-client.toml 的 uiScale / uiScaleSnap 里,跟着这台电脑走。
🎨 换肤表补满:44 个位一张不缺
这一版补上最后七张自带图:
- 浏览器工具条上的后退 / 前进 / 刷新。它们此前画的是 ◀ ▶ ↻ 三个字符,是整套界面里最后三处"没上贴图"的地方
- 滑条那四件:槽、已填充、滑块、两端的 − + 键底。槽与填充带九宫格元数据(
border: 2),拉伸时两端的圆头不会跟着抻长
同时给资源包开了七个新位(browser/back、browser/forward、browser/reload、settings/slider_track、settings/slider_fill、settings/slider_knob、settings/step_button)。滑条那四件刻意起的是通用名字:以后别的滑条也会用同一组,画一次就够。尺寸与替换规则见 README 的换肤表。
换肤文档里还补了一条以前没写清的规矩:贴图改不了颜色,状态只能靠亮度或透明度——悬停、点不动这类状态,没贴图时是换颜色画的,有了贴图那个颜色就再也看不见。所以模组在有贴图时改用别的表达(整张提亮、整张压暗、或者把高亮块画在贴图底下),画贴图的人不必自己去表达这些状态。
🧩 给附属模组作者
PhoneCanvas 新增 clipped(x, y, w, h, Runnable) ——做可滚动列表、长文本时用它来裁剪。
如果你的页面自己调过 canvas.graphics().enableScissor(...),请改用它。 原版那句收窗口坐标、而且不看 PoseStack,玩家一旦把界面调离 100%,你的裁剪框就会停在没缩放时的位置和大小上,文字被切掉一块——而且只在非 100% 时出现,很难查到自己头上。clipped 替你把矩形过一遍当前的变换矩阵,缩放几层都对,body 抛异常也会把裁剪收回去。
其余什么都不用改:PhoneCanvas 给的坐标和送进 mouseClicked / mouseScrolled 的鼠标坐标两边一起换算过了。详见 docs/addon-api.md。
This mod has no additional files

