Quest Script by SAMO
#1
Quest Script V 2.1

Quest Script by SAMO, THE THIEF
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

This is a locked, single-post thread from Creation Asylum.  Archived here to prevent its loss.
No support is given.  If you are the owner of the thread, please contact administration.


My First Script!


SDK:
----
Don't need it. This script is for all the people without any crazy script (for example, a
pac-man system that modifies window_base, what crazy idea).

Possible troubles:
------------------
I don't think that this script may cause your game to crash (only if you don't create the quests XD). The demo is with the japanese dll. There won't be any problem with the fonts. I replaced them but you can change them if you want.


Demo:
-----
Play it. Only four quests to do really simple.

.rar   Quest_Script_Project.rar (Size: 248.47 KB / Downloads: 4)

Changes:

-------
If you're going to post this script with some changes, please tell me, because i did
the script myself, and i won't want that credit isn't given to me.
If you want to update the version, just tell me to approve and i will post it like a
new version.


Updates:
-------

Updates Date
------- ----
V 1.0 29/12/06
V 1.1 4/1/07
V 2.0 5/1/07
V 2.1 17/1/07


V 1.1
- Added Map Background and smaller windows at request of Chronic NG.
- Added Dificulties and the script is now more clean, Nice and organized for lag
reduction.
V 2.0
- All the script remodified. Map Background removed because bugs. NEW SCROLLING SYSTEM
Quest class added for the quest diary engine. Makes things more easy.
V 2.1
- Window_command_quest created for complete text color feature
- More commands to set the quest parameters.


Thanks to ánemus, dubealex and some other guys for doing the tutorials that introduced
me to scripting.



The CODE:
--------
It is best to download the demo. The code can be bugged by the HTML. However, i will put it here.
Code:
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
# Quest Script
# V 2.1
# By Samo, The thief
# My First SCRIPT! :)
# Is the ASCII art ugly? Who cares!
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Updates    Date
# -------    ----
# V 1.0      29/12/06
# V 1.1      4/1/07
# V 2.0      5/1/07
# V 2.1      13/1/07
#
#
# V 1.1    
# - Added Map Background and smaller windows at request of Chronic NG.
# - Added Dificulties and the script is now more clean, Nice and organized for lag
# reduction.
# V 2.0
# - All the script remodified. NEW SCROLLING SYSTEM
# - Quest class added
# V 2.1
# - Window_command_quest created for complete text color feature
# - More commands to set the quest parameters.
# - Ultra Easy form to create quests
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Place this script above main to work. Then, read this important data:
#
#
#
#
#
# HOW TO CREATE A NEW QUEST:
#
#
#
#
# Very easy, but great results
#
#
#
#
#
# 1- Put this command in a new call script.
# $VAR = Quest.new("Name of Quest", "Image" , "Line1", "Line2", "Line3",
# "Line4","Line5", difficulty, status)
#
# Name, image, lines must be string (between "" (quotes)). Image must be
# 480 x 80.
# Difficulty ranges from 0 (nothing) , 1(EX.EASY) to 5 (EX.HARD)
#
# Status is 0 (nothing), 1(not started), 2(looking for), 3(just finished),
# 4 (Complete).
#
# $VAR must be a global variable, like $quest1, or $mission1.
#
#
#
#
# 2- Then put this:
#
#   $quest.push ($VAR)
#
#
#
# $VAR must be the global variables you defined.
# EXAMPLE OF FIVE QUESTS
#
# $quest.push ($quest1)
# $quest.push ($quest2)
# $quest.push ($quest3)
# $quest.push ($quest4)
# $quest.push ($quest5)
#
#
# Then go to class Quest and fine the line:
#
#   def update_global

# and do the same as above with the $VAR.push (or $quest.push like example).
# Example is the same as above.
#
# 3- The most easy step. Go to Scene_Title (the default one) and find this lines
# and add the line between comments ADDED:

#    $game_player        = Game_Player.new
#-------ADDED-------
#    $quest = []
#-----ADDED--------------------------------
#    $game_party.setup_starting_members  



