高级签到系统包含以下三大块功能:
1、每日签到(每日0点重置签到状态)
2、连续签到(可记录七日连续签到,断签或连签7天会重置连签状态)
3、累计签到(可记录累计签到天数,累签天数不重置)
注:此教程难度较大,需要作者熟练掌握高级界面、购买数值的使用。
不过别担心!此界面现已加入共享界面套餐,可以直接抱走使用!
教程开始
一、素材准备
1. 一张已经设计完毕的签到界面底图:

2. 一张签到奖励界面底图

3. 奖励道具图(金币、礼包1、礼包2)和其他内容(签到按钮、已签到图片、收下奖励按钮、红圈印章、关闭按钮)

二、界面制作
1.新增一个高级界面。

2.调整大小,将容器调整为960*540,最后保存,更改名字为高级签到系统,方便后期设置。

3.拽入一张你喜欢的背景素材到容器内。

4.导入我们准备的所有素材到道具分类。

5. 依次添加刚刚导入的签到界面底图、关闭按钮、签到按钮到容器内的合适位置(其他图片也可保存为组件并命名)。

6.再新建一个高级界面,依旧将容器调整为960*540,最后保存,更改名字为签到奖励。

7.依次添加背景、签到奖励界面底图、收下奖励按钮到容器内的合适位置,最后记得保存。

三、数值添加
1.点击 “数值设置 - 设置初始数值 - 普通数值” 新建三个普通数值(如图所示):

2.点击“购买数值”新建七个购买数值(如图所示):

四、逻辑构建
需要实现的功能以及逻辑见下图。

1. 在高级界面打开之前保存的“高级签到系统”界面。

2.在容器内添加文本组件。双击进入编辑状态。

3.插入购买数值“累计签到天数”,并将颜色改为橙色。

4.修改后的效果:

5.接下来为签到按钮添加点击和载入事件,一共13步。
1)双击签到按钮,进入按钮的内部事件编辑状态。
在右侧事件设置区“鼠标点击的时候”下方点击“添加事件”。

2)点击加号,添加一个点击“动作1”,再点铅笔图标重命名为“计算0点时间戳”


3)选择“数值操作”,会弹出数值操作框。

4)按照下图,依次添加数值操作:

以下为一些原理的解析,看不懂可以跳过
时间戳的数值就是格林威治时间1970年01月01日00时00分00秒起至今的总秒数,会跟着北京时间的变化而一秒一秒的增加。
如何利用时间戳判断今日是否已签到?
我们要实现用户每日签到状态0点重置功能,比较方便的判断方式是记录用户上次签到当天0点时间戳与这次签到0点时间戳,如果两个时间戳数值相同则为同一天(显示已签到),如果不同则重置签到状态。
签到当天0点时间戳公式为:NowTime - (NowTime + 8 * 3600) % 86400
(其中“NowTime”指当前时间戳;“+8”指北京时区在正八区;“3600”指一小时有3600秒;“%”指求余数;“86400”指一天有86400秒)
如何利用时间戳判断是否连续签到?
一天为86400秒。若:这次签到0点时间戳-上次签到0点时间戳=86400,则视为次日(连续)签到。
5)接着新增3个动作,分别命名为“签到”“连续签到7天”“连续签到”。

6)为“签到”动作设置条件如图所示的条件,只有满足所有条件时,“签到”这个动作才会执行。


7)再为“签到”动作添加如图所示的数值操作:

8)数值操作完后,再弹出一个签到成功的界面。增加打开“签到奖励”组件的动作,完成后点确定。

9)接着设置“连续签到7天”动作。同第10步,也要先添加条件:

10)再添加“数值操作”、打开“签到奖励”组件两个动作:


11)最后设置“连续签到”动作。一样根据第10步的步骤。依次添加条件、设置数值、打开签到奖励组件。



12)接下来在“载入后”添加一个新动作,命名为“判断是否已签到”,

条件设置为:

13)添加“打开已签到图片组件”,并修改坐标定位。

到此,签到按钮都已设置完毕!
6.接下来开始设置外层容器的事件,一共4步。
1)我们先双击“签到”容器,返回“签到”容器这一层。

2)为容器添加载入时的事件

添加命名为“累计签到大礼包”的动作,并设置条件

为“累积签到大礼包”新增一个打开“大礼包2”组件的动作,最后点“定位”将其放在合适的位置

3)接下来继续再为容器添加载入后的动作:

“显示签到印章1”需要满足的条件:

为“显示签到印章1”添加打开“签到印章”组件的动作。

用“定位”将印章与连续签到的第一个奖励位置重合。

4)剩下的“显示签到印章2”~“显示签到印章7”的设置步骤相同,请按上述步骤一一添加。

7.准备一个文本组件,颜色为白色,内容如下图:

8.保存命名为“累计签到大礼包文本”,此组件在之后会用到。
9.完成前面步骤后,在高级签到系统容器右侧“关联组件”下找到大礼包2,双击进入内部事件。

10.为“大礼包2”内部事件新增点击后动作“领取奖励”,
再组织动作:数值操作、打开累计签到大礼包文本组件、关闭当前组件。

数值操作设置参考下图

11.高级签到系统事件添加完毕后,接下来打开签到奖励界面。

12.在签到奖励界面内准备一个文本组件,将文本内容改为“金币+”再插入“普通数值”-“本次获得金币”,接着改变文本颜色为橙色,保存命名为“奖励说明文本1”。

13.重复上面操作,再新增一个文本,内容为“金币+普通数值 本次获得金币;某个道具+1”,将其改为橙色,保存命名为“奖励说明文本2”。

14.最后为签到奖励界面容器添加载入事件,分别为“未满7天”、“第7天”。

1)“未满7天”事件需要设置条件:

再依次为其添加动作:数值操作、打开“奖励说明文本1”组件、打开“金币”、数值操作。

第一个数值操作:

第二个数值操作:

2)“第7天”事件设置条件:

再依次为其添加动作:数值操作、打开“奖励说明文本2”组件、打开“大礼包1”、数值操作。

第一个数值操作:

第二个数值操作:

至此教程完毕!GIF效果图在此~

看完还有疑问的小伙伴可以留言,注明下是哪一步没看懂,教程君会为大家解答的。
如果完全看不懂也没有关系,你可以直接在高级共享界面内下载,修改下数值和图片素材就能完美使用了!
相关教程:
如何导入和使用高级签到界面