Recent posts

Pages1 2 3 ... 10
1
RMXP Script Database / Re: [XP] MRMX-OS SYSTEM - Mult...
Last post by KK20 - October 16, 2021, 06:59:12 pm
IDK where you're looking at to determine what the script's version is... but regardless, this is the only existence of the script on this website.
2
RMXP Script Database / Re: [XP] MRMX-OS SYSTEM - Mult...
Last post by pak020531 - October 16, 2021, 01:05:39 pm
I need 3.0 version...
3
RMXP Script Database / Re: [XP] Dynamic Gardening
Last post by KK20 - October 15, 2021, 12:46:32 am
I think it's because you're standing in front of the garden event and the Input C from the Garden Scene when you select "No" gets carried over to Scene_Map and triggers the event. So the only thing I can think of is to reset the Input by adding an update call here in Drago's fix:
  def init_parallel_process_fix
    Input.update #<=================
    @spriteset = Nothing.new

You can even reproduce this with just Drago's script alone. Just make a map with an event that gets triggered by the action button (make it show text). Place the player's starting position directly above the event. Upon hitting "New Game" on the title screen, the event will start playing.

I will update the script on that thread. Thanks for reporting
4
RMXP Script Database / Re: [XP] Dynamic Gardening
Last post by Wraith89 - October 14, 2021, 01:45:29 am
I'll post this here as a bit of an minor issue, or perhaps the coding clashes, but if you try to use LittleDrago's RPG Maker XP Internal Bug Fix for Parallel Process in the first map in this thread, "back_to_map" feature when hitting cancel doesn't work as intended and instead you're automatically engaging in the Gardening Event when it should not, as if you pushed confirm again. Replicate it by using that fix and this code together and you will see what I mean.
5
RMXP Script Database / Re: [XP] MRMX-OS SYSTEM - Mult...
Last post by Blizzard - October 13, 2021, 03:37:12 am
Huh? The mediafire link works fine for me.
6
RMXP Script Database / Re: [XP] MRMX-OS SYSTEM - Mult...
Last post by pak020531 - October 12, 2021, 11:43:08 am
Hey guys i know this topic is a bit old but im new to this great system but im having an issue.
I want to download the trade/pvp server file, but the file has been deleted.
How can I get this file?
7
Electronic and Computer Section / How to truly disable Windows U...
Last post by Blizzard - October 03, 2021, 06:00:27 am
It's kinda weird that nobody has posted this information anywhere on the Internet because there actually IS a way to disable Windows Update completely. Why would you do that? While keeping your PC up to date is recommended, some people experience huge issues with updates. Windows Update has broken various PCs I have worked on (home PCs/laptops, PCs at work, work servers, etc.) numerous times. This is why I prefer to update Windows only when I do have the time to also reinstall Windows in case it breaks something I really need (which is almost always). I dislike forced updates that I have no controls over because they break shit way too often.

So, how is it done? Windows Update depends on 2 services on your PC to function. If you simply delete these two services, Windows Update will stop. Why both? Because these services attempt to restore each other, hence both must be removed.

1. Press Windows+R.
2. Type in "regedit" and press ENTER.
3. Find and delete the entire the key HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\wuauserv
4. Find and delete the entire the key HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WaaSMedicSvc
5. Restart your PC.
6. Make SURE you actually DO restart your PC! The services will be running even though you deleted them from registry until you restart your PC. That means that they have a chance to restore each other. For extra safety you can first stop those 2 services before deleting them. While technically you may not need to restart your PC if you go this route, safe is safe and you should restart it anyway.

Optional: Export the two keys from the registry so you can restore Windows Update if necessary.

Notes: There are other ways to delete services via command line, but even in admin mode, Windows will actually refuse to delete WaaSMedicSvc because of permission limitations. Microsoft is trying really hard to keep pushing those (essentially beta) updates on you.
8
RMXP Script Database / [XP] System Reputation
Last post by AvilaMn - September 22, 2021, 06:02:44 pm
System Reputation
Authors: AvilaMn
Version: 1.1
Type: Menu System
Key Term: Misc System

