Project1

标题: 怎么减少步数 [打印本页]

作者: 依然1    时间: 2012-5-23 14:26
标题: 怎么减少步数
在事件的脚本里怎么写@steps = 0是哪有有问题,怎么菜单里的步数没有改变,我设变量=步数,但还是没反应dsu_plus_rewardpost_czw
作者: tommay    时间: 2012-5-23 16:27
很奇怪的要求,若一定要做的话,分两步。

首先在脚本Main之前插入:
class Game_Party
  attr_accessor :steps
end

其次,在事件的脚本页中写:
$game_party.steps = XXX
作者: 依然1    时间: 2012-5-23 18:44
这位高手,我是想让rpg里自带的步数减少,我式了下,没反应……是我代码写错了吗,
作者: tommay    时间: 2012-5-23 18:59
依然1 发表于 2012-5-23 18:44
这位高手,我是想让rpg里自带的步数减少,我式了下,没反应……是我代码写错了吗, ...

你上面的代码肯定是有问题的,steps不是全局变量,而是Game_Party类的一个私有变量,如果想改变,只有先把它公开,然后再修改,见我的回帖
作者: 依然1    时间: 2012-5-23 22:52
本帖最后由 依然1 于 2012-5-23 23:09 编辑

我脚本这样写$game_party.steps=0可是出现错误,大概、for #<game_party:0x64e1d10>但是在新创建的游戏里却没发生错误,请问是怎么回事
作者: tommay    时间: 2012-5-23 23:02
依然1 发表于 2012-5-23 22:52
$game_party.steps==0一接触角色就不动了

什么意思?你想实现什么效果?
作者: 依然1    时间: 2012-5-23 23:10
tommay 发表于 2012-5-23 23:02 什么意思?你想实现什么效果?

在事件的脚本里怎么写@steps = 0是哪有有问题,怎么菜单里的步数没有改变,我设变量=步数,但还是没反应
作者: tommay    时间: 2012-5-23 23:13
本帖最后由 tommay 于 2012-5-23 23:13 编辑
依然1 发表于 2012-5-23 23:10
在事件的脚本里怎么写@steps = 0是哪有有问题,怎么菜单里的步数没有改变,我设变量=步数,但还是没反 ...


我不是说了吗?steps是私有的,不是公有的,而且不是在类中是不能用@的
设变量=步数,得到的是步数的一个拷贝,再改变变量不会影响步数
作者: 依然1    时间: 2012-5-23 23:44
tommay 发表于 2012-5-23 23:13 我不是说了吗?steps是私有的,不是公有的,而且不是在类中是不能用@的 设变量=步数,得到的是步数的一个 ...

不好意思刚打错了,我脚本这样写$game_party.steps=0就出现 #<game_party:0x64e1d10>但是在新创建的游戏里却没发生错误,请问是怎么回事
作者: kangxi0109    时间: 2012-5-24 11:37
可以这样子做,前阵子我恰好搞过一个用步数来换钱的东西:
1.在Game_Party里面,增加一个“减少步数”的定义:

  1.   #--------------------------------------------------------------------------
  2.   # ● 增加步数(这个是默认的)
  3.   #--------------------------------------------------------------------------
  4.   def increase_steps
  5.     @steps = [@steps + 1, 9999999999999].min
  6.   end
  7.   #--------------------------------------------------------------------------
  8.   # ● 减少步数(这个是添加的,其实跟增减金钱是一个道理...)
  9.   #     n : 步数
  10.   #--------------------------------------------------------------------------
  11.   def lose_steps(n)
  12.     @steps = [[@steps -n, 0].max, 9999999999999].min
  13.   end
复制代码
2.在事件中调用脚本:
$game_party.lose_steps( X ),其中X=减少的步数,如果X为负数则会增加步数。





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