Quest Journal v. 2.1

0 Members and 1 Guest are viewing this topic.

*
Rep:
Level 97
2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Use of Avatar and Signature Space2011 Best RPG Maker User (Scripting)2011 Most Mature Member2011 Favourite Staff Member2011 Best Veteran2010 Best RPG Maker User (Scripting)2010 Most Mature Member
I don't know what MOG's Scene_Menu is. Link?

I'm guessing he's overwritten Window_Help.

**
Rep: +0/-0Level 84
Fixed it. Seems that all I needed was a clean copy of the menu script. I must've fiddled with something.

*
Rep:
Level 97
2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Use of Avatar and Signature Space2011 Best RPG Maker User (Scripting)2011 Most Mature Member2011 Favourite Staff Member2011 Best Veteran2010 Best RPG Maker User (Scripting)2010 Most Mature Member
I'm glad to hear it.

**
Rep: +0/-0Level 84
I hope you don't mind that I adjusted a few things on the quest journal so it fits with the template for the MOG menus. Also I am curious how I could add a wait in the script, more so the part where the objectives get updated. As I said earlier I am modifying the script so it automatically gives out experience and gold rewards if they are defined. I am also getting it to work with Khai's Item Found script, in which you call everything individually, but in order for the script to display every reward there needs to be a delay between calling the command. Any idea how I could add one? I've tried wait() but it does not work.

**
Rep: +0/-0Level 84
I like to Skateboard
This is a great script, I was just wandering is there anyway to not make a quest show up in the "Show all quests" tabs or can you gid rid of that tab all together? I want to do this also with the failed tabs list too.
« Last Edit: October 16, 2008, 01:52:11 AM by klonoa23 »

*
Rep:
Level 97
2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Use of Avatar and Signature Space2011 Best RPG Maker User (Scripting)2011 Most Mature Member2011 Favourite Staff Member2011 Best Veteran2010 Best RPG Maker User (Scripting)2010 Most Mature Member
Well, you can conceal quests entirely, but I take it you want the other categories to still show the quest.

In any case, no, there is no way built in to the script. I'd have to do a couple minor mods first.

**
Rep: +0/-0Level 84
I like to Skateboard
Ok no big deal, just wandering lol. Great script real easy to use, now that i got the hang of it I guess. ;)

**
Rep: +0/-0Level 84
hello, modern algebra.
i once used atoria's "Uber quest log" and it had some features i really liked like: a "!" picture floating above the head of an npc that got a quest for you, a name above the npc's and the main hero, and an icon with a "V" that is displayed inside the quest menu when a quest is done.
but then i started to use your quest system because it's user friendly and quite easy to use + it looks better on the menu :P and it's awesome.
so what i wanna ask is:
is it possible that you can add any of the features that atoria's "Uber quest log" had into you quest system?
here's the script made by atoria [in case that you'll need it]:

Spoiler for:
Code: [Select]
#=======================================
# ** Scene_Quests
# ** Created by coolmariners98 (Atoria)
#------------------------------------------------------------------------------
#  Please do not copy and distribute claiming to have created this.
#  I would like full credit, even though this script is kind of crappy.
#=======================================
class Scene_Quests
  # * Object Initialization
  def initialize(quest_index = 0)
    @quest_index = quest_index
  end
 
  def main
    @command_window = Window_Qmand.new(160, $quest.questname) # actually makes window
    @command_window.index = @quest_index
   
    # while loop determines what to show
    tmp = 1
    tmp2 = 10
    tmp3 = 0
    $quest.totalfound = 0
    $quest.moneyearned = 0
    $quest.expearned = 0
    $quest.rpearned = 0
    while (tmp3 < $quest.totalquests)
      if $quest.showdisabledquests == true and $quest.qupdate[tmp] == false
        @command_window.disable_item(tmp3)
      else
        $quest.totalfound += 1
      end
      if $quest.handin[tmp3] == true
        @command_window.finished(tmp3)
        $quest.moneyearned += $quest.goldreward[tmp3]
        $quest.expearned += $quest.expreward[tmp3]
        $quest.rpearned += $quest.rpreward[tmp3]
        $quest.totalcompleted += 1
      end
      tmp += 10
      tmp2 += 10
      tmp3 +=1
    end
     
    # Make quest status window
    @qs_window = Quest_Status.new
    @qs_window.x = 0
    @qs_window.y = 300

    # Make quest info window
    @qi_window = Quest_Info.new
    @qi_window.x = 160
    @qi_window.y = 0
     
    # Make quest window
    @status_window = Quest.new
    @status_window.x = 160
    @status_window.y = 180
    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
    Graphics.freeze
    # Dispose of windows
    @command_window.dispose
    @status_window.dispose
    @qs_window.dispose
    @qi_window.dispose
  end
  def update
    @command_window.update
    @status_window.update
    if @command_window.active
      update_command
      return
    end
    if @status_window.active
      update_status
      return
    end
  end
  #--------------------------------------------------------------------------
  # * Frame Update (when command window is active)
  #--------------------------------------------------------------------------
  def update_command
    # If B button was pressed
    if Input.trigger?(Input::B)
      # Play cancel SE
      Sound.play_cancel
      # Switch to map screen
      $scene = Scene_Map.new
      return
    end
    # If C button was pressed
    if Input.trigger?(Input::C)
      index = @command_window.index
      #pattern on switch is index * 10 + 1
      if $quest.qupdate[index * 10 + 1] == false
        Sound.play_buzzer
        return
      else
        $quest.whichquest = index
        Sound.play_decision       
        @status_window.dispose
        @status_window = Quest.new
        @status_window.x = 160
        @status_window.y = 180
        @status_window.update
      end
      return
    end
  end
 