Introduction

This script will allow you to create reputations, with different levels and custom shops.

Features

  • Window to show the reputation list and navigate arround to see the progress on each reputation.
  • Custom Shop that make discount based on the reputation level.
  • Fully editable, can change the Reputations, Levels, Shops, Itemsets, Weaponsets and Armorsets for the shops.
  • Can check in event conditions if a player can access a certain shop.
  • Can Add and Remove exp from the Reputation you want on events with a simple Script Call.
  • v1.1: Discount items will show in green color.
  • v1.1: The opacity of the Icons in the Custom Shop will be correcly displayed if can or can't buy.
Screenshots

Window Reputation
Spoiler: ShowHide


Window Custom Shop
Spoiler: ShowHide


Demo

System Reputation - v1.1

Script

System Reputation - v1.1
Spoiler: ShowHide

Quote from: undefined
#==============================================================================
# System_Reputation
# Created by: AvilaMn
# Version: 1.1
#------------------------------------------------------------------------------
# Description:
# This system add the possibility to have different reputations that can be
# increased by events, including a window to check de reputation progress and
# the posibility to create custom shops that change their items values based
# on the reputations levels
#------------------------------------------------------------------------------
# Instructions:
#
# To call the Reputation Menu use this line in a Script call or in you script:
# $scene = Scene_Reputations.new
#
# To Add exp to a certain Reputation use this line in a Script Call:
# add_rep_exp(ID, VALUE) : ID is the Reputation ID and VALUE is the ammount
# of exp you want to add
#
# To Remove exp to a certain Reputation use this line in a Script Call:
# remove_rep_exp(ID, VALUE) : ID is the Reputation ID and VALUE is the ammount
# of exp you want to remove
#
# To check if the player can access a certain Custom Shop use this line in a
# Script section of the Event Conditional:
# can_shop?(ID) : ID is the Shop ID
#
# To call a Custom Shop use this line in a Script Call:
# call_custom_shop(ID) : ID is the Shop ID
#
# The IDs you need to make the diferent calls are in the CONFIGURATION below
#==============================================================================
module REP_CONFIG
  #============================================================================
  # CONFIGURATION :
  # To add a new data just add new lines following the syntax commented in each
  # data Hash, and don't forget to put the , at the end
  #============================================================================
  Reputations = {
  # ID => [NAME, LEVEL, EXP, ACTIVE, ICON]
  0 => ["KINGDOM", 5, 99999, true, "Reputation-01"],
  1 => ["ALIANCE", 1, 0, false, "Reputation-02"],
  2 => ["HORDE", 1, 0, false, "Reputation-03"],
  } 
  Levels = {
  # ID => [NAME, EXP_TO_LVL, %_REDUCED_VALUE]
  0 => ["HATED", -1, -100],
  1 => ["UNKNOWN", 0, 0],
  2 => ["NEUTRAL", 10, 0],
  3 => ["FRIENDLY", 100, 0],
  4 => ["HONORED", 1000, 10],
  5 => ["REVERED", 10000, 25],
  6 => ["EXALTED", 100000, 50],
  }
  Shops = {
  # ID => [REP_ID, LEVEL_ID, ITEMSET_ID, WEAPONSET_ID, ARMORSET_ID]
  0 => [0, 3, 0, 0, 0],
  1 => [2, 2, 0, 0, 0],
  2 => [1, 4, 0, 0, 0],
  }
  ItemSets = {
  # ID => [ITEMS_IDs]
  0 => [1, 2, 3, 4],
  }
  WeaponSets = {
  # ID => [WEAPONS_IDs]
  0 => [2, 5, 8],
  }
  ArmorSets = {
  # ID => [ARMOR_IDs]
  0 => [1, 10, 23],
  }
