Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Dweller

1
General Discussion / Re: Help with BLIZZ ABS
February 15, 2013, 12:47:10 am
4.3.8. Custom Event Triggers
2
New Projects / Re: Equinox - Cresent Blue / Diamond Red
December 27, 2012, 04:13:18 am
I like the character front animation, its funny  :haha:
3
Aëdemphia, imprevise rpgmaker game --> http://www.aedemphia-rpg.net (but is rpgmaker 2003)
4
General Discussion / Re: Icon to BlizzABS
December 13, 2012, 06:40:50 am
Quote from: Kirye on December 08, 2012, 10:23:13 am
I'm actually very interested in this if you don't mind uploading it. :O


http://www.mediafire.com/?x6or8tkz4sqzsw1
5
General Discussion / Icon to BlizzABS
December 05, 2012, 06:23:39 am
Hi all (long time since my las post  :shy:). Working on weapons in my BlizzABS game I created a tool to convert icons to BlizzABS weapon attack files.  You can see two examples on the next video:



Now I´m working on a new feature so you can move each frame to adjust the final weaponsheet. Also I have a few more ideas to add, like a optional Slash effect layer.

If someone is interested I will upload the current version (this little tool saves me a lot of time when dealing with weponsheets).
6
LiTTleDRAgo can you help me to change the script to make the selectable window transparent?
Spoiler: ShowHide
7
Just a suggestion:

QuoteMemory: 4gb ddr3 1333MHz PC10600 240p (2x)


Change this RAM Memory module to a 1600MHz (the price will be very close to the 1333Mhz one) because memory speed is very important in performance.

Other one: Try to include a sATA 3 hard disk (the motherboard needs to support sATA 3). Example:
IDE 133Mhz < sATA < 150 Mhz < sATA2 300Mhz < sATA3 600Mhz. Like in memory. the HDD speed access is very important in performance (in games you can see this improvement when you load a new zone).
8
I´m agree with SP, The atmosphere is awesome, also the intro is fantastic. Great work here congrats.
9
If Spoofus group (to join gamemaking competition) finally don´t participate I will join Rose contest.
10
Quote from: MOAL on April 24, 2012, 07:42:54 pm
I'm having a hard time making the visual equipment show up, I name them accordingly and everything, along with the prefix. Is there anything else that needs to be done? I'm not getting any errors, just this issue. Can someone help me out?


The first time I used Visual Equipment I have a similar problem. I was testing the game with weapon id 1, and the deafult script comes with this configuration:

EXCLUDE_WEAPONS = [1, 3, 4, 5, 6, 7, 8]
EXCLUDE_ARMORS = [1, 2, 4, 5, 6, 7]


May this will help you.
11
Script Requests / Re: Blizz-ABS Auto Equip Skills
April 22, 2012, 05:29:59 pm
You can use a script call:

$game_player.skill_hotkeys[hotkeynumber] = skill_id


Example: $game_player.skill_hotkeys[1] = 7 (skill number 7 on hotkey 1).
12
Advertising / Re: RPG Competition by 64Digits
April 21, 2012, 01:40:21 pm
Quote from: ShadowPierce on April 20, 2012, 10:39:45 am
Quote from: Dweller on April 20, 2012, 08:16:04 am
If anyone is forming a serious group here in chaosproject I will like to join it. With serious I´m talking about people who want to join and finish the project, don´t want to join on another unfinished game project.

This.Also, no need to go easy when rejecting me...


I just was saying that I want to join if there is a serious project that will be finished, may I not express correctly and you think I was talking about you.In fact if you lead a project to join this contest I will join it (if you want me in), I have no problem to work with you again.



13
Advertising / Re: RPG Competition by 64Digits
April 20, 2012, 08:16:04 am
This contest looks interesting.

If anyone is forming a serious group here in chaosproject I will like to join it(I will center only on character/monsters sprites, tilesets and icons). With serious I´m talking about people who want to join and finish the project, don´t want to join on another unfinished game project.
14
Welcome! / Re: Hospitalized
April 17, 2012, 08:27:26 am
I lived the same experience with my brother (when he was 8 and me 12 years old), even today I can remember my mother desesperation face  expression. So this: "Go to the hospital as soon as you feel a pain in your lower right abdomen that lasts for over a day" is a very usefull information for everybody.

Glad you are ok now, and go on with life.