#WORK FINISHED
#
# Easy? Yes!
# If you have a good enchancement, PM me in DUBEALEX forum, and i will approve the
# next version.
#
#
#<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
#
# Features:
# -Call it from wherever you want with $scene = Scene.Quest.new
# -It has big name, 5 lines of quest, and a feature to put a image that you
# want. Difficulty and status.
# -If you don't want a picture, just create one that is called empty, and call it
# in the script
#  -You can put just finished quests
#
#<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
#

#                 Updating Quests:

# These commands will be useful for updating the quests:

# - $VAR.set_PARAMETER (NEW VALUE)

#EXPLICATION:

#  $VAR is the quest variable.   PARAMETER is the aspect of the quest you want to change

# name, image, lines, state, difficulty. These commands only in downcase will work.

# NEW VALUE is obviously the value of the parameter , string, number, etc.

# EXAMPLE:

#  $quest1.set_name ("The New quest")

#  $quest1.set_state (2)


# THis last is used to update for example, when the quest is given.


# I think this is a short, but great script.
# Ok, now i finally did the scrolling system. A big enchancement. Enjoy it!
#
#
#
#                                                   Samo, The thief
#
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-




#8 and 9 colors were done by me, and i replaced the def in window_base.
# if you want a new color, just add another when statement and copy the line.
#the color can be created more easily whith the script generator of Dubealex.




#Samo's Quest script begins
class Window_Base
#--------------ADDED---------------------
  def text_color(n)
    case n
    when 0
      return Color.new(255, 255, 255, 255)
    when 1
      return Color.new(128, 128, 255, 255)
    when 2
      return Color.new(255, 128, 128, 255)
    when 3
      return Color.new(128, 255, 128, 255)
    when 4
      return Color.new(128, 255, 255, 255)
    when 5
      return Color.new(255, 128, 255, 255)
    when 6
      return Color.new(255, 255, 128, 255)
    when 7
      return Color.new(192, 192, 192, 255)
    when 8   # Celeste EXTRA EASY
      return Color.new(0,255,255,255)
    when 9   #rojo EXTRA HARD
      return Color.new(155,0,80,255)
    when 10   #complete
      return Color.new(62,55,0,235)
    else
      normal_color
    end
  end
#--------------ADDED---------------------
 
  end

 
 
 
 
 
 
 
#==============================================================================
# ■ Window_Command_Quest
# created for complete color feature
#------------------------------------------------------------------------------

class Window_Command_Quest < Window_Selectable
  #--------------------------------------------------------------------------
  def initialize(width, commands)
    super(0, 0, width, commands.size * 32 + 32)
    @item_max = commands.size
    @commands = commands
    self.contents = Bitmap.new(width - 32, @item_max * 32)
    self.contents.font.name = $fontface
    self.contents.font.size = $fontsize
    refresh
    self.index = 0
  end
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    for i in 0...@item_max
      draw_item(i, normal_color)
    end
  end
  #--------------------------------------------------------------------------
  def draw_item(index, color)
    self.contents.font.color = color
    rect = Rect.new(4, 32 * index, self.contents.width - 8, 32)
    self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
    self.contents.draw_text(rect, @commands[index])
  end
  #--------------------------------------------------------------------------
  def disable_item(index)
    draw_item(index, disabled_color)
  end
  #-----------------ADDED-----------------------------------------------
  def complete_item(index)
    draw_item(index, text_color(10))
  end
  #---------------------------------------------------------------------
  def just_finish_item(index)
    draw_item(index, text_color(6))
  end
end
#Command_Quest ends here, it doesn't replace the original window_command.








#---------------------------------------------------
#===================================================
# - CLASS Scene_Quest Begins
#===================================================
#---------------------------------------------------
class Scene_Quest

#---------------------------------------------------------------------------------
#---------------------------------------------------------------------------------
  def initialize(quest_index = 0)
    @quest_index = quest_index
    $MAP_BACKGROUND = true      #Map Background. True or false? set it as you wish.
    $quest_options = []
  end
 
  #------------------------------------------------
 