end
#============================================================================
# GAME PARTY - DON'T TOUCH
#============================================================================
class Game_Party
  # Variables
  attr_accessor :reputations
  attr_accessor :rep_levels
  attr_accessor :rep_shops
  attr_accessor :rep_itemsets
  attr_accessor :rep_weaponsets
  attr_accessor :rep_armorsets
  # Aliasing
  alias rep_initialize initialize
  #Initialize Game_Party
  def initialize
    # Para acceder o modificar la variable
    #$game_party.reputations[rep_id][index] = value
    @reputations = REP_CONFIG::Reputations
    @rep_levels = REP_CONFIG::Levels
    @rep_shops = REP_CONFIG::Shops
    @rep_itemsets = REP_CONFIG::ItemSets
    @rep_weaponsets = REP_CONFIG::WeaponSets
    @rep_armorsets = REP_CONFIG::ArmorSets
    # Initialize old Game_Party
    rep_initialize
  end
end
#============================================================================
# WINDOW BASE - DON'T TOUCH
#============================================================================
class Window_Base
  def hated_color
    return Color.new(255, 36, 36, 255)
  end
  def neutral_color
    return Color.new(250, 250, 36, 255)
  end
  def friendly_color
    return Color.new(36, 255, 36, 255)
  end
end
#============================================================================
# SYSTEM REPUTATION - DON'T TOUCH
#============================================================================
class System_Reputation
  #============================================================================
  # GET :
  #============================================================================
  # Reputation Name
  def name(rep_id)
    name = $game_party.reputations[rep_id][0]
  end
  # Reputation Level
  def lvl(rep_id)
    lvl = $game_party.reputations[rep_id][1] 
  end
  # Reputation EXP
  def exp(rep_id)
    exp = $game_party.reputations[rep_id][2]
  end
  # Reputation active
  def active?(rep_id)
    active = $game_party.reputations[rep_id][3]
  end
  # Reputation Icon
  def icon(rep_id)
    icon = $game_party.reputations[rep_id][4]
  end
  #----------------------------------------------------------------------------
  # Level Name
  def lvl_name(lvl_id)
    lvl_name = $game_party.rep_levels[lvl_id][0]
  end
  # Level Base Exp
  def lvl_base_exp(lvl_id)
    base_exp = $game_party.rep_levels[lvl_id][1]
  end
  # Level Reduce Price Value Percentage
  def reduced_value(lvl_id)
    percentage = $game_party.rep_levels[lvl_id][2]
  end
  #----------------------------------------------------------------------------
  # Shop Reputation
  def shop_rep(shop_id)
    rep = $game_party.rep_shops[shop_id][0]
  end
  # Shop Level Needed
  def shop_lvl_needed(shop_id)
    lvl = $game_party.rep_shops[shop_id][1]
  end
  # Shop Item Set (Array)
  def shop_itemset(shop_id)
    id = $game_party.rep_shops[shop_id][2]
    itemset = $game_party.rep_itemsets[id]
  end
  # Shop Weapon Set (Array)
  def shop_weaponset(shop_id)
    id = $game_party.rep_shops[shop_id][3]
    weaponset = $game_party.rep_weaponsets[id]
    return weaponset
  end
  # Shop Armor Set (Array)
  def shop_armorset(shop_id)
    id = $game_party.rep_shops[shop_id][4]
    armorset = $game_party.rep_armorsets[id]
  end
  #============================================================================
  # CHECKS :
  #============================================================================
  def rep_id?(string)
    rep_ids = $game_party.reputations.keys
    id = nil
    for i in rep_ids
      if exist?(i)
        rep_name = name(i)
        if rep_name == string
          return i
        end
      end 
    end
  end
  # Reputation exists
  def exist?(rep_id)
    exist = $game_party.reputations.include?(rep_id)
  end
  # EXP to Level UP
  def to_lvl?(rep_id)
    if exist?(rep_id)
      current_exp = exp(rep_id)
      current_lvl = lvl(rep_id)
      max_lvl = max_lvl?
      if current_lvl >= max_lvl
        next_lvl = current_lvl
      else
        next_lvl = current_lvl + 1
      end
      needed_exp = lvl_base_exp(next_lvl)
      to_lvl = needed_exp - current_exp
      return to_lvl
    else
      return nil
    end   
  end
  # Max Level
  def max_lvl?
    levels = $game_party.rep_levels.keys
    temp = 0
    for i in levels
      if temp < i
        temp = i
      end
    end
    max_lvl = temp
  end
  # Is Max Level
  def is_max_lvl?(rep_id)
    if exist?(rep_id)
      lvl = lvl(rep_id)
      max_lvl = max_lvl?
      if lvl == max_lvl
        return true
      else
        return false
      end
    else
      return false
    end
  end
  # Can Shop
  def can_shop?(shop_id)
    rep_id = shop_rep(shop_id)
    shop_lvl = shop_lvl_needed(shop_id)
    rep_lvl = lvl(rep_id)
    if rep_lvl >= shop_lvl
      return true
    end
    return false
  end
  # Positive or Negative
  def pos_or_neg(value)
    if value > 0
      return true
    else
      return false
    end
  end
  #============================================================================
  # SET :
  #============================================================================
  # Level Manager
  def lvl_manager(rep_id)
    if exist?(rep_id)
      levels = $game_party.rep_levels.keys
      levels = levels.sort
      current_exp = exp(rep_id)
      max_lvl = max_lvl?
      max_exp = lvl_base_exp(max_lvl)
      lvl = 0
      if current_exp == max_exp
        lvl = max_lvl
      else
        for i in levels
          lvl_exp = lvl_base_exp(i)
          if current_exp >= lvl_exp
              lvl = i
          end       
        end
      end
      $game_party.reputations[rep_id][1] = lvl   
    end
  end
  # Set Shop Goods
  def shop_goods(shop_id)
    shop_goods = []
    itemset = shop_itemset(shop_id)
    weaponset = shop_weaponset(shop_id)
    armorset = shop_armorset(shop_id)
    array = []
    for id in itemset
      array = [0, id]
      shop_goods.push(array)
    end
    for id in weaponset
      array = [1, id]
      shop_goods.push(array)
    end
    for id in armorset
      array = [2, id]
      shop_goods.push(array)
    end
    return shop_goods
  end
  # Recalculates de Item Price
  def recalculate_price(shop_id, price)
    rep_id = shop_rep(shop_id)
    min_lvl = shop_lvl_needed(shop_id)
    rep_lvl = lvl(rep_id)
    percentage = reduced_value(rep_lvl)
    if rep_lvl >= min_lvl
      value = (percentage * price) / 100
      price -= value
      return price
    end
    return price
  end
