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

Project1

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

[已经过期] 新问题来了!不过记得这个问题好像有帖子说明过?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
12 小时
注册时间
2016-7-19
帖子
9
跳转到指定楼层
1
发表于 2016-7-25 18:57:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
请问怎么让战斗图有生命感? 就是能简单的动起来,像天之痕里面战斗人物和怪物那样会动的, 问题不涉及到横版战斗脚本。

Lv3.寻梦者

梦石
0
星屑
1358
在线时间
1295 小时
注册时间
2012-8-4
帖子
749
2
发表于 2016-7-25 23:48:35 | 只看该作者
《重生学校》里面用的全动画脚本好像可以达到楼主要的效果,不过动画设置需要图片特殊命名,你可以下那个游戏研究一下
回复 支持 反对

使用道具 举报

Lv1.梦旅人

路人党员

梦石
0
星屑
52
在线时间
2276 小时
注册时间
2010-12-30
帖子
3225
3
发表于 2016-7-26 09:57:42 | 只看该作者
请搜索全动画战斗脚本,不过貌似是个坑货
本人擅长XP,如果有脚本或者Ruby方面的问题欢迎发电邮到[email protected]咨询,本人很少检查电邮所以不一定会及时回复,本人不会直接出手解决问题只会提供一个方向,所以谢绝伸手党
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
12 小时
注册时间
2016-7-19
帖子
9
4
 楼主| 发表于 2016-7-27 00:38:36 | 只看该作者
夜狠简单 发表于 2016-7-25 23:48
《重生学校》里面用的全动画脚本好像可以达到楼主要的效果,不过动画设置需要图片特殊命名,你可以下那个游 ...

先谢谢了,不过我是不懂怎么用RMXP打开已经做好的游戏,不是得有Game.rxproj,才能打开看剧本研究吗?

点评

温馨提醒: 1. Game.rxproj可以从别的工程复制过来,通用的 2. 用编辑器打开别人的作品仅可以参考与学习,禁止抄袭与盗用  发表于 2016-7-27 02:06
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
12 小时
注册时间
2016-7-19
帖子
9
5
 楼主| 发表于 2016-7-27 00:45:06 | 只看该作者
英顺的马甲 发表于 2016-7-26 09:57
请搜索全动画战斗脚本,不过貌似是个坑货

好哒!我下来看看~

点评

你连贴了,请善用点评功能  发表于 2016-7-27 02:04
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
96
在线时间
25 小时
注册时间
2016-8-12
帖子
21
6
发表于 2016-8-12 06:22:17 | 只看该作者
本帖最后由 z23567761 于 2016-8-13 03:09 编辑

