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

Project1

 找回密码
 注册会员
搜索
12
返回列表 发新帖
楼主: 89444640
打印 上一主题 下一主题

[已经解决] 用事件或者脚本控制地图中 待机 移动 跑动(高速跑动)

[复制链接]

Lv5.捕梦者

梦石
0
星屑
35186
在线时间
4169 小时
注册时间
2007-12-15
帖子
10067
11
 楼主| 发表于 2016-10-12 10:04:56 | 只看该作者
本帖最后由 89444640 于 2016-10-12 10:12 编辑
soulsaga 发表于 2016-10-10 20:16
不知为何我测试没问题呢..


是不是回档了?刚才我的回复不见了。
更新一楼测试工程。当重力脚本只要存在于脚本库中,就会出现问题。
当重力脚本打开的时候,就无法用事件来控制角色待机图像了。因为这个脚本对正常rpg运行影响实在太大,在脚本存在时,rpg地图经常会出现走入墙内的状态,非常难受。
简直无可救药。

点评

我自行加几块草地就可以动了..  发表于 2016-10-12 14:54
你的测试工程连动都动不了..按菜单键也没反应...  发表于 2016-10-12 14:28
回复

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
36477
在线时间
10807 小时
注册时间
2009-3-15
帖子
4815
12
发表于 2016-10-12 14:56:39 | 只看该作者
本帖最后由 soulsaga 于 2016-10-12 15:50 编辑

我已经找出问题所在了.
RUBY 代码复制
  1. if not $ud_ok
  2.       @jumpnow -= 10
  3.       if @jumpnow < 0
  4.         @character_name = "主角ACT12下落"
  5.         @jumpnow = [@jumpnow, -JUMPMAX].max
  6.         if not down1(((@x * 128 + @revise_x) / 128.0).round,
  7.           ((@y * 128 + @revise_y) / 128.0).round, -@jumpnow, true)
  8.           @jumpnow = 0
  9.           @twojump = 0
  10.           @character_name = "主角 行走 长袖"


注译了第4行和第10行就可以正常替换行走图了..那看来是因为这里强制替换了图像的原因跟事件的替换行走图起冲突了吧

最后改成这杽亲测能通过..
RUBY 代码复制
  1. #-----------------------按跳跃-----------------------------------------------
  2. # A ボタンが押された場合
  3.     if Input.press?(Input::A) and not $ud_ok
  4.       $game_switches[1] = true
  5.       @twojump = 1 if @twojump == 0 and down1(((@x * 128 + @revise_x) / 128.0).round,
  6.       ((@y * 128 + @revise_y) / 128.0).round, 5, true)
  7.       if (not @apassed) and @twojump <= $airjump
  8.         @apassed = true
  9.         @jumpnow = JUMPMAX
  10.         se_name = @twojump == 1 ? "ACT 跳02.wav" : "ACT 跳01.wav"
  11.         Audio.se_play("Audio/SE/#{se_name}")
  12.         @twojump += 1
  13.       else
  14.         @jumpnow += 3        
  15.       end
  16.     else
  17.       @apassed = false
  18.     end
  19. #----------------------自由落体--------------------------------
  20.     if not $ud_ok and $game_switches[1] == true
  21.       @jumpnow -= 10
  22.       if @jumpnow < 0
  23.         @character_name = "主角ACT12下落"
  24.         @jumpnow = [@jumpnow, -JUMPMAX].max
  25.         if not down1(((@x * 128 + @revise_x) / 128.0).round,
  26.           ((@y * 128 + @revise_y) / 128.0).round, -@jumpnow, true)
  27.           @jumpnow = 0
  28.           @twojump = 0
  29.           @character_name = "主角 行走 长袖"
  30.           $game_switches[1] = false
  31.         end
  32.       elsif @jumpnow > 0
  33.         @character_name = @twojump == 1 ? "主角 ACT用跳跃" : "主角ACT11两段跳"
  34.         @jumpnow = [@jumpnow, JUMPMAX].min
  35.         if not up1(((@x * 128 + @revise_x) / 128.0).round,
  36.           ((@y * 128 + @revise_y) / 128.0).round, @jumpnow, true)
  37.           @jumpnow = 0
  38.         end
  39.       end
  40.     end

主要是加了开关和判断..
另外开头这些设置
  # ● 定数
  #--------------------------------------------------------------------------
  UP    = 16                  # 上方向の余裕(0 < UP < 63)
  DOWN  = -5                  # 这个是垂直方向微调 下方向の余裕(0 < DOWN <63)
  SIDE  = 32                  # 左右方向の余裕(0 < SIDE <63)

左右设成0的话..就不会陷入墙壁内了..