end
#============================================================================
# WINDOW REP TITLE : Add
#============================================================================
class Window_Rep_Title < Window_Base
  def initialize
    super(40, 40, 560, 60)
    @title = "REPUTATIONS"
    draw_rep_title(@title, 180, 0)
  end
  def draw_rep_title(title, x, y)
    if title == nil
      return
    end
    bitmap = RPG::Cache.icon("Reputation-00")
    self.contents = Bitmap.new(self.width - 32, self.height - 32)
    self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24))
    self.contents.font.color = normal_color
    self.contents.draw_text(x + 28, y, 212, 32, title)
  end
end
#============================================================================
# WINDOW REP DESCRIPTION : Add
#============================================================================
class Window_Rep_Description < Window_Base
  def initialize
    super(40, 380, 560, 60)
    draw_lvl_description(rep_array = nil)
  end
  def draw_lvl_description(rep_array)
    x = 0
    y = 0
    rep_id = 0
    lvl = 1
    exp = 0
    to_lvl = 0
    max_lvl = 1
    lvl_name = "ERROR"
    if rep_array != nil
      reputation = System_Reputation.new
      rep_id = rep_array[0]
      lvl = reputation.lvl(rep_id)
      exp = reputation.exp(rep_id)
      to_lvl = reputation.to_lvl?(rep_id)
      lvl_name = reputation.lvl_name(lvl)
      max_lvl = reputation.max_lvl?
    end
    self.contents = Bitmap.new(self.width - 32, self.height - 32)
    case lvl
    when 0
      self.contents.font.color = hated_color
    when 1
      self.contents.font.color = neutral_color
    when 2
      self.contents.font.color = neutral_color
    end
    if lvl > 2
      self.contents.font.color = friendly_color
    end
    self.contents.draw_text(x, y, 140, 32, lvl_name)
    self.contents.font.color = normal_color
    self.contents.draw_text(x + 144, y, 140, 32, "EXP : " + exp.to_s)
    if lvl == max_lvl
      self.contents.draw_text(x + 284, y, 212, 32, "MAX LEVEL")
    else
      self.contents.draw_text(x + 284, y, 212, 32, "TO NEXT LEVEL: " + to_lvl.to_s)
    end
  end