def main
  if $MAP_BACKGROUND
    @spriteset = Spriteset_Map.new
    end
    @window5 = Window_Quest_Diary.new
    @window5.z= 300
 
    for i in 0..$quest.size - 1
       name = $quest[i].quest_option
       $quest_options.push(name)
     end
    @command_window = Window_Command_Quest.new(160, $quest_options)
    @command_window.index = @quest_index
    @command_window.z = 250
    @command_window.height = 150
    
    for i in 0..$quest.size - 1
     if $quest[i].not_started?
      @command_window.disable_item(i)
     elsif $quest[i].complete?
      @command_window.complete_item(i)
    elsif  $quest[i].just_finished?
      @command_window.just_finish_item(i)
   end  
end




Graphics.transition (20)
    loop do
      Graphics.update
      Input.update
     update
      if $scene != self
        break
      end
    end
    Graphics.transition
    Graphics.freeze
    @command_window.dispose
    $quest_options.clear
    @window5.dispose
  if $MAP_BACKGROUND
    @spriteset.dispose
  end
   $quest_seen = false
  end
#---------------------------------------------------------------------------------

#---------------------------------------------------------------------------------
  def update
    @command_window.update
    if @command_window.active
      update_command
      return
    end
    if Input.trigger?(Input::B)
      if @command_window.active == false
        $game_system.se_play($data_system.cancel_se)
        @command_window.active = true
            @window1.dispose
            @window2.dispose
            @window3.dispose
            @window4.dispose
          else
      $game_system.se_play($data_system.cancel_se)

#if you want that when you exit it calls the menu, just put a # before
#  $scene = Scene_Map.new and delete the # in $scene = Scene_Menu.new
      #$scene = Scene_Menu.new
      $scene = Scene_Map.new
        end

      return
    end
  end
#---------------------------------------------------------------------------------
  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)
      
      for i in 0..$quest.size - 1
        case @command_window.index
          when i
            if $quest[i].not_started?
            $game_system.se_play($data_system.buzzer_se)
            return
          end
          $game_system.se_play($data_system.decision_se)
         $ACTUAL_QUEST = $quest[i]
        update_quest
      end
    end
  end
  end
 
  def update_quest
    @command_window.active = false
    @window1 = Window1.new
    @window2 = Window2.new
    @window3 = Window_Difficulty.new
    @window4 = Window_Status_Quest.new
    @window1.z= 220
    @window2.z= 200
    @window3.z= 230
    @window4.z= 230
    end

end
#---------------------------------------------------
#===================================================
# - CLASS Scene_Quest Ends
#===================================================
#---------------------------------------------------








#---------------------------------------------------
#===================================================
# - CLASS Window1 Begins
#===================================================
#---------------------------------------------------

class Window1 < Window_Base

#---------------------------------------------------------------------------------    
  def initialize
    super(120, 10, 520,100)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.contents.font.name = "Comic Sans MS"
    self.contents.font.size = 40
    self.contents.font.color = text_color(3) #color of name
    self.contents.draw_text(50, 20, 400, 40, $ACTUAL_QUEST.name)
  end


  #--------------------------------

#--------------------------------
end


#--------------------------------





#---------------------------------------------------
#===================================================
# - CLASS Window2 Begins
#===================================================
#---------------------------------------------------

class Window2 < Window_Base

#---------------------------------------------------------------------------------    
  def initialize
    super(80, 110, 540,340)


    self.contents = Bitmap.new(width - 32, height - 32)
    self.contents.font.name = "Comic Sans MS"
    self.contents.font.size = 26
    self.contents.font.color = text_color(0) # color of quest lines
    src_rect = Rect.new(0, 0, 500, 100) # pictures can be 480x80
    image = RPG::Cache.picture($ACTUAL_QUEST.image)
    self.contents.blt(10, 10, image, src_rect, 255)
    self.contents.draw_text(20, 100, 500, 33, $ACTUAL_QUEST.line1)
    self.contents.draw_text(20, 130, 500, 33, $ACTUAL_QUEST.line2)
    self.contents.draw_text(20, 160, 500, 33, $ACTUAL_QUEST.line3)
    self.contents.draw_text(20, 190, 500, 33, $ACTUAL_QUEST.line4)
    self.contents.draw_text(20, 220, 500, 33, $ACTUAL_QUEST.line5)

  end

