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

Project1

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

[已经解决] 图片待机、受伤等显示脚本的修改。

[复制链接]

Lv3.寻梦者

梦石
0
星屑
3176
在线时间
1442 小时
注册时间
2009-7-27
帖子
1454
跳转到指定楼层
1
发表于 2013-3-15 17:52:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
@yagami 再帮我改改。就是把敌人改为默认的就行了。不需要4格任何动画了,我删了敌人的却一直出错。还有如何在战斗胜利时也主角们显示一张战斗胜利的图片?升级时也显示该图片即可。

附件,拜托了: Project1.zip (305.3 KB, 下载次数: 15)

博客:我的博客

Lv3.寻梦者

梦石
0
星屑
3588
在线时间
3065 小时
注册时间
2011-11-17
帖子
980
2
发表于 2013-3-19 11:58:12 | 只看该作者
175242ev0ts9sq0q41svs4.rar (290.54 KB, 下载次数: 16) 敌人已删

点评

可以了,是我设置错了。但是还是有个问题,就是怪行动时不是会闪一下吗?但是闪完会一直白白的不会消失。角色也有这问题。  发表于 2013-3-22 13:21
发现个小问题,我方战斗不能时无法复活了。。。。。。  发表于 2013-3-21 21:16
谢谢,请问能再帮我改一下战斗胜利显示一张胜利的图片吗?  发表于 2013-3-19 19:03
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3176
在线时间
1442 小时
注册时间
2009-7-27
帖子
1454
3
 楼主| 发表于 2013-3-20 21:37:01 | 只看该作者
yagami 发表于 2013-3-19 11:58
敌人已删

能帮我改一下战斗结束时也显示一张图片吗?

博客:我的博客
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3176
在线时间
1442 小时
注册时间
2009-7-27
帖子
1454
4
 楼主| 发表于 2013-3-21 12:47:06 | 只看该作者
yagami 发表于 2013-3-19 11:58
敌人已删

你不理我啦?

