Project1

标题: 问一个跳过标题脚本后的问题。 [打印本页]

作者: 布鲁斯    时间: 2015-12-27 18:57
标题: 问一个跳过标题脚本后的问题。
我用了在网上找到的跳过标题脚本,确实可以用,也可以再返回标题。但遇到了一个问题,我比较笨。望大神解说。
就是我把主角初始化出现在A地图。用图片什么的做了一个动画。事件设置按确定键后才回到标题。问题是回到标题后如果选了开始游戏后,结果主角又回到了A地图的动画。。反复循环。。
要怎么做才能选了开始游戏后主角能在别的地图开始。
作者: 布鲁斯    时间: 2015-12-27 19:18
忘了附上脚本

#===============================================================================
#
# 可以返回标题画面的跳过标题画面脚本
# 作    者:光的圆周率
# 测试情况:RPG Maker VX ACE 测试版 以及 1.00正式版 测试通过
# 说明:脚本中注明的位置可以控制是否可以返回标题画面
#            true:可以再次返回标题画面 false:不可以再次返回标题画面
# 脚本来自66RPG,转载请保留版权信息
#===============================================================================

module SceneManager

  def self.stack
     @stack
  end
end

class Scene_Title < Scene_Base

  alias old_start start
  alias old_dmv dispose_main_viewport
  
  def start

      return_allowed = true      # 决定可否再次返回标题画面的开关
      create_background
      create_foreground
      @sprite1.bitmap.dispose
      @sprite2.bitmap.dispose
      @foreground_sprite.bitmap.dispose
      chk1 = SceneManager.stack.first != nil   && return_allowed
      chk2 = Graphics.frame_count > 0  && return_allowed
     if chk1 or chk2
       old_start
       return 0
     end
       SceneManager.clear
       DataManager.setup_new_game
       $game_map.autoplay
       SceneManager.goto(Scene_Map)
  end

  def dispose_main_viewport
    SceneManager.stack.first == nil ? nil : old_dmv
  end
  
end
#===============================================================================
# 脚本来自66RPG,转载请保留版权信息
#===============================================================================
作者: cinderelmini    时间: 2015-12-27 20:41
本帖最后由 cinderelmini 于 2015-12-28 15:49 编辑
  1. module DataManager
  2.   #--------------------------------------------------------------------------
  3.   # ● 设置新游戏
  4.   #--------------------------------------------------------------------------
  5.   def self.setup_new_game
  6.     create_game_objects
  7.     $game_party.setup_starting_members
  8.     start_mapid = $o_o ? 233 : $data_system.start_map_id
  9.     $game_map.setup(start_mapid)
  10.     $game_player.moveto($data_system.start_x, $data_system.start_y)
  11.     $game_player.refresh
  12.     Graphics.frame_count = 0
  13.     $o_o = nil if $o_o
  14.   end
  15. end
复制代码
用法Main前。
这里面的233是放过片头之后的起始地图ID,
然后放完片头之后在事件里用【脚本】输入:【$o_o = true】再返回标题。

作者: 布鲁斯    时间: 2015-12-27 23:46
cinderelmini 发表于 2015-12-27 20:41
用法Main前。
这里面的233是放过片头之后的起始地图ID,
然后放完片头之后在事件里用【脚本】输入:【$o_o  ...

233哪里,标题后的地图起始位置ID应该怎么写?比如我要设置在图中的这个地方
是不是把脚本里的”233“改为 ”【004:开头】(008,005)“就好

捕获.PNG (3.63 KB, 下载次数: 14)

这个地方

这个地方

作者: cinderelmini    时间: 2015-12-28 15:45
本帖最后由 cinderelmini 于 2015-12-28 16:01 编辑

啊……说起来有点乱……直接放个饭粒好了……
增加了可以设定第二次开始新游戏的地图ID和坐标的内容,具体见脚本【补充】。
可以返回标题的跳过标题.zip (1.43 MB, 下载次数: 80)
作者: 喵呜喵5    时间: 2015-12-28 16:58
虽然已经解决了,但是我还是来放一个我自己的实现
https://rpg.blue/home.php?mod=sp ... o=blog&id=14771




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