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 5592
공지 RPG VX ACE 유용한 링크 모음 16 아방스 2012.01.03 29396
37 저장 FF6 Advance식 저장/불러오기 by Raizen884 4 file Alkaid 2013.02.09 3841
36 기타 Falcao - Falcao Pets Servants 6 file 혜인 2014.01.04 1872
35 오디오 Extended Music Script (for VXA) by Zhek Alkaid 2013.02.22 1612
34 버그픽스 Event Jitter Fix/Display Rounding Error Fix by Neon Black Alkaid 2013.08.31 1041
33 메시지 Etude87_VX_Style_Choice ver.1.00 11 file 습작 2013.02.14 3513
32 변수/스위치 Etude87_Variables_Ace 6 file 습작 2012.04.13 3388
31 전투 Etude87_SRPG_converter_for_Ace_Add_on ver.1.02 2 습작 2013.02.18 3110
30 이동 및 탈것 Etude87_Mouse_Move_Ex ver.1.00 9 습작 2013.03.29 1637
29 맵/타일 Etude87_Map_Remember_Ace ver.1.2 11 습작 2012.07.17 3538
28 아이템 Etude87_Item_Search ver.1.00 2 습작 2013.01.24 1677
27 기타 Etude87_Go_Google_Translate_Ace ver.1.01 1 습작 2012.12.31 1736
26 전투 Etude87_Custom_Max_Tp_Weapon ver.1.0 5 습작 2012.08.28 2688
25 상태/속성 Etude87's_Param_BG_Gauge ver.1.00 7 file 습작 2013.10.19 2201
24 메뉴 Etude87's Menu Editor 44 file 습작 2014.07.17 7027
23 미니맵 Etude87's KMS MiniMap Add-on ver.1.1.4 2 file 습작 2015.04.23 1972
22 영상 EST - SOV Video Player ++ Script Conversion 1.2 by estriole 9 file Alkaid 2012.12.02 2770
21 장비 Equipment Set Bonuses by modern algebra 2 Alkaid 2014.02.08 1504
20 전투 Drop Options by modern algebra 3 Alkaid 2012.09.17 2873
19 기타 Dialog Extractor 1.04 (VXA/VX/XP) 6 AltusZeon 2014.01.16 11713
18 메뉴 Customizable Main Menu 1.0b by modern algebra 4 file Alkaid 2012.02.13 5476
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 Next
/ 11