Ace 스크립트

itemRarity1.jpg

이 스크립트는 아이템 등급을 아이템과 장비에 할당하도록 허용합니다.

 

아이템 등급은 이름 색상으로 표시됩니다.

 

기본적으로 모든 이름은 흰색입니다. 

다른 등급의 아이템을 다른 색상을 갖도록 사용자 정의 할 수 있습니다

 

- 사용법 -

아이템 등급에 대한 메모 태그 항목을 지정합니다.

 

----------------------------------------------------------------

<item rarity: x>

----------------------------------------------------------------

 

여기서 x는 숫자입니다.

구성에서는 각각의 아이템 등급과 관련된 색상을 설정할 수 있습니다 . 

색상은 RGB 형식으로 지정됩니다. 몇 가지 샘플 항목이 제공됩니다.

 

출처: http://himeworks.com/2014/03/item-rarity/






#===============================================================================
 Title: Item Rarity
 Author: Hime
 Date: Mar 26, 2014
 URL: http://www.himeworks.com/2014/03/25/item-rarity/
--------------------------------------------------------------------------------
 ** Change log
 Apr 11, 2014
   - fixed bug where item color affects other rows as well
 Mar 26, 2014
   - Fixed bug where loading skills crashed. You can now tag skills with rarity
   - Extended to all base item objects
 Mar 25, 2014
   - Initial release
--------------------------------------------------------------------------------   
 ** Terms of Use
 * Free to use in non-commercial projects
 * Contact me for commercial use
 * No real support. The script is provided as-is
 * Will do bug fixes, but no compatibility patches
 * Features may be requested but no guarantees, especially if it is non-trivial
 * Credits to Hime Works in your project
 * Preserve this header
--------------------------------------------------------------------------------
 ** Description
 
 This script allows you to assign item rarities to items and equips.
 
 Rarity is indicated by name colour: by default, all names are white. 
 You can customize this so that different rarity levels have different
 colours.
 
--------------------------------------------------------------------------------
 ** Installation
 
 In the script editor, place this script below Materials and above Main

--------------------------------------------------------------------------------
 ** Usage 
 
 To specify rarity, note-tag items and equips with
 
   <item rarity: x>
   
 Where x is a number.
 In the configuration, you can set up the colours associated with each rarity
 level.
 
#===============================================================================
=end
$imported = {} if $imported.nil?
$imported[:TH_ItemRarity] = true
#===============================================================================
# ** Configuration
#===============================================================================
module TH
  module Item_Rarity
    
    # Colours associated with each rarity. The colours are specified as
    # RGB values. So for example, White is [255, 255, 255]
    Colour_Map = {
      1 => [255, 255, 255],
      2 => [204, 255, 137],
      3 => [197, 122, 255],
      4 => [255, 84, 0],
    }
    
    Regex = /<item[-_ ]rarity:\s*(\d+)\s*>/i
    
#===============================================================================
# ** Rest of script
#===============================================================================
    @@rarity_colour_map = nil
    
    def self.rarity_colour_map
      unless @@rarity_colour_map
        @@rarity_colour_map = {}
        Colour_Map.each do |i, arr|
          @@rarity_colour_map[i] = Color.new(*arr)
        end
      end
      return @@rarity_colour_map
    end
  end
end

module RPG
 
  class BaseItem
    def rarity
      load_notetag_item_rarity unless @rarity
      return @rarity
    end
    
    def load_notetag_item_rarity
      @rarity = 1
      res = self.note.match(TH::Item_Rarity::Regex)
      if res
        @rarity = res[1].to_i
      end
    end
    
    def rarity_colour
      TH::Item_Rarity.rarity_colour_map[self.rarity]
    end
  end
end

class Window_Base < Window
  
  #-----------------------------------------------------------------------------
  # Replaced
  #-----------------------------------------------------------------------------
  def draw_item_name(item, x, y, enabled = true, width = 172)
    return unless item
    draw_icon(item.icon_index, x, y, enabled)
    change_color(item.rarity_colour, enabled)
    draw_text(x + 24, y, width, line_height, item.name)
		change_color(normal_color, enabled)
  end
end


#===============================================================================
# Instance Item extension
#===============================================================================
if $imported["TH_InstanceItems"]
  module RPG
    class BaseItem
      alias :th_item_rarity_refresh :refresh
      def refresh
        th_item_rarity_refresh
        refresh_item_rarity
      end
      
      def refresh_item_rarity
        var = InstanceManager.get_template(self).rarity
        @rarity = make_item_rarity(InstanceManager.make_full_copy(var))
      end

      def make_item_rarity(rarity)
        rarity
      end
    end
  end
end
Atachment
첨부 '1'
  • ?
    크크섬 2019.08.01 13:56
    감사합니다
  • ?
    크크섬 2019.08.01 14:26
    제일 윗줄에 =begin 한 줄 추가해줘야 정상적으로 작동합니다.
    그리고 레어리티 적용은 각 아이템 메모란에 <item rarity: 등급별 숫자> 를 입력해주시면 됩니다.

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 습작 2012.12.24 5109
공지 RPG VX ACE 유용한 링크 모음 16 아방스 2012.01.03 28923
17 키입력 Improved Imput System(part of DP Core) by DiamondandPlatinum3 1 Alkaid 2014.02.12 1263
16 버그픽스 Large Sprite ☆ Display Fix by Neon Black Alkaid 2014.02.08 1242
15 기타 '결정 키로 이벤트 시작' 조건분기 추가 file Bunny_Boy 2016.01.16 1165
14 기타 LUD Script Package file LuD 2017.08.15 1079
13 기타 메시지 표시 중에 자동으로 타이머 멈추기 1 file Bunny_Boy 2014.12.07 1026
12 맵/타일 Map Zoom Ace by MGC 습작 2016.02.28 1015
11 버그픽스 Event Jitter Fix/Display Rounding Error Fix by Neon Black Alkaid 2013.08.31 1003
10 기타 (링크)RPG VX ACE 블랙잭 스크립트 게임애호가 2017.06.18 1002
9 기타 Improved Input System 1 습작 2015.01.02 976
8 타이틀/게임오버 GG침 스크립트 file 큔. 2018.07.18 835
7 메뉴 파티 개별 인벤토리 스크립트 안나카레리나 2018.06.25 738
6 기타 Gamepad Extender 습작 2015.01.02 717
5 온라인 브라우저 열기 스크립트 1 큔. 2018.09.09 671
4 버그픽스 RGSS3 Unofficial Bug Fix Snippets Alkaid 2015.09.09 662
3 전투 기본전투의 커스텀 명중률 제작 안나카레리나 2018.06.10 543
2 오디오 볼륨변경 스크립트 레기우스州 2020.08.09 504
1 그래픽 셰이크 강화 스크립트 file 시낵스 2023.12.13 92
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 Next
/ 11