end
#---------------------------------------------------------------------------------  
# this window puts the difficulty.
class Window_Difficulty < Window_Base
  def initialize
    super(50, 400, 300, 80)


    self.contents = Bitmap.new(width - 32, height - 32)
    self.contents.font.name = "Comic Sans MS"
    self.contents.font.size = 26
    self.opacity = 225
    self.contents.font.color = system_color
    self.contents.draw_text(10, 2, 80, 33, "Difficulty: ")
    self.contents.font.color = text_color($ACTUAL_QUEST.difficulty[0])
    self.contents.draw_text(100, 2, 100, 33, $ACTUAL_QUEST.difficulty[1])
  end

end


#---------------------------------------------------



class Window_Status_Quest < Window_Base
  def initialize
    super(400, 400, 240, 80)


    self.contents = Bitmap.new(width - 32, height - 32)
    self.contents.font.name = "Comic Sans MS"
    self.contents.font.size = 26
    self.opacity = 225
    self.contents.font.color = system_color
    self.contents.draw_text(10, 2, 80, 33, "Status: ")
    self.contents.font.color = text_color(0)
    self.contents.draw_text(100, 2, 100, 33, $ACTUAL_QUEST.state)
  end

end
#---------------------------------------------------



class Window_Quest_Diary < Window_Base
  def initialize
    super(490, 5, 150, 60)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.contents.font.name = "Comic Sans MS"
    self.contents.font.size = 26
    self.opacity = 225
    self.contents.font.color = text_color(4)
    self.contents.draw_text(0, 0, 100, 33, "Quest Diary")
  end

end






















#______________________________________________________________________________
#______________________________________________________________________________
#================================================================
#================================================================
#================================================================
#QUEST CLASS BY SAMO
#The main proccess. This creates the quests and returns their name, lines, etc.
#Only the #EDITABLE can be modified. Don't touch something else.
#================================================================
#================================================================
#================================================================
#______________________________________________________________________________
#______________________________________________________________________________






class Quest

attr_accessor :name
attr_accessor :image
attr_accessor :line1
attr_accessor :line2
attr_accessor :line3
attr_accessor :line4
attr_accessor :line5
#attr_accessor :difficulty_level
attr_accessor :state_number
#-----------------------------------------------------
  def initialize(name, image, line1, line2, line3, line4, line5, difficulty_level, state_number) @difficulty = [0, ""]
    @name = name
    @image = image
    @line1 = line1
    @line2 = line2
    @line3 = line3
    @line4 = line4
    @line5 = line5
    @difficulty_level = difficulty_level
    set_difficulty_name
    @state_number = state_number
    set_state_name
  end
 
#-----------------------------------------------------
  def set_state_name#EDITABLE  change the strings and if you want add another
    #when statement

    case @state_number
          when 0
      @state = "------"
          when 1
      @state = "Not Started"
          when 2
      @state = "Looking for"
          when 3
      @state = "Just finished"
          when 4
      @state = "Complete"
      
    end
  end
#-----------------------------------------------------      
  def set_difficulty_name
  case    @difficulty_level#EDITABLE#case of the level of difficulty. To add another difficulty
                #just put another when statement and copy the line. the values are
                #  [color, "name of difficulty"]
      when 0    #Nothing
        @difficulty = [0, " "]
      when 1    #EXTRA EASY
         @difficulty = [8, "EXTRA EASY"]
      when 2    #EASY
         @difficulty = [4, "EASY"]
      when 3    #NORMAL
         @difficulty = [3, "NORMAL"]
      when 4    #HARD
         @difficulty = [2, "HARD"]
      when 5    #EXTRA HARD
         @difficulty = [9, "EXTRA HARD"]
       end
     end
    
