你会不会是哪里没改好呀?这是我把你的代码放进去了出来的效果。 顺带一问,你的mv版本是1.6.1吗? 实在不行那是这吧,你把你的index.html和rpg_core.js先都备份一下,我把我的index.html和rpg_core.js给你。 一般来讲,无论你用什么插件,都不会涉及到这两个文件的。 你直接往进换,然后在用你刚刚的代码试试效果。 |
本帖最后由 小怪兽奇奇侠 于 2021-10-4 01:13 编辑 经过你刚刚那么一讲,我忽然想到了一个坐标和大小都可以用像素值,iframe还可以自适应的办法。 虽然不像仅在外层iframe加点料那么简单,不过原理也很好懂,也非常简单。 需要改动的地方有三处: 第一处:对mv1.6而言,在rpg_core.js里搜索Graphics._centerElement,在他的下边新定义一个名为scaleElement的方法,具体代码如图
第三处:index.html里在head标签内加入以下代码:
做了以上改动后,事件中呼出iframe的脚本如图所示,可以看到用的都是像素。 游戏中的效果是 iframe自适应。 这么做的原理是,使用了css3的transform属性,他会按照缩放游戏的比率自动缩放装着iframe的空容器,进而缩放iframe和关闭按钮。 为了保证缩放后iframe的位置不会发生偏差,缩放原点设为了左上角,和定位原点一致,这样可以确保缩放后iframe不会跑掉。 因此你可以使用像素来进行大小和坐标的设置,当分辨率发生变化时,rpg_core.js会自动处理。 以上三处的改动非常容易,但如果你呼叫iframe的代码用的是我去年给你的那个代码,那也是需要做改动的。 按你所说的情况,要改动的地方相当多,在mv编辑器里改非常麻烦。 其实这个改动也非常简单。相对于去年的代码,需要改动的地方是 ErrorPrinter 改为 iframeDiv fixed 改为 absolute 没错...只有这两处而已....... 你可以用代码编辑器的查找与替换功能,在data下的map的json文件里改, 如果你的代码编辑器是vscode,用这个功能,选定你游戏的data文件夹查找与替换,那么你游戏内所有呼出的iframe都将被修正。 这会非常迅速.... |
本帖最后由 小怪兽奇奇侠 于 2021-10-3 10:26 编辑 你好,我现在回家了。由于看到你上次游戏不稳Lagg的帖子里讲你在把你的游戏移植到mz,所以我就按mz来说下我的办法。 <br /> 首先得说明一下,我的办法仅改动了定位原点,iframe的完全自适应需要开发者的配合。 (这是因为游戏里内嵌的iframe的宽高和坐标是由开发者写死的,是多少像素就是多少像素,不会跟着游戏的大小变。) 如果开发者在开发的时候坐标和宽高都用百分比来写,就可以实现完全自适应。 下边说一下改动定位原点的办法: (原先的定位原点是在窗口左上角,现在改为了canvas左上角,这样可以实现准确定位。) 首先,iframe是在dom层的,游戏里图片定位是在canvas里进行的,这二者有本质区别,所以无法按canvas内部的定位方式给dom里生搬硬套。由于当前技术的发展,canvas标签里还不可以直接放其他标签,我个人的办法是构造一个和canvas一样的空容器,然后在这个空容器里放iframe实现定位。 这个方法会对mz核心作一些微小的改动,但不会影响其他程式的运行,为了保险起见,在修改核心前请先备份一下原文件。 具体做法如下: 首先,在js文件夹下找到rmmz_core.js这个文件,搜索Graphics._createCanvas,找到这个函数,这个函数底下还紧跟了一个updateCanvas的函数,将这两个函数替换成
然后我上次给你的iframe代码也需要作相应的改动。 调用iframe的代码改为
之前那段放在插件里的clickexit()方法整合到了rmmz_core.js中,成为核心文件的一部分了,所以之前放在插件里的相应代码可以删去了。 这是我在本地测试的效果,iframe随游戏分辨率自适应。 你可以试试效果怎么样。 附:这是在mv上的效果 我也认为mv比mz好一点,至少从体感来讲,mv游戏对显卡要求不高,我开mz游戏的时候电脑会变卡,运作的声音也会特别厉害,就和开3d游戏一样。 |
这个问题可能和mv获取到的width和height有关。以我的游戏为例 在不同窗口大小下,canvas的宽高是自动更新的。然而,这是在浏览器模拟手机的情况下是这样。如果是电脑的话,就会出现你所说的情况。 能想到的简单易行的办法只有一个,就是更改userAgent,让游戏误认为是手机在访问。 要实现这一点,还是需要改动游戏的默认代码。
然后再访问游戏就会实现你想要的效果,放到iframe的框架里也会自适应的。 |
小怪兽奇奇侠 发表于 2021-9-18 16:32 https://www.jianshu.com/p/0bd8b462dac1 虽然不太懂 也没事过如果可以让玩家像上面链接一样选择指定的大小呢包含全屏什么的 |
站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作
GMT+8, 2025-1-13 13:28
Powered by Discuz! X3.1
© 2001-2013 Comsenz Inc.