15
RMXP Script Database / Re: [XP] Item Art Color
April 17, 2012, 06:13:47 am
Solved thanks, just was the script order ;)
16
RMXP Script Database / Re: [XP] Item Art Color
April 16, 2012, 08:04:56 am
Littledragon will be posible that your Item Art Color script works with MOG_Scene_Shop?

Spoiler: ShowHide
#_______________________________________________________________________________
# MOG_Scene_Shop  V1.7           
#_______________________________________________________________________________
# By Moghunter   
# http://www.atelier-rgss.com
#_______________________________________________________________________________
module MOG
  #Transition Time.
  MNSHPT= 30
  #Transition Type (Name)
  MNSHPTT= "020-Flat01"
  $Zonadetienda=""

end

#===============================================================================
# Window_Base
#===============================================================================
class Window_Base < Window
#--------------------------------------------------------------------------
# Draw_item_Name_Ex
#-------------------------------------------------------------------------- 
  def draw_item_name_ex(item, x, y)
    if item == nil
      return
    end
    bitmap = RPG::Cache.icon(item.icon_name)
    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, 150, 32, item.name)
   
  end
#--------------------------------------------------------------------------
# Nada
#--------------------------------------------------------------------------
  def nada
    face = RPG::Cache.picture("")
  end
#--------------------------------------------------------------------------
# Drw_face
#--------------------------------------------------------------------------
  def drw_face(actor,x,y)
    face = RPG::Cache.picture(actor.name + "_fc") rescue nada
    cw = face.width
    ch = face.height
    src_rect = Rect.new(0, 0, cw, ch)
    self.contents.blt(x , y - ch, face, src_rect)   
  end     
end

#===============================================================================
# Game_Actor
#===============================================================================
class Win_Shop_Sel < Window_Base
  attr_reader   :index                   
#--------------------------------------------------------------------------
# Initialize
#-------------------------------------------------------------------------- 
  def initialize(x, y, width, height)
    super(x, y, width, height)
    @item_max = 1
    @column_max = 1
    @index = -1
  end
#--------------------------------------------------------------------------
# Index
#-------------------------------------------------------------------------- 
  def index=(index)
    @index = index
    update_cursor_rect
  end
#--------------------------------------------------------------------------
# row_max
#-------------------------------------------------------------------------- 
  def row_max
    return (@item_max + @column_max - 1) / @column_max
  end
#--------------------------------------------------------------------------
# Top_Row
#-------------------------------------------------------------------------- 
  def top_row
    return self.oy / 32
  end
#--------------------------------------------------------------------------
# Top_Row(Row)
#-------------------------------------------------------------------------- 
  def top_row=(row)
    if row < 0
      row = 0
    end
    if row > row_max - 1
      row = row_max - 1
    end
    self.oy = row * 32
  end
#--------------------------------------------------------------------------
# Page_Row_Max
#-------------------------------------------------------------------------- 
  def page_row_max
    return (self.height - 32) / 32
  end
#--------------------------------------------------------------------------
# Page_Item_Max
#-------------------------------------------------------------------------- 
  def page_item_max
    return page_row_max * @column_max
  end
#--------------------------------------------------------------------------
# Update_Cursor_Rect
#-------------------------------------------------------------------------- 
  def update_cursor_rect
    if @index < 0
      self.cursor_rect.empty
      return
    end
    row = @index / @column_max
    if row < self.top_row
      self.top_row = row
    end
    if row > self.top_row + (self.page_row_max - 1)
      self.top_row = row - (self.page_row_max - 1)
    end
    cursor_width = self.width / @column_max - 32
    x = @index % @column_max * 80
    y = @index / @column_max * 32 - self.oy
    self.cursor_rect.set(x, y, 32, 32)
  end
#--------------------------------------------------------------------------
# Update
#-------------------------------------------------------------------------- 
  def update
    super
    if self.active and @item_max > 0 and @index >= 0
      if Input.repeat?(Input::RIGHT)
        if @column_max >= 2 and @index < @item_max - 1
          $game_system.se_play($data_system.cursor_se)
          @index += 1
        end
      end
      if Input.repeat?(Input::LEFT)
        if @column_max >= 2 and @index > 0
          $game_system.se_play($data_system.cursor_se)
          @index -= 1
        end
      end     
    end
    update_cursor_rect
  end
