设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 4716|回复: 6
打印 上一主题 下一主题

[已经解决] 怎么才能设置战斗后自动回复HP和SP?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
26 小时
注册时间
2012-5-4
帖子
351
跳转到指定楼层
1
发表于 2012-6-14 19:58:38 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
每次战胜之后HP和SP都回复最大值的1/8
怎么做

Lv1.梦旅人

梦石
0
星屑
85
在线时间
258 小时
注册时间
2015-2-2
帖子
55
7
发表于 2016-1-17 14:13:38 | 只看该作者
kangxi0109 发表于 2012-6-14 22:04
在Scene_Battle 2最末尾的部分添加对应脚本:

不能恢复,你看一下
为什么要想那么多呢?夜空之下,冷风之中,其实也是一种呢。一定会开启,梦之旅的!
回复

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2763
在线时间
1603 小时
注册时间
2010-10-22
帖子
1058
6
发表于 2012-6-14 22:04:05 | 只看该作者
本帖最后由 kangxi0109 于 2012-6-14 22:05 编辑

在Scene_Battle 2最末尾的部分添加对应脚本:

  1.   #--------------------------------------------------------------------------
  2.   # ● 画面更新 (结束战斗回合)
  3.   #--------------------------------------------------------------------------
  4.   def update_phase5
  5.     # 等待计数大于 0 的情况下
  6.     if @phase5_wait_count > 0
  7.       # 减少等待计数
  8.       @phase5_wait_count -= 1
  9.       # 等待计数为 0 的情况下
  10.       if @phase5_wait_count == 0
  11. #------------------------------------------------添加↓
  12. for i in 0...$game_party.actors.size
  13.     if $game_party.actors[i].hp != 0 #只有不为濒死状态(hp=0)的同伴才能恢复
  14.       $game_party.actors[i].hp += $game_party.actors[i].maxhp / 8
  15.           $game_party.actors[i].sp += $game_party.actors[i].maxsp / 8
  16.     end
  17. end
  18. #-----------------------------------------------
  19.         # 显示结果窗口
  20.         @result_window.visible = true
  21.         # 清除主回合标志
  22.         $game_temp.battle_main_phase = false
  23.         # 刷新状态窗口
  24.         @status_window.refresh
  25.       end
  26.       return
  27.     end
  28.     # 按下 C 键的情况下
  29.     if Input.trigger?(Input::C)
  30.       # 战斗结束
  31.       battle_end(0)
  32.     end
  33.   end
  34. end
复制代码
【2022.06.03】原本以为已经不可能再找回来的东西重新找回来了,原本一直念念不忘的坑终于再一次拿起铲子了。一别竟近10年,你好,我的世界我的梦。
【不可阻挡】异元-地劫黎明
回复

使用道具 举报

Lv3.寻梦者

双子人

梦石
0
星屑
3185
在线时间
3618 小时
注册时间
2009-4-4
帖子
4154

开拓者

5
发表于 2012-6-14 21:17:19 | 只看该作者
  1. class Scene_Battle
  2.   def battle_end(result)
  3.     # 清除战斗中标志
  4.     $game_temp.in_battle = false
  5.     # 清除全体同伴的行动
  6.     $game_party.clear_actions
  7.     # 解除战斗用状态
  8.     for actor in $game_party.actors
  9.       actor.remove_states_battle
  10.     end
  11.     # 清除敌人
  12.     $game_troop.enemies.clear
  13.     # 调用战斗返回调用
  14.     if $game_temp.battle_proc != nil
  15.       $game_temp.battle_proc.call(result)
  16.       $game_temp.battle_proc = nil
  17.     end
  18.    
  19.     for i in $game_party.actors.size
  20.       $game_party.actors[i].hp += ($game_party.actors[i].maxhp/8).to_i
  21.     end
  22.    
  23.     # 切换到地图画面
  24.     $scene = Scene_Map.new
  25.   end
  26. end
复制代码
另外,LS没有取整数,会出现小数点的现象

点评

LS这样没问题,Ruby作整除运算时向负无穷取整  发表于 2016-1-20 00:04
回复

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3583
在线时间
3065 小时
注册时间
2011-11-17
帖子
980
4
发表于 2012-6-14 20:15:20 | 只看该作者
本帖最后由 yagami 于 2012-6-14 20:16 编辑

  for i in 0...$game_party.actors.size
      actor = $game_party.actors
     
        actor.hp += actor.maxhp/8
        
    end

你把这句放到Scene_Battle 2 获取EXP上面好了 SP类推

点评

你还要告诉楼主这脚本放到什么地方,怎么使用,可不可以加个开关诸如此类的  发表于 2012-6-14 20:16
回复

使用道具 举报

Lv1.梦旅人

梦·贤者

梦石
0
星屑
50
在线时间
1141 小时
注册时间
2007-12-15
帖子
4100
3
发表于 2012-6-14 20:11:05 | 只看该作者
既然楼主这么喜欢用脚本,干嘛不自己试着修改呢?

点评

呵呵,从最基本的脚本入门开始,一个类一个类地看默认脚本,试着修改看效果,这是起点。  发表于 2012-6-14 20:40
那要请教你怎么问这个问题  发表于 2012-6-14 20:30
学不懂你可以问,但绝不是伸手  发表于 2012-6-14 20:29
学不懂  发表于 2012-6-14 20:23
不去学习当然不知道如何修改,简称“不学自然无术”  发表于 2012-6-14 20:13
http://rpg.blue/home.php?mod=space&uid=34951&do=blog&id=12799
回复

使用道具 举报

Lv1.梦旅人

54酱是大笨蛋!

梦石
0
星屑
66
在线时间
1389 小时
注册时间
2011-2-23
帖子
5014
2
发表于 2012-6-14 20:05:42 | 只看该作者
按照LZ一贯的尿性,又要用脚本做是么?
@hys111111

点评

还是你了解  发表于 2012-6-14 20:09
去你爹的现充.去你爹的异性恋.
回复

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-22 09:38

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表