end
#============================================================================
# WINDOW REP LIST : Add
#============================================================================
class Window_Rep_List < Window_Selectable
  def initialize
    super(40, 100, 560, 280)
    @column_max = 2
    refresh
    self.index = 0
  end
  def rep
    return @data[self.index]
  end
  def refresh
    sys_rep = System_Reputation.new
    if self.contents != nil
      self.contents.dispose
      self.contents = nil
    end   
    # Add reputations to data
    @data = []
    temp = []
    reputations = $game_party.reputations   
    for i in 0...reputations.keys.size
      reputation = reputations[i]
      if reputation != nil && sys_rep.active?(i)
        temp = [i, reputation]
        @data.push(temp)
      end
    end
    @item_max = @data.size
    if @item_max > 0
      self.contents = Bitmap.new(width - 32, row_max * 32)
      for i in 0...@item_max
        draw_rep_name(i)
      end
    end
  end
  def draw_rep_name(index)
    sys_rep = System_Reputation.new
    rep = @data[index]
    rep_id = rep[0]
    rep_name = sys_rep.name(rep_id)
    lvl = sys_rep.lvl(rep_id)
    if @data.empty? == true
      rep_name = "Don't have reputations"
    end
    x = 4 + index % 2 * (248 + 32)
    y = index / 2 * 32
    rect = Rect.new(x, y, self.width / @column_max - 32, 32)
    self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
    bitmap = RPG::Cache.icon(sys_rep.icon(rep_id))
    self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24), 255)
    case lvl
    when 0
      self.contents.font.color = hated_color
    when 1
      self.contents.font.color = neutral_color
    when 2
      self.contents.font.color = neutral_color
    end
    if lvl > 2
      self.contents.font.color = friendly_color
    end
    self.contents.draw_text(x + 28, y, 212, 32, rep_name, 0)
  end
  def update_help
    @help_window.draw_lvl_description(self.rep == nil ? nil : self.rep)
  end
end
#============================================================================
# SCENE REPUTATIONS :
#============================================================================
class Scene_Reputations
  def start
    @spriteset = Spriteset_Map.new
    @window_rep_title = Window_Rep_Title.new
    @window_rep_list = Window_Rep_List.new
    @window_rep_description = Window_Rep_Description.new
    @window_rep_list.help_window = @window_rep_description
  end
  def main
    start
    Graphics.transition
    loop do
      Graphics.update
      Input.update
      update
      if $scene != self
        break
      end
    end
    Graphics.freeze
    @spriteset.dispose
    @window_rep_title.dispose
    @window_rep_list.dispose
    @window_rep_description.dispose
  end
  def update
    @window_rep_list.update
    @window_rep_description.update
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      $scene = Scene_Map.new
      return
    end
  end
