查看: 2297|回复: 2

[已经过期] !!!!!怎么让图片移动速度渐变加速?!!!!!

  [复制链接]
梦石
0
星屑
845
在线时间
579 小时
注册时间
2010-2-15
回帖
1116
发表于 2011-6-12 19:18:09 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 315038639 于 2011-6-12 19:18 编辑

就是类似于在斜坡向下滚筒,一开始很慢,然后越来越快、越来越快……
就是这样,图片移动速度中途提高。

花开堪折直须折

梦石
0
星屑
916
在线时间
943 小时
注册时间
2010-7-17
回帖
4599

贵宾

发表于 2011-6-12 22:00:36 | 显示全部楼层
似乎……可以这样

移动总路程的1/X,时间,60帧(1秒)
(紧接着上一个指令)移动同上的长度,时间,40帧
同上,20帧
……

数字你可以自己改……嗯,大概吧,提供一下比较废渣的思路
当然用脚本会比较方便
大家好,我叫节操,有一天,我被吃了。
http://forever-dream.5d6d.com
永恒の梦制作组论坛

129993099
永恒の梦制作组QQ群
回复

使用道具 举报

梦石
0
星屑
50
在线时间
466 小时
注册时间
2006-2-25
回帖
1778
发表于 2011-6-13 13:40:13 | 显示全部楼层
本帖最后由 诡异の猫 于 2011-6-13 16:33 编辑
  1. class Game_Picture
  2.   alias ori_ini initialize
  3.   def initialize(number)
  4.     ori_ini(number)
  5.     @time = 0
  6.   end
  7.   
  8.   def move_faster(tx, ty, time)
  9.     @target_x = tx
  10.     @target_y = ty
  11.     @distance_x = tx - @x
  12.     @distance_y = ty - @y
  13.     @time = time
  14.     @all_time = time
  15.   end
  16.   
  17.   alias ori_update update
  18.   def update
  19.     ori_update
  20.     if @time > 0
  21.       mx = (@distance_x / @all_time) * (@all_time - @time) / @time
  22.       my = (@distance_y / @all_time) * (@all_time - @time) / @time
  23.       @x = [@x + mx, @target_x].min if @distance_x > 0
  24.       @x = [@x + mx, @target_x].max if @distance_x < 0
  25.       @y = [@y + my, @target_y].min if @distance_y > 0
  26.       @y = [@y + my, @target_y].max if @distance_y < 0
  27.       @time -= 1
  28.     end
  29.   end
  30. end
复制代码
使用方法:
比如地图上显示了1号图片
则在事件里写脚本 $game_map.screen.pictures[1].move_faster(x, y, time)
x, y 表示你的目标坐标 就是想把图片移动到哪里
time表示你将图片由原来位置移动到xy所需要的时间

举个例子吧
例如你在地图上显示了1号图片 原坐标是0,0
然后你执行了$game_map.screen.pictures[1].move_fatser(500, 400, 100)
就是用100帧时间(正常情况下60帧=1秒)把1号图片从0,0加速移动到500,400
mx和my的算法有误,待高人修改,有事先出去了- -
此时 在第一帧的时候
图片X坐标的移动速度mx = (500/100) * (100 - 100) / 100(计算结果舍弃小数部分)
在第二帧的时候图片
图片X坐标的移动速度mx = (500/100) * (100 - 99) / 99
依此类推

点评

刚发现那个mx和my的算法有问题...现在有事要出去了- - 待高手来修改一下吧...  发表于 2011-6-13 16:29
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部