查看: 2167|回复: 4

[已经解决] 求一个菜单显示制作者的脚本。

[复制链接]
梦石
0
星屑
50
在线时间
9 小时
注册时间
2013-6-10
回帖
4
发表于 2014-10-4 20:45:59 | 显示全部楼层 |阅读模式

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

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

×
急!
梦石
0
星屑
50
在线时间
9 小时
注册时间
2013-6-10
回帖
4
 楼主| 发表于 2014-10-4 21:03:13 | 显示全部楼层
用搜索搜了一个,但只是能看到制作者,却不能点开来!
回复

使用道具 举报

炎

梦石
0
星屑
98
在线时间
1617 小时
注册时间
2013-8-15
回帖
4322
发表于 2014-10-5 00:17:11 | 显示全部楼层
[box=DarkRed]-狂炎的话-[/box]
虽然不是你要的菜单显示制作者什么的...
但是这是在标题显示的
在标题画面中点击这个新选项,它会转到您的第一张地图,你要在地图设置事件,显示制作者,
内详自己研究研究

[box=DarkRed]-脚本-[/box]

喵呜喵5 标题画面新增选项
  1. =begin
  2. ===============================================================================
  3.   标题画面新增选项 By喵呜喵5
  4. ===============================================================================


  5.   【说明】
  6.   
  7.   在标题画面增加新的选项
  8.   
  9.   玩家选择了这个选项后可以从另外一张地图开始新游戏
  10.   在这张新地图上可以用事件指令之类的东西做出类似CG欣赏之类的功能
  11.   
  12. =end
  13. $m5script ||= {};$m5script[:M5NTC20140811] = 20140925
  14. module M5NTC20140811
  15.   COMMAND = [
  16. #==============================================================================
  17. #  设定部分
  18. #==============================================================================  
  19.   
  20.   ["末尾的选项",1,0,0,true,-1,0],
  21.   
  22.   ["开头的选项",1,1,1,false,0,1],
  23.   
  24.   ["中间的选项",1,2,2,false,2,2],
  25.   
  26.   
  27.   # 设置格式为 : [a,b,c,d,e,f,g],
  28.   
  29.   # a 为选项显示的文字,前后需要加上英文双引号  
  30.   # b 为选择这个选项后移动到的地图ID  
  31.   # c 为选择这个选项后移到到对应地图的X坐标
  32.   # d 为选择这个选项后移到到对应地图的Y坐标
  33.   # e 为选择这个选项后移到到对应地图时是否透明,true 为透明,false 为不透明
  34.   # f 为这个选项在菜单中的位置,不需要的话填写 -1 就好了
  35.   # g 为选项是否显示的标志,请参考下方的详细说明,不需要的话填写 0
  36.   # 请不要忘记结尾的逗号  
  37.   
  38.   
  39.   # 【关于选项是否显示标志的详细说明】  
  40.   # 这个功能需要搭配我的全局变量脚本共同使用,可以实现类似通关后出现新选项的效果  
  41.   
  42.   # 下面以通关后出现 “观看CG” 选项为例:  
  43.   # 首先插入我的全局变量脚本,脚本的位置应该放在本脚本之上
  44.   # 在设定部分“观看CG”选项的 g 的位置填上一个不为0的数字,例如 233
  45.   # 接着,当游戏通关的时候在事件的脚本中执行下面的代码
  46.   
  47.   #   m5_20140811_ntc(233)
  48.   
  49.   # 之后,再次打开游戏时标题画面中就会出现“观看CG”的选项了
  50.   # 如果希望删除已经出现的“观看CG”这个选项的话,在事件的脚本中执行下面的代码
  51.   
  52.   #   m5_20140811_ntc(233,false)
  53.   
  54.   # “观看CG”的选项便再次被消除了


  55. #==============================================================================
  56. #  设定结束
  57. #==============================================================================
  58.   ]
  59. end
  60. class Window_TitleCommand
  61.   alias m5_20140206_make_command_list make_command_list
  62.   def make_command_list
  63.     m5_20140206_make_command_list
  64.     m5_20140811_ntc
  65.   end
  66.   def m5_20140811_ntc
  67.     base = $m5script["M5GV20140811"]
  68.     ext = (base && base >= 20140811) ? M5GV20140811.load_ext : nil
  69.     M5NTC20140811::COMMAND.each_with_index do |command,index|
  70.       @list.insert(command[5],{:name=>command[0], :symbol=>:m5_20140811_ntc,\
  71.         :enabled=>true, :ext=>index}) if m5_20140811_need_add(command[6],ext)
  72.     end
  73.     @list.compact!
  74.   end
  75.   def m5_20140811_need_add(flag,ext)
  76.     return true if (!ext || flag == 0)   
  77.     ext[:m5_20140811_ntc] ||= {}
  78.     return ext[:m5_20140811_ntc][flag]
  79.   end
  80. end
  81. class Scene_Title
  82.   alias m5_20140206_create_command_window create_command_window
  83.   def create_command_window
  84.     temp_data = load_data("Data/System.rvdata2")
  85.     $data_system.start_map_id = temp_data.start_map_id
  86.     $data_system.start_x = temp_data.start_x
  87.     $data_system.start_y = temp_data.start_y
  88.     $data_system.opt_transparent = temp_data.opt_transparent
  89.     m5_20140206_create_command_window
  90.     @command_window.set_handler(:m5_20140811_ntc, method(:c_m5_20140811_ntc))
  91.   end
  92.   def c_m5_20140811_ntc
  93.     command = M5NTC20140811::COMMAND[@command_window.current_ext]   
  94.     $data_system.start_map_id = command[1]
  95.     $data_system.start_x, $data_system.start_y = command[2], command[3]
  96.     $data_system.opt_transparent = command[4]
  97.     command_new_game
  98.   end
  99. end
  100. class Game_Interpreter
  101.   def m5_20140811_ntc(flag,value = true)
  102.     base = $m5script["M5GV20140811"]
  103.     ext = (base && base >= 20140811) ? M5GV20140811.load_ext : nil
  104.     raise "本功能需要 喵呜喵5全局变量 脚本的支持" unless ext
  105.     ext[:m5_20140811_ntc] ||= {}
  106.     ext[:m5_20140811_ntc][flag] = value
  107.     M5GV20140811.save_ext(ext)   
  108.   end
  109. end
