查看: 3428|回复: 15

[已经解决] 关于一个新手对脚本的错误认知 (2)

[复制链接]
梦石
0
星屑
50
在线时间
8 小时
注册时间
2015-8-13
回帖
13
发表于 2016-2-10 11:13:35 | 显示全部楼层 |阅读模式

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

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

×
新手总是问题少年,我又带来了一个极其无聊的问题,怎么让一个脚本只运行一次呢,就是只在你一次进入游戏的时候,会运行脚本。
梦石
0
星屑
12161
在线时间
4435 小时
注册时间
2014-4-11
回帖
5616

开拓者

发表于 2016-2-10 11:22:29 | 显示全部楼层
写在标题的“新游戏”里面
回复

使用道具 举报

梦石
0
星屑
50
在线时间
8 小时
注册时间
2015-8-13
回帖
13
 楼主| 发表于 2016-2-10 11:33:36 | 显示全部楼层
yang1zhi 发表于 2016-2-10 11:22
写在标题的“新游戏”里面


我是想要用脚本的p显示在方框中
回复

使用道具 举报

梦石
0
星屑
3905
在线时间
1972 小时
注册时间
2013-1-3
回帖
9146
发表于 2016-2-10 11:39:31 | 显示全部楼层
用永久保存变量吧,在整个脚本外加一个if xxx != 0
目前只能想到这个方法
《宿愿·寻剑篇》正式版已经发布!快去看看!点击进入论坛发布贴
回复

使用道具 举报

梦石
0
星屑
50
在线时间
8 小时
注册时间
2015-8-13
回帖
13
 楼主| 发表于 2016-2-10 11:48:58 | 显示全部楼层
紫英晓狼1130 发表于 2016-2-10 11:39
用永久保存变量吧,在整个脚本外加一个if xxx != 0
目前只能想到这个方法 ...

[pre lang="ruby"]a= 0
x= rand(5)
y= rand(5)
if a !=0
  print "你已经看过规则了!"
else
  if x>y
    a +=1
    print x
    print "big"
    x +=1
    print "因为X大于Y,所以X需要加1,结果等于#{x}"
  elsif x==y
    a +=1
    print x
    print "middle"
    print "因为X等于Y,所以X不变,结果等于#{x}"
  else
    a +=1
    print x
    print "small"
    x -=1
    print "因为X小于Y,所以X需要减1,结果等于#{x}"
  end
end[/pre]

反正我把上一个脚本改了后,按照你的意思就改成这样了,但貌似测试的时候没用

点评

这不是永久储存变量。在第1行把a代入0,自然分歧按==0来了。  发表于 2016-2-10 11:54
回复

使用道具 举报

梦石
0
星屑
50
在线时间
8 小时
注册时间
2015-8-13
回帖
13
 楼主| 发表于 2016-2-10 12:37:46 | 显示全部楼层
863009463 发表于 2016-2-10 11:48
a= 0
x= rand(5)
y= rand(5)

我能说我听不懂么...

点评

用变量要赋值,挺麻烦的,用开关吧  发表于 2016-2-10 12:59
错了,是A!=0改成A==1  发表于 2016-2-10 12:58
你把A=0删掉,把A!=0改成A==0,把A+=1改成A=1,这样就只执行一次后,接下来来都是“你已经看过规则”  发表于 2016-2-10 12:57
你在一开始设A=0了,所以每次调用A都会等于0  发表于 2016-2-10 12:42
回复

使用道具 举报

梦石
0
星屑
12161
在线时间
4435 小时
注册时间
2014-4-11
回帖
5616

开拓者

发表于 2016-2-10 13:06:16 | 显示全部楼层
863009463 发表于 2016-2-10 12:37
我能说我听不懂么...
  1. def idj
  2. x= rand(5)
  3. y= rand(5)
  4. if $game_switches[1] == true
  5.   print "你已经看过规则了!"
  6. else
  7. print "啊大赛的"
  8. $game_switches[1] = true
  9. end
  10. end
复制代码
回复

使用道具 举报

梦石
0
星屑
9292
在线时间
2504 小时
注册时间
2011-5-20
回帖
14521

开拓者

发表于 2016-2-10 13:34:17 | 显示全部楼层
在游戏进入标题画面前运行一次?每次启动游戏都运行一次?
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复

使用道具 举报

梦石
0
星屑
9557
在线时间
5074 小时
注册时间
2013-6-21
回帖
3459

开拓者贵宾剧作品鉴家

发表于 2016-2-10 13:48:06 | 显示全部楼层
楼主请将自己的问题描述更清楚一些。
第一次进入游戏指的是第一次双击进入Game.exe进入游戏标题画面,还是第一次点击新游戏然后进行游戏地图?两种情况的处理方式不一样。
4楼的办法适用于两种情况。7楼的办法只适用于第二种情况。
回复

使用道具 举报

梦石
0
星屑
50
在线时间
8 小时
注册时间
2015-8-13
回帖
13
 楼主| 发表于 2016-2-10 17:15:38 | 显示全部楼层
本帖最后由 863009463 于 2016-2-10 17:21 编辑

抱歉我是说的不清楚,我的意思是第一次进入这个游戏,但还没有开始游戏,不过按7楼的方法已经解决了
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部