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

Project1

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

[已经解决] 游戏中画面右上角显示一个logo,不用地图事件,用脚本

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
59 小时
注册时间
2013-11-27
帖子
54
跳转到指定楼层
发表于 2013-12-4 15:43:03 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

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

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

x
游戏进行中的任何时候都显示这个logo,就占屏幕右上角这么一块地方,淡入淡出,黑入黑出,也要有那个logo,使用地图事件可以实现,不过太麻烦了,能不能一次性用脚本解决这个问题?

Lv1.梦旅人

梦石
0
星屑
50
在线时间
103 小时
注册时间
2013-12-12
帖子
200
10
发表于 2013-12-19 21:56:24 | 只看该作者
用什么方法? 是不是用类似下面这种?
RUBY 代码复制
  1. class Scene_Map
  2.   #--------------------------------------------------------------------------
  3.   # ● 淡入画面
  4.   #--------------------------------------------------------------------------
  5.   def fadein(duration)
  6.     #fade_loop(duration) {|v| Graphics.brightness = v }
  7.     fade_loop(duration) {|v| @viewport.color.set(0,0,0,255-v)  }
  8.   end
  9.   #--------------------------------------------------------------------------
  10.   # ● 淡出画面
  11.   #--------------------------------------------------------------------------
  12.   def fadeout(duration)
  13.     #fade_loop(duration) {|v| Graphics.brightness = 255 - v }
  14.     fade_loop(duration) {|v| @viewport.color.set(0,0,0,v)  }
  15.  
  16.   end
  17. end

点评

脚本我也不太懂,随看随说,能不能用需要大家指正,汗~  发表于 2013-12-21 11:39
不是,我是有个想法但没去测试。所以想确认下。要切换场景时有效还得改start,terminate中的freeze/transion什么的等等.  发表于 2013-12-21 11:38
哈,你回答我的问题应该感谢你才对,看来你也是脚本大大,就我最渣渣 QuQ  发表于 2013-12-20 22:50
呃~,这巧合吧。感谢答复。  发表于 2013-12-20 21:18
是的 0.0 我有点惊讶你们的方法一模一样  发表于 2013-12-20 11:49
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
59 小时
注册时间
2013-11-27
帖子
54
9
 楼主| 发表于 2013-12-19 21:50:13 | 只看该作者
本帖最后由 本圈圈本 于 2013-12-20 11:46 编辑

淡入淡出问题已解决
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
103 小时
注册时间
2013-12-12
帖子
200
8
发表于 2013-12-18 10:36:02 | 只看该作者
本帖最后由 rmav 于 2013-12-18 12:05 编辑

把以下代码作为一个插件就行。
淡入淡出时也有,战斗时也有。

RUBY 代码复制
  1. #encoding:utf-8
  2. #==============================================================================
  3. #   在游戏窗口上显示logo
  4. #------------------------------------------------------------------------------
  5. #  by rmav ()
  6. #==============================================================================
  7.  
  8.  
  9. $bitmap_logo = Cache.face("logo")      #logo.png放在Faces目录下
  10. $viewport_logo ||= Viewport.new($bitmap_logo.rect)
  11. $viewport_logo.z = 900
  12. $viewport_logo.visible = false
  13. $logo = Sprite.new($viewport_logo)
  14. $logo.bitmap = $bitmap_logo            #logo一般不会变的吧,若要变记得dispose
  15. $logo.visible = true
  16. class Scene_Base
  17.   attr_accessor :display_logo          #可随时控制是否显示logo
  18.   def initialize
  19.     @display_logo = true               #默认显示
  20.     $viewport_logo.rect.x=Graphics.width-$viewport_logo.rect.width #在右边显示
  21.   end
  22.  
  23.   alias before_logo_update update
  24.   def update
  25.     before_logo_update
  26.     $viewport_logo.visible = @display_logo
  27.   end
  28.  
  29. end


刚接触这东西,大家看看这样做会有什么问题?
-----------
顺便问下,viewport有什么用?上面的代码不用viewport直接用sprite试了2下也没什么问题。
----------
呃,想到一点,当有几个精灵时,要重新移个位置,不必一个个去校正位置。若只有一个精灵就无所谓了。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
59 小时
注册时间
2013-11-27
帖子
54
7
 楼主| 发表于 2013-12-14 23:05:59 | 只看该作者
不行了,琢磨了很久都搞不定…… 没法在淡入淡出的时候保留logo……
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
21666
在线时间
9418 小时
注册时间
2012-6-19
帖子
7118

开拓者短篇九导演组冠军

6
发表于 2013-12-5 18:38:23 | 只看该作者
本帖最后由 喵呜喵5 于 2013-12-7 13:51 编辑

