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

Project1

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

[有事请教] 倒水小遊戲製作方法

[复制链接]

Lv1.梦旅人

梦石
0
星屑
141
在线时间
16 小时
注册时间
2018-12-30
帖子
5
跳转到指定楼层
1
发表于 2021-2-25 03:52:22 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
100星屑
本帖最后由 tabako 于 2021-2-25 18:57 编辑

偶然看到一款手遊(關鍵字:water sort)覺得挺好玩的,又符合目前工程需要的小遊戲環節,想試著用MV重現
附圖為範例,遊戲目標是將不同色的水各自分開,將水倒到不同瓶子時只有同色能疊加上去
不求能做出"倒水"的動畫效果,選取瓶子的方式初步構想為在下方顯示能左右移動的小箭頭、透過先後選擇欲移動與目標瓶子進行(有別的方式也行,理想是不需用滑鼠操作插件)
實際想用的水顏色、瓶數會更多

個人對事件擅長一些,腳本幾乎搞不懂......如果是後者的方案希望能詳盡點qq
以事件設計的初步思路大抵需要用上很多條件判定式,並且水疊加該怎麼判定也沒頭緒(也許可以使相應圖片(顏色)=變數?然後進行變數運算......然而並不會寫)
無論事件或腳本都行,雖然是挺無理的要求還是希望各路大神能幫幫忙qq若能提供思路或解決方式實在不勝感激!!

14.png (4.01 KB, 下载次数: 22)

最初的題目

最初的題目

15.png (6.4 KB, 下载次数: 23)

正確的倒水方式,空瓶可倒入任意顏色

正確的倒水方式,空瓶可倒入任意顏色

16.png (7.61 KB, 下载次数: 22)

錯誤的倒水方式

錯誤的倒水方式

17.png (3.76 KB, 下载次数: 20)

遊戲目標(位置任意)

遊戲目標(位置任意)

最佳答案

查看完整内容

不清楚楼主的倒水规则,是每次倒水,倒满为止,还是可以1单位1单位得倒,还是只能倒同色的 和楼上类似,这里给每个瓶子增加一个表示液面高度的变量 |2| |0| |0| |0| |3| |2| |0| |0| |1| |1| |3| |0| ——— ——— ——— —— 高度3 高度2 高度1 高度0 自动判定每个数列最高位的值:根据各管液面高度值,分别读取对应变量的值 当我将1号管倒向2号管时 选 ...

Lv3.寻梦者

梦石
0
星屑
1868
在线时间
36 小时
注册时间
2020-3-5
帖子
37
2
发表于 2021-2-25 03:52:23 | 只看该作者
不清楚楼主的倒水规则,是每次倒水,倒满为止,还是可以1单位1单位得倒,还是只能倒同色的
和楼上类似,这里给每个瓶子增加一个表示液面高度的变量
  |2|       |0|       |0|      |0|
  |3|       |2|       |0|      |0|
  |1|       |1|       |3|      |0|
———   ———  ———  ——
高度3    高度2   高度1   高度0
自动判定每个数列最高位的值:根据各管液面高度值,分别读取对应变量的值
当我将1号管倒向2号管时
选择的管的最高位值=管1
  当选择的管的最高位值=管2时
     当管2高=2时
        管2上=当选择的管的最高位值
        管2高+1
        管1高-1
当管1高=2时(清除倒出那部分对应的数值)
   管1上=0

最后判定:
管1判定=管1下*100+管1中*10+管1上
管1判定/111,取模(就是变量操作,加减乘除那一行最后一个,就是取除整后的余数)
其余同上
当管1判定=0(如果一条管子里的数值相等,则能整除111、1111等,其余数必然为0)
  ....
则判定胜利
回复

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
14048
在线时间
2070 小时
注册时间
2016-9-20
帖子
844
3
发表于 2021-2-25 12:49:29 | 只看该作者
这个没法用事件做, 慨念上就需要二维数组, 事件没数组慨念, 更不说二维数组, 我只是说一下我的实现慨念

试管1 = [[绿水,3],[蓝水,3],[红水,3]]
试管2 = [[红水,3],[蓝水,4]]
试管3 = [[绿水,2]]
试管中的所有水相同则此试管完成, 若试管中头数组不相等, 或试管超出9的容量则无法装载

评分

参与人数 1+1 收起 理由
tabako + 1 大致懂意思,不過具體該怎麼寫我恐怕還得想.

查看全部评分

内容仅供参考,
回复

使用道具 举报

Lv2.观梦者

梦石
0
星屑
926
在线时间
83 小时
注册时间
2018-12-18
帖子
84
4
发表于 2021-2-25 15:25:26 | 只看该作者
本帖最后由 蹲厕所的女孩 于 2021-2-25 15:31 编辑

我电脑不在身边所以没有去实验测试,但打了下草稿感觉应该是可以用事件写出来的,具体如下:

首先假设三个水杯分别是:左、中、右
假设每个水杯能装三层水:底层为1、中层为2、上层为3
那么杯子里的空位编号就如下:
      左3      中3      右3
      左2      中2      右2
      左1      中1      右1
依次给变量附上这些编号:变量1代表左1、变量2代表左2、变量3代表左3、变量4代表中1。。。以此类推
接着变量的值代表水的颜色:0空、1红、2蓝、3绿

变量准备好后就编辑事件了
首先初始化变量值,就拿楼主图上的例子,变量1-9的值就依次是1.2.3.2.1.0.3.0.0

