Envision, Create, Share

Welcome to HBGames, a leading amateur game development forum and Discord server. All are welcome, and amongst our ranks you will find experts in their field from all aspects of video game design and development.

Party Card-

Nachos

Sponsor

Hey, I suck at scripting, so I was wondering if anyone could script for me a "Party card".(I know somebody else must have done a script like that, but i need the battle points, and all that.)
Like in the pokemon games, the trainer card, but this one must have:

-Total encounters
-Gold
-Steps
-Time played
*-And the place for a variable, Battle points, (that one i'll handle myself in troops command, I just need to show the variable)

If someone could do it would be great. :wink:

Ah, I want the Party Card to be called no by events, or "Script" command,
I'm using Chrono Trigger CMSBy Raziel(Thanks to you by the way, great menu ^^)
I was wondering If someone could replace the Party Change with Party Card :huh:

I'm posting the version of the srcipt. :lol:

Code:
#==============================================================================
# ** Chrono Trigger CMS
#------------------------------------------------------------------------------
# Raziel
# 2006-09-09
# Version 1.20
#------------------------------------------------------------------------------
# Thanks to 
# ~ Squall/Selwyn for his Cursor Script
# ~ RPG Advocate for his Party Members change script
# ~ MeisMe for fixing some bugs and helping me
# ~ Squaresoft for the pictures
#==============================================================================
# ~Instructions
#  Icons of the characters are used in the save menu.
#  Make sure you put them in the icon folder and name them
#  like you name your character file, for example the icon for
#  Arshes would be 001-Fighter01
#  
#  For the chapter function, just use $game_system = "desired filename"
#  in a call script command and then the savefile will have the name 
#  you choose.
#==============================================================================
#==============================================================================
# ** Scene_Menu
#------------------------------------------------------------------------------
#  This class performs menu screen processing.
#==============================================================================
class Scene_Menu
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     menu_index : command cursor's initial position
  #--------------------------------------------------------------------------
  def initialize(menu_index = 0)
    @menu_index = menu_index
  end
  #--------------------------------------------------------------------------
  # * Main Processing
  #--------------------------------------------------------------------------
  def main
    # Make command window
    @equip_background = Window_Base.new(315, 37, 270, 410)
    @target_background = Window_Base.new(320, 101, 267, 329)
    @accessory_window = Window_Base.new(45, 139, 270, 75)
    @help_background = Window_Base.new(45, 35, 540, 82)
    @accessory_window.z = 999
    @weapon_window = Window_Base.new(45, 214, 270, 233)
    @skill_left = Window_Base.new(45, 36, 270, 340)
    @skill_right = Window_Base.new(315, 36, 274, 340)
    @save_left = Window_Base.new(39,273,241,172)
    @save_right = Window_Base.new(280,273,320,172)
    @weapon_window.z = 999
    @target_background.z = 999
    @back_ground = Sprite.new
    @back_ground.bitmap = RPG::Cache.picture(CT_Pictures::BG_Picture)
    @item_background = Window_Base.new(45, 117, 540, 330)
    @playtime_background = Window_Base.new(0, 384, 160, 96)
    @playtime_background.z = 9999
    @party_change = Window_PartyChange.new
    @command_window = Window_IconCommands.new
    @command_window.index = @menu_index
    @actor_window = Window_Actors.new
    @new_equip = Window_NewEquip.new
    $game_temp.equip_window = @new_equip
    @item_window = Window_Item.new
    @help_window = Window_Help.new
    @playtime_window = Window_PlayTime.new
    @item_window.help_window = @help_window
    @help_window.opacity, @item_window.opacity = 0, 0
    @help_window.x, @help_window.y = 48, 45
    @target_window = Window_Target.new
    @actor_skillwindow = Window_SkillActor.new
    @target_cursor = []
    @target_cursor_skill = []
    @switch_cursor = []
    @equip_item = []
    @actor_background = []
    @switch_window = []
    @save_window = []
    @switch = 0
    @actor_background[0] = Window_Base.new(45, 0 + 37, 270, 102)
    @actor_background[1] = Window_Base.new(45, 102 + 37, 270, 102)
    @actor_background[2] = Window_Base.new(45, 204 + 37, 270, 102)
    @actor_background[3] = Window_Base.new(45, 306 + 37, 270, 102)
    @target_cursor[0] = Sprite_Cursor.new(306, 196)
    @target_cursor[1] = Sprite_Cursor.new(306, 276)
    @target_cursor[2] = Sprite_Cursor.new(306, 356)
    @target_cursor_skill[0] = Sprite_Cursor.new(306, 121)
    @target_cursor_skill[1] = Sprite_Cursor.new(306, 201)
    @target_cursor_skill[2] = Sprite_Cursor.new(306, 281)
    @switch_cursor[0] = Sprite_Cursor.new(182, 15)
    @switch_cursor[1] = Sprite_Cursor.new(182, 125)
    @switch_cursor[2] = Sprite_Cursor.new(182, 235)
    @switch_cursor[3] = Sprite_Cursor.new(182, 345)
    @equip_item[0] = Window_EquipItem2.new(0)
    @equip_item[1] = Window_EquipItem2.new(1)
    @equip_item[2] = Window_EquipItem2.new(2)
    @equip_item[3] = Window_EquipItem2.new(3)
    @equip_item[4] = Window_EquipItem2.new(4)
    @switch_window[0] = Window_Base.new(190,15,270,110)
    @switch_window[1] = Window_Base.new(190,125,270,110)
    @switch_window[2] = Window_Base.new(190,235,270,110)
    @switch_window[3] = Window_Base.new(190,345,270,110)
    @save_window[0] = Window_Base.new(39,32, 560, 70)
    @save_window[1] = Window_Base.new(39,102, 560, 70)
    @save_window[2] = Window_Base.new(39,172, 560, 70)
    @equip_description = Window_EquipDescription.new
    @counter = 0
    @end_window = Window_End.new
    @end_window.x = 320 - @end_window.width / 2
    @end_window.y = 220 - @end_window.height / 2
    @savefile_windows = []
    for i in 0..2
      @savefile_windows.push(Window_SaveFile.new(i, make_filename(i)))
    end
    @file_index = $game_temp.last_file_index
    @savefile_windows[@file_index].selected = true
    @save_status = Window_SaveStatus.new
    @skill_actor_window2 = []
    @skill_window = []
    unless $game_party.actors[0] == nil
      @skill_actor_window2[0] = Window_SkillActor2.new($game_party.actors[0])
      @skill_window[0] = Window_Skill.new($game_party.actors[0])
    end
    unless $game_party.actors[1] == nil
      @skill_actor_window2[1] = Window_SkillActor2.new($game_party.actors[1])
      @skill_window[1] = Window_Skill.new($game_party.actors[1])
    end
    unless $game_party.actors[2] == nil
      @skill_actor_window2[2] = Window_SkillActor2.new($game_party.actors[2])
      @skill_window[2] = Window_Skill.new($game_party.actors[2])
    end
    unless $game_party.actors[3] == nil
      @skill_actor_window2[3] = Window_SkillActor2.new($game_party.actors[3])
      @skill_window[3] = Window_Skill.new($game_party.actors[3])
    end
    @item_window.visible = false
    @help_window.visible = false
    @item_background.visible = false
    @help_background.visible = false
    @target_window.visible = false
    @actor_skillwindow.visible = false
    @save_status.visible = false
    @end_window.visible = false
    @party_change.visible = false
    @equip_description.visible = false
    @target_background.visible = false
    @accessory_window.visible = false
    @weapon_window.visible = false
    @help_background.visible = false
    @skill_left.visible = false
    @skill_right.visible = false
    @save_left.visible = false
    @save_right.visible = false
    for i in 0..2
      @target_cursor[i].visible = false
      @target_cursor_skill[i].visible = false
      @savefile_windows[i].visible = false
      @switch_cursor[i].visible = false
      @switch_window[i].visible = false
      @switch_cursor[3].visible = false
      @switch_window[3].visible = false
      @save_window[i].visible = false
    end
    for i in 0..4
      @equip_item[i].active = false
      @equip_item[i].visible = false
    end
    for i in 0...$game_party.actors.size
      @skill_window[i].visible = false
      @skill_window[i].active = false
      @skill_window[i].width = 300
      @skill_actor_window2[i].visible = false
      @skill_actor_window2[i].active = false
    end
    @item_window.active = false
    @target_window.active = false
    @actor_skillwindow.active = false
    @end_window.active = false
    @party_change.active = false
    for i in 0..2
      @savefile_windows[i].active = false
    end
    #refresh
    equip_refresh
    # Execute transition
    Graphics.transition
    # Main loop
    loop do
      # Update game screen
      Graphics.update
      # Update input information
      Input.update
      # Frame update
      update
      # Abort loop if screen is changed
      if $scene != self
        break
      end
    end
    # Prepare for transition
    Graphics.freeze
    # Dispose of windows
    @back_ground.dispose
    @actor_window.dispose
    @command_window.dispose
    @new_equip.dispose
    @item_window.dispose
    @help_window.dispose
    @item_background.dispose
    @target_window.dispose
    @actor_skillwindow.dispose
    @save_status.dispose
    @end_window.dispose
    @party_change.dispose
    @switch_cursor[3].dispose
    @equip_description.dispose
    @playtime_window.dispose
    @playtime_background.dispose
    @equip_background.dispose
    @accessory_window.dispose
    @help_background.dispose
    @skill_left.dispose
    @skill_right.dispose
    @save_left.dispose
    @save_right.dispose
    for i in @skill_actor_window2
      i.dispose
    end
    for i in @skill_window
      i.dispose
    end
    for i in @savefile_windows
      i.dispose
    end
    for i in @target_cursor
      i.dispose
    end
    for i in @target_cursor_skill
      i.dispose
    end
    for i in @switch_cursor
      i.dispose
    end
    for i in @equip_item
      i.dispose
    end
    for i in @save_window
      i.dispose
    end
    for i in @actor_background
      i.dispose
    end
    for i in @switch_window
      i.dispose
    end
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    # Update windows
    @actor_window.update
    @command_window.update
    @new_equip.update
    @item_window.update
    @help_window.update
    @target_window.update
    @actor_skillwindow.update
    @save_status.update
    @party_change.update
    @end_window.update
    @equip_description.update
    @playtime_window.update
    equip_refresh
    for i in @savefile_windows
      i.update
    end
    for i in @skill_window
      i.update
    end
    for i in @skill_actor_window2
      i.update
    end
    for i in @equip_item
      i.update
    end
    if @command_window.active
      # If command window is active: call update_command
      update_command
    elsif @actor_window.active
      # If actor window is active: call update_actor
      update_actor
    elsif @new_equip.active
      # If new equip window is active: call update_equip
      update_equip
    elsif @equip_item[@new_equip.index].active
      # If item equip window is active: call update_equipitem
      update_equipitem
    elsif @item_window.active
      # If item window is active: call update_item
      update_item
    elsif @target_window.active
      # If target window is active: call update_target
      update_target
    elsif @actor_skillwindow.active
      # If actor skill window is active: call update_actor_skill
      update_actor_skill
    elsif @skill_window[@actor_skillwindow.index].active
      # If skill window is active: call update_skill
      update_skill
    elsif @savefile_windows[@file_index].active
      # If savefile window is active: call update_savefile
      update_savefile
    elsif @party_change.active
      # If party change window is active: call update_change
      update_change
    elsif @end_window.active
      # If end window is active: call update_end
      update_end
    end
    $game_temp.save_index = @file_index
    $game_temp.skill_index = @skill_window[@actor_skillwindow.index].index
    $game_temp.equip_index = @new_equip.index
  end
  #--------------------------------------------------------------------------
  # * Frame Update (when command window is active)
  #--------------------------------------------------------------------------
  def update_command
    case @command_window.index
    when 0
      for i in 0..3
        @actor_background[i].visible = true
      end
      @equip_background.visible = true
      @actor_window.visible = true
      @new_equip.visible = true
      @item_window.visible = false
      @item_background.visible = false
      @help_background.visible = false
      @help_background.visible = false
    when 1
      for i in 0..3
        @actor_background[i].visible = false
      end
      @equip_background.visible = false
      @actor_window.visible = false
      @new_equip.visible = false
      @actor_skillwindow.visible = false
      @item_window.visible = true
      @item_background.visible = true
      @help_background.visible = true
      @help_background.y = 35
      @help_window.y = 45
      @help_background.width = 540
      @skill_left.visible = false
      @skill_right.visible = false
    when 2
      for i in 0..3
        @switch_window[i].visible = false
      end
      @skill_left.visible = true
      @skill_right.visible = true
      @item_window.visible = false
      @item_background.visible = false
      @party_change.visible = false
      @actor_skillwindow.visible = true
      @help_background.y = 375
      @help_background.width = 545
      @help_background.visible = true
      @help_window.y = 385
    when 3
      for i in 0..2
        @savefile_windows[i].visible = false
        @save_window[i].visible = false
      end
      @help_window.visible = false
      @help_background.visible = false
      @actor_skillwindow.visible = false
      @save_status.visible = false
      @party_change.visible = true
      for i in 0..3
        @switch_window[i].visible = true
      end
      @skill_left.visible = false
      @skill_right.visible = false
      @save_left.visible = false
      @save_right.visible = false
    when 4
      for i in 0..3
        @switch_window[i].visible = false
      end
      @end_window.visible = false
      @party_change.visible = false
      @save_left.visible = true
      @save_right.visible = true
    for i in 0..2
      @savefile_windows[i].visible = true
      @save_window[i].visible = true
    end
    @save_status.visible = true
    when 5
    for i in 0..2
      @savefile_windows[i].visible = false
      @save_window[i].visible = false
    end
    @save_left.visible = false
    @save_right.visible = false
    @save_status.visible = false
    @end_window.visible = true
    end
    # If B button was pressed
    if Input.trigger?(Input::B)
      # Play cancel SE
      $game_system.se_play($data_system.cancel_se)
      # Switch to map screen
      $scene = Scene_Map.new
      return
    end
    # If C button was pressed
    if Input.trigger?(Input::C)
      @playtime_background.visible = false
      @playtime_window.visible = false
      # Branch by command window cursor position
      case @command_window.index
      when 0  # equip/status
        $game_system.se_play($data_system.decision_se)
        @command_window.active = false
        @command_window.visible = false
        @actor_window.active = true
        @actor_window.index = 0
      when 1  # item
        # Make item window active
        $game_system.se_play($data_system.decision_se)
        @command_window.active = false
        @command_window.visible = false
        @item_window.active = true
        @item_window.index = 0
      when 2  # skills
        $game_system.se_play($data_system.decision_se)
        @command_window.visible = false
        @command_window.active = false
        @actor_skillwindow.active = true
        @actor_skillwindow.index = 0
      when 3 #excahnge
        $game_system.se_play($data_system.decision_se)
        @command_window.visible = false
        @command_window.active = false
        @party_change.active = true
        @checker = 0
      when 4 #save
        if $game_system.save_disabled
        $game_system.se_play($data_system.buzzer_se)
        return
      end
        $game_system.se_play($data_system.decision_se)
        @command_window.visible = false
        @command_window.active = false
        @file_index = 0
        for i in 0..2
          @savefile_windows[i].active = true
          @savefile_windows[i].selected = false
        end
        @savefile_windows[0].selected = true
      when 5 #quit
        $game_system.se_play($data_system.decision_se)
        @command_window.active = false
        @command_window.visible = false
        @end_window.active = true
      end
      return
    end
  end
  #--------------------------------------------------------------------------
  # * Make File Name
  #     file_index : save file index (0-2)
  #--------------------------------------------------------------------------
  def make_filename(file_index)
    return "Save#{file_index + 1}.rxdata"
  end
  #--------------------------------------------------------------------------
  # * Frame Update (when end window is active)
  #--------------------------------------------------------------------------
  def update_end
    # If B button was pressed
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      @end_window.active = false
      @end_window.index = 0
      @command_window.visible = true
      @command_window.active = true
      @playtime_background.visible = true
      @playtime_window.visible = true
    end
    # If C button was pressed
    if Input.trigger?(Input::C)
      $game_system.se_play($data_system.decision_se)
      case @end_window.index
      when 0
        $scene = Scene_Title.new
      when 1
        $scene = nil
      when 2
        @end_window.active = false
        @command_window.visible = true
        @command_window.active = true
      end
    end
  end
  #--------------------------------------------------------------------------
  # * Frame Update (when change window is active)
  #--------------------------------------------------------------------------
  def update_change
    # If B button was pressed
    if Input.trigger?(Input::B)
      # Play cancel SE
      $game_system.se_play($data_system.cancel_se)
      @party_change.active = false
      @party_change.index = 0
      @command_window.visible = true
      @command_window.active = true
      @playtime_background.visible = true
      @playtime_window.visible = true
      @checker = 0
      for i in 0..3
        @switch_cursor[i].visible = false
      end
    end
    # If C button was pressed
    if Input.trigger?(Input::C)
      # Play decision SE
      $game_system.se_play($data_system.decision_se)
      if @checker == 0
        @changer = $game_party.actors[@party_change.index]
        @changer_skill = @skill_window[@party_change.index]
        @changer_skill2 = @skill_actor_window2[@party_change.index]
        @where = @party_change.index
        @switch_cursor[@party_change.index].visible = true
        @checker = 1
        $game_player.refresh
        else
        $game_party.actors[@where] = $game_party.actors[@party_change.index]
        $game_party.actors[@party_change.index] = @changer
        @skill_actor_window2[@where] = @skill_actor_window2[@party_change.index]
        @skill_actor_window2[@party_change.index] = @changer_skill2
        @skill_window[@where] = @skill_window[@party_change.index]
        @skill_window[@party_change.index] = @changer_skill
        @checker = 0
        @party_change.refresh
        @actor_window.refresh
        @new_equip.refresh
        @target_window.refresh
        @actor_skillwindow.refresh
        @save_status.refresh
        $game_player.refresh
        for i in 0..3
          @switch_cursor[i].visible = false
        end
      end
    end
  end
  #--------------------------------------------------------------------------
  # * Frame Update (when save window is active)
  #--------------------------------------------------------------------------
  def update_savefile
    # If C button was pressed
    if Input.trigger?(Input::C)
      # Call method: on_decision (defined by the subclasses)
      on_decision(make_filename(@file_index))
      $game_temp.last_file_index = @file_index
      return
    end
    # If B button was pressed
    if Input.trigger?(Input::B)
      # Call method: on_cancel (defined by the subclasses)
      on_cancel
      return
    end
    # If the down directional button was pressed
    if Input.repeat?(Input::DOWN)
      # If the down directional button pressed down is not a repeat,
      # or cursor position is more in front than 3
      unless @file_index == 2
      if Input.trigger?(Input::DOWN)
        # Play cursor SE
        $game_system.se_play($data_system.cursor_se)
        # Move cursor down
        @savefile_windows[@file_index].selected = false
        @file_index = (@file_index + 1)# % 3
        @savefile_windows[@file_index].selected = true
        return
      end
      end
    # If the up directional button was pressed
    elsif Input.repeat?(Input::UP)
      # If the up directional button pressed down is not a repeatã€
 

Jason

Awesome Bro

Well if you decide to use it, please tell me if you know how to use it, if not, I can help you, and also, I'm going to rewrite that script anyway as it's kinda poorly made, but easier to understand.
The only problem I see with it, is that if you have over 100 Info. Cards, you'll have to scroll down a LONG list of script to edit the one you want, but it's really easy to understand anyway.
 

Thank you for viewing

HBGames is a leading amateur video game development forum and Discord server open to all ability levels. Feel free to have a nosey around!

Discord

Join our growing and active Discord server to discuss all aspects of game making in a relaxed environment. Join Us

Content

  • Our Games
  • Games in Development
  • Emoji by Twemoji.
    Top