扫描二维码关注官方公众号
返回列表
+ 发新帖
查看: 133|回复: 0

[转载发布] 【XP】图标菜单优化+地图名

[复制链接]
累计送礼:
0 个
累计收礼:
0 个
  • TA的每日心情
    开心
    昨天 16:47
  • 签到天数: 113 天

    连续签到: 3 天

    [LV.6]常住居民II

    2338

    主题

    400

    回帖

    1万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    VIP
    6
    卡币
    10580
    OK点
    16
    推广点
    0
    同能卷
    0
    积分
    13346

    灌水之王

    发表于 2024-4-18 19:12:00 | 显示全部楼层 |阅读模式
    好吧我其实是大自然的搬运工!效果图来也

    好了那啥啥的不说了
    方法:
    插入到main前面创建新的然后粘贴不用我多说吧- -
    358行请改为@disabled = [ false, false, false, false, false, false ]
    RUBY 代码
    1. #===================================================
    2. # ■ Ring Menu - Show Player Location - Release #1 (Enhanced By Dubealex)
    3. #===================================================
    4. # For more infos and update, visit:
    5. # asylum.dubealex.com
    6. #
    7. # Original Ring Menu by: 和希 (From XRXS)
    8. # Original Edit and Fix by: Maki
    9. # Show Player Location Version by: Dubealex
    10. #
    11. # You can customize this script at line #35 - Have fun !!
    12. # If you want to show more stuff, its easy to do, you can try to ask in the forum.
    13. #
    14. # [email][email protected][/email]
    15. #===================================================
    16. #===================================================
    17. # ▼ CLASS Scene_Menu Begins
    18. #===================================================
    19. class Scene_Menu
    20. #--------------------------------------------------------------------------
    21. # œ ƒIƒuƒWƒFƒNƒg‰Šú‰»
    22. #     menu_index : ƒRƒ}ƒ“ƒh‚̃J[ƒ\ƒ‹‰ŠúˆÊ’u
    23. #--------------------------------------------------------------------------
    24. def initialize(menu_index = 0)
    25.    @menu_index = menu_index
    26.    $location_text=[]
    27.    $window_size=[]
    28.    $ring_menu_text=[]
    29.    $chara_select=[]
    30.    @window_opacity=[]
    31.    @chara_select=[]
    32.    @window_position=[]
    33.     #--------------------------------------------------------------------------------------------------
    34.     # ■ Ring Menu Customization Section: (By Dubealex)
    35.     #--------------------------------------------------------------------------------------------------
    36.     # Those variables defines how the script will act.
    37.     # Simply change the value by those you want.
    38.     # Remember that changing the font size has its limitation due to text space allocation.
    39.     #
    40.     # ▼ TEXT SETTINGS FOR SHOW PLAYER LOCATION WINDOW:
    41.     $location_text[0]="Tahoma"      # Font Type
    42.     $location_text[1]=22                # Font Size
    43.     $location_text[2]=6                  # Location Title Color
    44.     $location_text[4]=0                  # Map Name Color
    45.     $location_text[3]="Location:"     # Customize the "Location" Title Text
    46.     # ▼ SHOW LOCATION WINDOW SETTINS:
    47.     @show_location_window=true                       #Set to false to not use it !
    48.     @window_opacity[0]=255                             # Border Opacity
    49.     @window_opacity[1]=130                             # Background Opacity
    50.     $window_location_skin="001-Blue01"            # Window Skin
    51.     @window_position[0]=20                             # X Axis Position
    52.     @window_position[1]=20                             # Y Axis Position
    53.     $window_size[0]=160                                  # Lengh
    54.     $window_size[1]=96                                    # Heigh
    55.     # ▼  TEXT SETTINGS FOR INSIDE THE RING MENU:
    56.     $ring_menu_text[0]="Tahoma"      # Font Type
    57.     $ring_menu_text[7]=0                  # Font Color
    58.     $ring_menu_text[8]=22                # Font Size
    59.     $ring_menu_text[1]="Items"         # Items Menu Text
    60.     $ring_menu_text[2]="Skills"          # Skills Menu Text
    61.     $ring_menu_text[3]="Equip"         # Equip Menu Text
    62.     $ring_menu_text[4]="Stats"          # Stats Menu Text
    63.     $ring_menu_text[5]="Save"          # Save Menu Text
    64.     $ring_menu_text[6]="Quit"           # Quit Menu Text
    65.     # ▼  CHARACTER SELECTION WINDOW SETTINGS :
    66.     @chara_select[0]=400               # X Axis Position
    67.     @chara_select[1]=0                  # Y Axis Position
    68.     $chara_select[0]="Tahoma"       # Font Type
    69.     $chara_select[1]=0                   # Font Color
    70.     $chara_select[5]=22                  # Font Size
    71.     $chara_select[2]=255               # Window Border Opacity
    72.     $chara_select[3]=130               # Window Background Opacity
    73.     $chara_select[4]="001-Blue01"  # Window Skin to use
    74.    #--------------------------------------------------------------------------------------------------
    75. end
    76. #--------------------------------------------------------------------------
    77. # œ ƒƒCƒ“ˆ—
    78. #--------------------------------------------------------------------------
    79. def main
    80.    # Show Player Location Feature:
    81.    if@show_location_window==true   
    82.    @window_location = Window_Location.new
    83.       @window_location.x = @window_position[0]
    84.       @window_location.y = @window_position[1]
    85.       @window_location.opacity = @window_opacity[0]
    86.       @window_location.back_opacity = @window_opacity[1]
    87.       end
    88.    #End of Show Player Location
    89.    # ƒXƒvƒ‰ƒCƒgƒZƒbƒg‚ðì¬
    90.    @spriteset = Spriteset_Map.new
    91.    # ƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚ðì¬
    92.    px = $game_player.screen_x - 15
    93.    py = $game_player.screen_y - 24
    94.    @command_window = Window_RingMenu.new(px,py)
    95.    @command_window.index = @menu_index
    96.    # ƒp[ƒeƒBl”‚ª 0 l‚̏ꍇ
    97.    if$game_party.actors.size == 0
    98.      # ƒAƒCƒeƒ€AƒXƒLƒ‹A‘•”õAƒXƒe[ƒ^ƒX‚𖳌ø‰»
    99.      @command_window.disable_item(0)
    100.      @command_window.disable_item(1)
    101.      @command_window.disable_item(2)
    102.      @command_window.disable_item(3)
    103.    end
    104.    @command_window.z = 100
    105.    # ƒZ[ƒu‹ÖŽ~‚̏ꍇ
    106.    if$game_system.save_disabled
    107.      # ƒZ[ƒu‚𖳌ø‚É‚·‚é
    108.      @command_window.disable_item(4)
    109.    end
    110.    # ƒXƒe[ƒ^ƒXƒEƒBƒ“ƒhƒE‚ðì¬
    111.    @status_window = Window_RingMenuStatus.new
    112.    @status_window.x = @chara_select[0]
    113.    @status_window.y = @chara_select[1]
    114.    @status_window.z = 200
    115.    @status_window.opacity=$chara_select[2]
    116.    @status_window.back_opacity=$chara_select[3]
    117.    @status_window.visible = false
    118.    # ƒgƒ‰ƒ“ƒWƒVƒ‡ƒ“ŽÀs
    119.    Graphics.transition
    120.    # ƒƒCƒ“ƒ‹[ƒv
    121.    loopdo
    122.      # ƒQ[ƒ€‰æ–Ê‚ðXV
    123.      Graphics.update
    124.      # “ü—͏î•ñ‚ðXV
    125.      Input.update
    126.      # ƒtƒŒ[ƒ€XV
    127.      update
    128.      # ‰æ–Ê‚ªØ‚è‘Ö‚í‚Á‚½‚烋[ƒv‚ð’†’f
    129.      if$scene != self
    130.        break
    131.      end
    132.    end
    133.    # ƒgƒ‰ƒ“ƒWƒVƒ‡ƒ“€”õ
    134.    Graphics.freeze
    135.    # ƒXƒvƒ‰ƒCƒgƒZƒbƒg‚ð‰ð•ú
    136.    @spriteset.dispose
    137.    # ƒEƒBƒ“ƒhƒE‚ð‰ð•ú
    138.    if@show_location_window==true
    139.    @window_location.dispose
    140.    end
    141.    @command_window.dispose
    142.    @status_window.dispose
    143. end
    144. #--------------------------------------------------------------------------
    145. # œ ƒtƒŒ[ƒ€XV
    146. #--------------------------------------------------------------------------
    147. def update
    148.    # ƒEƒBƒ“ƒhƒE‚ðXV
    149.    if@show_location_window==true
    150.    @window_location.update
    151.    end
    152.    @command_window.update
    153.    @status_window.update
    154.    # ƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚ªƒAƒNƒeƒBƒu‚̏ꍇ: update_command ‚ðŒÄ‚Ô
    155.    if@command_window.active
    156.      update_command
    157.      return
    158.    end
    159.    # ƒXƒe[ƒ^ƒXƒEƒBƒ“ƒhƒE‚ªƒAƒNƒeƒBƒu‚̏ꍇ: update_status ‚ðŒÄ‚Ô
    160.    if@status_window.active
    161.      update_status
    162.      return
    163.    end
    164. end
    165. #--------------------------------------------------------------------------
    166. # œ ƒtƒŒ[ƒ€XV (ƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚ªƒAƒNƒeƒBƒu‚̏ꍇ)
    167. #--------------------------------------------------------------------------
    168. def update_command
    169.    # B ƒ{ƒ^ƒ“‚ª‰Ÿ‚³‚ꂽê‡
    170.    if Input.trigger?(Input::B)
    171.      # ƒLƒƒƒ“ƒZƒ‹ SE ‚ð‰‰‘t
    172.      $game_system.se_play($data_system.cancel_se)
    173.      # ƒ}ƒbƒv‰æ–ʂɐ؂è‘Ö‚¦
    174.      $scene = Scene_Map.new
    175.      return
    176.    end
    177.    # C ƒ{ƒ^ƒ“‚ª‰Ÿ‚³‚ꂽê‡
    178.    if Input.trigger?(Input::C)
    179.      # ƒp[ƒeƒBl”‚ª 0 l‚ŁAƒZ[ƒuAƒQ[ƒ€I—¹ˆÈŠO‚̃Rƒ}ƒ“ƒh‚̏ꍇ
    180.      if$game_party.actors.size == 0and@command_window.index < 4
    181.        # ƒuƒU[ SE ‚ð‰‰‘t
    182.        $game_system.se_play($data_system.buzzer_se)
    183.        return
    184.      end
    185.      # ƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚̃J[ƒ\ƒ‹ˆÊ’u‚Å•ªŠò
    186.      case@command_window.index
    187.      when0  # ƒAƒCƒeƒ€
    188.        # Œˆ’è  SE ‚ð‰‰‘t
    189.        $game_system.se_play($data_system.decision_se)
    190.        # ƒAƒCƒeƒ€‰æ–ʂɐ؂è‘Ö‚¦
    191.        $scene = Scene_Item.new
    192.      when1  # ƒXƒLƒ‹
    193.        # Œˆ’è SE ‚ð‰‰‘t
    194.        $game_system.se_play($data_system.decision_se)
    195.        # ƒXƒe[ƒ^ƒXƒEƒBƒ“ƒhƒE‚ðƒAƒNƒeƒBƒu‚É‚·‚é
    196.        @command_window.active = false
    197.        @status_window.active = true
    198.        @status_window.visible = true
    199.        @status_window.index = 0
    200.      when2  # ‘•”õ
    201.        # Œˆ’è SE ‚ð‰‰‘t
    202.        $game_system.se_play($data_system.decision_se)
    203.        # ƒXƒe[ƒ^ƒXƒEƒBƒ“ƒhƒE‚ðƒAƒNƒeƒBƒu‚É‚·‚é
    204.        @command_window.active = false
    205.        @status_window.active = true
    206.        @status_window.visible = true
    207.        @status_window.index = 0
    208.      when3  # ƒXƒe[ƒ^ƒX
    209.        # Œˆ’è SE ‚ð‰‰‘t
    210.        $game_system.se_play($data_system.decision_se)
    211.        # ƒXƒe[ƒ^ƒXƒEƒBƒ“ƒhƒE‚ðƒAƒNƒeƒBƒu‚É‚·‚é
    212.        @command_window.active = false
    213.        @status_window.active = true
    214.        @status_window.visible = true
    215.        @status_window.index = 0
    216.      when4  # ƒZ[ƒu
    217.        # ƒZ[ƒu‹ÖŽ~‚̏ꍇ
    218.        if$game_system.save_disabled
    219.          # ƒuƒU[ SE ‚ð‰‰‘t
    220.          $game_system.se_play($data_system.buzzer_se)
    221.          return
    222.        end
    223.        # Œˆ’è SE ‚ð‰‰‘t
    224.        $game_system.se_play($data_system.decision_se)
    225.        # ƒZ[ƒu‰æ–ʂɐ؂è‘Ö‚¦
    226.        $scene = Scene_Save.new
    227.      when5  # ƒQ[ƒ€I—¹
    228.        # Œˆ’è SE ‚ð‰‰‘t
    229.        $game_system.se_play($data_system.decision_se)
    230.        # ƒQ[ƒ€I—¹‰æ–ʂɐ؂è‘Ö‚¦
    231.        $scene = Scene_End.new
    232.      end
    233.      return
    234.    end
    235.    # ƒAƒjƒ[ƒVƒ‡ƒ“’†‚È‚çƒJ[ƒ\ƒ‹‚̏ˆ—‚ðs‚í‚È‚¢
    236.    returnif@command_window.animation?
    237.    # ªor© ƒ{ƒ^ƒ“‚ª‰Ÿ‚³‚ꂽê‡
    238.    if Input.press?(Input::UP)or  Input.press?(Input::LEFT)
    239.      $game_system.se_play($data_system.cursor_se)
    240.      @command_window.setup_move_move(Window_RingMenu::MODE_MOVEL)
    241.      return
    242.    end
    243.    # «or¨ ƒ{ƒ^ƒ“‚ª‰Ÿ‚³‚ꂽê‡
    244.    if Input.press?(Input::DOWN)or  Input.press?(Input::RIGHT)
    245.      $game_system.se_play($data_system.cursor_se)
    246.      @command_window.setup_move_move(Window_RingMenu::MODE_MOVER)
    247.      return
    248.    end
    249. end
    250. #--------------------------------------------------------------------------
    251. # œ ƒtƒŒ[ƒ€XV (ƒXƒe[ƒ^ƒXƒEƒBƒ“ƒhƒE‚ªƒAƒNƒeƒBƒu‚̏ꍇ)
    252. #--------------------------------------------------------------------------
    253. def update_status
    254.    # B ƒ{ƒ^ƒ“‚ª‰Ÿ‚³‚ꂽê‡
    255.    if Input.trigger?(Input::B)
    256.      # ƒLƒƒƒ“ƒZƒ‹ SE ‚ð‰‰‘t
    257.      $game_system.se_play($data_system.cancel_se)
    258.      # ƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚ðƒAƒNƒeƒBƒu‚É‚·‚é
    259.      @command_window.active = true
    260.      @status_window.active = false
    261.      @status_window.visible = false
    262.      @status_window.index = -1
    263.      return
    264.    end
    265.    # C ƒ{ƒ^ƒ“‚ª‰Ÿ‚³‚ꂽê‡
    266.    if Input.trigger?(Input::C)
    267.      # ƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚̃J[ƒ\ƒ‹ˆÊ’u‚Å•ªŠò
    268.      case@command_window.index
    269.      when1  # ƒXƒLƒ‹
    270.        # ‚±‚̃AƒNƒ^[‚̍s“®§ŒÀ‚ª 2 ˆÈã‚̏ꍇ
    271.        if$game_party.actors[@status_window.index].restriction >= 2
    272.          # ƒuƒU[ SE ‚ð‰‰‘t
    273.          $game_system.se_play($data_system.buzzer_se)
    274.          return
    275.        end
    276.        # Œˆ’è SE ‚ð‰‰‘t
    277.        $game_system.se_play($data_system.decision_se)
    278.        # ƒXƒLƒ‹‰æ–ʂɐ؂è‘Ö‚¦
    279.        $scene = Scene_Skill.new(@status_window.index)
    280.      when2  # ‘•”õ
    281.        # Œˆ’è SE ‚ð‰‰‘t
    282.        $game_system.se_play($data_system.decision_se)
    283.        # ‘•”õ‰æ–ʂɐ؂è‘Ö‚¦
    284.        $scene = Scene_Equip.new(@status_window.index)
    285.      when3  # ƒXƒe[ƒ^ƒX
    286.        # Œˆ’è SE ‚ð‰‰‘t
    287.        $game_system.se_play($data_system.decision_se)
    288.        # ƒXƒe[ƒ^ƒX‰æ–ʂɐ؂è‘Ö‚¦
    289.        $scene = Scene_Status.new(@status_window.index)
    290.      end
    291.      return
    292.    end
    293. end
    294. end
    295. #===================================================
    296. # ▲ CLASS Scene_Menu Ends
    297. #===================================================
    298. #===================================================
    299. # ▼ CLASS Window_RingMenu  Begins
    300. #===================================================
    301. class Window_RingMenu < Window_Base
    302. #--------------------------------------------------------------------------
    303. # › ƒNƒ‰ƒX’萔
    304. #--------------------------------------------------------------------------
    305. STARTUP_FRAMES = 20
    306. MOVING_FRAMES = 5  
    307. RING_R = 64        
    308. ICON_ITEM   = RPG::Cache.icon("034-Item03")
    309. ICON_SKILL  = RPG::Cache.icon("044-Skill01")
    310. ICON_EQUIP  = RPG::Cache.icon("001-Weapon01")
    311. ICON_STATUS = RPG::Cache.icon("050-Skill07")
    312. ICON_SAVE   = RPG::Cache.icon("038-Item07")
    313. ICON_EXIT   = RPG::Cache.icon("046-Skill03")
    314. ICON_DISABLE= RPG::Cache.icon("")
    315. SE_STARTUP = "056-Right02"
    316. MODE_START = 1
    317. MODE_WAIT  = 2
    318. MODE_MOVER = 3
    319. MODE_MOVEL = 4
    320. #--------------------------------------------------------------------------
    321. # › ƒAƒNƒZƒT
    322. #--------------------------------------------------------------------------
    323. attr_accessor :index
    324. #--------------------------------------------------------------------------
    325. # œ ƒIƒuƒWƒFƒNƒg‰Šú‰»
    326. #--------------------------------------------------------------------------
    327. def initialize( center_x, center_y )
    328.    super(0, 0, 640, 480)
    329.    self.contents = Bitmap.new(width-32, height-32)
    330.    self.contents.font.name = $ring_menu_text[0]
    331.    self.contents.font.color = text_color($ring_menu_text[7])
    332.    self.contents.font.size = $ring_menu_text[8]
    333.    self.opacity = 0
    334.    self.back_opacity = 0
    335.    s1 = $ring_menu_text[1]
    336.    s2 = $ring_menu_text[2]
    337.    s3 = $ring_menu_text[3]
    338.    s4 = $ring_menu_text[4]
    339.    s5 = $ring_menu_text[5]
    340.    s6 = $ring_menu_text[6]
    341.    @commands = [ s1, s2, s3, s4, s5, s6 ]
    342.    @item_max = 6
    343.    @index = 0
    344.    @items = [ ICON_ITEM, ICON_SKILL, ICON_EQUIP, ICON_STATUS, ICON_SAVE, ICON_EXIT ]
    345.    [url=home.php?mod=space&uid=249395]@disabled[/url] = [false, false, false, false, false, false]
    346.    @cx = center_x - 16
    347.    @cy = center_y - 16
    348.    setup_move_start
    349.    refresh
    350. end
    351. #--------------------------------------------------------------------------
    352. # œ ƒtƒŒ[ƒ€XV
    353. #--------------------------------------------------------------------------
    354. def update
    355.    super
    356.    refresh
    357. end
    358. #--------------------------------------------------------------------------
    359. # œ ‰æ–ʍĕ`‰æ
    360. #--------------------------------------------------------------------------
    361. def refresh
    362.    self.contents.clear
    363.    # ƒAƒCƒRƒ“‚ð•`‰æ
    364.    case@mode
    365.    when MODE_START
    366.      refresh_start
    367.    when MODE_WAIT
    368.      refresh_wait
    369.    when MODE_MOVER
    370.      refresh_move(1)
    371.    when MODE_MOVEL
    372.      refresh_move(0)
    373.    end
    374.    # ƒAƒNƒeƒBƒu‚ȃRƒ}ƒ“ƒh–¼•\Ž¦
    375.    rect = Rect.new(@cx - 272, @cy + 24, self.contents.width-32, 32)
    376.    self.contents.draw_text(rect, @commands[@index],1)
    377. end
    378. #--------------------------------------------------------------------------
    379. # › ‰æ–ʍĕ`‰æ(‰Šú‰»Žž)
    380. #--------------------------------------------------------------------------
    381. def refresh_start
    382.    d1 = 2.0 * Math::PI / @item_max
    383.    d2 = 1.0 * Math::PI / STARTUP_FRAMES
    384.    r = RING_R - 1.0 * RING_R * @steps / STARTUP_FRAMES
    385.    for i in0...@item_max
    386.      j = i - @index
    387.      d = d1 * j + d2 * @steps
    388.      x = @cx + ( r * Math.sin( d )).to_i
    389.      y = @cy - ( r * Math.cos( d )).to_i
    390.      draw_item(x, y, i)
    391.    end
    392.    @steps -= 1
    393.    if@steps < 1
    394.      @mode = MODE_WAIT
    395.    end
    396. end
    397. #--------------------------------------------------------------------------
    398. # › ‰æ–ʍĕ`‰æ(‘Ò‹@Žž)
    399. #--------------------------------------------------------------------------
    400. def refresh_wait
    401.    d = 2.0 * Math::PI / @item_max
    402.    for i in0...@item_max
    403.      j = i - @index
    404.      x = @cx + ( RING_R * Math.sin( d * j )).to_i
    405.      y = @cy - ( RING_R * Math.cos( d * j )).to_i
    406.      draw_item(x, y, i)
    407.    end
    408. end
    409. #--------------------------------------------------------------------------
    410. # › ‰æ–ʍĕ`‰æ(‰ñ“]Žž)
    411. #  mode : 0=”½ŽžŒv‰ñ‚è 1=ŽžŒv‰ñ‚è
    412. #--------------------------------------------------------------------------
    413. def refresh_move( mode )
    414.    d1 = 2.0 * Math::PI / @item_max
    415.    d2 = d1 / MOVING_FRAMES
    416.    d2 *= -1if mode != 0
    417.    for i in0...@item_max
    418.      j = i - @index
    419.      d = d1 * j + d2 * @steps
    420.      x = @cx + ( RING_R * Math.sin( d )).to_i
    421.      y = @cy - ( RING_R * Math.cos( d )).to_i
    422.      draw_item(x, y, i)
    423.    end
    424.    @steps -= 1
    425.    if@steps < 1
    426.      @mode = MODE_WAIT
    427.    end
    428. end
    429. #--------------------------------------------------------------------------
    430. # œ €–Ú‚Ì•`‰æ
    431. #     x :
    432. #     y :
    433. #     i : €–ڔԍ†
    434. #--------------------------------------------------------------------------
    435. def draw_item(x, y, i)
    436.    #p "x=" + x.to_s + " y=" + y.to_s + " i=" + @items[i].to_s
    437.    rect = Rect.new(0, 0, @items[i].width, @items[i].height)
    438.    if@index == i
    439.      self.contents.blt( x, y, @items[i], rect )
    440.      if@disabled[@index]
    441.        self.contents.blt( x, y, ICON_DISABLE, rect )
    442.      end
    443.    else
    444.      self.contents.blt( x, y, @items[i], rect, 128)
    445.      if@disabled[@index]
    446.        self.contents.blt( x, y, ICON_DISABLE, rect, 128)
    447.      end
    448.    end
    449. end
    450. #--------------------------------------------------------------------------
    451. # œ €–ڂ𖳌ø‚É‚·‚é
    452. #     index : €–ڔԍ†
    453. #--------------------------------------------------------------------------
    454. def disable_item(index)
    455.    @disabled[index] = true
    456. end
    457. #--------------------------------------------------------------------------
    458. # › ‰Šú‰»ƒAƒjƒ[ƒVƒ‡ƒ“‚̏€”õ
    459. #--------------------------------------------------------------------------
    460. def setup_move_start
    461.    @mode = MODE_START
    462.    @steps = STARTUP_FRAMES
    463.    if  SE_STARTUP != niland SE_STARTUP != ""
    464.      Audio.se_play("Audio/SE/" + SE_STARTUP, 80, 100)
    465.    end
    466. end
    467. #--------------------------------------------------------------------------
    468. # › ‰ñ“]ƒAƒjƒ[ƒVƒ‡ƒ“‚̏€”õ
    469. #--------------------------------------------------------------------------
    470. def setup_move_move(mode)
    471.    if mode == MODE_MOVER
    472.      @index -= 1
    473.      @index = @items.size - 1if@index < 0
    474.    elsif mode == MODE_MOVEL
    475.      @index += 1
    476.      @index = 0if@index >= @items.size
    477.    else
    478.      return
    479.    end
    480.    @mode = mode
    481.    @steps = MOVING_FRAMES
    482. end
    483. #--------------------------------------------------------------------------
    484. # › ƒAƒjƒ[ƒVƒ‡ƒ“’†‚©‚Ç‚¤‚©
    485. #--------------------------------------------------------------------------
    486. def animation?
    487.    return@mode != MODE_WAIT
    488. end
    489. end
    490. #===================================================
    491. # ▲ CLASS Window_RingMenu Ends
    492. #===================================================
    493. #===================================================
    494. # ▼ CLASS Window_RingMenuStatus Begins
    495. #===================================================
    496. class Window_RingMenuStatus < Window_Selectable
    497. #--------------------------------------------------------------------------
    498. # œ ƒIƒuƒWƒFƒNƒg‰Šú‰»
    499. #--------------------------------------------------------------------------
    500. def initialize
    501.    super(204, 64, 232, 352)
    502.    self.contents = Bitmap.new(width - 32, height - 32)
    503.    self.contents.font.size = $chara_select[5]
    504.    refresh
    505.    self.active = false
    506.    self.index = -1
    507. end
    508. #--------------------------------------------------------------------------
    509. # œ ƒŠƒtƒŒƒbƒVƒ…
    510. #--------------------------------------------------------------------------
    511. def refresh
    512.    self.contents.clear
    513.    self.windowskin = RPG::Cache.windowskin($chara_select[4])
    514.    self.contents.font.name = $chara_select[0]
    515.    self.contents.font.color = text_color($chara_select[1])
    516.    @item_max = $game_party.actors.size
    517.    for i in0...$game_party.actors.size
    518.      x = 80
    519.      y = 80 * i
    520.      actor = $game_party.actors[i]
    521.      draw_actor_graphic(actor, x - 40, y + 80)
    522.      draw_actor_name(actor, x, y + 24)
    523.    end
    524. end
    525. #--------------------------------------------------------------------------
    526. # œ ƒJ[ƒ\ƒ‹‚Ì‹éŒ`XV
    527. #--------------------------------------------------------------------------
    528. def update_cursor_rect
    529.    if@index < 0
    530.      self.cursor_rect.empty
    531.    else
    532.      self.cursor_rect.set(0, @index * 80, self.width - 32, 80)
    533.    end
    534. end
    535. end
    536. #===================================================
    537. # ▲ CLASS Window_RingMenuStatus Ends
    538. #===================================================
    539. #===================================================
    540. # ▼ CLASS Game_Map Additional Code Begins
    541. #===================================================
    542. class Game_Map
    543. #Dubealex Addition (from XRXS) to show Map Name on screen
    544. def name
    545.    $map_infos[@map_id]
    546. end
    547. end
    548. #===================================================
    549. # ▲ CLASS Game_Map Additional Code Ends
    550. #===================================================
    551. #===================================================
    552. # ▼ CLASS Scene_Title Additional Code Begins
    553. #===================================================
    554. class Scene_Title
    555. #Dubealex Addition (from XRXS) to show Map Name on screen
    556.    $map_infos = load_data("Data/MapInfos.rxdata")
    557.    for key in$map_infos.keys
    558.      $map_infos[key] = $map_infos[key].name
    559.    end
    560. end
    561. #===================================================
    562. # ▲ CLASS Scene_Title Additional Code Ends
    563. #===================================================
    564. #===================================================
    565. # ▼ CLASS Window_Location Begins
    566. #===================================================
    567. class Window_Location < Window_Base
    568. def initialize
    569.   super(0, 0, $window_size[0], $window_size[1])
    570.    self.contents = Bitmap.new(width - 32, height - 32)
    571.    self.contents.font.name = $location_text[0]
    572.    self.contents.font.size = $location_text[1]
    573.   refresh
    574. end
    575. def refresh
    576.   self.contents.clear
    577.   self.windowskin = RPG::Cache.windowskin($window_location_skin)
    578.   self.contents.font.color = text_color($location_text[2])
    579.   self.contents.draw_text(4, 0, 120, 32, $location_text[3])
    580.   self.contents.font.color = text_color($location_text[4])
    581.   self.contents.draw_text(4, 32, 120, 32, $game_map.name, 2)
    582. end
    583. end
    584. #===================================================
    585. # ▲ CLASS Window_Location Ends
    586. #===================================================
    587. #===================================================
    588. # ▲ Ring Menu - Show Player Location R1 - Ends
    589. #===================================================
    复制代码

    似乎有点长,,,不过效果还是很可观的- -
    那么!给点糖呗     
                 本帖来自P1论坛作者1041235896,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址:https://rpg.blue/forum.php?mod=viewthread&tid=375980  若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。

    本帖子中包含更多资源

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

    x
    天天去同能,天天有童年!
    回复 送礼论坛版权

    使用道具 举报

    文明发言,和谐互动
    文明发言,和谐互动
    高级模式
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    关闭

    幸运抽奖

    社区每日抽奖来袭,快来试试你是欧皇还是非酋~

    立即查看

    聊天机器人
    Loading...

    QQ|Archiver|手机版|小黑屋|同能RPG制作大师 ( 沪ICP备12027754号-3 )

    GMT+8, 2025-3-14 14:24 , Processed in 0.140539 second(s), 54 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

    快速回复 返回顶部 返回列表