Project1

标题: 关于进入副本的菜单 [打印本页]

作者: HTTP404    时间: 2011-8-26 10:04
标题: 关于进入副本的菜单
我想要一个菜单脚本,进入后就像这样
左边栏选择后,再按一下空格(决定键),就能传送至某个场景,有这样的脚本吗?dsu_plus_rewardpost_czw
作者: 2578699    时间: 2011-8-26 10:11
图片看不到
作者: 癫狂侠客    时间: 2011-8-26 11:09
本帖最后由 癫狂侠客 于 2011-8-26 11:10 编辑

可以,直接在在Scene_Menu里添加选项,然后引导一个Scene类,
在Scene类里选择去的地方,执行跳转地图的脚本就可以了

PS:由于图片看不到所以只能大概说下,有问题可以QQ联系某侠,在线解决
QQ:361621602
作者: HTTP404    时间: 2011-8-27 10:13
就这样,有这样的菜单吗?

!123.jpg (43.56 KB, 下载次数: 2)

!123.jpg

作者: Wind2010    时间: 2011-8-27 10:15
貌似这个可以用叶子的任务脚本做到?
作者: HTTP404    时间: 2011-8-27 10:18
选定后,再按一下决定建就能换场景,有吗?
作者: 47731089    时间: 2011-8-27 10:36
用这个传送脚本怎么样,只是简陋了点。
因为不知到你是什么菜单,调用可以通过物品,公共事件。
  1. #==============================================================================
  2. # 本脚本来自www.66RPG.com,使用和转载请保留此信息
  3. #==============================================================================

  4. # 自定义内容解释:
  5. # TOWNS[编号]=["地名,可以随便写",开关编号,[传送去的地图id,传送去的地图x,
  6. #              传送去的地图y],角色朝向]
  7. #
  8. # 编号请按照0、1、2、3……顺序往下排布
  9. # 当编号的开关打开的时候,才可以选择这个传送地点
  10. # 角色朝向,2为下,4为左,6为右,8为上,具体可以参考自己数字小键盘的方向和数字关系
  11. # 如果是其他方向请自己改。
  12. #
  13. # 需要制作脚本,请点击66rpg.com最底部的QQ交谈
  14. #
  15. # 使用方法:在需要传送的传送门、传送石、传送羽毛、传送旅店一类的地方使用公共事件:
  16. #           呼叫脚本:$scene = Scene_Teleport.new
  17. #
  18. # 制作者:柳柳
  19. #==============================================================================
  20. TOWNS=[]
  21. TOWNS[0]=["古德城堡东门",11,[1,2,3],2]
  22. TOWNS[1]=["古德城堡西门",12,[1,2,5],4]
  23. TOWNS[2]=["修道院门口",13,[3,3,6],4]
  24. TOWNS[3]=["女神遗迹南口",14,[4,2,6],4]
  25. TOWNS[4]=["圣天城骑士团练兵场",15,[5,2,6],4]
  26. TOWNS[5]=["许愿之塔",16,[6,9,6],4]
  27. #==============================================================================
  28. # ■ Window_Teleport
  29. #------------------------------------------------------------------------------
  30. #  处理传送的窗口
  31. #==============================================================================
  32. class Window_Teleport < Window_Selectable
  33.   #--------------------------------------------------------------------------
  34.   # ● 初始化对像
  35.   #--------------------------------------------------------------------------
  36.   def initialize
  37.     super(640,640,64,64)
  38.     self.contents = Bitmap.new(width, height)
  39.     self.opacity = 180
  40.     get_towns
  41.     draw_towns
  42.     @column_max = 1
  43.   end
  44.   #--------------------------------------------------------------------------
  45.   # ● 获取可到达的城镇和窗口大小
  46.   #--------------------------------------------------------------------------
  47.   def get_towns
  48.     @carol3_towns = []
  49.     @width_temp = 0
  50.     @cont_use = false
  51.     for town in TOWNS
  52.       if $game_switches[town[1]]==true
  53.         @carol3_towns.push(town)
  54.         if contents.text_size(town[0]).width >= @width_temp
  55.           @width_temp = contents.text_size(town[0]).width
  56.         end
  57.       end
  58.     end
  59.     @item_max = @carol3_towns.size
  60.     if @item_max == 0
  61.       @carol3_towns[0] = ["没有可以传送的地方",1,[1,1,1]]
  62.       @width_temp = contents.text_size(@carol3_towns[0][0]).width
  63.       @item_max = 1
  64.       @cont_use = true
  65.     end
  66.     self.width = [@width_temp+32,480].min
  67.     self.height = [(@item_max+1)*32,360].min
  68.     self.x = (640-self.width)/2
  69.     self.y = (480-self.height)/2
  70.     self.contents = Bitmap.new(width-32,row_max*32)
  71.   end
  72.   #--------------------------------------------------------------------------
  73.   # ● 描绘城镇名称
  74.   #--------------------------------------------------------------------------
  75.   def draw_towns
  76.     for i in 0...@carol3_towns.size
  77.       self.contents.draw_text(0,i*32,@width_temp,32,@carol3_towns[i][0],1)
  78.     end
  79.   end
  80.   #--------------------------------------------------------------------------
  81.   # ● 返回的内容
  82.   #========================================================================
  83.   # ● 地图编号
  84.   #--------------------------------------------------------------------------
  85.   def map_id
  86.     return @carol3_towns[self.index][2][0]
  87.   end
  88.   #--------------------------------------------------------------------------
  89.   # ● 地图x坐标
  90.   #--------------------------------------------------------------------------
  91.   def map_x
  92.     return @carol3_towns[self.index][2][1]
  93.   end      
  94.   #--------------------------------------------------------------------------
  95.   # ● 地图y坐标
  96.   #--------------------------------------------------------------------------
  97.   def map_y
  98.     return @carol3_towns[self.index][2][2]
  99.   end
  100.   #--------------------------------------------------------------------------
  101.   # ● 角色朝向
  102.   #--------------------------------------------------------------------------
  103.   def map_direction
  104.     return @carol3_towns[self.index][2][3]
  105.   end
  106.   #--------------------------------------------------------------------------
  107.   # ● 判断是否一个城市都没有
  108.   #--------------------------------------------------------------------------
  109.   def cant_use?
  110.     return @cont_use
  111.   end
  112. end
  113. #==============================================================================
  114. # ■ Scene_Teleport
  115. #------------------------------------------------------------------------------
  116. #  处理传送执行的类
  117. #==============================================================================
  118. class Scene_Teleport
  119.   #--------------------------------------------------------------------------
  120.   # ● 主处理
  121.   #--------------------------------------------------------------------------
  122.   def main
  123.     $game_system.se_play($data_system.decision_se)
  124.     @carol3_trans_white = false
  125.     @carol3_map_sprite = Spriteset_Map.new
  126.     @carol3_teleport_window = Window_Teleport.new
  127.     if @carol3_teleport_window.cant_use?
  128.       @carol3_teleport_window.index = -1
  129.     else
  130.       @carol3_teleport_window.index = 0
  131.     end
  132.     @carol3_teleport_window.active = true
  133.     Graphics.transition
  134.     loop do
  135.       Graphics.update
  136.       Input.update
  137.       carol3_update
  138.       if $scene != self
  139.         break
  140.       end
  141.     end   
  142.     if @carol3_trans_white==true
  143.       @carol3_white_sprite = Sprite.new
  144.       @carol3_white_sprite.bitmap = Bitmap.new(640,480)
  145.       @carol3_white_sprite.opacity = 0
  146.       @carol3_white_sprite.bitmap.fill_rect(0, 0, 640, 480, Color.new(255,255,255,255))
  147.       for i in 0..20
  148.         @carol3_white_sprite.opacity += 15
  149.         @carol3_teleport_window.opacity -= 12
  150.         @carol3_teleport_window.contents_opacity -= 12
  151.         Graphics.update
  152.       end
  153.       Graphics.freeze
  154.       Graphics.transition(0)
  155.       Graphics.update
  156.       @carol3_map_sprite.dispose
  157.       $game_map.setup($game_temp.player_new_map_id)
  158.       $game_player.moveto($game_temp.player_new_x, $game_temp.player_new_y)
  159.       $game_player.turn_down
  160.       $game_player.straighten
  161.       $game_map.autoplay      
  162.       Graphics.frame_reset
  163.       for i in 0..20
  164.         @carol3_white_sprite.opacity -= 15
  165.         Graphics.update
  166.       end
  167.       @carol3_white_sprite.dispose
  168.       @carol3_teleport_window.dispose
  169.       Graphics.freeze
  170.     else
  171.       Graphics.freeze
  172.       @carol3_teleport_window.dispose
  173.       @carol3_map_sprite.dispose
  174.     end   
  175.   end
  176.   #--------------------------------------------------------------------------
  177.   # ● 刷新画面
  178.   #--------------------------------------------------------------------------
  179.   def carol3_update
  180.     @carol3_teleport_window.update
  181.     if Input.trigger?(Input::B)
  182.       $game_system.se_play($data_system.cancel_se)
  183.       $scene = Scene_Map.new
  184.       return
  185.     end
  186.     if Input.trigger?(Input::C)
  187.       if @carol3_teleport_window.index == -1
  188.         $game_system.se_play($data_system.cancel_se)
  189.         $scene = Scene_Map.new
  190.         return
  191.       else        
  192.         $game_temp.player_new_map_id = @carol3_teleport_window.map_id
  193.         $game_temp.player_new_x = @carol3_teleport_window.map_x
  194.         $game_temp.player_new_y = @carol3_teleport_window.map_y
  195.         $game_temp.player_new_direction = @carol3_teleport_window.map_direction
  196.         $game_temp.player_transferring = true
  197.         $game_temp.transition_processing = true
  198.         $game_temp.transition_name = ""
  199.         $scene = Scene_Map.new
  200.         @carol3_trans_white = true
  201.         Audio.se_play("Audio/SE/" + "018-Teleport01",100,100)
  202.         return
  203.       end
  204.     end   
  205.   end
  206. end

  207. #==============================================================================
  208. # 本脚本来自www.66RPG.com,使用和转载请保留此信息
  209. #==============================================================================

复制代码

作者: HTTP404    时间: 2011-8-29 13:58
急急急!有人会吗????????????????!!!!!!!!!!!!!!
作者: zphyp120    时间: 2011-8-29 14:22
楼上上正解


zphyp120于2011-8-29 14:43补充以下内容:
[quote]那个太简单……[/quote]
你说黑暗圣剑的脚本简单?那你做一个黑暗圣剑传说出来?




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