查看: 1986|回复: 4

[已经解决] 求教一下,在战斗结束的时候根据结果不同给不同的变量...

[复制链接]
梦石
0
星屑
809
在线时间
176 小时
注册时间
2017-1-15
回帖
50
发表于 2017-2-28 20:41:23 | 显示全部楼层 |阅读模式

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

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

×
求教一下,在战斗结束的时候根据结果不同给不同的变量赋值

意思就是胜利的时候  变量1 +=1
逃跑的时候  变量2 += 1

我搜索到几个地方
一个是 加在这~
Game_Interpreter里面的
[pre lang="ruby"]  #--------------------------------------------------------------------------
  # ● 胜利的时候
  #--------------------------------------------------------------------------
  def command_601
    command_skip if @branch[@indent] != 0
$game_variables[1] +=1 #这是我加的
  end
  #--------------------------------------------------------------------------
  # ● 撤退的时候
  #--------------------------------------------------------------------------
  def command_602
    command_skip if @branch[@indent] != 1
$game_variables[2] +=1 #这是我加的
  end
[/pre]
但是加在这里的话,在游戏里无论是胜利还是撤退,变量1和2都会同时+1
然后我又找了
BattleManager 加在这里
[pre lang="ruby"]  #--------------------------------------------------------------------------
  # ● 战斗结束
  #     result : 结果(0:胜利 1:撤退 2:全灭)
  #--------------------------------------------------------------------------
  def self.battle_end(result)
    @phase = nil
    @event_proc.call(result) if @event_proc
    $game_party.on_battle_end
    $game_troop.on_battle_end
    SceneManager.exit if $BTEST
    if self.battle_end(result) == 0 #我加的
      $game_variables[1] += 1 #我加的
    end
    if self.battle_end(result) == 1 #我加的
      $game_variables[2] += 1  #我加的
    end        
  end
[/pre]

然后加在这里会报错
发生systemstackerror.
   stack level too deep
这样- -
求脚下,怎么弄这个问题啊

点评

【警告】版规A-8 提问后不管  发表于 2017-3-8 17:45
梦石
0
星屑
6375
在线时间
1473 小时
注册时间
2015-7-25
回帖
609

极短25参与开拓者

发表于 2017-2-28 20:51:20 | 显示全部楼层
[pre lang="ruby"]class << BattleManager
  def battle_end(result)
    @phase = nil
    @event_proc.call(result) if @event_proc
    $game_party.on_battle_end
    $game_troop.on_battle_end
    SceneManager.exit if $BTEST
    if result == 0
      $game_variables[1] += 1
    end
    if result == 1
      $game_variables[2] += 1
    end        
  end
end[/pre]

点评

谢谢~  发表于 2017-3-9 12:49

评分

参与人数 2星屑 +30 梦石 +1 收起 理由
RaidenInfinity + 1 版主认可的答案
QQ蚊子湯 + 30 笨肉包又換頭像!

查看全部评分

笨肉包的游戏讨论群932812135 (实时更新) 喜欢的话欢迎加入~
目前的坑
??? #像素风OC游戏 准备中 短篇-约5小时
花城梦之心 #像素风OC游戏 系统开发+素材绘制中
【不可思议的迷宫】幽灵契约外传:歌莉娅 v0.4 游戏文件已更新
同时更新中~ (沉迷摸鱼中~更新速度较慢请见谅w)
这是属于笨肉包一个人的旅行~(这只肉包又在摸鱼!
旅途的最终目标~ ???(保密~
回复 1 0

使用道具 举报

梦石
1
星屑
24088
在线时间
3339 小时
注册时间
2011-7-8
回帖
3862

开拓者

发表于 2017-2-28 23:59:25 来自手机 | 显示全部楼层
顶楼上,你在脚本里无限次递归调用了方法battle_end,所以报错了。
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部