Project1

标题: 把星期 1 变成星期一的方法?呼叫救援. [打印本页]

作者: snowball1981    时间: 2009-5-30 05:37
提示: 作者被禁止或删除 内容自动屏蔽
作者: 精灵使者    时间: 2009-5-30 05:39
case 日期变量
when 1
a$ = "星期一"
when 2
a$ = "星期二"
when ...
...
end
然后 p a$
作者: snowball1981    时间: 2009-5-30 06:26
提示: 作者被禁止或删除 内容自动屏蔽
作者: 后知后觉    时间: 2009-5-30 06:36
把你那个和兴起有关的脚本帖上来
作者: snowball1981    时间: 2009-5-30 06:40
提示: 作者被禁止或删除 内容自动屏蔽
作者: 后知后觉    时间: 2009-5-30 07:17
    text = sprintf("星期"+"%01d  %02d:%02d:%02d", $game_variables[$天], $game_variables[$时], $game_variables[$分], $game_variables[$秒])
    self.contents.font.color = normal_color
这样的句子貌似我还不会改{/bz}
要么你继续等会这个的人来
要么你发论坛短信给塑料大叔,就是这个脚本的左洪泽拉
我想他会很乐意帮你的{/cy}
作者: 精灵使者    时间: 2009-5-30 15:15
以下引用snowball1981于2009-5-29 22:26:05的发言:

我查了下脚本语言(帮助中),没有找到case when语句

没有?
那你肯定是没仔细看帮助!
地址:RGSS参考-RUBY的语法-控制结构
里面有case运算符
case
例子:

case $age
when 0 .. 2
  "baby"
when 3 .. 6
  "little child"
when 7 .. 12
  "child"
when 13 .. 18
  "youth"
else
  "adult"
end

语法:

case 表达式
[when 表达式 [, 表达式] ... [then]
  表达式 ..]..
[else
  表达式 ..]
end

case 先对一个表达式进行匹配判断,然后根据匹配结果进行分支选择。它使用 === 运算符比较 when 的指定值和最初那个表达式的计算值,若一致的话就计算 when 部分的内容。

case 将返回条件成立的 when 部分(或 else 部分)中最后被计算的表达式的结果。若所有条件都不成立的话,则返回 nil。

作者: snowball1981    时间: 2009-5-30 15:30
提示: 作者被禁止或删除 内容自动屏蔽
作者: 精灵使者    时间: 2009-5-30 16:18
囧啊囧
没有范例工程么?
作者: 暴风の龙    时间: 2009-5-30 17:41
text = sprintf("星期"+"%01d  %02d:%02d:%02d", $game_variables[$天], $game_variables[$时], $game_variables[$分], $game_variables[$秒])

把以上这句删掉,并在此之上写……
case $game_variables[$天]
when 1
$星期="一"
when 2
$星期="二"
when 3
$星期="三"
when 4
$星期="四"
when 5
$星期="五"
when 6
$星期="六"
when 7
$星期="日"
end
text = sprintf("星期"+"%01d  %02d:%02d:%02d", $星期.to_s,$game_variables[$时], $game_variables[$分], $game_variables[$秒])

这样应该可以了吧。
[LINE]1,#dddddd[/LINE]系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
作者: snowball1981    时间: 2009-5-30 17:46
提示: 作者被禁止或删除 内容自动屏蔽
作者: snowball1981    时间: 2009-5-31 00:39
提示: 作者被禁止或删除 内容自动屏蔽
作者: 紫苏    时间: 2009-5-31 07:41
最后一行这样写:
text = sprintf("星期%s  %02d:%02d:%02d", $星期, $game_variables[$时], $game_variables[$分], $game_variables[$秒])

【$星期】本来就是字符串,不用 to_s 了,另外 sprintf 格式化字符串应该用 %s 字符串指示符
作者: 后知后觉    时间: 2009-5-31 07:52
字符串的那些方法我见了就头痛
因此,
现在都还没看明白 Window_Message里的refresh里的那些东西

作者: 紫苏    时间: 2009-5-31 08:01
以下引用后知后觉于2009-5-30 23:52:01的发言:

字符串的那些方法我见了就头痛
因此,
现在都还没看明白 Window_Message里的refresh里的那些东西

Window_Message 里面那些泰半是正则表达式,参考 F1 正则表达式的部分学习吧~

而 sprintf 是直接沿用了 C 语言的 printf 格式化字符串语法,方便了有 C 基础的人……
作者: 后知后觉    时间: 2009-5-31 08:15
正则表达式

...你不说我还真把这东西忘记了  没有看过。。。
作者: snowball1981    时间: 2009-5-31 18:45
提示: 作者被禁止或删除 内容自动屏蔽
作者: 塑望    时间: 2009-5-31 19:26
{/gg}突然才发现讨论半天是我那脚本。

捂脸。




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1