RMRK is retiring.
Registration is disabled. The site will remain online, but eventually become a read-only archive. More information.

RMRK.net has nothing to do with Blockchains, Cryptocurrency or NFTs. We have been around since the early 2000s, but there is a new group using the RMRK name that deals with those things. We have nothing to do with them.
NFTs are a scam, and if somebody is trying to persuade you to buy or invest in crypto/blockchain/NFT content, please turn them down and save your money. See this video for more information.
clock!

0 Members and 2 Guests are viewing this topic.

**
Rep: +0/-0Level 81
HI! I have a script to ask you!  :)
In my game I have this type of menù
Code: [Select]
#===============================================================================
#
# Cozziekuns' Menu System
# Last Date Updated: 4/10/2010
#
# A menu system similar to that of Final Fantasy VII's.
#
#===============================================================================
# Updates
# -----------------------------------------------------------------------------
# o 4/09/10 - Started Script.
# o 4/10/10 - Finished Script.
# o 4/12/10 - Upgraded it so it works with every font, and has a few icons. Also added modules, for
#                  customization.
#===============================================================================
# What's to come?
# -----------------------------------------------------------------------------
# o Even more icons.
#===============================================================================
# Instructions
# -----------------------------------------------------------------------------
# To install this script, open up your script editor and copy/paste this script
# to an open slot below ? Materials but above ? Main. Remember to save. Also,
# feel free to change the icons towards your preference.
#===============================================================================

#BEGIN CUSTOMIZABLE REGION-----------------------------------------------------

module COZZIEKUNS
  module ICONS
   TIME = 188
   GOLD = 205
   LOCATION = 153
  end
 end

 #END CUSTOMIZABLE REGION-------------------------------------------------------

#==============================================================================
# ** Window_MenuStatus
#------------------------------------------------------------------------------
#  This window displays party member status on the menu screen.
#==============================================================================

class Window_MenuStatus < Window_Selectable
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     x : window X coordinate
  #     y : window Y coordinate
  #--------------------------------------------------------------------------
  def initialize(x, y)
    super(x, y, 424, 412)
    refresh
    self.active = false
    self.index = -1
  end
  
  #--------------------------------------------------------------------------
  # * Draw TNL (To next level)
  #     actor : actor
  #     x     : draw spot x-coordinate
  #     y     : draw spot y-coordinate
  #     width : Width
  #--------------------------------------------------------------------------
  def draw_actor_tnl(actor, x, y, width = 80)
    draw_actor_tnl_gauge(actor, x, y, width)
    self.contents.font.color = system_color
    self.contents.draw_text(x, y - 21, 135, WLH, "To next level")
    self.contents.font.color = hp_color(actor)
    last_font_size = self.contents.font.size
    xr = x + width
    if width < 120
      self.contents.draw_text(xr - 44, y, 44, WLH, actor.next_rest_exp_s, 2)
    else
      self.contents.draw_text(xr - 99, y, 44, WLH, actor.next_rest_exp_s, 2)
      self.contents.font.color = normal_color
      self.contents.draw_text(xr - 55, y, 11, WLH, "/", 2)
      self.contents.draw_text(xr - 44, y, 44, WLH, actor.next_exp_s, 2)
    end
  end
  #--------------------------------------------------------------------------
  # * Draw TNL gauge
  #     actor : actor
  #     x     : draw spot x-coordinate
  #     y     : draw spot y-coordinate
  #     width : Width
  #--------------------------------------------------------------------------
  def draw_actor_tnl_gauge(actor, x, y, width = 100)
    gw = width * actor.exp_s / actor.next_exp_s
    gc1 = tnl_gauge_colour1
    gc2 = tnl_gauge_colour2
    self.contents.fill_rect(x, y + WLH - 8, width, 6, gauge_back_color)
    self.contents.gradient_fill_rect(x, y + WLH - 8, gw, 6, gc1, gc2)
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    @item_max = $game_party.members.size
    for actor in $game_party.members
      draw_actor_face(actor, 2, actor.index * 96 + 2, 92)
      x = 104
      y = actor.index * 96
      draw_actor_name(actor, x + 30, y)
      draw_actor_level(actor, x + 30, y + 21)
      draw_actor_state(actor, x + 150, y)
      draw_actor_hp(actor, x + 30, y + 18 + WLH * 1)
      draw_actor_mp(actor, x + 30, y + 18 + WLH * 2)
      draw_actor_tnl(actor, x + 165, y + 18 + WLH * 1)
    end
  end
  #--------------------------------------------------------------------------
  # * Update cursor
  #--------------------------------------------------------------------------
  def update_cursor
    if @index < 0               # No cursor
      self.cursor_rect.empty
    elsif @index < @item_max    # Normal
      self.cursor_rect.set(0, @index * 96, contents.width, 96)
    elsif @index >= 100         # Self
      self.cursor_rect.set(0, (@index - 100) * 96, contents.width, 96)
    else                        # All
      self.cursor_rect.set(0, 0, contents.width, @item_max * 96)
    end
  end
