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

Project1

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

[已经解决] 事件位置播放动画脚本编写【悬赏2卡+1V+666exp】

 关闭 [复制链接]

Lv6.析梦学徒

Fuzzy Ginkgo
Taciturn Knight

梦石
0
星屑
60819
在线时间
1934 小时
注册时间
2010-6-26
帖子
1605

烫烫烫开拓者

跳转到指定楼层
1
发表于 2011-8-30 00:16:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 orzfly 于 2011-8-30 00:19 编辑

需求:走过地形标志为5的地面时在当前位置播放一个120帧的动画,要求能固定在地图这个位置,不和角色一起移动。切忌不要用一个事件移动过去播放,因为我不知道会同时播放多少个。需要大地图优化即不再屏幕范围内的动画不再刷新,但是又进入显示区域的时候要继续播放。

请尽量给插件式脚本,并请注明修改位置。请勿使用全局变量。如果没有描述清楚问题请回复我。

其实我知道怎么办,但是太懒了而且没时间了。故悬赏。

点评

= = 在这里先挂个号  发表于 2011-8-30 09:01
我的言论只代表我个人的观点,不代表雇主及/或任何第三方的立场。
Opinions expressed are solely my own and do not express the views or opinions of my employer and/or any third parties.
捐赠 | GitHub

Lv3.寻梦者

孤独守望

梦石
0
星屑
3132
在线时间
1535 小时
注册时间
2006-10-16
帖子
4321

开拓者贵宾

2
发表于 2011-8-30 08:27:39 | 只看该作者
深夜发你还以为真会有人夜猫子写脚本不成……
还有 那个太懒没时间是等吐槽的么
  1. class Game_Player
  2.   def move_afterwards(d)
  3.     if passable?(@x,@y,d)
  4.       x = @x + (d == 6 ? 1 : d == 4 ? -1 : 0)
  5.       y = @y + (d == 2 ? 1 : d == 8 ? -1 : 0)
  6.       if $game_map.terrain_tag(x,y) == 5
  7.         s = RPG::Sprite.new()
  8.         s.animation($data_animations[49],false)
  9.         @deal_sprites.push(s)
  10.         @deal_points[s] = [x,y]
  11.       end
  12.     end
  13.   end
  14.   alias afterwards_move_up move_up
  15.   def move_up(b = true)
  16.     move_afterwards(8)
  17.     afterwards_move_up(b)
  18.   end
  19.   alias afterwards_move_down move_down
  20.   def move_down(b = true)
  21.     move_afterwards(2)
  22.     afterwards_move_down(b)
  23.   end
  24.   alias afterwards_move_left move_left
  25.   def move_left(b = true)
  26.     move_afterwards(4)
  27.     afterwards_move_left(b)
  28.   end
  29.   alias afterwards_move_right move_right
  30.   def move_right(b = true)
  31.     move_afterwards(6)
  32.     afterwards_move_right(b)
  33.   end
  34.   alias afterwards_initialize initialize
  35.   def initialize
  36.     afterwards_initialize
  37.     @deal_sprites = []
  38.     @deal_points = {}
  39.   end
  40.   alias afterwards_update update
  41.   def update
  42.     afterwards_update
  43.     sx,sy = $game_map.display_x / 4,$game_map.display_y / 4
  44.     for sprite in @deal_sprites
  45.       sprite.update if sprite.x > 0 && sprite.y > 0 && sprite.x < 640 && sprite.y < 480
  46.       sprite.x = @deal_points[sprite][0] * 32 - sx
  47.       sprite.y = @deal_points[sprite][1] * 32 - sy
  48.     end
  49.     @deal_sprites.reject! {|x| !x.effect? }
  50.   end
  51. end
  52.    
  53.    
  54.    
复制代码
抛砖引玉吧抛砖引玉- -v
菩提本非树,明镜本非台。回头自望路漫漫。不求姻缘,但求再见。
本来无一物,何处惹尘埃。风打浪吹雨不来。荒庭遍野,扶摇难接。
不知道多久更新一次的博客
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-26 12:15

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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