end

#=======================================
# ** Quest_Status
# ** Created by coolmariners98
#------------------------------------------------------------------------------
#  This displays what has been done so far in your quests (upper middle window)
#=======================================
class Quest_Status < Window_Base
  def initialize
    super(0, 0, 160, 117)
    self.contents = Bitmap.new(width - 32, height - 32)
    refresh
  end
  def refresh
    self.contents.clear
    self.contents.font.color = normal_color
    self.contents.draw_text(0, -10, 150, 32, "Total Quests: " + $quest.totalfound.to_s)
    self.contents.font.color = system_color
    self.contents.draw_text(0, 8, 150, 32, "Total Complete: " + $quest.totalcompleted.to_s)
    self.contents.font.color = normal_color
    self.contents.draw_text(0, 26, 150, 32, "Money: " + $quest.moneyearned.to_s)
    self.contents.font.color = system_color
    self.contents.draw_text(0, 44, 150, 32, "Exp: " + $quest.expearned.to_s)
    self.contents.font.color = normal_color
    self.contents.draw_text(0, 62, 150, 32, "RP: " + $quest.rpearned.to_s)
  end
end

#=======================================
# ** Quest_Info
# ** Created by coolmariners98
#------------------------------------------------------------------------------
#  This displays all the quest information in the upper right window
#=======================================
class Quest_Info < Window_Base
  def initialize
    super(0, 0, 385, 180)
    self.contents = Bitmap.new(width - 32, height - 32)
    refresh
  end
  def refresh
    self.contents.clear
    self.contents.font.color = text_color(14)
    self.contents.draw_text(0, -10, 380, 32, "Quest Information")
    self.contents.font.color = normal_color
    if $quest.totalfound != 0
      self.contents.draw_wrap_text(0, 20, 350, 16, $quest.preinfo[$quest.whichquest])
    end
  end
end

