最近GM问到变量的问题比较多,

所以我决定写几篇关于变量应用的帖子,

变量涉及的问题比较多,因而只能由易到难

今天给大家介绍下最简单的变量— [X]变量

这个大家见的比较多,

用起来很方便,功能也很强大。

[X]的数值上限我没去测试,

据说有的引擎限制499

有的能到999

但[X]的状态只有0和1两种

常用命令:

Check [X] 0 检测[X]状态为0

set [X] 1 设置[X]状态为1

reset [x] 7 将X开始的连续7个变量状态设置为0

示例

[@main]

\ \

在我这里每天可以领取一根金条\

但不能重复领取,如果你连续领取一个礼拜的金条,\

礼拜天便能领取一个金砖。\

<星期一金条/@星期一金条> <星期二金条/@星期二金条> <星期三金条/@星期三金条> <星期四金条/@星期四金条>\

<星期五金条/@星期五金条> <星期六金条/@星期六金条> <星期天金条/@星期天金条> <每周领金砖/@每周领金砖>

[@星期一金条]

#if

dayofweek mon

check [601] 0

#act

give 金条 1

set [601] 1

break

#elseact

messagebox 没到星期一或你已经领取了星期一的奖励。

[@星期二金条]

#if

dayofweek tue

check [602] 0

#act

give 金条 1

set [602] 1

break

#elseact

messagebox 没到星期二或你已经领取了星期二的奖励。

[@星期三金条]

#if

dayofweek wed

check [603] 0

#act

give 金条 1

set [603] 1

break

#elseact

messagebox 没到星期三或你已经领取了星期三的奖励。

[@星期四金条]

#if

dayofweek thu

check [604] 0

#act

give 金条 1

set [604] 1

break

#elseact

messagebox 没到星期四或你已经领取了星期四的奖励。

[@星期五金条]

#if

dayofweek fri

check [605] 0

#act

give 金条 1

set [605] 1

break

#elseact

messagebox 没到星期五或你已经领取了星期五的奖励。

[@星期六金条]

#if

dayofweek sat

check [606] 0

#act

give 金条 1

set [606] 1

break

#elseact

messagebox 没到星期六或你已经领取了星期六的奖励。

[@星期天金条]

#if

dayofweek sun

check [607] 0

#act

give 金条 1

set [607] 1

break

#elseact

messagebox 没到星期天或你已经领取了星期天的奖励。

[@每周领金砖]

#if

dayofweek sun

check [601] 1

check [602] 1

check [603] 1

check [604] 1

check [605] 1

check [606] 1

check [607] 1

#act

reset [601] 7

give 金砖 1

break

#elseact

messagebox 你已经领取了每周金砖或者你没有连续领取每日的金条。

看到这里相信大家已经明白了,

reset [601] 7

的功能其实就等同于

set [601] 0

set [602] 0

set [603] 0

set [604] 0

set [605] 0

set [606] 0

set [607] 0

其实细心的朋友会发现,这个脚本有一个很大的漏洞。

如果你发现了,可以谈谈你的解决办法。

只要在星期1-7领取过不管星期几都可以领取一个金砖了,如果说一个星期中,星期5没有领取,其余领取过,那就就领取不了金砖,也就清空不了reset [601] 7,,那么下个星期的1234每日奖励就领取不了了,,还是有漏洞啊

可以这样改改,领取当天,清空后面的标识,代码修正如下,就可以了;

;sta

@MAIN]

\ \

在我这里每天可以领取一根金条\

但不能重复领取,如果你连续领取一个礼拜的金条,\

礼拜天便能领取一个金砖。\

<星期一金条/@星期一金条> <星期二金条/@星期二金条> <星期三金条/@星期三金条> <星期四金条/@星期四金条>\

<星期五金条/@星期五金条> <星期六金条/@星期六金条> <星期天金条/@星期天金条> <每周领金砖/@每周领金砖>

[@星期一金条]

#IF

DAYOFWEEK MON

CHECK [601] 0

#ACT

GIVE 金条 1

SET [601] 1

RESET [602] 6

BREAK

#ELSEACT

MESSAGEBOX 没到星期一或你已经领取了星期一的奖励。

[@星期二金条]

#IF

DAYOFWEEK TUE

CHECK [602] 0

#ACT

GIVE 金条 1

SET [602] 1

RESET [603] 5

BREAK

#ELSEACT

MESSAGEBOX 没到星期二或你已经领取了星期二的奖励。

[@星期三金条]

#IF

DAYOFWEEK WED

CHECK [603] 0

#ACT

GIVE 金条 1

SET [603] 1

RESET [604] 4

BREAK

#ELSEACT

MESSAGEBOX 没到星期三或你已经领取了星期三的奖励。

[@星期四金条]

#IF

DAYOFWEEK THU

CHECK [604] 0

#ACT

GIVE 金条 1

SET [604] 1

RESET [605] 3

BREAK

#ELSEACT

MESSAGEBOX 没到星期四或你已经领取了星期四的奖励。

[@星期五金条]

#IF

DAYOFWEEK FRI

CHECK [605] 0

#ACT

GIVE 金条 1

SET [605] 1

RESET [606] 2

BREAK

#ELSEACT

MESSAGEBOX 没到星期五或你已经领取了星期五的奖励。

[@星期六金条]

#IF

DAYOFWEEK SAT

CHECK [606] 0

#ACT

GIVE 金条 1

SET [606] 1

RESET [607] 1

BREAK

#ELSEACT

MESSAGEBOX 没到星期六或你已经领取了星期六的奖励。

[@星期天金条]

#IF

DAYOFWEEK SUN

CHECK [607] 0

#ACT

GIVE 金条 1

SET [607] 1

BREAK

#ELSEACT

MESSAGEBOX 没到星期天或你已经领取了星期天的奖励。

[@每周领金砖]

#IF

CHECK [601] 1

CHECK [602] 1

CHECK [603] 1

CHECK [604] 1

CHECK [605] 1

CHECK [606] 1

CHECK [607] 1

#ACT

RESET [601] 7

GIVE 金砖 1

BREAK

#ELSEACT

MESSAGEBOX 你已经领取了每周金砖或者你没有连续领取每日的金条。

;end

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。