然后一个循环事件:
首先是选项事件,玩家选择左中右三个水杯,选择了一个选项后就从上至下找第一个不为0的值
比如选择的是左,那就如果左3 != 0,则选择左3,否则就判断左2是否为0,如果左123都为0,就输出左水杯为空然后重新循环即可

选择左3后再次添加选项事件,选择中或右,选择了一个选项后这次再从下至上找第一个为0的值
比如选择的是中,那就如果中1 == 0,则选择中1,否则就判断中2是否为0,如果中123都不为0,就输出中水杯为满然后重新循环

两次选项后所在的分支路线应该是:选择左3、选择中1,则将中1的值设置为左3的值,左3的值设置为0即可,否则重新循环

每次改变完变量的值后,进行一次变量的值判定:左1=左2?中1=中2?右1=右2?如果都满足则退出循环游戏胜利,否则继续重新循环即可


以上纯手打哈哈,还是用的手机,希望能帮到楼主。
然后就是逻辑应该很长,所以这个事件应该是不太好做的,我的思路就是这些,另外就是怎么在屏幕上表现水杯的显示楼主可以再考虑下。

点评

哦好像规则错了哈哈,不好意思写到一半忘了,倒水必须要目标水杯最上层和选取的相同。。。 不过我仔细想了想,楼主这规则确定可以游戏胜利吗...  发表于 2021-2-25 15:33

评分

参与人数 1+1 收起 理由
tabako + 1 我發現示意圖畫錯了(汗)可能是凌晨腦袋昏乎.

查看全部评分

回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
141
在线时间
16 小时
注册时间
2018-12-30
帖子
5
5
 楼主| 发表于 2021-2-25 19:11:02 | 只看该作者
蹲厕所的女孩 发表于 2021-2-25 15:25
我电脑不在身边所以没有去实验测试,但打了下草稿感觉应该是可以用事件写出来的,具体如下:

首先假设三个 ...

不大熟悉評分用法,發覺太長好像會被吃,還是回覆一次好了

我發現示意圖畫錯了(汗)可能是凌晨腦袋昏乎乎的沒想清楚就畫了......實在抱歉。瓶子數量應該要是顏色+1的,這樣的規則才能遊戲勝利。若要用事件做的話瓶子和水目前是打算每種水位都畫一張的,就是跟事件內容一樣多得可以......變量設置方式感覺是可行的,也許我再想想後面能怎麼寫比較好,謝謝你!
回复

使用道具 举报

Lv2.观梦者

梦石
0
星屑
926
在线时间
83 小时
注册时间
2018-12-18
帖子
84
6
发表于 2021-2-25 20:09:20 | 只看该作者
tabako 发表于 2021-2-25 19:11
不大熟悉評分用法,發覺太長好像會被吃,還是回覆一次好了

我發現示意圖畫錯了(汗)可能是凌 ...

关于水杯的表示的话不建议楼主每种都画一张,那不仅仅是画图工作量大的问题,每次移动完之后的状态对应哪张图又是一个大的工作量。
这里给个建议是可以考虑水杯画空的,当做背景,水位也是以一块作为一个单位,然后在显示的时候是可以调节图片的位置等参数的,可以根据变量的值来确定当前水位是什么颜色的水,然后就在对应的位置显示该颜色的水块!

图片参数也可以在事件里调整!!!

评分

参与人数 1+1 收起 理由
tabako + 1 謝謝提醒!很抱歉這幾天沒空上來看回覆.

查看全部评分

回复

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2823
在线时间
94 小时
注册时间
2020-11-17
帖子
5
7
发表于 2021-2-27 15:34:42 | 只看该作者


记得打开插件

新建文件夹.7z (2.09 KB, 下载次数: 121)
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
141
在线时间
16 小时
注册时间
2018-12-30
帖子
5
8
 楼主| 发表于 2021-3-1 21:51:43 | 只看该作者
1553866533 发表于 2021-2-25 22:24
不清楚楼主的倒水规则,是每次倒水,倒满为止,还是可以1单位1单位得倒,还是只能倒同色的
和楼上类似,这 ...

很抱歉前幾天沒空上來回覆><
原先規則是只能倒同色的!以首樓圖為例子,假設管1的第二層水為藍色,那麼就會因溢出而無法倒進管2
不過我想除了難度差異外,採用一單位一單位倒的規則也是OK的!

大致看了下您的寫法應該也是以一單位倒為原則,雖然還未測試,但邏輯上看來是行得通的,非常感謝您的幫助!!!


p.s.因為樓下提供了插件的方法,很想給兩位都發星屑,之後會給您選最佳答案的,請稍等一下QQ
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
141
在线时间
16 小时
注册时间
2018-12-30
帖子
5
9
 楼主| 发表于 2021-3-1 21:57:49 | 只看该作者

回覆晚了非常抱歉!!
能看到有人做出插件完全是意料之外......測試了一下除了無法圖像化都非常完美,ˋ真的很厲害,非常感謝!!

雖然您前頭有人先回覆他種做法了,但這邊實在很想也給您發星屑,重開一帖又怕有水帖或違規疑慮......不知道有沒有其他方法能發呢QQ?
回复

使用道具 举报

Lv2.观梦者

梦石
0
星屑
662
在线时间
56 小时
注册时间
2021-1-23
帖子
37
10
发表于 2021-3-2 09:14:38 | 只看该作者
学习学习各位的思路
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-5-10 19:36

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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