end

#===============================================================================
# Window_ShopCommand
#===============================================================================
class Window_ShopCommand < Win_Shop_Sel
#--------------------------------------------------------------------------
# Initialize
#-------------------------------------------------------------------------- 
  def initialize
    super(58, 68, 230, 64)
    self.contents = Bitmap.new(width - 32, height - 32)
    @item_max = 3
    @column_max = 3
    @commands = ["", "", ""]
    self.index = 0
  end
end

#===============================================================================
# Window_ShopBuy
#===============================================================================
class Window_ShopBuy < Window_Selectable
#--------------------------------------------------------------------------
# Initialize
#--------------------------------------------------------------------------   
  def initialize(shop_goods)
    super(-10, 180, 310, 225)
    @shop_goods = shop_goods
    refresh
    self.index = 0
  end
#--------------------------------------------------------------------------
# Ite
#--------------------------------------------------------------------------   
  def item
    return @data[self.index]
  end
#--------------------------------------------------------------------------
# Refresh
#--------------------------------------------------------------------------   
  def refresh
    if self.contents != nil
      self.contents.dispose
      self.contents = nil
    end
    @data = []
    for goods_item in @shop_goods
      case goods_item[0]
      when 0
        item = $data_items[goods_item[1]]
      when 1
        item = $data_weapons[goods_item[1]]
      when 2
        item = $data_armors[goods_item[1]]
      end
      if item != nil
        @data.push(item)
      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_item(i)
      end
    end
  end
#--------------------------------------------------------------------------
# Draw_Item
#--------------------------------------------------------------------------   
  def draw_item(index)
    self.contents.font.name = "Georgia"   
    self.contents.font.bold = false   
    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
    x = 4
    y = index * 32   
    if item.price <= $game_party.gold and number < 99
      self.contents.font.color = normal_color
    else
      self.contents.font.color = disabled_color
    end   
    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, 150, 32, item.name, 0)
    self.contents.font.color = Color.new(50,250,150,255)
    self.contents.draw_text(x + 150, y, 88, 32, "G", 1) 
    if item.price <= $game_party.gold
    if number < 99
    self.contents.font.color = Color.new(200,200,50,255)
    else
    self.contents.font.color = disabled_color
    end 
    else
    self.contents.font.color = Color.new(250,100,50,255)
    end       
    self.contents.draw_text(x + 180, y, 88, 32, item.price.to_s, 2)
  end
#--------------------------------------------------------------------------
# Update_Help
#--------------------------------------------------------------------------   
  def update_help
    @help_window.set_text(self.item == nil ? "" : self.item.description)
  end
end

#===============================================================================
# Window_ShopSell
#===============================================================================
class Window_ShopSell < Window_Selectable
#--------------------------------------------------------------------------
# Initialize
#--------------------------------------------------------------------------     
  def initialize
    super(-10, 180, 305, 225)
    @column_max = 1
    refresh
    self.index = 0
  end
#--------------------------------------------------------------------------
# Item
#--------------------------------------------------------------------------     
  def item
    return @data[self.index]
  end
#--------------------------------------------------------------------------
# Refresh
#--------------------------------------------------------------------------     
  def refresh
    if self.contents != nil
      self.contents.dispose
      self.contents = nil
    end
    @data = []
    for i in 1...$data_items.size
      if $game_party.item_number(i) > 0
        @data.push($data_items[i])
      end
    end
    for i in 1...$data_weapons.size
      if $game_party.weapon_number(i) > 0
        @data.push($data_weapons[i])
      end
    end
    for i in 1...$data_armors.size
      if $game_party.armor_number(i) > 0
        @data.push($data_armors[i])
      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_item(i)
      end
    end
  end
#--------------------------------------------------------------------------
# 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 item.price > 0
      self.contents.font.color = normal_color
    else
      self.contents.font.color = disabled_color
    end
    self.contents.font.name = "Georgia"
    x = 4 + index % 1 * (288 + 32)
    y = index / 1 * 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(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, 150, 32, item.name, 0)
   
    self.contents.draw_text(x + 230, y, 16, 32, ":", 1)
    self.contents.draw_text(x + 240, y, 24, 32, number.to_s, 2)
  end
#--------------------------------------------------------------------------
# Update_Help
#--------------------------------------------------------------------------     
  def update_help
    @help_window.set_text(self.item == nil ? "" : self.item.description)
  end
