赞 | 0 |
VIP | 16 |
好人卡 | 5 |
积分 | 1 |
经验 | 1277 |
最后登录 | 2014-4-5 |
在线时间 | 33 小时 |
Lv1.梦旅人 仙剑奇侠
- 梦石
- 0
- 星屑
- 50
- 在线时间
- 33 小时
- 注册时间
- 2008-4-2
- 帖子
- 622
|
本帖最后由 小闵 于 2010-7-11 22:56 编辑
回复 1144913712 的帖子
1、XP里多的是,LZ可以弄个XPVX行走图通用脚本,不过XP在VX里的行走必须
PS成3*4格式(原本的的XP行走是4*4的),在事件里就可以达到LZ所需效果。
2、不过还有种方法就是做成动画,令主角行走图消失,主角显示动画“倒下”,动画
结束回复主角行走图。我觉得动画是最方便的,动画要怎么做?用Photoshop慢
慢P吧。
3、若你要用行走图方法实现的话,给你脚本:
插入此脚本后就能用XP的行走图。注意事项看我第一段话吧。- class Game_Character
- #--------------------------------------------------------------------------
- # ● 初始化对象
- #--------------------------------------------------------------------------
- alias old_ini initialize
- def initialize
- old_ini
- @original_pattern = 2
- end
- #--------------------------------------------------------------------------
- # ● 矫正姿势
- #--------------------------------------------------------------------------
- def straighten
- @pattern = 2 if @walk_anime or @step_anime
- @anime_count = 0
- end
- end
- class Sprite_Character < Sprite_Base
- #--------------------------------------------------------------------------
- # ● 更新传送源的位图
- #--------------------------------------------------------------------------
- def update_bitmap
- if @tile_id != @character.tile_id or
- @character_name != @character.character_name or
- @character_index != @character.character_index
- @tile_id = @character.tile_id
- @character_name = @character.character_name
- @character_index = @character.character_index
- if @tile_id > 0
- sx = (@tile_id / 128 % 2 * 8 + @tile_id % 8) * 32;
- sy = @tile_id % 256 / 8 % 16 * 32;
- self.bitmap = tileset_bitmap(@tile_id)
- self.src_rect.set(sx, sy, 32, 32)
- self.ox = 16
- self.oy = 32
- else
- self.bitmap = Cache.character(@character_name)
- sign = @character_name[/^[\!\$\#\%]./]
- if sign != nil
- # VX自带的单张行走图
- if sign.include?('$')
- @cw = bitmap.width / 3
- @ch = bitmap.height / 4
- @vx_or_xp = 0
- # XP的单张行走图
- elsif sign.include?('#')
- @cw = bitmap.width / 4
- @ch = bitmap.height / 4
- @vx_or_xp = 1
- # 用VX格式拼的8张XP的行走图
- else
- @cw = bitmap.width / 16
- @ch = bitmap.height / 8
- @vx_or_xp = 1
- end
- # VX的8张格式行走图
- else
- @cw = bitmap.width / 12
- @ch = bitmap.height / 8
- @vx_or_xp = 0
- end
- self.ox = @cw / 2
- self.oy = @ch
- end
- end
- end
-
- #--------------------------------------------------------------------------
- # ● 更新传送源矩形
- #--------------------------------------------------------------------------
- def update_src_rect
- if @tile_id == 0
- index = @character.character_index
- # XP格式行走图
- if @vx_or_xp == 1
- pattern = @character.pattern < 4 ? @character.pattern : 1
- sx = (index % 4 * 4 + pattern) * @cw
- # VX格式行走图
- else
- pattern = @character.pattern < 3 ? @character.pattern : 1
- sx = (index % 4 * 3 + pattern) * @cw
- end
- sy = (index / 4 * 4 + (@character.direction - 2) / 2) * @ch
- self.src_rect.set(sx, sy, @cw, @ch)
- end
- end
- end
复制代码 |
评分
-
查看全部评分
|