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

Project1

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

[已经解决] 能否实现,按一下转向,再按一下是移动

[复制链接]

Lv4.逐梦者

梦石
0
星屑
12157
在线时间
4435 小时
注册时间
2014-4-11
帖子
5955

开拓者

跳转到指定楼层
1
发表于 2016-8-2 22:28:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
在移动之前先实行转向。而不是直接按方向键就移动了。
默认的是直接就移动的。要转身还要向前走,再走回来才行。

评分

参与人数 1星屑 +35 收起 理由
RyanBern + 35 手动认可奖励

查看全部评分

Lv1.梦旅人

路人党员

梦石
0
星屑
52
在线时间
2276 小时
注册时间
2010-12-30
帖子
3225
2
发表于 2016-8-3 00:04:58 | 只看该作者
本帖最后由 英顺的马甲 于 2016-8-3 11:33 编辑

RUBY 代码复制
  1. def __method__
  2.   caller[0][/`([^']*)'/] && $1
  3. end
  4. Game_Player = Class.new(Game_Player){
  5.   const_set(:MoveHook, true)
  6.   const_set(:DIRS, {'down' => 2, 'left' => 4, 'right' => 6, 'up' => 8})
  7.   superclass.constants.each{|c|const_set(c, superclass.const_get(c))}
  8.   [:left, :right, :up, :down].each do |d|
  9.     define_method([:move_, d].join) do |*a|
  10.       dir = __method__[/[^_]+$/]
  11.       (self.direction != Game_Player::DIRS[dir] && __move_by_keyboard?) ?
  12.         __send__("turn_" + dir, true) : (__move_by_keyboard? && @__wait > 0) || super(*a)
  13.     end
  14.   end
  15.   [:left, :right, :up, :down].each do |d|
  16.     define_method([:turn_, d].join) do |*a|
  17.       a[0] && @__wait = 5
  18.       super
  19.     end
  20.   end
  21.   def update
  22.     (@__wait||=0) > 0 && @__wait -= 1
  23.     super
  24.   end
  25.   def __move_by_keyboard?
  26.     return ([2,4,6,8].include?(Input.dir4) && !moving? &&
  27.         !$game_system.map_interpreter.running? &&
  28.         !@move_route_forcing && !$game_temp.message_window_showing)
  29.   end
  30. } unless defined?(Game_Player::MoveHook)

如果与原本的方向不同就会在转向之后等待五帧

点评

恩,可以了  发表于 2016-8-3 15:18
我把所有的or换成了||,结果forcing里面的or也跟着被换了==, 现在修正了  发表于 2016-8-3 11:34
我把CING设NIL就没问题了  发表于 2016-8-3 10:55
大触,我有个问题。我使用技能后会在地图多个事件的,这样有时候会提示cing没有定义  发表于 2016-8-3 10:49
我擦,这正则搞死了好多高亮  发表于 2016-8-3 00:07

评分

参与人数 2星屑 +30 梦石 +1 收起 理由
RyanBern + 1 啧脚本越来越触辣
yang1zhi + 30 不错,效果可以

查看全部评分

本人擅长XP,如果有脚本或者Ruby方面的问题欢迎发电邮到[email protected]咨询,本人很少检查电邮所以不一定会及时回复,本人不会直接出手解决问题只会提供一个方向,所以谢绝伸手党
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-27 05:36

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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