#=======================================
# ** Quest
# ** Created by coolmariners98
#------------------------------------------------------------------------------
#  This displays all the quest information in the bottom right window
#=======================================
class Quest < Window_Selectable
  def initialize
    super(0, 0, 385, 237)
    self.contents = Bitmap.new(width - 32, height - 32)
    refresh
    self.active = false
    self.index = -1
  end
  def refresh
    self.contents.clear
    if $quest.totalfound != 0
      bitmap = Cache.character($quest.charspriteN[$quest.whichquest])
      sign = $quest.charspriteN[$quest.whichquest][/^[\!\$]./]
      if sign != nil and sign.include?('$')
        cw = bitmap.width / 3
        ch = bitmap.height / 4
      else
        cw = bitmap.width / 12
        ch = bitmap.height / 8
      end
      n = $quest.charspriteI[$quest.whichquest]
      src_rect = Rect.new((n%4*3+1)*cw, (n/4*4)*ch, cw, ch)
      self.contents.blt(19 - cw / 2, 57 - ch, bitmap, src_rect) 
      if $quest.qupdate[(($quest.whichquest * 10) + 10)]
        bitmap2 = Cache.picture("complete.png")
        src_rect2 = Rect.new(0, 0, bitmap2.width, bitmap2.height)
        self.contents.blt(300, 10, bitmap2, src_rect2)
      end
      self.contents.font.color = system_color
      self.contents.draw_text(50, 0, 385, 45, "Name: " + $quest.charname[$quest.whichquest])
      self.contents.font.color = normal_color
      self.contents.draw_text(50, 0, 385, 80, "Location: " + $quest.location[$quest.whichquest])
      self.contents.font.color = system_color
      self.contents.draw_text(50, 0, 385, 115, "Reward: " + $quest.textreward[$quest.whichquest])
      self.contents.font.color = normal_color
      self.contents.draw_text(0, 0, 435, 175, "Quest Objectives:")
      temp = $quest.whichquest
      script = (temp * 8)
      easy = 0
      switch = 2
      switch2 = (temp * 10) + 2
     while (switch < 10)
       if $quest.objs[script] == " "
         $quest.qupdate[switch2] = true
       end
       if $quest.qupdate[switch2]
         self.contents.font.color = text_color(7)
         self.contents.draw_text(0, 0, 435, 210 + (easy * 35), $quest.objs[script])
       else
         self.contents.font.color = normal_color
         self.contents.draw_text(0, 0, 435, 210 + (easy * 35), $quest.objs[script])
       end
       easy += 1
       script += 1
       switch += 1
       switch2 += 1
     end

    end
  end
  def update_cursor_rect
    if @index < 0
      self.cursor_rect.empty
    else
      self.cursor_rect.set(0, @index * 116, self.width - 32, 96)
    end
  end
end
#=======================================
# ** Window_Qmand
# ** Created by coolmariners98
#------------------------------------------------------------------------------
#  This displays all the quest information in the bottom right window
#=======================================
class Window_Qmand < Window_Selectable
  def initialize(width, commands)
    super(0, 0, width, 300)
    @item_max = commands.size
    @commands = commands
    self.contents = Bitmap.new(width - 32, @item_max * 32)
    refresh
    self.index = 0
  end
  def refresh
    self.contents.clear
    for i in 0...@item_max
      draw_item(i, normal_color, true)
    end
  end
  def draw_item(index, color, enabled = true)
    self.contents.font.color = color
    rect = item_rect(index)
    rect.x += 4
    rect.width -= 8
    self.contents.clear_rect(rect)
    self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
    self.contents.font.color.alpha = enabled ? 255 : 128
    self.contents.draw_text(rect, @commands[index])
  end
  def disable_item(index)
    draw_item(index, text_color(7), true)
  end
  def delete_item(index)
    rect = Rect.new(4, 32 * index, self.contents.width - 8, 32)
    self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
  end
  def finished(index)
    draw_item(index, text_color(3), true)
  end
end

#==============================================================================
#==============================================================================
#==============================================================================
# ** DON'T TOUCH BELOW HERE UNLESS YOU KNOW WHAT YOU'RE DOING
#==============================================================================
#==============================================================================
#==============================================================================
#==============================================================================
# ** Event Text Display
#==============================================================================
# Created By: Áص¹
# Modified By: SephirothSpawn
# Modified By: Me™
# Modified By: Atoria
# Version 2.1
# 2006-03-04
#==============================================================================
# * Instructions :
#
#  ~ Creating Event With Text Display
#   - Put a Comment on the Page With
#   [CD____]
#   - Place Text to Be Displayed in the Blank
#------------------------------------------------------------------------------
# * Customization :
#
#  ~ NPC Event Colors
#   - Event_Color = Color
#
#  ~ Player Event Color
#   - Player_Color = Color
#
#  ~ Player Text
#   - Player_Text = text_display *
#
#  ~ text_display
#   - 'Name', 'Class', 'Level', 'Hp', 'Sp'
#==============================================================================

#==============================================================================
# ** Game_Character
#==============================================================================

class Game_Character
  #--------------------------------------------------------------------------
  # * Dispaly Text Color (Event & Player)
  #--------------------------------------------------------------------------
  Event_Color = Color.new(0, 0, 200)
  Player_Color = Color.new(200, 0, 0)
  #--------------------------------------------------------------------------
  # * Public Instance Variables
  #--------------------------------------------------------------------------
  attr_accessor :text_display
  attr_accessor :isQuest
  attr_accessor :foundQuest
  attr_accessor :doneQuest
  attr_accessor :bounce
  attr_accessor :bounceFlip
 
end

#==============================================================================
# ** Game_Event
#==============================================================================

