设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 333|回复: 2
打印 上一主题 下一主题

[有事请教] 问询如何实现在物品选择处理功能上同时选中两个不同的...

[复制链接]

Lv1.梦旅人

梦石
0
星屑
215
在线时间
32 小时
注册时间
2024-1-13
帖子
1
跳转到指定楼层
1
发表于 2024-2-1 20:14:09 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
求证各位大佬~新人想问一下如何可以实现在物品选择处理功能上同时选中两个不同的物品?是在做推理游戏,需要同时指出两个不同的证据。
非常感谢~

Lv4.逐梦者

梦石
0
星屑
6536
在线时间
1476 小时
注册时间
2013-12-3
帖子
317
3
发表于 2024-2-1 21:04:26 | 只看该作者
看题主的问法不像是会代码的样子
那就不要把心思放在“改功能”上了,单选跟多选完全不是一个操作逻辑
不妨换个思路,用两次单选配合剧情表现来实现

显示文本“请出示物证……”
物品选择处理 →变量1
显示文本“以及这个物证……”
物品选择处理 →变量2

条件分支 (变量1 = 物证1 且 变量2 = 物证2) 或者(变量1 = 物证2 且 变量2 = 物证1)
  //选对了的剧情
除此以外的情况
  //选错了的剧情
回复 支持 1 反对 0

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
4139
在线时间
500 小时
注册时间
2011-3-26
帖子
110
2
发表于 2024-2-1 20:43:46 | 只看该作者
本帖最后由 rfvtgbzxc 于 2024-2-1 20:49 编辑

mz原生选择窗不支持选中两个物品。改代码提供两种策略,主要是组件层次上的差异:

1.由管理这个selectable的scene维护这样的属性:selectedItem1。第一次selectable确认,由scene做一下逻辑判断,给selectedItem1赋值,两个都有值了可以继续接下来的逻辑。
selectable要继承原生的,然后处理一下渲染,将已经选择的物品的选中效果渲染出来。

2.由selectable自己维护selected1Index,第一次选中不向scene发送事件,设置selectedIndex,第二次连着本次选择的index和selectedIndex一起发送一个事件提醒scene读取状态。
selectable依然要继承原生并且处理渲染,而且还要做确认相关的处理。

个人建议选第一种,第2种要修改更多selectable的源码,改动比较复杂。不过第二种做出来以后可以变成一个比较通用的“多选组件”。可以先从第一种方法入手,熟练代码结构后再根据需要做第二种方式。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-16 05:34

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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