end

#==============================================================================
# ** Window_Base
#------------------------------------------------------------------------------
#  This is a superclass of all windows in the game.
#==============================================================================

class Window_Base < Window
  
  #--------------------------------------------------------------------------
  # * To Next Level gauge colour 1
  #--------------------------------------------------------------------------
  def tnl_gauge_colour1
    return text_color(3)
  end
  #--------------------------------------------------------------------------
  # * To Next Level gauge colour 2
  #--------------------------------------------------------------------------
   def tnl_gauge_colour2
    return text_color(11)
  end
  #--------------------------------------------------------------------------
  # * Currency Value
  #--------------------------------------------------------------------------
  def draw_currency_value(value, x, y, width)
  cx = contents.text_size(Vocab::gold).width
  self.contents.font.color = normal_color
  self.contents.draw_text(x, y, width, WLH, value, 2)
  self.contents.font.color = system_color
  draw_icon(COZZIEKUNS::ICONS::GOLD, 0, 28)
 end
end
#==============================================================================
# ** Window_Location
#------------------------------------------------------------------------------
#  This window displays the location.
#==============================================================================

class Window_Location < Window_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize (x, y)
    super (x, y, 240, WLH + 26)
    refresh
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    text = load_data ("Data/MapInfos.rvdata")[$game_map.map_id].name
    self.contents.draw_text(4, -4, 200, WLH, text, 2)
    draw_icon(COZZIEKUNS::ICONS::LOCATION, 0, -4)
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    super
    if Graphics.frame_count / Graphics.frame_rate != @total_sec
      refresh
    end
  end
end


#==============================================================================
# ** Window_Gold + Time
#------------------------------------------------------------------------------
#  This window displays the amount of gold and playtime.
#==============================================================================

class Window_Gold < Window_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     x : window X coordinate
  #     y : window Y coordinate
  #--------------------------------------------------------------------------
  def initialize(x, y)
    super(x, y, 160, WLH + 56)
    refresh
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    draw_currency_value($game_party.gold, 4, 28, 120)
    @total_sec = Graphics.frame_count / Graphics.frame_rate
    hour = @total_sec / 60 / 60
    min = @total_sec / 60 % 60
    sec = @total_sec % 60
    text = sprintf("%02d:%02d:%02d", hour, min, sec)
    self.contents.font.color = normal_color
    self.contents.draw_text(4, 0, 120, WLH, text, 2)
    self.contents.font.color = system_color
    draw_icon(COZZIEKUNS::ICONS::TIME, 0, 0)
  end
    
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    if Graphics.frame_count / Graphics.frame_rate != @total_sec
      refresh
    end
  end
end

#==============================================================================
# ** Scene_Menu
#------------------------------------------------------------------------------
#  This class performs the menu screen processing.
#==============================================================================