end
#============================================================================
# INTERPRETER : Adds to the class
#============================================================================
class Interpreter
  # Reputation Gain EXP
  def add_rep_exp(rep_id, value=0)
    sys_rep = System_Reputation.new
    if sys_rep.exist?(rep_id)
      current_exp = sys_rep.exp(rep_id)
      if sys_rep.pos_or_neg(value)
        new_exp = current_exp + value
        max_lvl = sys_rep.max_lvl?
        max_exp = sys_rep.lvl_base_exp(max_lvl)
        if new_exp > max_exp
          $game_party.reputations[rep_id][2] = max_exp
          sys_rep.lvl_manager(rep_id)
        else
          $game_party.reputations[rep_id][2] = new_exp
          sys_rep.lvl_manager(rep_id)
        end
        if sys_rep.active?(rep_id) == false
          $game_party.reputations[rep_id][3] = true
        end
      end
    end
  end
  # Reputation Reduce EXP
  def remove_rep_exp(rep_id, value=0)
    sys_rep = System_Reputation.new
    if sys_rep.exist?(rep_id)
      current_exp = sys_rep.exp(rep_id)
      if sys_rep.pos_or_neg(value)
        new_exp = current_exp - value
        $game_party.reputations[rep_id][2] = new_exp
        sys_rep.lvl_manager(rep_id)
        if sys_rep.active?(rep_id) == false
          $game_party.reputations[rep_id][3] = true
        end
      end
    end
  end
  # Can Shop
  def can_shop?(shop_id)
    sys_rep = System_Reputation.new
    rep_id = sys_rep.shop_rep(shop_id)
    shop_lvl = sys_rep.shop_lvl_needed(shop_id)
    rep_lvl = sys_rep.lvl(rep_id)
    if rep_lvl >= shop_lvl
      return true
    end
    return false
  end
  # Call Custom Shop (shop_id)
  def call_custom_shop(shop_id)
    sys_rep = System_Reputation.new
    $game_temp.shop_goods = sys_rep.shop_goods(shop_id)
    $scene = Scene_Shop.new(shop_id)
  end
end
#============================================================================
# SCENE SHOP : Edit
#============================================================================
class Scene_Shop
  def initialize(shop_id = nil)
    @shop_id = shop_id
  end
  alias rep_main main
  def main
    @help_window = Window_Help.new
    @command_window = Window_ShopCommand.new
    @gold_window = Window_Gold.new
    @gold_window.x = 480
    @gold_window.y = 64
    @dummy_window = Window_Base.new(0, 128, 640, 352)
    @buy_window = Window_ShopBuy.new($game_temp.shop_goods, @shop_id)
    @buy_window.active = false
    @buy_window.visible = false
    @buy_window.help_window = @help_window
    @sell_window = Window_ShopSell.new
    @sell_window.active = false
    @sell_window.visible = false
    @sell_window.help_window = @help_window
    @number_window = Window_ShopNumber.new
    @number_window.active = false
    @number_window.visible = false
    @status_window = Window_ShopStatus.new
    @status_window.visible = false
    Graphics.transition
    loop do
      Graphics.update
      Input.update
      update
      if $scene != self
        break
      end
    end
    Graphics.freeze
    @help_window.dispose
    @command_window.dispose
    @gold_window.dispose
    @dummy_window.dispose
    @buy_window.dispose
    @sell_window.dispose
    @number_window.dispose
    @status_window.dispose
  end
  alias rep_update_buy update_buy
  def update_buy
    @status_window.item = @buy_window.item
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      @command_window.active = true
      @dummy_window.visible = true
      @buy_window.active = false
      @buy_window.visible = false
      @status_window.visible = false
      @status_window.item = nil
      @help_window.set_text("")
      return
    end
    if Input.trigger?(Input::C)
      @item = @buy_window.item
      if @shop_id != nil
        sys_rep = System_Reputation.new
        new_price = sys_rep.recalculate_price(@shop_id, @item.price)
        if @item == nil or new_price > $game_party.gold
        $game_system.se_play($data_system.buzzer_se)
        return
      end
      else
        if @item == nil or @item.price > $game_party.gold
        $game_system.se_play($data_system.buzzer_se)
        return
      end
      end
      case @item
      when RPG::Item
        number = $game_party.item_number(@item.id)
      when RPG::Weapon
        number = $game_party.weapon_number(@item.id)
      when RPG::Armor
        number = $game_party.armor_number(@item.id)
      end
      if number == 99
        $game_system.se_play($data_system.buzzer_se)
        return
      end
      $game_system.se_play($data_system.decision_se)
      if @shop_id != nil
        max = new_price == 0 ? 99 : $game_party.gold / new_price
        max = [max, 99 - number].min
        @buy_window.active = false
        @buy_window.visible = false
        @number_window.set(@item, max, new_price)
      else
        max = @item.price == 0 ? 99 : $game_party.gold / @item.price
        max = [max, 99 - number].min
        @buy_window.active = false
        @buy_window.visible = false
        @number_window.set(@item, max, @item.price)
      end
      @number_window.active = true
      @number_window.visible = true
    end
  end