end

#===============================================================================
# Window_ShopNumber
#===============================================================================
class Window_ShopNumber < Window_Base
#--------------------------------------------------------------------------
# Initialize
#--------------------------------------------------------------------------       
  def initialize
    super(-10, 180, 310, 225)
    self.contents = Bitmap.new(width - 32, height - 32)
    @item = nil
    @max = 1
    @price = 0
    @number = 1
  end
#--------------------------------------------------------------------------
# Set
#--------------------------------------------------------------------------       
  def set(item, max, price)
    @item = item
    @max = max
    @price = price
    @number = 1
    refresh
  end
#--------------------------------------------------------------------------
# Number
#--------------------------------------------------------------------------       
  def number
    return @number
  end
#--------------------------------------------------------------------------
# Refresh
#--------------------------------------------------------------------------       
  def refresh
    self.contents.clear
    self.contents.font.name = "Georgia"
    self.contents.font.bold = true   
    draw_item_name_ex(@item, 4, 66)
    self.contents.font.color = Color.new(50,150,250,255)   
    self.contents.draw_text(185, 66, 32, 32, "x")
    self.contents.font.color = normal_color   
    self.contents.draw_text(208, 66, 24, 32, @number.to_s, 2)
    self.cursor_rect.set(304, 66, 32, 32)
    total_price = @price * @number
    cx = contents.text_size("G").width   
    self.contents.font.color = Color.new(200,200,50,255)
    self.contents.draw_text(4, 160, 228-2, 32, total_price.to_s, 2)
    self.contents.font.color = Color.new(50,250,150,255)
    self.contents.draw_text(90, 160, 88, 32, "G", 1)
   
  end
#--------------------------------------------------------------------------
# Update
#--------------------------------------------------------------------------       
  def update
    super
    if self.active
      if Input.repeat?(Input::RIGHT) and @number < @max
        $game_system.se_play($data_system.cursor_se)
        @number += 1
        refresh
      end
      if Input.repeat?(Input::LEFT) and @number > 1
        $game_system.se_play($data_system.cursor_se)
        @number -= 1
        refresh
      end
      if Input.repeat?(Input::UP) and @number < @max
        $game_system.se_play($data_system.cursor_se)
        @number = [@number + 10, @max].min
        refresh
      end
      if Input.repeat?(Input::DOWN) and @number > 1
        $game_system.se_play($data_system.cursor_se)
        @number = [@number - 10, 1].max
        refresh
      end
    end
  end
end

#===============================================================================
# Window_ShopStatus
#===============================================================================
class Window_ShopStatus < Window_Base
#--------------------------------------------------------------------------
# Initialize
#--------------------------------------------------------------------------         
  def initialize
    super(300, 128, 350, 300)
    self.contents = Bitmap.new(width - 32, height - 32)
    @item = nil
    refresh
  end
