广场
工具/教程/素材
超评测活动结果
第29届极短篇游戏制作比赛
优秀游戏推荐
非官方运行时(20250730)
登录
RPGMaker工具集[20250416]
基础教程
授权素材推广
优秀原创游戏区
精品推荐贴
【RGD】DirectX驱动的RMVA
RGSS3 - runtime by Lanza
【RGM】RGModern - RMXP新runtime
【URGE】兼容 XP/VX/Ace 三系通用跨平台游戏引擎
Project1
»
广场
›
技术讨论
›
RPG Maker XP 讨论区
›
请教下如何制作出能够不受方向限制,任意走动的游戏? ...
返回列表
发新帖
查看:
1815
|
回复:
4
请教下如何制作出能够不受方向限制,任意走动的游戏?
[复制链接]
吾道之人
吾道之人
当前离线
赞
0
VIP
好人卡
积分
1
经验
最后登录
2008-8-2
在线时间
0 小时
写轮眼
头像被屏蔽
梦石
0
星屑
50
在线时间
0 小时
注册时间
2007-12-28
回帖
6
发消息
发表于 2007-12-28 02:34:55
|
显示全部楼层
|
阅读模式
提示:
作者被禁止或删除 内容自动屏蔽
回复
使用道具
举报
提升卡
沉默号角
喧嚣号角
变色卡
升龙剑
吾道之人
吾道之人
当前离线
赞
0
VIP
好人卡
积分
1
经验
最后登录
2008-8-2
在线时间
0 小时
写轮眼
头像被屏蔽
梦石
0
星屑
50
在线时间
0 小时
注册时间
2007-12-28
回帖
6
发消息
发表于 2007-12-28 02:34:55
|
显示全部楼层
|
阅读模式
提示:
作者被禁止或删除 内容自动屏蔽
回复
使用道具
举报
提升卡
沉默号角
喧嚣号角
变色卡
升龙剑
诡异の猫
诡异の猫
当前离线
赞
0
VIP
好人卡
积分
1
经验
最后登录
2015-10-31
在线时间
466 小时
写轮眼
梦石
0
星屑
50
在线时间
466 小时
注册时间
2006-2-25
回帖
1778
发消息
发表于 2007-12-28 03:08:28
|
显示全部楼层
所谓的任意移动估计不过是把格子打小一点罢了..
【弑魂】已开坑
回复
使用道具
举报
yike
yike
当前离线
赞
0
VIP
好人卡
积分
1
经验
最后登录
2008-2-15
在线时间
0 小时
写轮眼
头像被屏蔽
梦石
0
星屑
50
在线时间
0 小时
注册时间
2006-9-23
回帖
118
发消息
发表于 2007-12-28 03:10:58
|
显示全部楼层
提示:
作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复
使用道具
举报
心情de对白
心情de对白
当前离线
赞
0
VIP
好人卡
积分
1
经验
最后登录
2018-8-3
在线时间
4 小时
写轮眼
忘记
梦石
0
星屑
55
在线时间
4 小时
注册时间
2007-12-15
回帖
2994
发消息
发表于 2007-12-28 16:33:45
|
显示全部楼层
人物八方行走图如下:
#==============================================================================
# ■ Sprite_Character
#------------------------------------------------------------------------------
# 角色显示用脚本。监视 Game_Character 类的实例、
# 自动变化脚本状态。
#==============================================================================
class Sprite_Character < RPG::Sprite
#--------------------------------------------------------------------------
# ● 定义实例变量
#--------------------------------------------------------------------------
attr_accessor :character # 角色
#--------------------------------------------------------------------------
# ● 初始化对像
# viewport : 查看端口
# character : 角色 (Game_Character)
#--------------------------------------------------------------------------
def initialize(viewport, character = nil)
super(viewport)
@character = character
update
end
#--------------------------------------------------------------------------
# ● 更新画面
#--------------------------------------------------------------------------
def update
super
# 元件 ID、文件名、色相与现在的情况存在差异的情况下
if @tile_id != @character.tile_id or
@character_name != @character.character_name or
@character_hue != @character.character_hue
# 记忆元件 ID 与文件名、色相
@tile_id = @character.tile_id
@character_name = @character.character_name
@character_hue = @character.character_hue
# 元件 ID 为有效值的情况下
if @tile_id >= 384
self.bitmap = RPG::Cache.tile($game_map.tileset_name,
@tile_id, @character.character_hue)
self.src_rect.set(0, 0, 32, 32)
self.ox = 16
self.oy = 32
# 元件 ID 为无效值的情况下
else
self.bitmap = RPG::Cache.character(@character.character_name,
@character.character_hue)
@cw = bitmap.width / 4
###########################################################################
@ch = bitmap.height / 8
###########################################################################
self.ox = @cw / 2
self.oy = @ch
end
end
# 设置可视状态
self.visible = (not @character.transparent)
# 图形是角色的情况下
if @tile_id == 0
# 设置传送目标的矩形
sx = @character.pattern * @cw
###########################################################################
case @character.direction
when 2
sy = 0 * @ch
when 4
sy = 1 * @ch
when 6
sy = 2 * @ch
when 8
sy = 3 * @ch
when 1
sy = 4 * @ch
when 3
sy = 5 * @ch
when 7
sy = 6 * @ch
when 9
sy = 7 * @ch
end
self.src_rect.set(sx, sy, @cw, @ch)
###########################################################################
end
# 设置脚本的坐标
self.x = @character.screen_x
self.y = @character.screen_y
self.z = @character.screen_z(@ch)
if @character.terrain_tag == 7
self.z = $panorama2.z + self.z
# else
# self.z = (-100 + self.z) > $panorama2.z ? ($panorama2.z - 1) : (-100 + self.z)
end
# 设置不透明度、合成方式、茂密
self.opacity = @character.opacity
self.blend_type = @character.blend_type
self.bush_depth = @character.bush_depth
# 动画
if @character.animation_id != 0
animation = $data_animations[@character.animation_id]
animation(animation, true)
@character.animation_id = 0
end
end
end
系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
因为你哭泣的时候有我想你你被人嘲笑时有我陪你在你感觉最无助的那一刻有个声音鼓励
<font color=#8600E9>忘记</font>
回复
使用道具
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册会员
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
Archiver
|
手机版
|
小黑屋
|
Project1游戏制作
Powered by
Discuz!
X5.0
© 2001-2026
Discuz! Team
.
在本版发帖
返回顶部
快速回复
返回顶部
返回列表