#-----------------------------------------------------    
      
    def quest_option
        if @state_number == 1
        return "----"
     else
       return @name
     end
    end
#-----------------------------------------------------    
    
    def not_started?
      if @state_number == 1
       return true
     else
       return false
     end
   end
   #---------------------------------------------------
    def complete?
      if @state_number == 4
       return true
     else
       return false
     end
   end
   #-----------------------------------------------------
    def just_finished?
      if @state_number == 3
       return true
     else
       return false
     end
    end
  #-----------------------------------------------------  
     def name
       if @name !=nil
       return @name
     else
       return false
     end
   end
  #-----------------------------------------------------
    def image
       if @image !=nil
       return @image
     else
       return false
     end
   end
#-----------------------------------------------------  
   def line1
       if @line1 !=nil
       return @line1
     else
       return false
     end
   end
#-----------------------------------------------------  
   def line2
       if @line2 !=nil
       return @line2
     else
       return false
     end
   end        
 
  #-----------------------------------------------------
   def line3
       if @line3 !=nil
       return @line3
     else
       return false
     end
   end        
#-----------------------------------------------------  
   def line4
       if @line4 !=nil
       return @line4
     else
       return false
     end
   end        
#-----------------------------------------------------  
   def line5
       if @line5 !=nil
       return @line5
     else
       return false
     end
   end        
#-----------------------------------------------------    
   def difficulty
       if @difficulty !=nil
       return @difficulty
     else
       return false
     end
   end
#-----------------------------------------------------  
   def state
    if @state !=nil
       return @state
    else
       return false
     end
   end
 
   #-----------------------------------------------------

    def set_state (index)      

      @state_number = index
      set_state_name
          update_global
    end
#-----------------------------------------------------    
    
    def set_difficulty (index)

      @difficulty_level = index
      set_difficulty_name          
      update_global
    end
    
#-----------------------------------------------------    
    def set_lines (line1, line2, line3, line4, line5)
    
      @line1 = line1
      @line2 = line2
      @line3 = line3
      @line4 = line4
      @line5 = line5
        update_global
    end
    
#-----------------------------------------------------        
    def set_image (index)

      @image = index
      update_global
    end
#-----------------------------------------------------        
    
    def set_name (index)  
      @name = index
      update_global
    end
    
    
    #--------------------------------------------------
    def update_global   #ULTRA EDITABLE
                        #DON"T FORGET TO CHANGE THIS LIKE YOU PUT AT THE START
                        #OF YOUR GAME
                        #ONLY CHANGE THE $quest.push($VAR)
      $quest = []
      $quest.push($quest1)
      $quest.push($quest2)
      $quest.push($quest3)
      $quest.push($quest4)
      end
    
    
    
    
    
    
end


#-----THE FINAL END-------------





# Sorry seph for copying this part of save and load from your difficulty options script
#, this is
#really useful for me.
#==============================================================================
# Scene_Save
#==============================================================================
class Scene_Save < Scene_File
#--------------------------------------------------------------------------
# * Alias Save Data
#--------------------------------------------------------------------------
alias new_save write_save_data
#--------------------------------------------------------------------------
# * Write Save Data
#--------------------------------------------------------------------------
def write_save_data(file)
  new_save(file)
        Marshal.dump($quest, file)
      for i in 0..$quest.size - 1
        Marshal.dump($quest[i], file)

      end

  end
end

#==============================================================================
# Scene_Load
#==============================================================================
class Scene_Load < Scene_File
#--------------------------------------------------------------------------
# * Alias Read Save Data
#--------------------------------------------------------------------------
alias new_load read_save_data
#--------------------------------------------------------------------------
# * Read Save Data
#--------------------------------------------------------------------------
def read_save_data(file)
new_load(file)
      $quest = Marshal.load(file)
      for i in 0..$quest.size - 1
      $quest[i] = Marshal.load(file)

    end