class Scene_Menu < Scene_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     menu_index : command cursor's initial position
  #--------------------------------------------------------------------------
  def initialize(menu_index = 0)
    @menu_index = menu_index
  end
  #--------------------------------------------------------------------------
  # * Start processing
  #--------------------------------------------------------------------------
  def start
    super
    create_menu_background
    @status_window = Window_MenuStatus.new(0, 2)
    create_command_window
    @gold_window = Window_Gold.new(384, 289)
    @location_window = Window_Location.new(304, 368)
 end
  #--------------------------------------------------------------------------
  # * Termination Processing
  #--------------------------------------------------------------------------
  def terminate
    super
    dispose_menu_background
    @command_window.dispose
    @gold_window.dispose
    @location_window.dispose
    @status_window.dispose
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    super
    update_menu_background
    @command_window.update
    @gold_window.update
    @status_window.update
    @location_window.update
    if @command_window.active
      update_command_selection
    elsif @status_window.active
      update_actor_selection
    end
  end
  #--------------------------------------------------------------------------
  # * Create Command Window
  #--------------------------------------------------------------------------
  def create_command_window
    s1 = Vocab::item
    s2 = Vocab::skill
    s3 = Vocab::equip
    s4 = Vocab::status
    s5 = Vocab::save
    s6 = Vocab::game_end
    @command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6])
    @command_window.index = @menu_index
    @command_window.x = 384
    if $game_party.members.size == 0          # If number of party members is 0
      @command_window.draw_item(0, false)     # Disable item
      @command_window.draw_item(1, false)     # Disable skill
      @command_window.draw_item(2, false)     # Disable equipment
      @command_window.draw_item(3, false)     # Disable status
    end
    if $game_system.save_disabled             # If save is forbidden
      @command_window.draw_item(4, false)     # Disable save
    end
  end
  #--------------------------------------------------------------------------
  # * Update Command Selection
  #--------------------------------------------------------------------------
  def update_command_selection
    if Input.trigger?(Input::B)
      Sound.play_cancel
      $scene = Scene_Map.new
    elsif Input.trigger?(Input::C)
      if $game_party.members.size == 0 and @command_window.index < 4
        Sound.play_buzzer
        return
      elsif $game_system.save_disabled and @command_window.index == 4
        Sound.play_buzzer
        return
      end
      Sound.play_decision
      case @command_window.index
      when 0      # Item
        $scene = Scene_Item.new
      when 1,2,3  # Skill, equipment, status
        start_actor_selection
      when 4      # Save
        $scene = Scene_File.new(true, false, false)
      when 5      # End Game
        $scene = Scene_End.new
      end
    end
  end
  #--------------------------------------------------------------------------
  # * Start Actor Selection
  #--------------------------------------------------------------------------
  def start_actor_selection
    @command_window.active = false
    @status_window.active = true
    if $game_party.last_actor_index < @status_window.item_max
      @status_window.index = $game_party.last_actor_index
    else
      @status_window.index = 0
    end
  end
  #--------------------------------------------------------------------------
  # * End Actor Selection
  #--------------------------------------------------------------------------
  def end_actor_selection
    @command_window.active = true
    @status_window.active = false
    @status_window.index = -1
  end
  #--------------------------------------------------------------------------
  # * Update Actor Selection
  #--------------------------------------------------------------------------
  def update_actor_selection
    if Input.trigger?(Input::B)
      Sound.play_cancel
      end_actor_selection
    elsif Input.trigger?(Input::C)
      $game_party.last_actor_index = @status_window.index
      Sound.play_decision
      case @command_window.index
      when 1  # skill
        $scene = Scene_Skill.new(@status_window.index)
      when 2  # equipment
        $scene = Scene_Equip.new(@status_window.index)
      when 3  # status
        $scene = Scene_Status.new(@status_window.index)
      end
    end
  end
end

(copy this script in a game to understand the layout of my menu...)
In the game that I'm doing there's only one character and I would put in the free space a clock syncronised with London's hour.
How can I put it there? Maybe with a script?
(THX) :)





« Last Edit: May 09, 2010, 02:25:31 PM by Zylos »

********
Furry Philosopher
Rep:
Level 94
Rawr?
2013 Best RPG Maker User (Creativity)Randomizer - GIAW 11Gold - GIAW 11 (Hard)Secret Santa 2013 ParticipantFor frequently finding and reporting spam and spam bots2012 Best RPG Maker User (Programming)2012 Best RPG Maker User (Mapping)Secret Santa 2012 ParticipantGold - GIAW 9Project of the Month winner for September 2008For taking a crack at the RMRK Wiki2011 Best RPG Maker User (Programming)2011 Kindest Member2011 Best Veteran2010 Most Deserving Of A Promotion2010 Best RPG Maker User (Technical)
Hm... well, I know how to put in a clock synchronized to your computer's system clock, but not quite sure how to synchronize it to another timezone if you're not already in London. Or does this not matter?




********
Resource Artist
Rep:
Level 94
\\\\\
Project of the Month winner for June 2009
I don't think it would matter.

***
Rep:
Level 82
aka DigiDeity
Hay,
you have 2 possibilitys which I know.
1. You "connect" to an daytimeserver which is placed in london or give londons time.
2. You research the time difference between your country and london. Then just take the time of the PC and add or sub the diference.

Deity
Greetings
DigiDeity

├Work┤
├Contact┤


*****
Rep:
Level 84
This text is way too personal.
Bronze - GIAW 11 (Hard)Silver - GIAW Halloween
Hay,
you have 2 possibilitys which I know.
1. You "connect" to an daytimeserver which is placed in london or give londons time.
2. You research the time difference between your country and london. Then just take the time of the PC and add or sub the diference.

Deity

People live in different time zones Deity, so I'm afraid option 2 probably wouldn't work if it was going to be released publicly to the world.

***
Rep:
Level 82
aka DigiDeity
Hay.
You're right cozziekuns but it's still a possibility which would work. ^^
If you would publish the game in some "countrys" you could just ask at the beginning of the game the country and take the specific time diference. It's just much more work. :P

Deity
Greetings
DigiDeity

├Work┤
├Contact┤


*****
Rep:
Level 84
This text is way too personal.
Bronze - GIAW 11 (Hard)Silver - GIAW Halloween
Hay.
You're right cozziekuns but it's still a possibility which would work. ^^
If you would publish the game in some "countrys" you could just ask at the beginning of the game the country and take the specific time diference. It's just much more work. :P

Deity

Wow, never thought of it that way.

Also Blacky, I have a question. Analog or digital?