人物待机动画?
RUBY 代码复制
  1. #==============================================================================
  2. # ■ Sprite_Battler
  3. #------------------------------------------------------------------------------
  4. #  战斗显示用活动块。Game_Battler 类的实例监视、
  5. # 活动块的状态的监视。
  6. #==============================================================================
  7.  
  8. class Sprite_Battler < RPG::Sprite
  9.   #--------------------------------------------------------------------------
  10.   # ● 定义实例变量
  11.   #--------------------------------------------------------------------------
  12.   attr_accessor :battler                  # 战斗者
  13.   #--------------------------------------------------------------------------
  14.   # ● 初始化对像
  15.   #     viewport : 显示端口
  16.   #     battler  : 战斗者 (Game_Battler)
  17.   #--------------------------------------------------------------------------
  18.   def initialize(viewport, battler = nil)
  19.     super(viewport)
  20.     @battler = battler
  21.     @battler_visible = false
  22.     @wait = 0
  23.     @frame = 0
  24.   end
  25.   #--------------------------------------------------------------------------
  26.   # ● 释放
  27.   #--------------------------------------------------------------------------
  28.   def dispose
  29.     if self.bitmap != nil
  30.       self.bitmap.dispose
  31.     end
  32.     super
  33.   end
  34.   #--------------------------------------------------------------------------
  35.   # ● 刷新画面
  36.   #--------------------------------------------------------------------------
  37.   def update
  38.     super
  39.     @wait += 1
  40.     if @wait % 10 == 0
  41.       @frame += 1
  42.     end
  43.     # 战斗者为 nil 的情况下
  44.     if @battler == nil
  45.       self.bitmap = nil
  46.       loop_animation(nil)
  47.       return
  48.     end
  49.     # 文件名和色相与当前情况有差异的情况下 (敌人)
  50.     if @battler.is_a?(Game_Enemy)
  51.       if @battler.battler_name != @battler_name or
  52.          @battler.battler_hue != @battler_hue
  53.         # 获取、设置位图
  54.         @battler_name = @battler.battler_name
  55.         @battler_hue = @battler.battler_hue        
  56.         self.bitmap = RPG::Cache.battler(@battler_name, @battler_hue)
  57.         @width = bitmap.width
  58.         @height = bitmap.height
  59.         self.ox = @width / 2
  60.         self.oy = @height
  61.         # 如果是战斗不能或者是隐藏状态就把透明度设置成 0
  62.         if @battler.dead? or @battler.hidden
  63.           self.opacity = 0
  64.         end
  65.       end
  66.     end
  67.     # 文件名和色相与当前情况有差异的情况下    (角色)
  68.     if @battler.is_a?(Game_Actor)
  69.       if @battler.battler_name != @battler_name or
  70.          @battler.battler_hue != @battler_hue or
  71.          @frame != @frame_old
  72.         # 获取、设置位图
  73.         @battler_name = @battler.battler_name
  74.         @battler_hue = @battler.battler_hue
  75.         @frame_old = @frame
  76.         bmp = RPG::Cache.battler(@battler_name, @battler_hue)
  77.         rc = Rect.new(@frame % 4 * bmp.width / 4,0,bmp.width / 4,bmp.height)
  78.         if self.bitmap != nil
  79.           self.bitmap.dispose
  80.           self.bitmap = nil
  81.         end
  82.         self.bitmap = Bitmap.new(bmp.width / 4,bmp.height)
  83.         self.bitmap.blt(0,0,bmp,rc)
  84.         @width = bitmap.width
  85.         @height = bitmap.height
  86.         self.ox = @width / 2
  87.         self.oy = @height
  88.         # 如果是战斗不能或者是隐藏状态就把透明度设置成 0
  89.         if @battler.dead? or @battler.hidden
  90.           self.opacity = 0
  91.         end
  92.       end
  93.     end
  94.     # 动画 ID 与当前的情况有差异的情况下
  95.     if @battler.damage == nil and
  96.        @battler.state_animation_id != @state_animation_id
  97.       @state_animation_id = @battler.state_animation_id
  98.       loop_animation($data_animations[@state_animation_id])
  99.     end
  100.     # 应该被显示的角色的情况下
  101.     if @battler.is_a?(Game_Actor) and @battler_visible
  102.       # 不是主状态的时候稍稍降低点透明度
  103.       if $game_temp.battle_main_phase
  104.         self.opacity += 3 if self.opacity < 255
  105.       else
  106.         self.opacity -= 3 if self.opacity > 207
  107.       end
  108.     end
  109.     # 明灭
  110.     if @battler.blink
  111.       blink_on
  112.     else
  113.       blink_off
  114.     end
  115.     # 不可见的情况下
  116.     unless @battler_visible
  117.       # 出现
  118.       if not @battler.hidden and not @battler.dead? and
  119.          (@battler.damage == nil or @battler.damage_pop)
  120.         appear
  121.         @battler_visible = true
  122.       end
  123.     end
  124.     # 可见的情况下
  125.     if @battler_visible
  126.       # 逃跑
  127.       if @battler.hidden
  128.         $game_system.se_play($data_system.escape_se)
  129.         escape
  130.         @battler_visible = false
  131.       end
  132.       # 白色闪烁
  133.       if @battler.white_flash
  134.         whiten
  135.         @battler.white_flash = false
  136.       end
  137.       # 动画
  138.       if @battler.animation_id != 0
  139.         animation = $data_animations[@battler.animation_id]
  140.         animation(animation, @battler.animation_hit)
  141.         @battler.animation_id = 0
  142.       end
  143.       # 伤害
  144.       if @battler.damage_pop
  145.         damage(@battler.damage, @battler.critical)
  146.         @battler.damage = nil
  147.         @battler.critical = false
  148.         @battler.damage_pop = false
  149.       end
  150.       # korapusu
  151.       if @battler.damage == nil and @battler.dead?
  152.         if @battler.is_a?(Game_Enemy)
  153.           $game_system.se_play($data_system.enemy_collapse_se)
  154.         else
  155.           $game_system.se_play($data_system.actor_collapse_se)
  156.         end
  157.         collapse
  158.         @battler_visible = false
  159.       end
  160.     end
  161.     # 设置活动块的坐标
  162.     self.x = @battler.screen_x
  163.     self.y = @battler.screen_y
  164.     self.z = @battler.screen_z
  165.   end
  166. end
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-30 12:07

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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