end
#============================================================================
# WINDOW SHOPBUY : Edit
#============================================================================
class Window_ShopBuy
  alias rep_initialize initialize
  def initialize(shop_goods, shop_id = nil)
    rep_initialize(shop_goods)
    @shop_id = shop_id
  end
  alias rep_draw_item draw_item
  def draw_item(index)
    item = @data[index]
    case item
    when RPG::Item
      number = $game_party.item_number(item.id)
    when RPG::Weapon
      number = $game_party.weapon_number(item.id)
    when RPG::Armor
      number = $game_party.armor_number(item.id)
    end
    if @shop_id != nil
      sys_rep = System_Reputation.new
      new_price = sys_rep.recalculate_price(@shop_id, item.price)
      if new_price <= $game_party.gold && number < 99
        if new_price != item.price
          self.contents.font.color = friendly_color
        else
          self.contents.font.color = normal_color
        end
      else
        self.contents.font.color = disabled_color
      end
      x = 4
      y = index * 32
      rect = Rect.new(x, y, self.width - 32, 32)
      self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
      bitmap = RPG::Cache.icon(item.icon_name)
      if new_price != item.price
        opacity = self.contents.font.color == friendly_color ? 255 : 128
      else
        opacity = self.contents.font.color == normal_color ? 255 : 128
      end
      self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity)
      self.contents.draw_text(x + 28, y, 212, 32, item.name, 0)
      self.contents.draw_text(x + 240, y, 88, 32, new_price.to_s, 2)
    else
      if item.price <= $game_party.gold && number < 99
        self.contents.font.color = normal_color
      else
        self.contents.font.color = disabled_color
      end
      x = 4
      y = index * 32
      rect = Rect.new(x, y, self.width - 32, 32)
      self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
      bitmap = RPG::Cache.icon(item.icon_name)
      opacity = self.contents.font.color == normal_color ? 255 : 128
      self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity)
      self.contents.draw_text(x + 28, y, 212, 32, item.name, 0)
      self.contents.draw_text(x + 240, y, 88, 32, item.price.to_s, 2)
    end
  end
end


Instructions

Inside the script in the first comment.

Compatibility

Didn't know any incompatibility for now.

Credits and Thanks

  • AvilaMn
  • Jaiden for support
  • kk20 for support
  • And all that helps me in the discord

Author's Notes

If you find any bugs, please report them here:
http://forum.chaos-project.com

Enjoy it  :-*
9
General Discussion / Re: [RESOLVED][XP]Problem with...
Last post by KK20 - August 26, 2021, 11:41:10 am
When that zero is a float, yes.
10
General Discussion / Re: [RESOLVED][XP]Problem with...
Last post by Blizzard - August 26, 2021, 04:59:48 am
Hm, are you sure dividing by 0 is smart?
Pages1 2 3 ... 10