博客:我的博客
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3588
在线时间
3065 小时
注册时间
2011-11-17
帖子
980
5
发表于 2013-3-21 13:09:14 | 只看该作者
爆焰 发表于 2013-3-21 12:47
你不理我啦?
  1. #==============================================================================
  2. # ■ Scene_Battle (分割定义 2)
  3. #------------------------------------------------------------------------------
  4. #  处理战斗画面的类。
  5. #==============================================================================

  6. class Scene_Battle
  7.   #--------------------------------------------------------------------------
  8.   # ● 开始自由战斗回合
  9.   #--------------------------------------------------------------------------
  10.   def start_phase1
  11.     # 转移到回合 1
  12.    
  13.    
  14.     #################
  15.     for actor in $game_party.actors
  16.       actor.battler_name = actor.battler_name.split(/★/)[0]
  17.     end
  18.    
  19.    
  20. ############################   
  21.    
  22.    
  23.    
  24.    
  25.    
  26.    
  27.    
  28.     @phase = 1
  29.     # 清除全体同伴的行动
  30.     $game_party.clear_actions
  31.     # 设置战斗事件
  32.     setup_battle_event
  33.   end
  34.   #--------------------------------------------------------------------------
  35.   # ● 刷新画面 (自由战斗回合)
  36.   #--------------------------------------------------------------------------
  37.   def update_phase1
  38.     # 胜败判定
  39.     if judge
  40.       # 胜利或者失败的情况下 : 过程结束
  41.       return
  42.     end
  43.     # 开始同伴命令回合
  44.     start_phase2
  45.   end
  46.   #--------------------------------------------------------------------------
  47.   # ● 开始同伴命令回合
  48.   #--------------------------------------------------------------------------
  49.   def start_phase2
  50.     # 转移到回合 2
  51.     @phase = 2
  52.     # 设置角色为非选择状态
  53.     @actor_index = -1
  54.     @active_battler = nil
  55.     # 有效化同伴指令窗口
  56.     @party_command_window.active = true
  57.     @party_command_window.visible = true
  58.     # 无效化角色指令窗口
  59.     @actor_command_window.active = false
  60.     @actor_command_window.visible = false
  61.     # 清除主回合标志
  62.     $game_temp.battle_main_phase = false
  63.     # 清除全体同伴的行动
  64.     $game_party.clear_actions
  65.     # 不能输入命令的情况下
  66.     unless $game_party.inputable?
  67.       # 开始主回合
  68.       start_phase4
  69.     end
  70.   end
  71.   #--------------------------------------------------------------------------
  72.   # ● 刷新画面 (同伴命令回合)
  73.   #--------------------------------------------------------------------------
  74.   def update_phase2
  75.     # 按下 C 键的情况下
  76.     if Input.trigger?(Input::C)
  77.       # 同伴指令窗口光标位置分支
  78.       case @party_command_window.index
  79.       when 0  # 战斗
  80.         # 演奏确定 SE
  81.         $game_system.se_play($data_system.decision_se)
  82.         # 开始角色的命令回合
  83.         start_phase3
  84.       when 1  # 逃跑
  85.         # 不能逃跑的情况下
  86.         if $game_temp.battle_can_escape == false
  87.           # 演奏冻结 SE
  88.           $game_system.se_play($data_system.buzzer_se)
  89.           return
  90.         end
  91.         # 演奏确定 SE
  92.         $game_system.se_play($data_system.decision_se)
  93.         # 逃走处理
  94.         update_phase2_escape
  95.       end
  96.       return
  97.     end
  98.   end
  99.   #--------------------------------------------------------------------------
  100.   # ● 画面更新 (同伴指令回合 : 逃跑)
  101.   #--------------------------------------------------------------------------
  102.   def update_phase2_escape
  103.     # 计算敌人速度的平均值
  104.     enemies_agi = 0
  105.     enemies_number = 0
  106.     for enemy in $game_troop.enemies
  107.       if enemy.exist?
  108.         enemies_agi += enemy.agi
  109.         enemies_number += 1
  110.       end
  111.     end
  112.     if enemies_number > 0
  113.       enemies_agi /= enemies_number
  114.     end
  115.     # 计算角色速度的平均值
  116.     actors_agi = 0
  117.     actors_number = 0
  118.     for actor in $game_party.actors
  119.       if actor.exist?
  120.         actors_agi += actor.agi
  121.         actors_number += 1
  122.       end
  123.     end
  124.     if actors_number > 0
  125.       actors_agi /= actors_number
  126.     end
  127.     # 逃跑成功判定
  128.     success = rand(100) < 50 * actors_agi / enemies_agi
  129.     # 成功逃跑的情况下
  130.     if success
  131.       # 演奏逃跑 SE
  132.       $game_system.se_play($data_system.escape_se)
  133.       # 还原为战斗开始前的 BGM
  134.       $game_system.bgm_play($game_temp.map_bgm)
  135.       # 战斗结束
  136.       battle_end(1)
  137.     # 逃跑失败的情况下
  138.     else
  139.       # 清除全体同伴的行动
  140.       $game_party.clear_actions
  141.       # 开始主回合
  142.       start_phase4
  143.     end
  144.   end
  145.   #--------------------------------------------------------------------------
  146.   # ● 开始结束战斗回合
  147.   #--------------------------------------------------------------------------
  148.   def start_phase5
  149.     # 转移到回合 5
  150.     @phase = 5
  151.    
  152.    ######################
  153.    
  154.       for actor in $game_party.actors
  155.      unless  actor.hp == 0
  156.     actor.battler_name = actor.battler_name.split(/★/)[0]
  157.        actor.battler_name = actor.battler_name + "★胜利"
  158.        end
  159.       
  160.    end
  161.    
  162.     #################
  163.    
  164.    
  165.    
  166.    
  167.    
  168.    
  169.    
  170.     # 演奏战斗结束 ME
  171.     $game_system.me_play($game_system.battle_end_me)
  172.     # 还原为战斗开始前的 BGM
  173.     $game_system.bgm_play($game_temp.map_bgm)
  174.     # 初始化 EXP、金钱、宝物
  175.     exp = 0
  176.     gold = 0
  177.     treasures = []
  178.     # 循环
  179.     for enemy in $game_troop.enemies
  180.       # 敌人不是隐藏状态的情况下
  181.       unless enemy.hidden
  182.         # 获得 EXP、增加金钱
  183.         exp += enemy.exp
  184.         gold += enemy.gold
  185.         # 出现宝物判定
  186.         if rand(100) < enemy.treasure_prob
  187.           if enemy.item_id > 0
  188.             treasures.push($data_items[enemy.item_id])
  189.           end
  190.           if enemy.weapon_id > 0
  191.             treasures.push($data_weapons[enemy.weapon_id])
  192.           end
  193.           if enemy.armor_id > 0
  194.             treasures.push($data_armors[enemy.armor_id])
  195.           end
  196.         end
  197.       end
  198.     end
  199.     # 限制宝物数为 6 个
  200.     treasures = treasures[0..5]
  201.     # 获得 EXP
  202.     for i in 0...$game_party.actors.size
  203.       actor = $game_party.actors[i]
  204.       if actor.cant_get_exp? == false
  205.         last_level = actor.level
  206.         actor.exp += exp
  207.         if actor.level > last_level
  208.           @status_window.level_up(i)
  209.         end
  210.       end
  211.     end
  212.     # 获得金钱
  213.     $game_party.gain_gold(gold)
  214.     # 获得宝物
  215.     for item in treasures
  216.       case item
  217.       when RPG::Item
  218.         $game_party.gain_item(item.id, 1)
  219.       when RPG::Weapon
  220.         $game_party.gain_weapon(item.id, 1)
  221.       when RPG::Armor
  222.         $game_party.gain_armor(item.id, 1)
  223.       end
  224.     end
  225.     # 生成战斗结果窗口
  226.     @result_window = Window_BattleResult.new(exp, gold, treasures)
  227.     # 设置等待计数
  228.     @phase5_wait_count = 100
  229.   end
  230.   #--------------------------------------------------------------------------
  231.   # ● 画面更新 (结束战斗回合)
  232.   #--------------------------------------------------------------------------
  233.   def update_phase5
  234.     # 等待计数大于 0 的情况下
  235.     if @phase5_wait_count > 0
  236.       # 减少等待计数
  237.       @phase5_wait_count -= 1
  238.       # 等待计数为 0 的情况下
  239.       if @phase5_wait_count == 0
  240.         # 显示结果窗口
  241.         @result_window.visible = true
  242.         # 清除主回合标志
  243.         $game_temp.battle_main_phase = false
  244.         # 刷新状态窗口
  245.         @status_window.refresh
  246.       end
  247.       return
  248.     end
  249.     # 按下 C 键的情况下
  250.     if Input.trigger?(Input::C)
  251.       # 战斗结束
  252.       battle_end(0)
  253.     end
  254.   end
  255. end
复制代码
附件传不了 自己找#整合

点评

论坛经常抽 我都不咋来了  发表于 2013-3-21 19:01
我去,怎么变3个了。明明只回复一次。。。。。。  发表于 2013-3-21 18:40
整合完毕,谢谢了。爱S你了。  发表于 2013-3-21 18:39

评分

参与人数 1梦石 +1 收起 理由
hcm + 1 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-27 18:19

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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