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

Project1

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

[已经过期] 请问如何理解“自连接”

[复制链接]

Lv4.逐梦者

梦石
0
星屑
14048
在线时间
2070 小时
注册时间
2016-9-20
帖子
844
1
发表于 2021-2-16 19:17:21 | 显示全部楼层
本帖最后由 ppspssss 于 2021-2-16 20:36 编辑
Hello``Bubble 发表于 2021-2-13 19:50
是要问地图卷动/卷屏机制/坐标显示原理吧
精灵ox,oy属性就是做卷动的
Spriteset_Map中有定义@tilemap.ox/@t ...


这个我想过研究一个类似放置的游戏类,比如放置家具, 塔防遊戏  所以研究过 看來Hello``Bubble也有一些研究,感覺你熱心回答

这个楼主想要知道这个原理, 我就觉得不应该去理解这些难以理解的,要完全了解RM内置的移动方式才行, 除非像我又或者Hello``Bubble 他研究比如塔防游戏才用到吧?
-----------------------------

如果地图没移动过, 还是对的, 可是當角色地图走动地图一格后,鼠标个获取的格子始终向后偏移了半格, 為什么呢

看在   Game_Player里的CENTER_X
####
CENTER_X = (320 - 16) * 4   # 画面中央的 X 坐标 * 4
CENTER_Y = (240 - 16) * 4   # 画面中央的 Y 坐标 * 4
####
可以看出是減了半格(是32的一半), Y軸实際没有影响, 因此要X軸加条件一下
$mx,$my=Mouse.get_mouse

if $game_map.display_x >= 64 #16*128得出来64(半格)
  mx = $mx+16
end
$map_mx = $game_map.display_x / 128 +  mx / 32
$map_my = $game_map.display_y / 128 + $my / 32

然后人物移动多过地图也能正确不偏半格了
-----------------

另外 , 一格像素是32不是128 , 那为什么要乘4变成128呢呢, 我猜測(如错误请纠正我) : 这样可令人物事件移动速度的计算速度下限调低, 这样的话就不用额外寫计数器比较麻烦, 因为一帧固定加1, 除4令下限变低,使得移动所需的計数增加至4倍, 令主角及事件可以更慢的速度移动, 那么结论:实际计算是移动了128个单位, 实际显示則除4得出32个单位

点评

塔防游戏感觉不需要很多知识。只需要能在地图/画面上准确的位置生成精灵。剩下的都是“并行处理”判断坐标了....  发表于 2021-2-16 20:50
那你好像是想做一个塔防游戏? 虽然你贴子示范视频删了, 但我删之前看了, 好像是单塔对多怪的原理  发表于 2021-2-16 20:38
我也是随便玩玩罢了很业余。并不能理解RGSS预设的移动方式,只是能做一些最常见的功能,知道大概怎么改/在哪里找而已...偏半格原来是这样...厉害!  发表于 2021-2-16 20:28
内容仅供参考,
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-5-2 14:36

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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