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

Project1

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

[有事请教] 请教如何在场景里使用闪烁的效果?

[复制链接]

Lv4.逐梦者

梦石
0
星屑
8498
在线时间
775 小时
注册时间
2017-11-10
帖子
1231
跳转到指定楼层
1
发表于 2019-6-14 22:20:58 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
VX并没有$game_screen.start_flash这个方法。
取代的是$game_map.screen.start_flash。
但这个方法只能在地图场景里使用。
不能在其他菜单场景里使用。
请问该怎么修改才能在菜单场景里使用闪烁功能?
一个只会简单事件的Rm新人,脚本完全不懂。只求做个简单的游戏完成自己的游戏之梦而已。
第一个游戏已经完成,等待各素材的完成和测试。

Lv5.捕梦者

梦石
10
星屑
39440
在线时间
1914 小时
注册时间
2010-11-14
帖子
3315

R考场第七期纪念奖

2
发表于 2019-6-15 16:13:42 | 只看该作者
RUBY 代码复制
  1. module Screen
  2.   class << self
  3.     attr_accessor :sprite
  4.   end
  5.   def self.start_flash(color, duration)
  6.     @sprite = Sprite.new
  7.     @sprite.z = 999
  8.     @sprite.bitmap = Bitmap.new(Graphics.width, Graphics.height)
  9.     @sprite.bitmap.fill_rect(@sprite.bitmap.rect, color)
  10.     class << @sprite
  11.       attr_writer :duration
  12.  
  13.       def update_opacity
  14.         @time ||= 0
  15.         self.opacity = (self.opacity * (@duration - @time - 1)) / (@duration - @time)
  16.         @time += 1
  17.       end
  18.  
  19.       def showed?
  20.         @time == @duration - 1 || self.opacity == 0
  21.       end
  22.     end
  23.     @sprite.duration = duration
  24.   end
  25. end
  26.  
  27. class << Graphics
  28.   alias update_for_screen_flash update
  29.   def update
  30.     update_for_screen_flash
  31.     if (sprite = Screen.sprite)
  32.       sprite.update_opacity
  33.       Screen.sprite = nil if sprite.showed?
  34.     end
  35.   end
  36. end


比较简单粗暴的实现方式
要使用时用Screen.start_flash(color, duration)

一个使用范例:
RUBY 代码复制
  1. class Scene_Menu
  2.   alias start_for_screen start
  3.   def start
  4.     start_for_screen
  5.     Screen.start_flash(Color.new(255,0,0), 60)
  6.   end
  7. end


效果:


点评

感谢前辈的指导,效果实现了  发表于 2019-6-15 20:12

评分

参与人数 1+1 收起 理由
文雅夕露 + 1 认可答案

查看全部评分

用头画头像,用脚写脚本
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-4-24 09:37

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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