查看: 1056|回复: 0

简易菜单传送指令

[复制链接]

闇吼者の災悪眷族

梦石
0
星屑
1366
在线时间
2881 小时
注册时间
2014-7-29
回帖
6408
发表于 2015-2-19 13:43:30 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 三途亚梦 于 2015-3-2 16:07 编辑

[pre lang="ruby"]#==============================================================================
# +++ 简易菜单传送指令 +++
#==============================================================================
# 作者 三途亚梦
# 如要使用此脚本,请署名。
#==============================================================================
# 本脚本的作用在菜单给玩家提供一个给便捷的回城方法。
#==============================================================================
#
# ★本脚本提供了两种使用方法,请认真阅读使用说明
#
# ★PasspaceName可以设置指令的名字,注意保留引号★!
#
#   PasspaceMapid 用于设置目标地图的id
#   
#   PasspaceMapX 用于设置目标位置X轴的数值
#   
#   PasspaceMapY 用于设置目标位置Y轴的数值
#   
#   PasspaceFaceon = 用于设置传送之后玩家的面向。
#   数字0、2、4、6、8
#   分别对应:记忆当前面向(0)、面向下(2)、面向左(4)、面向右(6)、面向上(8)
#
# ★该脚本的默认状态是传送到1号地图x轴为11,y轴为11的位置上,且面向下方。
#
# ★PasspaceTevent用于改变本脚本的基础功能。
#   PasspaceTevent的值不等于0的时候,
#  “返回城镇”的指令将变为执行ID为PasspaceTevent的值的公共事件。
#   例:PasspaceTevent = 1  
#   将会执行1号公共事件,那么请在公共事件1中设置传送的具体方法。
#   你当然也可以扩展它的应用。
#
#
#==============================================================================
# ★ 设定部分 ★
#==============================================================================
module Amu
  module Passpace
   
    PasspaceName = "返回城镇" #指令的名字
   
    PasspaceMapid = 1  #传送目的地的地图id
  
    PasspaceMapX = 11  #传送目的地的X轴
   
    PasspaceMapY = 11  #传送目的地的Y轴
   
    PasspaceFaceon = 2 #玩家的面向
   
    PasspaceTevent = 0 #公共事件化
   
  end
end

class Window_MenuCommand < Window_Command
  #--------------------------------------------------------------------------
  # ● 向指令列表添加传送的指令
  #--------------------------------------------------------------------------
  alias amu_20141205_add_main_commands add_main_commands
  def add_main_commands
    amu_20141205_add_main_commands
    add_command(Amu::Passpace::PasspaceName, :amupasspace)
  end
end

class Scene_Menu < Scene_MenuBase
  #--------------------------------------------------------------------------
  # ● 生成指令窗口
  #--------------------------------------------------------------------------
  alias amu_20141205_create_command_window create_command_window
  def create_command_window
    amu_20141205_create_command_window
    @command_window.set_handler(:amupasspace,    method(:command_amupasspace))
  end
  #--------------------------------------------------------------------------
  # ● 指令“返回城镇”
  #--------------------------------------------------------------------------
  def command_amupasspace
    SceneManager.return
    if Amu::Passpace::PasspaceTevent != 0
      $game_temp.reserve_common_event(Amu::Passpace::PasspaceTevent)
    else
      $game_player.reserve_transfer(Amu::Passpace::PasspaceMapid, Amu::Passpace::PasspaceMapX, Amu::Passpace::PasspaceMapY, Amu::Passpace::PasspaceFaceon)  
      $game_player.refresh
      SceneManager.call(Scene_Map)
    end
  end
end[/pre]

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本发帖返回顶部