Project1

标题: 又是关于场所移动的脚本问题 [打印本页]

作者: 乱摸阿弥陀佛    时间: 2013-7-18 14:46
标题: 又是关于场所移动的脚本问题
本帖最后由 乱摸阿弥陀佛 于 2013-7-18 14:47 编辑

假设每张地图都有一个3号事件,缺省位置全部是在左上角,当主角每次场所移动之后3号事件就出现在主角的右边,我在 Scene_Map 脚本的 def transfer_player 中添加以下红色脚本,但每次主角场所移动后3号事件还是在老位置没动。依然不希望用事件解决

Scene_Map
  #--------------------------------------------------------------------------
  # ● 调用调试
  #--------------------------------------------------------------------------
  def call_debug
    # 清除调用调试标志
    $game_temp.debug_calling = false
    # 演奏确定 SE
    $game_system.se_play($data_system.decision_se)
    # 矫正主角姿势
    $game_player.straighten
    # 切换到调试画面
    $scene = Scene_Debug.new
  end
  #--------------------------------------------------------------------------
  # ● 主角的场所移动
  #--------------------------------------------------------------------------
  def transfer_player
   
    if $game_map.map_id != $game_temp.player_new_map_id
      a = $game_player.x
      b = $game_player.y
      $game_map.events[3].moveto(a+1, b)
    end

作者: joe5491    时间: 2013-7-18 16:27
你要寫在最後面....
你這樣的話是在主角移動前,先把地圖的三號事件移過來,但是換場景後就無意義了....

def transfer_player
    #OOXX~~~
    #OOXX~~~
    #OOXX~~~RM內建的程式碼
    #OOXX~~~
    #OOXX~~~
    if $game_map.map_id != $game_temp.player_new_map_id
      a = $game_player.x
      b = $game_player.y
      $game_map.events[3].moveto(a+1, b)
    end
end
作者: 乱摸阿弥陀佛    时间: 2013-7-19 10:25
本帖最后由 乱摸阿弥陀佛 于 2013-7-19 10:29 编辑
joe5491 发表于 2013-7-18 16:27
你要寫在最後面....
你這樣的話是在主角移動前,先把地圖的三號事件移過來,但是換場景後就無意義了....


确实是这样,但如果这样把脚本移到最后,在角色转移到新地图的一瞬间,3号事件还是会先在地图的左上方缺省位置出现,然后才跳到角色的旁边,这样很不自然,能不能在角色转移到新地图后3号事件就已经在角色旁边,而不是从缺省位置跳过来的?
作者: 弗雷德    时间: 2013-7-19 10:51
个人觉得最简单的处理方法就是转换地图之前将画面色调调成全黑,转换地图之后再将色调调回,这样就事件就会在黑屏的时候移动过去了。
作者: 巴尔德    时间: 2013-7-19 10:59
可以每次移动场景后都执行公共事件,设置事件位置,然后把角色坐标存到变量里,通过变量给事件设置位置。
作者: ︶ㄣ牛排ぶ    时间: 2013-7-19 13:17
其实事件真的是个好东西,老是想着不用事件的话真的很浪费,楼主还是多用用事件吧
作者: 芯☆淡茹水    时间: 2013-7-20 16:14
根据3L点评的方法,
发现把这段
  1. a = $game_player.x
  2.       b = $game_player.y
  3.       $game_map.events[3].moveto(a+1, b)
复制代码
放在:
# 矫正主角姿势
$game_player.straighten
下面。







欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1