#--------------------------------------------------------------------------
# Refresh
#--------------------------------------------------------------------------         
  def refresh
    self.contents.clear
    self.contents.font.name = "Georgia"
    if @item == nil
      return
    end
    if $mog_rgss_Item_Limit != nil
      case @item
        when RPG::Item
          number = $game_party.item_number(@item.id)
          item_max = MOG::ITEM_LIMIT[@item.id]
        when RPG::Weapon
          number = $game_party.weapon_number(@item.id)
          item_max = MOG::WEAPON_LIMIT[@item.id] 
        when RPG::Armor
          number = $game_party.armor_number(@item.id)
          item_max = MOG::ARMOR_LIMIT[@item.id]
    end
    self.contents.font.color = system_color
    self.contents.draw_text(190, 0, 200, 32, "Stock")
    self.contents.font.color = normal_color
    if item_max != nil
      self.contents.draw_text(230, 0, 80, 32, number.to_s + " / " + item_max.to_s, 2)
    else
      max_limit = MOG::DEFAULT_LIMIT
      self.contents.draw_text(230, 0, 80, 32, number.to_s + " / " + max_limit.to_s, 2)
    end     
    else
    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
    self.contents.font.color = system_color
    self.contents.draw_text(210, 0, 200, 32, "Stock")
    self.contents.font.color = normal_color
    self.contents.draw_text(245, 0, 32, 32, number.to_s, 2)
    end
    if @item.is_a?(RPG::Item)
      return
    end
    for i in 0...$game_party.actors.size
      actor = $game_party.actors[i]
      if actor.equippable?(@item)
        self.contents.font.color = normal_color
      else
        self.contents.font.color = disabled_color
      end
      self.contents.draw_text(65, 0, 100, 32, "Equipped", 2)         
      drw_face(actor,0 ,80 + 64 * i)
      if @item.is_a?(RPG::Weapon)
        item1 = $data_weapons[actor.weapon_id]
      elsif @item.kind == 0
        item1 = $data_armors[actor.armor1_id]
      elsif @item.kind == 1
        item1 = $data_armors[actor.armor2_id]
      elsif @item.kind == 2
        item1 = $data_armors[actor.armor3_id]
      else
        item1 = $data_armors[actor.armor4_id]
      end
      if actor.equippable?(@item)
        if @item.is_a?(RPG::Weapon)
          atk1 = item1 != nil ? item1.atk : 0
          atk2 = @item != nil ? @item.atk : 0
          pdef1 = item1 != nil ? item1.pdef : 0
          mdef1 = item1 != nil ? item1.mdef : 0
          pdef2 = @item != nil ? @item.pdef : 0
          mdef2 = @item != nil ? @item.mdef : 0         
        self.contents.draw_text(-20, 50 + 64 * i, 112, 32,"Atk", 2)   
        self.contents.draw_text(70, 50 + 64 * i, 112, 32,"Pdef", 2)   
        self.contents.draw_text(160, 50 + 64 * i, 112, 32,"Mdef", 2)           
        change = atk2 - atk1
        change2 = pdef2 - pdef1
        change3 = mdef2 - mdef1
      if atk2 > atk1
        self.contents.font.color = Color.new(50,250,150,255) 
      elsif atk2 == atk1
        self.contents.font.color = disabled_color
      else
        self.contents.font.color = Color.new(250,100,50,255)   
      end       
      self.contents.draw_text(20, 50 + 64 * i, 112, 32,sprintf("%d", change), 2)   
      if pdef2 > pdef1
        self.contents.font.color = Color.new(50,250,150,255) 
      elsif pdef2 == pdef1
        self.contents.font.color = disabled_color
      else
        self.contents.font.color = Color.new(250,100,50,255)   
      end           
      self.contents.draw_text(110, 50 + 64 * i, 112, 32,sprintf("%d", change2), 2)   
      if mdef2 > mdef1
        self.contents.font.color = Color.new(50,250,150,255) 
      elsif mdef2 == mdef1
        self.contents.font.color = disabled_color
      else
        self.contents.font.color = Color.new(250,100,50,255)   
      end           
      self.contents.draw_text(200, 50 + 64 * i, 112, 32,sprintf("%d", change3), 2)   
      end
      if @item.is_a?(RPG::Armor)
          pdef1 = item1 != nil ? item1.pdef : 0
          mdef1 = item1 != nil ? item1.mdef : 0
          eva1 = item1 != nil ? item1.eva : 0         
          pdef2 = @item != nil ? @item.pdef : 0
          mdef2 = @item != nil ? @item.mdef : 0
          eva2 = @item != nil ? @item.eva : 0         
          change = pdef2 - pdef1
          change2 = mdef2 - mdef1
          change3 = eva2 - eva1         
        self.contents.draw_text(-20, 50 + 64 * i, 112, 32,"Pdef", 2)   
        self.contents.draw_text(70, 50 + 64 * i, 112, 32,"Mdef", 2)   
        self.contents.draw_text(160, 50 + 64 * i, 112, 32,"Eva", 2) 
      if pdef2 > pdef1
        self.contents.font.color = Color.new(50,250,150,255) 
      elsif pdef2 == pdef1
        self.contents.font.color = disabled_color
      else
        self.contents.font.color = Color.new(250,100,50,255)   
      end     
      self.contents.draw_text(20, 50 + 64 * i, 112, 32,sprintf("%d", change), 2)   
      if mdef2 > mdef1
        self.contents.font.color = Color.new(50,250,150,255) 
      elsif mdef2 == mdef1
        self.contents.font.color = disabled_color
      else
        self.contents.font.color = Color.new(250,100,50,255)   
      end           
        self.contents.draw_text(110, 50 + 64 * i, 112, 32,sprintf("%d", change2), 2)         
      if eva2 > eva1
        self.contents.font.color = Color.new(50,250,150,255) 
      elsif eva2 == eva1
        self.contents.font.color = disabled_color
      else
        self.contents.font.color = Color.new(250,100,50,255)   
      end           
        self.contents.draw_text(200, 50 + 64 * i, 112, 32,sprintf("%d", change3), 2)   
      end
      end
      if item1 != nil
      if actor.equippable?(@item)
        self.contents.font.color = normal_color
      else
        self.contents.font.color = disabled_color
      end
        x = 4
        y = 64 + 64 * i
        bitmap = RPG::Cache.icon(item1.icon_name)
        opacity = self.contents.font.color == normal_color ? 255 : 128
        self.contents.blt(x + 50, y - 35, bitmap, Rect.new(0, 0, 24, 24), opacity)
        self.contents.draw_text(x + 75, y - 40, 212, 32, item1.name)
      end
    end
  end
  def item=(item)
    if @item != item
      @item = item
      refresh
    end
  end
