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

Project1

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

[讨论] 角色30度移动的探讨

 关闭 [复制链接]

Lv2.观梦者

梦石
0
星屑
309
在线时间
371 小时
注册时间
2010-8-23
帖子
418
跳转到指定楼层
1
发表于 2011-1-8 11:40:55 | 显示全部楼层 |只看大图 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 勇敢的馒头 于 2011-1-8 11:41 编辑

我看到很多网游虽然标明是45度的游戏,但实际上他们的地图是差不多30度左右的视角

我们现在的45度脚本来制作游戏,和画地图,其实出来的效果是每格为32X32这样的
而普通的网游和现在市面上的45度游戏,地图则是 64X32


我们真正能做到的效果其实是这样,GBA《我们的太阳》


网游

我就在想,能否也改变RM的行走度数,让人物也像网游那样30度行走

我简单修改了2个地方的数值,就可以实现

Game_Character 3 第101-174替换如下
  1. #--------------------------------------------------------------------------
  2.   # ● 向左下移动
  3.   #--------------------------------------------------------------------------
  4.   def move_lower_left
  5.     # 没有固定面向的场合
  6.     unless @direction_fix
  7.       # 朝向是右的情况下适合的面是左面、朝向是上的情况下适合的面是下面
  8.       @direction = (@direction == 6 ? 4 : @direction == 8 ? 2 : @direction)
  9.     end
  10.     # 下→左、左→下 的通道可以通行的情况下
  11.     if (passable?(@x, @y, 2) and passable?(@x, @y + 1, 4)) or
  12.        (passable?(@x, @y, 4) and passable?(@x - 1, @y, 2))
  13.       # 更新坐标
  14.       @x -= 0.2
  15.       @y += 0.1
  16.       # 增加步数
  17.       increase_steps
  18.     end
  19.   end
  20.   #--------------------------------------------------------------------------
  21.   # ● 向右下移动
  22.   #--------------------------------------------------------------------------
  23.   def move_lower_right
  24.     # 没有固定面向的场合
  25.     unless @direction_fix
  26.       # 朝向是右的情况下适合的面是左面、朝向是上的情况下适合的面是下面
  27.       @direction = (@direction == 4 ? 6 : @direction == 8 ? 2 : @direction)
  28.     end
  29.     # 下→右、右→下 的通道可以通行的情况下
  30.     if (passable?(@x, @y, 2) and passable?(@x, @y + 1, 6)) or
  31.        (passable?(@x, @y, 6) and passable?(@x + 1, @y, 2))
  32.       # 更新坐标
  33.       @x += 0.2
  34.       @y += 0.1
  35.       # 增加步数
  36.       increase_steps
  37.     end
  38.   end
  39.   #--------------------------------------------------------------------------
  40.   # ● 向左上移动
  41.   #--------------------------------------------------------------------------
  42.   def move_upper_left
  43.     # 没有固定面向的场合
  44.     unless @direction_fix
  45.       # 朝向是右的情况下适合的面是左面、朝向是上的情况下适合的面是下面
  46.       @direction = (@direction == 6 ? 4 : @direction == 2 ? 8 : @direction)
  47.     end
  48.     # 上→左、左→上 的通道可以通行的情况下
  49.     if (passable?(@x, @y, 8) and passable?(@x, @y - 1, 4)) or
  50.        (passable?(@x, @y, 4) and passable?(@x - 1, @y, 8))
  51.       # 更新坐标
  52.       @x -= 0.2
  53.       @y -= 0.1
  54.       # 增加步数
  55.       increase_steps
  56.     end
  57.   end
  58.   #--------------------------------------------------------------------------
  59.   # ● 向右上移动
  60.   #--------------------------------------------------------------------------
  61.   def move_upper_right
  62.     # 没有固定面向的场合
  63.     unless @direction_fix
  64.       # 朝向是右的情况下适合的面是左面、朝向是上的情况下适合的面是下面
  65.       @direction = (@direction == 4 ? 6 : @direction == 2 ? 8 : @direction)
  66.     end
  67.     # 上→右、右→上 的通道可以通行的情况下
  68.     if (passable?(@x, @y, 8) and passable?(@x, @y - 1, 6)) or
  69.        (passable?(@x, @y, 6) and passable?(@x + 1, @y, 8))
  70.       # 更新坐标
  71.       @x += 0.2
  72.       @y -= 0.1
  73.       # 增加步数
  74.       increase_steps
  75.     end
  76.   end
复制代码
Game_Player  212-222 替换如下
  1.       case Input.dir8
  2.       when 1
  3.         move_lower_left
  4.       when 2
  5.         move_down
  6.       when 3
  7.         move_lower_right  
  8.       when 4
  9.         move_left
  10.       when 6
  11.         move_right
  12.       when 7
  13.         move_upper_left  
  14.       when 8
  15.         move_up
  16.       when 9
  17.         move_upper_right  
  18.       end
  19.     end
复制代码
就可以实现效果,但是目前BUG多多,求各位一起修改成完整版

30度行走菜鸟BUG初版
30度行走.rar (187.37 KB, 下载次数: 121)
真正做游戏的游戏人是不会整天发帖灌水的!!!

Lv2.观梦者

梦石
0
星屑
309
在线时间
371 小时
注册时间
2010-8-23
帖子
418
2
 楼主| 发表于 2011-1-8 17:10:42 | 显示全部楼层
http://hi.baidu.com/%BA%DA%B5%C4 ... f53a63d0164e9c.html

这里有一帖帖子,说的是45度地图的算法,不知道是什么程序语言编写的,不过不知道是不是应该有所启发?
真正做游戏的游戏人是不会整天发帖灌水的!!!
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
309
在线时间
371 小时
注册时间
2010-8-23
帖子
418
3
 楼主| 发表于 2011-1-14 14:36:23 | 显示全部楼层
本帖最后由 勇敢的馒头 于 2011-1-14 14:54 编辑

有没有什么办法实现呢?重写passable很复杂?
不改变原有的规则,而改变视角,比如伪3D那个脚本是不是也算是一个方法呢?
真正做游戏的游戏人是不会整天发帖灌水的!!!
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
309
在线时间
371 小时
注册时间
2010-8-23
帖子
418
4
 楼主| 发表于 2011-1-15 15:00:24 | 显示全部楼层
本帖最后由 勇敢的馒头 于 2011-1-15 15:02 编辑
lovemilk15 发表于 2011-1-15 10:48
那假如不改變原有規則,改變方向鍵上下左右是往30度的方向飄去呢
(這樣說會不會很難懂,..)
例如:仙劍DOS版 ...


我今天看了下那个伪3D的,那个太过复杂,把植物什么都立体了,而且可以转变视角,缩进什么的,那个太复杂了,如果能精简下只要能设置旋转的角度,然后配合双远景的,那2D的效果就都能实现了~

查看伪3D打幽灵,去掉那个边界重复的就可以
http://rpg.blue/forum.php?mod=vi ... 7&fromuid=93874


抖的问题。。。是正常的
真正做游戏的游戏人是不会整天发帖灌水的!!!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-5-22 08:52

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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