class Game_Event < Game_Character
  #--------------------------------------------------------------------------
  # * Alias Listings
  #--------------------------------------------------------------------------
  alias seph_characterdisplay_gevent_refresh refresh
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    # Original Refresh Method
    seph_characterdisplay_gevent_refresh
    # Checks to see if display text
    # If the name contains CD, it takes the rest of the name as the text
    @bounce = 0
    @bounceFlip = false
    unless @list.nil?
      for i in 0...@list.size # for all the commands in event
        if @list.code == 108 # if it is a comment
          @list.parameters[0].dup.gsub!(/\[[Cc][Dd](.+?)\]/) do
            @text_display = [$1, Event_Color]
            @isQuest = false
          end
          @list.parameters[0].dup.gsub!(/\[[Qq][Dd](.+?)\]/) do
            @text_display = [$1, Event_Color]
            @isQuest = true
          end
        end
      end
    end
    @text_display = nil if @erased
  end
end

#==============================================================================
# ** Game_Player
#==============================================================================

class Game_Player < Game_Character
  #--------------------------------------------------------------------------
  # * Alias Listings
  #--------------------------------------------------------------------------
  alias seph_characterdisplay_gplayer_refresh refresh
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    # Original Refresh Method
    seph_characterdisplay_gplayer_refresh
    # Creates Text Display
    @text_display = ["Hero", Player_Color]
  end
end

#==============================================================================
# ** Sprite_Character
#==============================================================================

class Sprite_Character < Sprite_Base
  #--------------------------------------------------------------------------
  # * Alias Listings
  #--------------------------------------------------------------------------
  alias seph_characterdisplay_scharacter_update update
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    # Original update Method
    seph_characterdisplay_scharacter_update
    # Character Display Update Method
    update_display_text
    unless @character.bounce.nil?
      if @character.bounce < -2
        @character.bounceFlip = true
      end
      if @character.bounce > 2
        @character.bounceFlip = false
      end
      if @character.bounceFlip
        @character.bounce = @character.bounce + 0.2
      else
        @character.bounce = @character.bounce - 0.2
      end
    end
  end
  #--------------------------------------------------------------------------
  # * Create Display Sprite
  #--------------------------------------------------------------------------
  def create_display_sprite(args)
    Font.default_size = 12
    Font.default_name = "Verdana"
    # Creates Display Bitmap
    bitmap = Bitmap.new(160, 24)
    bitmap2 = Bitmap.new(160, 24)
    # Changes Font Color
    bitmap.font.color = args[1]
    # Draws Text
    if @character.isQuest
      bitmap2 = Cache.picture("quest.png")
      @_quest_display = Sprite.new(self.viewport)
      @_quest_display.bitmap = bitmap2
      @_quest_display.ox = 8
      @_quest_display.oy = 40
      @_quest_display.x = self.x
      @_quest_display.y = self.y - self.oy / 2 - 24
      @_quest_display.z = 30001
      @_quest_display.visible = self.visible #true
    end
    bitmap.draw_text(0, 0, 160, 24, args[0], 1)
    # Creates Display Text Sprite
    @_text_display = Sprite.new(self.viewport)
    @_text_display.bitmap = bitmap
    @_text_display.ox = 80
    @_text_display.oy = 12
    @_text_display.x = self.x
    @_text_display.y = self.y - self.oy / 2 - 24
    @_text_display.z = 30001
    @_text_display.visible = self.visible #true
  end
  #--------------------------------------------------------------------------
  # * Dispose Display Sprite
  #--------------------------------------------------------------------------
  def dispose_display_text
    unless @_text_display.nil?
      @_text_display.dispose
    end
    #reset font colors
    Font.default_size = 14
    Font.default_name = "Verdana"
  end
  #--------------------------------------------------------------------------
  # * Dispose Quest Sprite
  #--------------------------------------------------------------------------
  def dispose_quest_text
    unless @_quest_display.nil?
      @_quest_display.dispose
    end
    #reset font colors
    Font.default_size = 14
    Font.default_name = "Verdana"
  end
  #--------------------------------------------------------------------------
  # * Update Display Sprite
  #--------------------------------------------------------------------------
  def update_display_text
    unless @character.text_display.nil?
      if @_text_display.nil?
        create_display_sprite(@character.text_display)
      end
     
    switch = ($quest.whichquest * 10) + 2
    if $quest.qupdate[switch]
      if $quest.qupdate[switch + 1]
        if $quest.qupdate[switch + 2]
          if $quest.qupdate[switch + 3]
            if $quest.qupdate[switch + 4]
              if $quest.qupdate[switch + 5]
                if $quest.qupdate[switch + 6]
                  if $quest.qupdate[switch + 7]
                    $quest.qupdate[switch + 8] = true
                  end
                end
              end
            end
          end
        end
      end
    end
     
     
     
      @_text_display.x = self.x
      @_text_display.y = self.y - self.oy / 2 - 24
      if @character.isQuest       
        @_quest_display.x = self.x
        @_quest_display.y = self.y - self.oy / 2 - 24 + @character.bounce
      end
    else
      unless @_text_display.nil?
        dispose_display_text
      end
      unless @_quest_display.nil?
        dispose_quest_text
      end
    end
    #reset font colors
    Font.default_size = 14
    Font.default_name = "Verdana"
  end