end

########################################################################
## DWELLER EDIT TO SHOW ZONE (call $Zonadetienda ="nombre de tienda") ##
########################################################################

class Window_Dweller1 < Window_Base
 
  def initialize
    super(0, 0, 250, 96)
    self.contents = Bitmap.new(width - 32, height - 32)
    refresh
  end
 
  def refresh
    self.contents.clear
    self.contents.font.color = normal_color
    self.contents.font.size = 14
    self.contents.draw_text(65, 17, 250, 32, "Zone: ")
      self.contents.font.color = Color.new(50,250,150,255)
    self.contents.draw_text(95, 17, 250, 32, $Zonadetienda)
     self.contents.font.color = normal_color
  end
 
  def update
    super
   
    refresh
  end
 
end

#===============================================================================
# Scene_Shop
#===============================================================================
class Scene_Shop
#--------------------------------------------------------------------------
# Main
#--------------------------------------------------------------------------       
  def main
    @mshop_zona = Window_Dweller1.new
    @mshop_zona.x = 15
    @mshop_zona.y = 15
    @mshop_zona.opacity=0
    @mshop_zona.visible=true
    @mshop_back = Plane.new
    @mshop_back.bitmap = RPG::Cache.picture("MN_BK2")
    @mshop_back.z = 10
    @mshop_lay = Sprite.new
    @mshop_lay.bitmap = RPG::Cache.picture("Shop_Lay")
    @mshop_lay.z = 15
    @mshop_com = Sprite.new
    @mshop_com.bitmap = RPG::Cache.picture("Shop_Com01")
    @mshop_com.z = 20
    @help_window = Window_Help.new
    @help_window.contents.font.name = "Georgia"
    @help_window.y = 413
    @command_window = Window_ShopCommand.new
    @command_window.visible = false
    @gold_window = Window_Gold.new
    @gold_window.x = 460
    @gold_window.y = -5
    @dummy_window = Window_Base.new(0, 128, 640, 352)
    @buy_window = Window_ShopBuy.new($game_temp.shop_goods)
    @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
    @help_window.opacity = 0
    @status_window.opacity = 0
    @sell_window.opacity = 0
    @buy_window.opacity = 0
    @gold_window.opacity = 0
    @command_window.opacity = 0
    @number_window.opacity = 0
    @dummy_window.opacity = 0
    Graphics.transition(MOG::MNSHPT, "Graphics/Transitions/" + MOG::MNSHPTT)
    loop do
      Graphics.update
      Input.update
      update
      if $scene != self
        break
      end
    end
    for i in 0..30
     
      @mshop_back.ox += 1
      @help_window.x -= 15     
      @gold_window.x += 15
      @mshop_lay.zoom_x += 0.1
      @mshop_lay.opacity -= 10
      @command_window.x -= 15
      @mshop_com.x -= 15
      @buy_window.x -= 20
      @sell_window.x -= 20
      Graphics.update 
    end 
    Graphics.freeze
    @mshop_zona.dispose
    @help_window.dispose
    @command_window.dispose
    @gold_window.dispose
    @dummy_window.dispose
    @buy_window.dispose
    @sell_window.dispose
    @number_window.dispose
    @status_window.dispose
    @mshop_back.dispose   
    @mshop_lay.dispose
    @mshop_com.dispose
  end