end
end


#---------------










#Samo's Quest script finishes. V2.1




Instructions:
------------
They are in the code, but i will put them here.

Place this script above main to work. Then, read this important data:





HOW TO CREATE A NEW QUEST:

Very easy, but great results

1- Put this command in a new call script.

Code:
  $VAR = Quest.new("Name of Quest", "Image" , "Line1", "Line2", "Line3",
  "Line4","Line5", difficulty, status)



Name, image, lines must be string (between "" (quotes)). Image must be
480 x 80.
Difficulty ranges from 0 (nothing) , 1(EX.EASY) to 5 (EX.HARD)

Status is 0 (nothing), 1(not started), 2(looking for), 3(just finished),
4 (Complete).

$VAR must be a global variable, like $quest1, or $mission1.




2- Then put this in a new call script too:
Code:
    $quest.push ($VAR)


$VAR must be the global variables you defined.
EXAMPLE OF FIVE QUESTS
Code:
  $quest.push ($quest1)
  $quest.push ($quest2)
  $quest.push ($quest3)
  $quest.push ($quest4)
  $quest.push ($quest5

 Then go to class Quest and find the line:
Code:
    def update_global


and do the same as above with the $VAR.push (or $quest.push like example).
Example is the same as above.

3- The most easy step. Go to Scene_Title (the default one) and find this lines
and add the line between comments ADDED:
Code:
     $game_player        = Game_Player.new
#-------ADDED-------
     $quest = []
#-----ADDED--------------------------------
     $game_party.setup_starting_members



WORK FINISHED

EASY? YES!
If you have a good enchancement, PM me in DUBEALEX forum, and i will approve the
next version.


<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

Features:
-Call it from wherever you want with $scene = Scene.Quest.new
-It has big name, 5 lines of quest, and a feature to put a image that you
want. Difficulty and status.
-If you don't want a picture, just create one that is called empty, and call it
in the script
-You can put just finished quests

<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>


Updating Quests:

These commands will be useful for updating the quests:
Code:
  - $VAR.set_PARAMETER (NEW VALUE)



EXPLICATION:

$VAR is the quest variable. PARAMETER is the aspect of the quest you want to change

name, image, lines, state, difficulty. These commands only in downcase will work.

NEW VALUE is obviously the value of the parameter , string, number, etc.

EXAMPLE:

Code:
   $quest1.set_name ("The New quest")

   $quest1.set_state (2)

 THis last is used to update for example, when the quest is given.

Replies please! I will like to know what do you think guys!
Feel free to use and enjoy!
Thanks and good luck!

Bye for now!
}


Possibly Related Threads…
Thread Author Replies Views Last Post
  Updated version of Game_Guy's Quest log Lethrface 0 2,667 01-28-2012, 01:00 PM
Last Post: Lethrface
  Steal and Mug Script Lethrface 0 3,039 08-08-2011, 01:00 PM
Last Post: Lethrface
  Book Script and Utility Bruth 0 2,736 06-10-2009, 01:00 PM
Last Post: Bruth
  Quest Book Zeriab 0 2,745 01-09-2009, 01:00 PM
Last Post: Zeriab
  Custom EXP Script Dargor 0 2,557 11-24-2007, 01:00 PM
Last Post: Dargor
  Dragon Quest VII Class Changing System Sephirothtds 0 2,757 11-15-2007, 01:00 PM
Last Post: Sephirothtds
  Clan Script ShockWave 0 2,611 08-27-2007, 01:00 PM
Last Post: ShockWave
  ARMS Script El Conductor 0 2,563 08-04-2007, 01:00 PM
Last Post: El Conductor
  Juke Box Script polraudio 0 2,728 06-17-2007, 01:00 PM
Last Post: polraudio
  Quest Script Samo the thief 0 2,558 03-12-2007, 01:00 PM
Last Post: Samo the thief



Users browsing this thread: 1 Guest(s)