end



     #C[RRBBGG] Changes the Color (RR,BB,GG)
      #C[N] Changes to color back to normal
      #I[] Changes the font to Italics
      #B[] Changes the font to Bold
      #T[] A Tab
      #N[] New Line
#==============================================================================
# ** Bitmap
#------------------------------------------------------------------------------
#  Additions add a draw wrap text method which draws word wrapped text
#  Text Automattically goes to the next line if the text can not fit on the line
#==============================================================================
class Bitmap
  def draw_wrap_text(x,y,width, height, text)
    array = text.split
    for i in array
      word = i + ' '
      word_width = text_size(word).width
      if x + word_width > width
        y += height
        x = 0
      end
      self.draw_text(x, y, 350, height, word)
      x += word_width
    end
  end
end

*
Rep:
Level 97
2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Use of Avatar and Signature Space2011 Best RPG Maker User (Scripting)2011 Most Mature Member2011 Favourite Staff Member2011 Best Veteran2010 Best RPG Maker User (Scripting)2010 Most Mature Member
Can you give me just screenshots of it?

I won't do it soon, but I am planning to make a version 2.0 of this script. I can add those features onto the list. Or else just make another script that will operate separate from the quest journal.

**
Rep: +0/-0Level 84
ok here how it looks in the menu:

Spoiler for:

Spoiler for:

here's how it looks on-map:

Spoiler for:

here's how the event page looks like [QDname] shows on map "name":

Spoiler for:

and here's the icons it uses:





and for some reason i cant get the "quest2" icon to work when the quest is in my quest list :/

**
Rep: +0/-0Level 84
I like to Skateboard
the uber quest og script is good but i don't really like how the quest a set up. (the numbering system). I find it rather confusing, but on the other and it menu itself and the way it functions and looks is great tho. I found modern's first and is sticking with this  :). Now a 2.0 ver seems likes it gonna get even better.

**
Rep: +0/-0Level 84
Can I ask one thing? Im trying to get more options on my window, but I don't know what to put here..
def create_command_window
    s1 = Vocab::item
    s2 = Vocab::skill
    s3 = Vocab::equip
    s4 = Vocab::status
    s5 = Vocab::            <------
    s6 = Vocab::crafting
    s7 = Vocab::save
    s8 = Vocab::game_end

I want that empty box to open the Quest Journal.. What do I put here?

*
Rep:
Level 97
2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Use of Avatar and Signature Space2011 Best RPG Maker User (Scripting)2011 Most Mature Member2011 Favourite Staff Member2011 Best Veteran2010 Best RPG Maker User (Scripting)2010 Most Mature Member
umm... you could just put:

s5 = "Quests"

Or whatever.

**
Rep: +0/-0Level 84
That gives me a error..

script 'Redefinitions' line 63: NameError occured.
uninitialized constant Vocab::Quests


No.. "Quests" give me this error..

Script 'Main' line 10: NoMethodError occured.
undefined method `main' for #<Game_Quests:0x1a3f3f0 @date={}>
« Last Edit: October 19, 2008, 05:54:32 AM by Orthone »

*
Rep:
Level 97
2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Use of Avatar and Signature Space2011 Best RPG Maker User (Scripting)2011 Most Mature Member2011 Favourite Staff Member2011 Best Veteran2010 Best RPG Maker User (Scripting)2010 Most Mature Member
don't put Vocab at all.

Just

s5 = "Quests"

**
Rep: +0/-0Level 84
No.. "Quests" give me this error..

Script 'Main' line 10: NoMethodError occured.
undefined method `main' for #<Game_Quests:0x1a3f3f0 @date={}>