#--------------------------------------------------------------------------
# Update
#--------------------------------------------------------------------------         
  def update
    @mshop_back.ox += 1
    if @help_window.x < 0
       @help_window.x += 10
       @help_window.contents_opacity += 10
    elsif @help_window.x >= 0 
      @help_window.x = 0
      @help_window.contents_opacity = 255     
    end 
    if @sell_window.active == true
       @sell_window.visible = true
    if @sell_window.x < -10
       @sell_window.x += 15
       @sell_window.contents_opacity += 10
    elsif @sell_window.x >= -10 
       @sell_window.x = -10
       @sell_window.contents_opacity = 255     
    end 
    else
    if @sell_window.x > -300
       @sell_window.x -= 15
       @sell_window.contents_opacity -= 10
    elsif @sell_window.x <= -300 
       @sell_window.x = -300
       @sell_window.contents_opacity = 0
       @sell_window.visible = false
    end     
    end 
    if @buy_window.active == true
       @buy_window.visible = true
    if @buy_window.x < -10
       @buy_window.x += 15
       @buy_window.contents_opacity += 10
    elsif @buy_window.x >= -10 
       @buy_window.x = -10
       @buy_window.contents_opacity = 255     
    end 
    else
    if @buy_window.x > -300
       @buy_window.x -= 15
       @buy_window.contents_opacity -= 10
    elsif @buy_window.x <= -300 
       @buy_window.x = -300
       @buy_window.contents_opacity = 0
       @buy_window.visible = false
    end     
    end 
    if @number_window.active == true
       @number_window.visible = true
    if @number_window.x < -10
       @number_window.x += 15
       @number_window.contents_opacity += 10
    elsif @number_window.x >= -10 
       @number_window.x = -10
       @number_window.contents_opacity = 255     
    end 
    else
    if @number_window.x > -300
       @number_window.x -= 15
       @number_window.contents_opacity -= 10
    elsif @number_window.x <= -300 
       @number_window.x = -300
       @number_window.contents_opacity = 0
       @number_window.visible = false
    end     
    end 
    if @number_window.active == false
      if Input.trigger?(Input.dir4) or Input.trigger?(Input::C) or
         Input.trigger?(Input::L) or Input.trigger?(Input::R)     
        @help_window.x = -200
        @help_window.contents_opacity = 0
      end
    end
    @help_window.update
    @command_window.update
    @gold_window.update
    @dummy_window.update
    @buy_window.update
    @sell_window.update
    @number_window.update
    @status_window.update
    case @command_window.index
    when 0
      @mshop_com.bitmap = RPG::Cache.picture("Shop_Com01")
    when 1
      @mshop_com.bitmap = RPG::Cache.picture("Shop_Com02")
    when 2
      @mshop_com.bitmap = RPG::Cache.picture("Shop_Com03")
    end
    if @command_window.active
      update_command
      return
    end
    if @buy_window.active
      update_buy
      return
    end
    if @sell_window.active
      update_sell
      return
    end
    if @number_window.active
      update_number
      return
    end
  end
#--------------------------------------------------------------------------
# Update_Command
#--------------------------------------------------------------------------         
  def update_command
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      $scene = Scene_Map.new
      return
    end
    if Input.trigger?(Input::C)
      case @command_window.index
      when 0 
        $game_system.se_play($data_system.decision_se)
        @command_window.active = false
        @dummy_window.visible = false
        @buy_window.active = true
        @buy_window.refresh
        @status_window.visible = true
      when 1
        $game_system.se_play($data_system.decision_se)
        @command_window.active = false
        @dummy_window.visible = false
        @sell_window.active = true
        @sell_window.refresh
      when 2 
        $game_system.se_play($data_system.decision_se)
        $scene = Scene_Map.new
      end
      return
    end
  end
#--------------------------------------------------------------------------
# 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
      @status_window.visible = false
      @status_window.item = nil
      @help_window.set_text("")
      return
    end
    if Input.trigger?(Input::C)
      @item = @buy_window.item
      if @item == nil or @item.price > $game_party.gold
        $game_system.se_play($data_system.buzzer_se)
        return
      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)
      max = @item.price == 0 ? 99 : $game_party.gold / @item.price
      max = [max, 99 - number].min
      @buy_window.active = false
      @number_window.set(@item, max, @item.price)
      @number_window.active = true
    end
  end
