找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 572|回复: 4

[已解决] 做一个手机端长按快进的功能

[复制链接]
发表于 2023-9-19 22:24:53 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
本帖最后由 百合子233 于 2024-1-4 15:41 编辑

大家好!我想做一个在手机端,长按屏幕的时候游戏快进的功能。但是程序小白查了查资料还是不知道怎么做……求助大佬(磕头……十分感谢!!
发表于 2023-11-16 21:14:48 | 显示全部楼层
安卓端快捷手势么,没必要搞这么花里胡哨,基本就好,我给你一段代码.
[RenPy] 纯文本查看 复制代码
init:
    $ config.gestures["n"] = "game_menu"
    $ config.gestures["s"] = "hide_windows"
    $ config.gestures["e"] = "skip"
    $ config.gestures["w"] = "rollback"

上划=菜单
下滑=隐藏
左滑=回退
右滑=快进
回复 支持 1 抱歉 0

使用道具 举报

发表于 2023-9-20 23:31:44 | 显示全部楼层
应该不支持这种功能,不如改成点快进按钮快进。
回复 支持 抱歉

使用道具 举报

发表于 2023-9-22 09:21:50 | 显示全部楼层
1. Ren'Py没有原生的简单设置能实现楼主的需求。
2. 有复杂的方法,但楼主自称程序小白所以大概率搞不定。

大体的思路:

键鼠设备上控制快进的按键是两个Ctrl,设置在config.keymap中:
[RenPy] 纯文本查看 复制代码
    # These keys control skipping.
    skip = [ 'K_LCTRL', 'K_RCTRL' ],
    stop_skipping = [ ],


可以尝试将这两个按键事件改为触控屏的事件。

在“界面和界面语言”中有一节“界面变种”:
https://doc.renpy.cn/zh-CN/screens.html#screen-variants

可以指定界面在符合某种设备条件时的变种,比如“touch”。这样就可以设置组件的alternate事件响应,默认值在config.keymap字典中:
[RenPy] 纯文本查看 复制代码
button_alternate = [ 'mouseup_3' ]

也就是说,在触控屏设备上,长按按钮会触发一个“鼠标右键的抬起”事件。默认的情况下,这个事件不会触发任何行为。配合skip修改可能可以实现长按快进功能。
(但我也没有试过,不确定是否需要放一个铺满整个界面的按钮。)

建议为响应长按事件的界面单独设置一个图层,放在大多数UI图层后面。
回复 支持 抱歉

使用道具 举报

 楼主| 发表于 2024-1-4 15:41:30 | 显示全部楼层
yhj3388 发表于 2023-11-16 21:14
安卓端快捷手势么,没必要搞这么花里胡哨,基本就好,我给你一段代码.
上划=菜单
下滑=隐藏

谢谢!!
回复 支持 抱歉

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|RenPy中文空间 ( 苏ICP备17067825号|苏公网安备 32092302000068号 )

GMT+8, 2024-12-23 02:32 , Processed in 0.118680 second(s), 25 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表