复制代码


据创造者说加了全局变量效果会更好

喵呜喵5 全局变量脚本
  1. =begin
  2. ================================================================================
  3. 全局变量 By 喵呜喵5
  4. ================================================================================


  5. 【说明】


  6.   在事件中使用脚本命令 save_var 可以把设置好的变量单独储存到一个新文件中
  7.   
  8.   在事件中使用脚本命令 load_var 可以在其他地方
  9.   (例如其他存档、或者开始新游戏时……)载入保存了的变量的值
  10.   
  11.   使用全局变量可以用来制作类似记录通关次数或者进入二周目这样的功能


  12. =end
  13. $m5script ||= {};$m5script["M5GV20140811"] = 20140811
  14. module M5GV20140811
  15. #==============================================================================
  16. #  设定部分
  17. #==============================================================================
  18.   
  19.   VAR = [1,3]
  20.   
  21.   # 在这里设置需要储存的全局变量ID
  22.   
  23.   FILENAME = "Public"
  24.   
  25.   # 在这里设置储存全局变量的文件名
  26.   
  27.   AUTO = false
  28.   
  29.   # 设置为 true 的话,变量的值发生改变时自动保存全局变量
  30.   
  31. #==============================================================================
  32. #  设定结束
  33. #==============================================================================
  34.   def self.save_var
  35.     var = []
  36.     ext = File.exist?(FILENAME) ? load_data(FILENAME)[1] : {}
  37.     VAR.each {|index| var.push($game_variables[index]) }
  38.     save_data([var,ext], FILENAME)   
  39.   end
  40.   def self.save_ext(ext)
  41.     var = File.exist?(FILENAME) ? load_data(FILENAME)[0] : []
  42.     save_data([var,ext], FILENAME)
  43.   end
  44.   def self.load_var
  45.     return unless File.exist?(FILENAME)
  46.     var = load_data(FILENAME)[0]
  47.     var.each_with_index{|v,i| $game_variables.m5_20140811_set(VAR[i], v)}
  48.   end
  49.   def self.load_ext   
  50.     return {} unless File.exist?(FILENAME)
  51.     return load_data(FILENAME)[1]
  52.   end
  53. end
  54. class Game_Variables
  55.   alias m5_20140811_set []=
  56.   def []=(variable_id, value)
  57.     m5_20140811_set(variable_id, value)
  58.     return unless M5GV20140811::AUTO
  59.     M5GV20140811.save_var if M5GV20140811::VAR.include?(variable_id)
  60.   end
  61. end
  62. class Game_Interpreter
  63.   def save_var;M5GV20140811.save_var;end
  64.   def load_var;M5GV20140811.load_var;end
  65. end