RUBY 代码复制
  1. =begin
  2. ===============================================================================
  3.   边框 By喵呜喵5
  4. ===============================================================================
  5.  
  6.   【说明】
  7.  
  8.   在游戏画面中显示一个平时不会被消除的边框
  9.   边框文件放在“Graphics/system/”文件夹下,命名为Frame
  10.  
  11.   如果只是需要在地图画面上显示边框的话……请删掉这个脚本,直接用显示图片指令
  12.  
  13. =end
  14. $m5script = {} if $m5script.nil?
  15. $m5script["M5Frame"] = true
  16. module M5Frame
  17. #==============================================================================
  18. #  设定部分
  19. #==============================================================================
  20.  
  21.   SCENE = [Scene_Battle,Scene_Debug]
  22.  
  23.   #在上面设置不需要显示边框的场景
  24.   #默认的设置是战斗画面以及调试窗口不会显示边框
  25.  
  26.   SWI = 1
  27.  
  28.   #当这个开关打开的时候,不显示边框
  29.  
  30.   Z = 500
  31.  
  32.   #修改这个数值调整边框的高度,数值越大边框能遮住的东西越多
  33.  
  34. #==============================================================================
  35. #  设定结束
  36. #==============================================================================
  37. end
  38. class Scene_Base
  39.   alias m5_20131205_start start
  40.   def start
  41.     m5_20131205_start
  42.     @frame = M5SimpleWindow.new
  43.   end
  44. end
  45. class M5SimpleWindow < Window_Base
  46.   def initialize
  47.     super(0,0,Graphics.width*2,Graphics.height*2)
  48.     self.opacity = 0   
  49.     self.padding = 0
  50.     self.arrows_visible = false
  51.     self.z = M5Frame::Z
  52.     refresh
  53.     @switch = $game_switches[M5Frame::SWI]
  54.     self.visible = !@switch
  55.     update_visible if self.visible
  56.   end
  57.   def refresh
  58.     self.contents.clear
  59.     bitmap = Cache.system("Frame")
  60.     rect = Rect.new(0, 0, bitmap.width, bitmap.height)
  61.     contents.blt(0, 0, bitmap, rect, 255)
  62.     bitmap.dispose
  63.   end
  64.   def update
  65.     if @switch != $game_switches[M5Frame::SWI]
  66.       if self.visible
  67.         if $game_switches[M5Frame::SWI]
  68.           self.visible = false
  69.         end
  70.       else
  71.         if !$game_switches[M5Frame::SWI]
  72.           self.visible = true
  73.         end        
  74.       end
  75.       @switch = $game_switches[M5Frame::SWI]
  76.     end
  77.   end
  78.   def update_visible
  79.     if scene_include?
  80.       self.visible = false
  81.     else
  82.       self.visible = true
  83.     end
  84.   end  
  85.   def scene_include?
  86.     list = M5Frame::SCENE
  87.     return false if !list
  88.     list.include?(SceneManager.scene.class)
  89.   end
  90. end



↑搭配包含立绘的美化型菜单(http://rpg.blue/home.php?mod=spa ... o=blog&id=12232)的使用效果

目前有个问题,在事件页中的淡入、淡出画面LOGO会保留,切换场景时(场所移动、标题画面进入游戏etc...)的淡入淡出LOGO会跟着一起淡出,目前暂时不知道怎么让两种淡入淡出都能保留LOGO……(这两种淡入淡出的机理不同,一个是修改$game_screen.brightness 一个是修改 Graphics.brightness……)

评分

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

查看全部评分

回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
381 小时
注册时间
2012-8-13
帖子
113
5
发表于 2013-12-5 15:32:46 | 只看该作者
米酒獭酱移植的地图显示血条魔条脚本基础上稍加修改即可:
http://rpg.blue/forum.php?mod=vi ... D368%26typeid%3D368
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
59 小时
注册时间
2013-11-27
帖子
54
4
 楼主| 发表于 2013-12-5 14:56:20 | 只看该作者
你最珍贵 发表于 2013-12-5 13:56
游戏开场商标Logo(两张.通用)
http://rpg.blue/thread-339160-1-1.html

我不是这个意思,我好像没有表达清楚
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
59 小时
注册时间
2013-11-27
帖子
54
3
 楼主| 发表于 2013-12-5 14:52:37 | 只看该作者
本帖最后由 本圈圈本 于 2013-12-5 14:55 编辑

看来是我没表达清楚,假设rmva的程序icon就是我要的logo


从开始的标题画面右上角就有个logo


游戏中也是,右上角有个图片,总之,整个游戏不论地图还是战斗还是标题,右上角都有这么一张图片
回复 支持 反对

使用道具 举报

Lv2.观梦者

故九江太守

梦石
0
星屑
612
在线时间
2167 小时
注册时间
2012-12-5
帖子
4464
2
发表于 2013-12-5 13:56:52 | 只看该作者
游戏开场商标Logo(两张.通用)
http://rpg.blue/thread-339160-1-1.html
回复 支持 反对

使用道具 举报

Lv2.观梦者 (暗夜天使)

梦石
0
星屑
266
在线时间
2355 小时
注册时间
2009-3-13
帖子
2309

贵宾

1
发表于 2013-12-4 18:57:09 | 只看该作者
可以在 SceneManager 的 run 方法里创建精灵显示 logo。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-23 02:37

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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