| 赞 | 72 |
| VIP | |
| 好人卡 | |
| 积分 | 23 |
| 经验 | |
| 最后登录 | 2022-3-9 |
| 在线时间 | 4033 小时 |
…あたしは天
- 梦石
- 0
- 星屑
- 2308
- 在线时间
- 4033 小时
- 注册时间
- 2010-10-4
- 回帖
- 10548
 
|
发表于 2014-7-22 20:09:18
|
显示全部楼层
本帖最后由 taroxd 于 2014-7-22 20:12 编辑
冲啊小笼包 发表于 2014-7-22 20:00 
不是。我设置了某个事件发光,但是主角移动,事件没动,但是光影却跟着主角走了=.=烛光那是。
我就是想 ...
第162行开始是设置图片的位置
[pre lang="ruby" line="1"] for effect in @light_effects
case effect.type
when "GROUND"
effect.light.x = (effect.event.screen_x * 8 - 400 - $game_map.display_x) / 8 - 8
effect.light.y = (effect.event.screen_y * 8 - 400 - $game_map.display_y) / 8 - 36
when "FIRE"
effect.light.x = (effect.event.screen_x * 8 - 600 - $game_map.display_x) / 8 + rand(6) - 3 - 16
effect.light.y = (effect.event.screen_y * 8 - 600 - $game_map.display_y) / 8 + rand(6) - 3 - 48
effect.light.opacity = rand(10) + 90
when "LIGHT"
effect.light.x = (-0.25 / 2 * $game_map.display_x) + (effect.event.x * 32) - 15
effect.light.y = (-0.25 / 2 * $game_map.display_y) + (effect.event.y * 32) - 15
when "LIGHT2"
effect.light.x = (effect.event.screen_x * 8 - 1200 - $game_map.display_x) / 8 - 20
effect.light.y = (effect.event.screen_y * 8 - 1200 - $game_map.display_y) / 8
when "TORCH"
effect.light.x = (effect.event.screen_x * 8 - 1200 - $game_map.display_x) / 8 - 20 + rand(20) - 10
effect.light.y = (effect.event.screen_y * 8 - 1200 - $game_map.display_y) / 8 + rand(20) - 10
effect.light.opacity = rand(30) + 70
when "TORCH2"
effect.light.x = (effect.event.screen_x * 8 - 1200 - $game_map.display_x) / 8 - 20
effect.light.y = (effect.event.screen_y * 8 - 1200 - $game_map.display_y) / 8
effect.light.opacity = rand(10) + 90
end
end[/pre]
说实话,我没有范例以及素材什么的,因此不知道为什么会产生这样的状况。
你看一下你是使用哪一种类型的灯光?你可以自己改改坐标的算法试试看。
effect.event.screen_x 代表当前事件在画面上的x坐标。
$game_map.display_x 代表地图卷动的x值。x * 32 即为地图卷动的横坐标。
也许在计算的时候,不考虑 $game_map.display_x 就可以了?因为要让光影只和事件在画面上的位置有关嘛。总之你改改看吧。 |
评分
-
查看全部评分
|