复制代码


[box=DarkRed]-范例/教程-[/box]

注:范例只有全局变量

https://rpg.blue/forum.php?mod=r ... 667&pid=2535991
神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦
回复

使用道具 举报

梦石
1
星屑
23246
在线时间
9564 小时
注册时间
2012-6-19
回帖
7018

开拓者短篇九导演组冠军

发表于 2014-10-5 00:51:19 | 显示全部楼层
本帖最后由 喵呜喵5 于 2014-10-5 14:36 编辑

插入这个脚本:https://rpg.blue/home.php?mod=sp ... o=blog&id=13692
模仿脚本中范例公共事件的设置……

评分

参与人数 1梦石 +1 收起 理由
taroxd + 1 认可答案

查看全部评分

回复

使用道具 举报

梦石
0
星屑
22879
在线时间
8598 小时
注册时间
2011-12-31
回帖
3270
发表于 2014-10-5 09:40:38 | 显示全部楼层
本帖最后由 tseyik 于 2014-10-5 09:49 编辑

來源原網頁己沒了
調用SceneManager.call(Scene_StaffRoll)就可以
行10~48是設定(背景圖,文字,可不可以skip……等等)
  1. #==============================================================================
  2. # □ No.057
  3. #    スタッフロール(RPGツクールVX Ace)
  4. #------------------------------------------------------------------------------
  5. # by initialization
  6. #==============================================================================

  7. #==============================================================================
  8. # □ 設定
  9. #==============================================================================
  10. module RGSSinit end
  11. module RGSSinit::Staff_Roll
  12.   #--------------------------------------------------------------------------
  13.   # ○ 素材スイッチ
  14.   #--------------------------------------------------------------------------
  15.   MATERIAL_SWITCH = true
  16.   #--------------------------------------------------------------------------
  17.   # ○ フォルダの指定
  18.   #--------------------------------------------------------------------------
  19.   FOLDER_NAME = "Graphics/Titles1"
  20.   #--------------------------------------------------------------------------
  21.   # ○ 背景の設定
  22.   #--------------------------------------------------------------------------
  23.   BACKGROUND  = "Island"
  24.   #--------------------------------------------------------------------------
  25.   # ○ 登録
  26.   #--------------------------------------------------------------------------
  27.   REGISTRATION = {
  28.    1 => ["GAME DESIGNER", "AAA"],
  29.    2 => ["DESIGNER",      "BBB"],
  30.    3 => ["SCENARIO",      "CCC"],
  31.    4 => ["THANKS",        "DDD"],
  32.    5 => ["MATERIAL",      "EEE"],
  33.    6 => ["THANK YOU", "FOR PLAYING!"],
  34.   }
  35.   #--------------------------------------------------------------------------
  36.   # ○ 最後の文字列に対して、中央停止設定
  37.   #--------------------------------------------------------------------------
  38.   LAST_STRING_STOP = true
  39.   #--------------------------------------------------------------------------
  40.   # ○ 音楽
  41.   #--------------------------------------------------------------------------
  42.   SOUND = "Theme1"
  43.   #--------------------------------------------------------------------------
  44.   # ○ スタッフロールのスキップ許可設定
  45.   #--------------------------------------------------------------------------
  46.   SKIP = true
  47. end

  48. #==============================================================================
  49. # ■ Object
  50. #==============================================================================
  51. class Object
  52.   #--------------------------------------------------------------------------
  53.   # ○ アクセス省略化
  54.   #--------------------------------------------------------------------------
  55.   RGSSinit057 = RGSSinit::Staff_Roll
  56. end

  57. #==============================================================================
  58. # □ スタッフロール
  59. #==============================================================================
  60. $rgssinit ||= {} ; $rgssinit["スタッフロール"] = RGSSinit057::MATERIAL_SWITCH

  61. if $rgssinit["スタッフロール"]

  62. #==============================================================================
  63. # ■ Cache
  64. #==============================================================================
  65. module Cache
  66.   #--------------------------------------------------------------------------
  67.   # ○ スタッフロール画面背景の取得
  68.   #     filename : ファイル名
  69.   #--------------------------------------------------------------------------
  70.   def self.staff_roll_background(filename)
  71.     load_bitmap(RGSSinit057::FOLDER_NAME + "/", filename)
  72.   end
  73. end

  74. #==============================================================================
  75. # ■ Game_Interpreter
  76. #==============================================================================
  77. class Game_Interpreter
  78.   #--------------------------------------------------------------------------
  79.   # ○ スタッフロール呼び出しメソッド
  80.   #--------------------------------------------------------------------------
  81.   def call057
  82.     SceneManager.call(Scene_StaffRoll)
  83.     Fiber.yield
  84.   end
  85. end

  86. #==============================================================================
  87. # □ Scene_StaffRoll
  88. #==============================================================================
  89. class Scene_StaffRoll < Scene_Base
  90.   #--------------------------------------------------------------------------
  91.   # ○ オブジェクト初期化 [オーバーライド]
  92.   #--------------------------------------------------------------------------
  93.   def initialize
  94.     [url=home.php?mod=space&uid=263426]@temp[/url]              = RPG::BGM.last
  95.     @background_sprite = Sprite.new
  96.     @entry             = 1
  97.     @string1           = Sprite.new
  98.     @string2           = Sprite.new
  99.     @timer             = 0
  100.     @last_flag         = false
  101.   end
  102.   #--------------------------------------------------------------------------
  103.   # ○ 開始処理 [オーバーライド]
  104.   #--------------------------------------------------------------------------
  105.   def start
  106.     bgm_process
  107.     super
  108.     create_spriteset
  109.   end
  110.   #--------------------------------------------------------------------------
  111.   # ○ 音楽処理
  112.   #--------------------------------------------------------------------------
  113.   def bgm_process
  114.     if RGSSinit057::SOUND == nil
  115.       Audio.bgm_stop
  116.     elsif RGSSinit057::SOUND != ""
  117.       Audio.bgm_play("Audio/BGM/" + RGSSinit057::SOUND)
  118.     end
  119.   end
  120.   #--------------------------------------------------------------------------
  121.   # ○ スプライトセットの作成
  122.   #--------------------------------------------------------------------------
  123.   def create_spriteset
  124.     if RGSSinit057::BACKGROUND != ""
  125.       @background_sprite.bitmap = Cache.staff_roll_background(RGSSinit057::BACKGROUND)
  126.     end
  127.   end
  128.   #--------------------------------------------------------------------------
  129.   # ○ フレーム更新 [オーバーライド]
  130.   #--------------------------------------------------------------------------
  131.   def update
  132.     super
  133.     update_input
  134.     if RGSSinit057::REGISTRATION[@entry]
  135.       update_string_display1
  136.       update_string_display2
  137.       update_string_process
  138.     else
  139.       return_scene
  140.     end
  141.   end
  142.   #--------------------------------------------------------------------------
  143.   # ○ フレーム更新:入力
  144.   #--------------------------------------------------------------------------
  145.   def update_input
  146.     unless @last_flag
  147.       return       unless RGSSinit057::SKIP
  148.       return_scene if     Input.trigger?(:C)
  149.     else
  150.       return_scene if     Input.trigger?(:C)
  151.     end
  152.   end
  153.   #--------------------------------------------------------------------------
  154.   # ○ フレーム更新:文字列表示1
  155.   #--------------------------------------------------------------------------
  156.   def update_string_display1
  157.     if @string1.bitmap == nil
  158.       create_string1
  159.       return
  160.     end
  161.   end
  162.   #--------------------------------------------------------------------------
  163.   # ○ フレーム更新:文字列表示2
  164.   #--------------------------------------------------------------------------
  165.   def update_string_display2
  166.     if @string2.bitmap == nil
  167.       create_string2
  168.       return
  169.     end
  170.   end
  171.   #--------------------------------------------------------------------------
  172.   # ○ フレーム更新:文字列の処理
  173.   #--------------------------------------------------------------------------
  174.   def update_string_process
  175.     return if @last_flag
  176.     @timer += 1
  177.     if @timer == 5
  178.       @string1.y -= 4 if @string1.bitmap
  179.       @string2.y -= 4 if @string2.bitmap
  180.       if (@string1.y < Graphics.height / 2 - 16) && RGSSinit057::REGISTRATION[@entry + 1] == nil && RGSSinit057::LAST_STRING_STOP
  181.         @last_flag = true
  182.       end
  183.       @timer = 0
  184.     end
  185.     if @string2.y < -46
  186.       @string1.bitmap = nil
  187.       @string2.bitmap = nil
  188.       @entry += 1
  189.       @timer = 0
  190.     end
  191.   end
  192.   #--------------------------------------------------------------------------
  193.   # ○ 文字列の作成1
  194.   #--------------------------------------------------------------------------
  195.   def create_string1
  196.     @string1.bitmap = Bitmap.new(1, 1)
  197.     rect = @string1.bitmap.text_size(RGSSinit057::REGISTRATION[@entry][0])
  198.     @string1.bitmap.dispose
  199.     @string1.bitmap = Bitmap.new(rect.width, rect.height)
  200.     @string1.bitmap.font.color = Color.new(192, 192, 255)
  201.     @string1.bitmap.draw_text(rect, RGSSinit057::REGISTRATION[@entry][0])
  202.     @string1.x = (Graphics.width - rect.width) / 2
  203.     @string1.y = Graphics.height - 16 + 30
  204.   end
  205.   #--------------------------------------------------------------------------
  206.   # ○ 文字列の作成2
  207.   #--------------------------------------------------------------------------
  208.   def create_string2
  209.     @string2.bitmap = Bitmap.new(1, 1)
  210.     rect = @string2.bitmap.text_size(RGSSinit057::REGISTRATION[@entry][1])
  211.     @string2.bitmap.dispose
  212.     @string2.bitmap = Bitmap.new(rect.width, rect.height)
  213.     @string2.bitmap.draw_text(rect, RGSSinit057::REGISTRATION[@entry][1])
  214.     @string2.x = (Graphics.width - rect.width) / 2
  215.     @string2.y = Graphics.height + 16 + 30
  216.   end
  217.   #--------------------------------------------------------------------------
  218.   # ○ 終了処理 [オーバーライド]
  219.   #--------------------------------------------------------------------------
  220.   def terminate
  221.     super
  222.     Audio.bgm_play("Audio/BGM/" + @temp.name) if @temp.name != ""
  223.     dispose_sprites
  224.   end
  225.   #--------------------------------------------------------------------------
  226.   # ○ スプライトの解放
  227.   #--------------------------------------------------------------------------
  228.   def dispose_sprites
  229.     @background_sprite.dispose
  230.     @string1.dispose
  231.     @string2.dispose
  232.   end
  233. end

  234. end
复制代码
叧外一個
http://www4.plala.or.jp/findias/ ... ce_rgss3/index.html
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部