Project1

标题: 关于对话时弹出图片脚本的一个问题 [打印本页]

作者: 飞火流萤    时间: 2014-9-8 11:08
标题: 关于对话时弹出图片脚本的一个问题
本帖最后由 飞火流萤 于 2014-9-8 22:48 编辑

,我想要的效果是在对话时有图片从左或者从右由外往里进入界面的效果,于是我是根据这篇视频里教学进行的学习,但是实际操作后发现一个问题,就是每次对话后,弹进来的图片会不断进行位移,直到弹到屏幕外为止,大家不用看视频,代码应该是在windows message下这段的问题,#--------------------------------------------------------------------------
  # ● 刷新画面
  #--------------------------------------------------------------------------
  def update
    super
    # 渐变的情况下
    if @fade_in
      self.contents_opacity += 24
      if @input_number_window != nil
        @input_number_window.contents_opacity += 24
      end
      @body.x +=5
      if self.contents_opacity == 255
        @fade_in = false
      end
      return
    end
@body.x +=5就是每次弹出来的横坐标距离,初始位置在前面的地方就不贴出来了。
怎么修改让弹出来的图片弹出后能重置到原来的位置,而不是每次都要在弹出后的位置上继续弹出。
新发现的问题是:
一旦使用场所移动后,图片怎么都显示不出来了
作者: 羁绊的守望者    时间: 2014-9-8 11:39
试试看把 == 255 改成 >= 255 ?
或者看看脚本里有没有其他的地方改变了@fade_in的值
作者: 飞火流萤    时间: 2014-9-8 13:33
本帖最后由 飞火流萤 于 2014-9-8 15:30 编辑

{:2_263:} 来人啊!!!每次刷新聊天框的时候,那段代码都会执行一次,我的图片都不知道飞到哪里去了...
作者: 芯☆淡茹水    时间: 2014-9-8 14:44
@body.x +=5  if @body.x  < ???    加个条件,问号是图片最终显示的 X 坐标。
作者: 飞火流萤    时间: 2014-9-8 15:12
本帖最后由 飞火流萤 于 2014-9-8 23:08 编辑
芯☆淡茹水 发表于 2014-9-8 14:44
@body.x +=5  if @body.x  < ???    加个条件,问号是图片最终显示的 X 坐标。


def update
    super
    # 渐变的情况下
    if @fade_in
      self.contents_opacity += 24
      if @input_number_window != nil
        @input_number_window.contents_opacity += 24
      end
      @body.x +=3
      if @body.x >= 60
      @body.x += -20
      end
      if self.contents_opacity == 255
      @fade_in = false
      end
      return
    end
我是这样改的,但是这样只有第一次会有由外往里移动的效果,后面几次运用就直接出来图片了。
作者: 飞火流萤    时间: 2014-9-8 15:32
我需要的是,每次执行完一次后,图片的坐标回到原来的初始位置,这样每次出来都是固定的路线和模式。
作者: 飞火流萤    时间: 2014-9-8 17:15
都去过节了吗?
作者: 飞火流萤    时间: 2014-9-8 22:07
继续坐等大神解答
作者: 飞火流萤    时间: 2014-9-8 23:06
额,我找到了视频原作者的工程文件,发现他也没有解决这个问题,滑动的半身像,也只能在不使用场所移动的前提下才有用,这个...这么久了居然没人发现这个问题吗= =,不知道有没有人能解决= =
作者: 飞火流萤    时间: 2014-9-8 23:34
本帖最后由 飞火流萤 于 2014-9-8 23:37 编辑

我用了第一段初始化的代码,插入到刷新代码段中的if语句,以为每次执行刷新对话框后,通过判断图片的位置,再把图片位置调整到初始化的状态,但是还是没用....
def initialize
    super(-10, 304, 660, 160)
    self.contents = Bitmap.new(width - 16, height - 32)
    self.visible = false
    self.z = 9998
    @fade_in = false
    @fade_out = false
    @contents_showing = false
    @cursor_width = 0
    @body = Sprite.new
    @thing = Sprite.new
    @body.x = -100
    @thing.x = -100
    self.active = false
    self.index = -1
   end
作者: 飞火流萤    时间: 2014-9-9 15:09
沦为未解之谜




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