Project1

标题: 脚本里的战斗图形 [打印本页]

作者: tbbicwm    时间: 2007-6-22 13:44
标题: 脚本里的战斗图形
战斗图形..就那个battler_name被获取后...是用什么语句输出的啊.....还是没有输出语句..直接定义好了就自动输出了...
还有那个..Game_Actor里的screen_x方法是设置.战斗角色的X坐标的吧..那么他是用什么调用的啊..
还是只要..这样设置了..或自动以..其返回的值设置角色位置.. [LINE]1,#dddddd[/LINE]版务信息:本贴由楼主自主结贴~
作者: tbbicwm    时间: 2007-6-22 13:44
标题: 脚本里的战斗图形
战斗图形..就那个battler_name被获取后...是用什么语句输出的啊.....还是没有输出语句..直接定义好了就自动输出了...
还有那个..Game_Actor里的screen_x方法是设置.战斗角色的X坐标的吧..那么他是用什么调用的啊..
还是只要..这样设置了..或自动以..其返回的值设置角色位置.. [LINE]1,#dddddd[/LINE]版务信息:本贴由楼主自主结贴~
作者: tbbicwm    时间: 2007-6-22 16:24
高手门啊..你们都在哪里啊.....{/pz}{/dk}{/dk}{/dk}
作者: 上官展玉    时间: 2007-6-22 17:35
提示: 作者被禁止或删除 内容自动屏蔽
作者: 叶舞枫    时间: 2007-6-22 19:33
第1个没看懂。

第2个:
还有那个..Game_Actor里的screen_x方法是设置.战斗角色的X坐标的吧..那么他是用什么调用的啊.


调用方法: $game_actors.screen_x
作者: tbbicwm    时间: 2007-6-23 08:05
饿..其实我的意思是..比如那个draw_actor_graphic方法吧...他获取图象
bitmap = RPG::Cache.character(actor.character_name, actor.character_hue)后
需要一个self.contents.blt(x - cw / 2, y - ch, bitmap, src_rect)来输出图象.
那么战斗图象  battler_name  在  Sprite_Battler  的49 行  
self.bitmap = RPG::Cache.battler(@battler_name, @battler_hue)被获取后..是由什么语句输出的那..就是这个问题.
第2个问题是,....一个方法定义..总该有人来使用把..而 screen_x这个方法..不就是设置战斗图象的X坐标的吗..那么怎么没看见有他被调用那?
作者: 精灵使者    时间: 2007-6-23 15:58
以下引用tbbicwm于2007-6-22 5:44:05的发言:


本帖为提问贴,由论坛自动悬赏论坛经验100点 *^__^*
战斗图形..就那个battler_name被获取后...是用什么语句输出的啊.....还是没有输出语句..直接定义好了就自动输出了...
还有那个..Game_Actor里的screen_x方法是设置.战斗角色的X坐标的吧..那么他是用什么调用的啊..
还是只要..这样设置了..或自动以..其返回的值设置角色位置..

楼主说得应该是这个吧。
第2个调用在sprite_character第62行里面
    # 设置脚本的坐标
    self.x = @character.screen_x
    self.y = @character.screen_y
    self.z = @character.screen_z(@ch)
其实在character里面定义的screen_x、screen_y和screen_z都在那里面被调用,其调用值的确是返回值,楼主说得没错。
至于第一个,我确实没有找到……
那个似乎写在update里面,是用来刷新用的。那一条语句的意思是,如果战斗成员色相不对的话要及时地重新刷一遍。
而整个update是在这里调用的:
Spriteset_battle里面的
for sprite in @enemy_sprites + @actor_sprites
      sprite.update
    end
刷新整个我方和敌人角色。
def draw_actor_graphic(actor, x, y)
    bitmap = RPG::Cache.character(actor.character_name, actor.character_hue)
    cw = bitmap.width / 4
    ch = bitmap.height / 4
    src_rect = Rect.new(0, 0, cw, ch)
    self.contents.blt(x - cw / 2, y - ch, bitmap, src_rect)
  end
这个是行走图吧? [LINE]1,#dddddd[/LINE]系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
作者: tbbicwm    时间: 2007-6-25 00:42
貌似第一个问题还没解决啊..不过还是谢谢了
作者: 永劫的咎人    时间: 2007-6-25 00:52
提示: 作者被禁止或删除 内容自动屏蔽




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