Code I used
Spoiler for:
Code: [Select]
class Scene_Menu < Scene_Base
 
  def start
    #--------------------------------------------------------------------------
    # Set this to true if you want to disable the "crafting" entry in the menu
    #--------------------------------------------------------------------------
    @disableMenuChoice = false
   
    super
    create_menu_background
    if @disableMenuChoice
      oldCmdWindow
    else
      create_command_window
    end
    @gold_window = Window_Gold.new(0, 360)
    @status_window = Window_MenuStatus.new(160, 0)
  end
 
  def update
    super
    update_menu_background
    @command_window.update
    @gold_window.update
    @status_window.update
    if @command_window.active
      if @disableMenuChoice
        oldUpdCmdSel
      else
        update_command_selection
      end
    elsif @status_window.active
      update_actor_selection
    end
  end
 
  alias oldCmdWindow create_command_window
  def create_command_window
    s1 = Vocab::item
    s2 = Vocab::skill
    s3 = Vocab::equip
    s4 = Vocab::status
    s5 = "Quests"
    s6 = Vocab::crafting
    s7 = Vocab::save
    s8 = Vocab::game_end
    @command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6, s7, s8])
    @command_window.index = @menu_index
    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(8, false)     # Disable save
    end
  end
 
  alias oldUpdCmdSel 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
        $scene = Game_Quests.new
      when 5      # Crafting window
        $scene = Scene_Crafting.new
      when 6      #save
        $scene = Scene_File.new(true, false, false)
      when 7      # End Game
        $scene = Scene_End.new
      end
    end
  end
end
« Last Edit: October 19, 2008, 06:05:13 AM by Orthone »

*
Rep:
Level 97
2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Use of Avatar and Signature Space2011 Best RPG Maker User (Scripting)2011 Most Mature Member2011 Favourite Staff Member2011 Best Veteran2010 Best RPG Maker User (Scripting)2010 Most Mature Member
That's because you did this:


        $scene = Game_Quests.new


It should be:


        $scene = Scene_Quest.new

**
Rep: +0/-0Level 84
MA, you are the god at scripting!   ::)

**
Rep:
Level 84
is there an option where done quest are removed of the quest log?

would be awesome else if you can make it so that new quest in one screen and a log of done quest in another screen

*
Rep:
Level 97
2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Use of Avatar and Signature Space2011 Best RPG Maker User (Scripting)2011 Most Mature Member2011 Favourite Staff Member2011 Best Veteran2010 Best RPG Maker User (Scripting)2010 Most Mature Member
you can conceal quests with the command:

$game_quests[quest_id].concealed = true

It would look weird though.

I don't really get the 2nd proposition, the quests can already split by categories. If you are looking at the active quests tab then you are only looking at current quests. If you're looking at the Finished quests tab then you are only looking at finished quests. I don't see why you would want a separate scene.

**
Rep:
Level 84
sorry about being unclear i mean automaticly, so not to put in after each quest that command.
script based more
also if possible can you make the view more tree looked like, now its

-----------
-----------
-----------

even subquest are lined under these, what would give a clearer overview when doing multiple quest at a time s tree look

-----------
   -----------
   -----------
      -----------
-----------
-----------
   -----------
-----------

and last part can you give the quest giver a sign above there head, a bit like WOW like grey sign not completed or item done yellow for completed item or task done but not  turned in and blue for as example new quest available???

***
Chodemeister
Rep:
Level 84
where do you make the quests in the script?
At what point I mean
Tahl died when I got my WoW account activated lol
And I lost my GoE 1 & 2 unecrypted data when my backup harddrive died after I reformatted...go figure
-GoE http://rmrk.net/index.php/topic,30050.0.html
-GoE2 http://rmrk.net/index.php/topic,30045.0.html

**
Rep:
Level 84
after the examples quest,

***
Chodemeister
Rep:
Level 84
ahh, ok thanks
Tahl died when I got my WoW account activated lol
And I lost my GoE 1 & 2 unecrypted data when my backup harddrive died after I reformatted...go figure
-GoE http://rmrk.net/index.php/topic,30050.0.html
-GoE2 http://rmrk.net/index.php/topic,30045.0.html

********
Resource Artist
Rep:
Level 94
\\\\\
Project of the Month winner for June 2009
Hey MA, this is an amazing script. :D It's much better than other quest log scripts I've seen. There's one thing I hope you can help me with. In my game, you can't fail a quest. So, is there a way just to conceal that option and only have the 'All Quests', 'Current Quests', and 'Completed Quests' menus available?