Project1

标题: 【VA - 事件 - 显示图片 - 水平翻转】 [打印本页]

作者: Ceopal    时间: 2013-8-20 13:41
标题: 【VA - 事件 - 显示图片 - 水平翻转】
本帖最后由 Ceopal 于 2013-8-20 16:52 编辑


  已搜索,VX上有"显示图片加强脚本”

  VA上好像没有, 寻找解决方案。

      new图什么的,几十张,很累的……



@end55rpg   mirror是,我搜索时,看到对$ ??????.mirror = true,无用

@fangyc  就是水平翻转显示图片储存的图片……mirror一下就OK…不需要动态,只要结果就好…
作者: end55rpg    时间: 2013-8-20 13:42
mirror不就是水平吗
作者: fangyc    时间: 2013-8-20 14:52
什么效果能不能描述得再具体一点?
作者: fangyc    时间: 2013-8-20 15:58
本帖最后由 fangyc 于 2013-8-20 16:13 编辑

你试试加一个下面的脚本,不过没测试过……
事件里调用 @spriteset.mirror_picture(图片编号)  来翻转图片
  1. #encoding:utf-8
  2. #==============================================================================
  3. # ■ Spriteset_Map
  4. #------------------------------------------------------------------------------
  5. #  处理地图画面精灵和图块的类。本类在 Scene_Map 类的内部使用。
  6. #==============================================================================

  7. class Spriteset_Map
  8.   #--------------------------------------------------------------------------
  9.   # ● 水平翻转图片
  10.   #--------------------------------------------------------------------------
  11.   def mirror_picture(number)
  12.     pic = $game_map.screen.pictures[number]
  13.     return unless pic
  14.     @picture_sprites[number] ||= Sprite_Picture.new(@viewport2, pic)
  15.     @picture_sprites[number].mirror = !@picture_sprites[number].mirror
  16.   end
  17. end

  18. #==============================================================================
  19. # ■ Spriteset_Battle
  20. #------------------------------------------------------------------------------
  21. #  处理战斗画面的精灵的类。本类在 Scene_Battle 类的内部使用。
  22. #==============================================================================

  23. class Spriteset_Battle
  24.   #--------------------------------------------------------------------------
  25.   # ● 水平翻转图片
  26.   #--------------------------------------------------------------------------
  27.   def mirror_picture(number)
  28.     pic = $game_troop.screen.pictures[number]
  29.     return unless pic
  30.     @picture_sprites[number] ||= Sprite_Picture.new(@viewport2, pic)
  31.     @picture_sprites[number].mirror = !@picture_sprites[number].mirror
  32.   end
  33. end
复制代码
  
作者: Ceopal    时间: 2013-8-20 16:19
本帖最后由 Ceopal 于 2013-8-20 16:55 编辑
fangyc 发表于 2013-8-20 15:58
你试试加一个下面的脚本,不过没测试过……
事件里调用 @spriteset.mirror_picture(图片编号)  来翻转图片
...


是这样用吧


好像要在解释器里也要添加方法似的
不行就放弃翻转好了




@fangyc  弄好了~如果有发布的一天,special thanks里面会有你的ID
作者: fangyc    时间: 2013-8-20 16:34
本帖最后由 fangyc 于 2013-8-20 16:49 编辑
Ceopal 发表于 2013-8-20 16:19
是这样用吧


嗯……明白了,改是能改,不过还要在刚才那个脚本后面再加下面几个脚本……
然后调用的方法直接是   mirror_picture(图片编号)
  1. #encoding:utf-8
  2. #==============================================================================
  3. # ■ Scene_Base
  4. #------------------------------------------------------------------------------
  5. #  游戏中所有 Scene 类(场景类)的父类
  6. #==============================================================================

  7. class Scene_Base
  8.   #--------------------------------------------------------------------------
  9.   # ● 定义实例变量
  10.   #--------------------------------------------------------------------------
  11.   attr_reader   :spriteset
  12. end

  13. #==============================================================================
  14. # ■ Game_Interpreter
  15. #------------------------------------------------------------------------------
  16. #  事件指令的解释器。
  17. #   本类在 Game_Map、Game_Troop、Game_Event 类的内部使用。
  18. #==============================================================================

  19. class Game_Interpreter
  20.   #--------------------------------------------------------------------------
  21.   # ● 水平翻转图片
  22.   #--------------------------------------------------------------------------
  23.   def mirror_picture(number)
  24.     spriteset = SceneManager.scene.spriteset
  25.     spriteset.mirror_picture(number) if spriteset
  26.   end
  27. end
复制代码





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