#--------------------------------------------------------------------------
# Update Sell
#--------------------------------------------------------------------------         
  def update_sell
    @status_window.item = @sell_window.item
     @status_window.visible = true
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      @command_window.active = true
      @dummy_window.visible = true
      @sell_window.active = false
      @status_window.item = nil
      @help_window.set_text("")
      return
    end
    if Input.trigger?(Input::C)
      @item = @sell_window.item
      @status_window.item = @item
      if @item == nil or @item.price == 0
        $game_system.se_play($data_system.buzzer_se)
        return
      end
      $game_system.se_play($data_system.decision_se)
      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
      max = number
      @sell_window.active = false
      @number_window.set(@item, max, @item.price / 2)
      @number_window.active = true
      @status_window.visible = true
    end
  end
#--------------------------------------------------------------------------
# Update Number
#--------------------------------------------------------------------------         
  def update_number
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      @number_window.active = false
      case @command_window.index
      when 0 
        @buy_window.active = true
      when 1
        @sell_window.active = true
        @status_window.visible = false
      end
      return
    end
    if Input.trigger?(Input::C)
      $game_system.se_play($data_system.shop_se)
      @number_window.active = false
      case @command_window.index
      when 0
        $game_party.lose_gold(@number_window.number * @item.price)
        case @item
        when RPG::Item
          $game_party.gain_item(@item.id, @number_window.number)
        when RPG::Weapon
          $game_party.gain_weapon(@item.id, @number_window.number)
        when RPG::Armor
          $game_party.gain_armor(@item.id, @number_window.number)
        end
        @gold_window.refresh
        @buy_window.refresh
        @status_window.refresh
        @buy_window.active = true
      when 1
        $game_party.gain_gold(@number_window.number * (@item.price / 2))
        case @item
        when RPG::Item
          $game_party.lose_item(@item.id, @number_window.number)
        when RPG::Weapon
          $game_party.lose_weapon(@item.id, @number_window.number)
        when RPG::Armor
          $game_party.lose_armor(@item.id, @number_window.number)
        end
        @gold_window.refresh
        @sell_window.refresh
        @status_window.refresh
        @sell_window.active = true
        @status_window.visible = false
      end
      return
    end
  end
end

$mog_rgss_Scene_Shop = true


I´m using both scripts with no errors but on Mog shop windows all items are in white color.
17
General Discussion / Re: Screenshot Thread
April 16, 2012, 03:26:29 am
Quote from: Zexion on April 16, 2012, 02:36:49 am
Nice dragon sprite :O, but to me, the more distracting thing was that button. What  is the fourth button on the window for?


This button is to switch between monitors (on a dual monitor configuration).

The Dragon sprite is a working in progress sprite (just there to compare with characters size). He will be an static boss (he will be animated but not move, just use breath, magic and melee attack when players get in range)
18
General Discussion / Re: Screenshot Thread
April 16, 2012, 01:14:22 am
This is a screen of my game 7 Islands to show you the HUD:

Spoiler: ShowHide



I´m using Z-HUD for Blizz-ABS (by Blizzard). Nathmatt help me to adapt the Z-HUD to the full party, the design (bars, and face) and the stats are mine.
19
Intelligent Debate / Re: Money or Passion?
April 10, 2012, 03:50:36 pm
Probably because I´m older than most of you but my point of view is a little different:

You are 20 years old, so passion > all (not talking about crazy decissions)
20
This script is fantastic and very use friendly.

I used to place a question mark on top of the NPCs that give quest to the player on my game. I discover a small bug when you use local switch. Example: When you talk to an NPC I add the quest to the player and use the comment to show the quest icon, then I active the first local switch so the NPC shows a different message, and I use no comments because in this case I don't want to show the icon (because the quest is already taken. Here is the problem, when the second conversation ends, the icon don't dissapear and begin to move when the players do.

I resolved myself this problem adding (in configuration) a new comment to the script with no content and adding in the second switch a comment with no content:
TAGS = ['quest', 'SEARCH', 'ATTACK', '']
  # These are th codes that will be searched for in event page comments
  ICONS = ['quest', 'search', 'attack', '']
  # These are the filenames of the respective codes, located in Pictures folder


Thanks to ForeverZer0, I was doing this with events and was a really hard work, now is so easy using this script.