回复

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
35186
在线时间
4169 小时
注册时间
2007-12-15
帖子
10067
13
 楼主| 发表于 2016-10-13 07:59:26 | 只看该作者
本帖最后由 89444640 于 2016-10-13 09:53 编辑
soulsaga 发表于 2016-10-12 14:56
我已经找出问题所在了.
    if not $ud_ok
      @jumpnow -= 10


谢谢,我测试一下~
请问是需要把game_switches[1] 这里的开关改成自己需要的开关并且,打开 才会使重力脚本生效吗?还是自动运行?

那个上下左右我改过,改成0经常会出现人物悬空因为图块横版,画的是底边禁止通行如果想不悬空必须得有少量地面的透视,绘制起来很困难。
而且我以前试过,如果设定成0,rpg模式是没问题了,但是在act模式下,一些本来可以跳上去的平台,就跳不上去了,而且如果是站里点位一格的情况,跳上去非常困难,非常难以瞄准,而且手感极硬。
无解了。

然后 这种设定情况有致命bug。可以试一下,
无论当前地图有无并行处理的更改角色图像脚本,
跳上平台后,如果在平台边缘不按其他键只按方向键,会一直走下去。而不会下落,这个bug对横版act极其致命。

在两段跳的时候会直接跳出第二段。

原脚本的情况是在边缘通行为 “可”的时候,人物会自动下落,直到站立到另外一个通行为“否”的图块上为止。

估计这个不好解决了。智能化一条直线线没平台的地图看霞效果,平时走还得用普通的行走图。

点评

谢谢~  发表于 2016-10-13 10:18
这样啊..我再稍微研究一下吧  发表于 2016-10-13 10:11
回复

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
36477
在线时间
10807 小时
注册时间
2009-3-15
帖子
4815
14
发表于 2016-10-13 13:14:40 | 只看该作者
本帖最后由 soulsaga 于 2016-10-13 13:31 编辑

总算解決了..
RUBY 代码复制
  1. if not $ud_ok
  2.       @jumpnow -= 10
  3.       if @jumpnow < 0
  4.         $game_variables[1] = @jumpnow
  5.         @character_name = "主角ACT12下落" if $game_switches[1] != true
  6.         @jumpnow = [@jumpnow, -JUMPMAX].max
  7.         if not down1(((@x * 128 + @revise_x) / 128.0).round,
  8.           ((@y * 128 + @revise_y) / 128.0).round, -@jumpnow, true)
  9.           @jumpnow = 0
  10.           @twojump = 0
  11.           @character_name = "主角 行走 长袖" if $game_switches[1] != true
  12.         end
  13.       elsif @jumpnow > 0
  14.         @character_name = @twojump == 1 ? "主角 ACT用跳跃" : "主角ACT11两段跳"
  15.         @jumpnow = [@jumpnow, JUMPMAX].min
  16.         if not up1(((@x * 128 + @revise_x) / 128.0).round,
  17.           ((@y * 128 + @revise_y) / 128.0).round, @jumpnow, true)
  18.           @jumpnow = 0
  19.         end
  20.       end
  21.     end

然后事件设定如下图...

开关和变量编号都可以自行设定..除此以外的场合不需要..无视吧..
回复

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
35186
在线时间
4169 小时
注册时间
2007-12-15
帖子
10067
15
 楼主| 发表于 2016-10-13 16:19:22 | 只看该作者
本帖最后由 89444640 于 2016-10-13 16:49 编辑

[quote]soulsaga 发表于 2016-10-13 13:14
总算解決了..
能切换了,但是运行起来 ,下落的时候回强制运行并行处理事件,造成了本来应该头发飘动的下落图变成了
用待机或者行走护着跑动的图像下落--b


本来应该用这个图的

点评

我这边测试一切正常..发现我发漏了脚本..我再发一次吧..  发表于 2016-10-13 17:01
回复

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
35186
在线时间
4169 小时
注册时间
2007-12-15
帖子
10067
16
 楼主| 发表于 2016-10-15 10:36:05 | 只看该作者
本帖最后由 89444640 于 2016-10-15 10:54 编辑
soulsaga 发表于 2016-10-13 17:02
# A ボタンが押された場合
    if Input.press?(Input::A) and not $ud_ok
      @twojump = 1 if @twojump ...


普通平台没事 斜角楼梯有问题!
一旦地图关闭并行事件,斜角楼梯下落就会不刷新。这到底是什么地方干扰了

我开别的工程就没事。但是自己这地图就这德行。

终于找到毛病了 场景切换时候踩到了版边的与主角接触的事件然后处理就混乱了,平台跳跃有跑动干扰无比难跳。赶紧关上
我再多测试一会,应该能用了。
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-30 11:34

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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