Go Back   The PokéCommunity Forums > The PokéCommunity Archives > Game Development Archive

Notices
For all updates, view the main page.

Game Development Archive Locked games or old games, look for the old games that were in Game Development before November 20, 2005 or were locked before January 19, 2006.



 
 
Thread Tools
  #26    
Old June 15th, 2005 (08:43 AM).
funnybunny's Avatar
funnybunny
Advanced RM2k(3) Coder
 
Join Date: Mar 2005
Location: The Netherlands
Age: 26
Gender:
Nature: Calm
Quote originally posted by -virtual-:
yeah sure, just go to main, and change $fontsize
no that is not what I mean, I want the same fontsize but a lower resolution font
__________________
Skills:
- RM2k(3) coding, example: Pokemon Champion - demo.
- HTML Coding, example Tiger dust Games - newsletter 2.
- RM2k(3) Mapping, example: Ultimatum; Inner War(WIP)
- Drawing.
- Small spriter, example: Tiger Dust Games - forum skin.
- Small Story writing, example: Ultimatum; Inner War(WIP) - story.
  #27    
Old June 15th, 2005 (09:46 AM). Edited June 15th, 2005 by -virtual-.
Blizzy
me = Scripter.new("Noob")
 
Join Date: Jan 2005
Location: ~The Netherlands~
Age: 24
Gender:
Nature: Relaxed
Quote originally posted by funnybunny:
no that is not what I mean, I want the same fontsize but a lower resolution font
i don't know how to do that sorry.

good news:
i got the trainercard done!
just insert a new script above main, and paste the following in it.

Code:
class Game_Temp
 alias initialize_old initialize
 attr_accessor  :badges
 attr_accessor  :id1
 attr_accessor  :id2
 attr_accessor  :id3
 attr_accessor  :id4
 attr_accessor  :id5
 def initialize
   @badges = []
   @id1 = rand(9)
   @id2 = rand(9)
   @id3 = rand(9)
   @id4 = rand(9)
   @id5 = rand(9)
   initialize_old
 end
end

class Window_Base < Window
  def black
    return Color.new(96,96,96,255)
  end
end

class Window_Trainercard < Window_Base
  def initialize
    super(0,0,480,320)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.contents.font.name = $fontface
    self.contents.font.size = $fontsize
    self.z = 9999
    self.opacity = 0
    self.back_opacity = 0
    refresh
  end
  def refresh
    self.contents.clear
    #set's font color to black, defined at the top
    self.contents.font.color = black
    #set the x,y,width,height to a value
    x = 24 and y = 54 and w = 200 and h = 32
    
    #draw actor id
    t = $game_temp
    self.contents.draw_text(220, 4, w, h, "Trainer ID  " + t.id1.to_s + t.id2.to_s + t.id3.to_s + t.id4.to_s + t.id5.to_s)
    #draw actor name
    self.contents.draw_text(x,y,w,h,"Name        " + $game_party.actors[0].name, 0)
    
    #draw money
    self.contents.draw_text(x,y+47,w,h, "Money")
    c = $game_party.gold.to_s.size
    #draw the value of the money
    self.contents.draw_text(x+106 - c,y+47,w,h, "$" + $game_party.gold.to_s)
    
    #draw pokedex
    self.contents.draw_text(x,y+79,w,h, "PokeDex")
    #store number of current actors minus 1in "i"
    i = $game_party.actors.size - 1
    c = $game_party.actors.size.to_f
    #draw the number stored in "i"
    self.contents.draw_text(x+106 - c,y+80,w,h, i.to_s)
    
    #draw PlayTime
    self.contents.draw_text(x,y+111,w,h, "PlayTime")
    @total_sec = Graphics.frame_count / Graphics.frame_rate
    hour = @total_sec / 60 / 60
    min = @total_sec / 60 % 60
    sec = @total_sec % 60
    #store value in "text"
    text = sprintf("%02d:%02d:%02d", hour, min, sec)
    c = text.size
    self.contents.draw_text(x+106 - c, y+111,w,h, text)
  end

  def update
    super
    if Graphics.frame_count / Graphics.frame_rate != @total_sec
      refresh
    end
  end

end

class Scene_Trainercard
  def main
    @win = Window_Trainercard.new
    @win.x = 80
    @win.y = 80
    @win.z = 9998
    
    @card = Sprite.new
    @card.bitmap = RPG::Cache.picture("trainercard")
    @card.x = 80
    @card.y = 80
    @card.z = 9996
    
    @bg = Sprite.new
    @bg.bitmap = RPG::Cache.picture("background")
    @bg.z = 9995
    
    @trainer = Sprite.new
    @trainer.x = 398
    @trainer.y = 160
    @trainer.z = 9997
    
    if $game_switches[1] == true
      @trainer.bitmap = RPG::Cache.picture("boy")
    end
    if $game_switches[2] == true
      @trainer.bitmap = RPG::Cache.picture("girl")
    end
    @badge1 = Sprite.new
    @badge2 = Sprite.new
    @badge3 = Sprite.new
    @badge4 = Sprite.new
    @badge5 = Sprite.new
    @badge6 = Sprite.new
    @badge7 = Sprite.new
    @badge8 = Sprite.new
    if $game_temp.badges[1] == true
      @badge1.bitmap = RPG::Cache.icon("badge1")
      @badge1.x = 132
      @badge1.y = 308
      @badge1.z = 9999
    end
    if $game_temp.badges[2] == true
      @badge2.bitmap = RPG::Cache.icon("badge2")
      @badge2.x = 132 + (48 * 1)
      @badge2.y = 308
      @badge2.z = 9999
    end
    if $game_temp.badges[3] == true
      @badge3.bitmap = RPG::Cache.icon("badge3")
      @badge3.x = 132 + (48 * 2)
      @badge3.y = 308
      @badge3.z = 9999
    end
    if $game_temp.badges[4] == true
      @badge4.bitmap = RPG::Cache.icon("badge4")
      @badge4.x = 132 + (48 * 3)
      @badge4.y = 308
      @badge4.z = 9999
    end
    if $game_temp.badges[5] == true
      @badge5.bitmap = RPG::Cache.icon("badge5")
      @badge5.x = 132 + (48 * 4)
      @badge5.y = 308
      @badge5.z = 9999
    end
    if $game_temp.badges[6] == true
      @badge6.bitmap = RPG::Cache.icon("badge6")
      @badge6.x = 132 + (48 * 5)
      @badge6.y = 308
      @badge6.z = 9999
    end
    if $game_temp.badges[7] == true
      @badge7.bitmap = RPG::Cache.icon("badge7")
      @badge7.x = 132 + (48 * 6)
      @badge7.y = 308
      @badge7.z = 9999
    end
    if $game_temp.badges[8] == true
      @badge8.bitmap = RPG::Cache.icon("badge8")
      @badge8.x = 132 + (48 * 7)
      @badge8.y = 308
      @badge8.z = 9999
    end
    Graphics.transition
    loop do
      Graphics.update
      Input.update
      update
      if $scene != self
        break
      end
    end
    Graphics.freeze
    @win.dispose
    @card.dispose
    @bg.dispose
    @trainer.dispose
    @badge1.dispose
    @badge2.dispose
    @badge3.dispose
    @badge4.dispose
    @badge5.dispose
    @badge6.dispose
    @badge7.dispose
    @badge8.dispose
  end
  #--------------------------------------------------------------------------
  # ? ??????
  #--------------------------------------------------------------------------
  def update
    @win.update
    @card.update
    @bg.update
    @trainer.update
    @badge1.update
    @badge2.update
    @badge3.update
    @badge4.update
    @badge5.update
    @badge6.update
    @badge7.update
    @badge8.update
    if Input.press?(Input::B)
      $scene = Scene_Map.new
    end
  end
end
for boy put switch 1 on, for girl switch 2
for badges:
Code:
$game_temp.badges[i] = true
i is the number of the badge
if it's true, a badge will be added in the trainercard.

just click on the image in the attachement to see how you can call it.
there's a screenshot too
you need to download the zip files too.
these are the icons (badges) and pictures (background, sprites, card)
Attached Images
File Type: png Screenshot.PNG‎ (17.7 KB, 33 views) (Save to Dropbox)
File Type: png instructions.PNG‎ (4.9 KB, 36 views) (Save to Dropbox)
Attached Files
File Type: zip Icons.zip‎ (6.9 KB, 25 views) (Save to Dropbox)
File Type: zip Pictures.zip‎ (15.2 KB, 25 views) (Save to Dropbox)
__________________

  #28    
Old June 15th, 2005 (07:47 PM). Edited June 15th, 2005 by BlackCharizard.
BlackCharizard's Avatar
BlackCharizard
Black Charizard
 
Join Date: May 2005
Location: STALKER!!
Age: 23
Gender:
Send a message via Yahoo to BlackCharizard
Could you make a script to set the trainer ID from 000000 to 999999 and save it at the beginning of a new game?

Thanks in advance!!
__________________
  #29    
Old June 15th, 2005 (08:14 PM).
Neo Genesis
The Wanderer
 
Join Date: May 2005
Location: California
Age: 22
Gender:
Nature: Naive
Can you make the hero look like the one in firered/leafgreen?
__________________



New Djinn, New Heros, New Lighthouses, New Adepts, New Psynergy, The same bad guys. Coming soon Golden Sun Scars of Time! Will you journey with the heros? Or walk in the path of Saturos and Miniradi?Note game will progress very slowly and might be cancled to continue pokemon lost era.


My little brother is Sykora yay!
  #30    
Old June 15th, 2005 (08:40 PM).
BlackCharizard's Avatar
BlackCharizard
Black Charizard
 
Join Date: May 2005
Location: STALKER!!
Age: 23
Gender:
Send a message via Yahoo to BlackCharizard
T change the hero, just edit the image of the boy character virtual made and keep the same name. Then import it to RPG maker and it will show whatever picture that is the "Picture" folder and is named "Boy". Sam for girl, except named girl.

BTW, Virtual, I've tried the code, but I get an error saying something like: "game.temp <06x...>" or something.
__________________
  #31    
Old June 15th, 2005 (10:54 PM). Edited June 16th, 2005 by Alexandre.
Alexandre's Avatar
Alexandre
 
Join Date: Mar 2005
Age: 20
Nature: Lonely
very cool, but in my game you are the boy and the girl follows u about, is it possible to only have the boy on the card?

Edit: i cant get the picture of the hero to appear, i tried with the switch but it doesnt work

Edit2: doesnt matter, got it to work now
  #32    
Old June 16th, 2005 (04:08 AM).
Ravecat's Avatar
Ravecat
I'm Right.
 
Join Date: May 2005
Location: Adelaide, Australia
Gender: Male
Nature: Careful
Could i just ask for a simple one... (i think its simple)
One to make the message box only 2 lines big. Oh, but can you make it so i edit the original script not replace it. Cos i have done some work with most of the text scripts.
Even if you dont get around to it, thanks
__________________
  #33    
Old June 16th, 2005 (04:49 AM).
Demonic Budha's Avatar
Demonic Budha
semi-good RMXPer (not script)
 
Join Date: Jun 2005
Location: Taupo, NZ
Age: 28
Gender:
Nature: Naughty
Hey i have a request, im not sure if its big?
but can you make it so that certain tiles reflect the
hero
IE the water.

Thx
Demonic Budha

Also i got the ID card to come up in my CBS but the badges dont show
any ideas (or did i just script wrong lol)
  #34    
Old June 16th, 2005 (04:53 AM).
freakboy's Avatar
freakboy
Nubbie
 
Join Date: Mar 2004
Location: the netherlands
Age: 25
Gender:
Nature: Adamant
oh that's easy.. just change the super in Window_Message at the top in this:
super(72, 304, 496, 94)

and for the badges problem:
can i see your script for showing the badges..
it must look like this (only the badges) in a normal event after you done with the leader.

if that doesnt work i dont know it :dead:
  #35    
Old June 16th, 2005 (05:08 AM). Edited June 16th, 2005 by Demonic Budha.
Demonic Budha's Avatar
Demonic Budha
semi-good RMXPer (not script)
 
Join Date: Jun 2005
Location: Taupo, NZ
Age: 28
Gender:
Nature: Naughty
ok heres the script (i put it in my CBS script so an event to call wont work. i got it to do badges now but i cant figure out how to put the trainer sprite there)

+EDIT ok ive figured out how to get the Boy sprite in but if they choose a girl how would i make it change to that one?

ill post script pic
Attached Images
File Type: jpg IDcard.JPG‎ (155.8 KB, 20 views) (Save to Dropbox)
  #36    
Old June 16th, 2005 (05:43 AM).
Blizzy
me = Scripter.new("Noob")
 
Join Date: Jan 2005
Location: ~The Netherlands~
Age: 24
Gender:
Nature: Relaxed
Quote originally posted by BlackCharizard:
Could you make a script to set the trainer ID from 000000 to 999999 and save it at the beginning of a new game?

Thanks in advance!!
just do the same as id 1 , 2 ,3 ,4 and 5
__________________

  #37    
Old June 16th, 2005 (07:18 AM). Edited June 16th, 2005 by BlackCharizard.
BlackCharizard's Avatar
BlackCharizard
Black Charizard
 
Join Date: May 2005
Location: STALKER!!
Age: 23
Gender:
Send a message via Yahoo to BlackCharizard
What do you mean, Virtual?
[EDIT:] Okay, I saw the ID 1,2,3,4,5 thing in the script for the tcard, but does that save the number forever? I think that sets a random each time u view the card.
Oh and demonic, If u want to make something reflect the hero, that would have to be an event. All u need to do is take the tile, say the water, into your editing program.(Paint's actually best for this.) Juswt copy the water tile and then copy the hero. Flip him/her upside-down and paste it over the water. Theen cut off the excess parts and make that a new tile. Then the even would be on the water and another on the space above it. The above to change the tile of the water event to the one with the hero in it whjen u step on the event. Test that put it should work. Then to make it so u can see him/her turn and walk sides and disappear gets slightly more complicated. If u want to know a full way to do the whole thing, PM me.

Oh and virtual, I'm pretty sure this is small. I think I could figutre it out, but maybe u could help. I need a script to make the hero on turn, but stay in the same tile when you press the directional button, like in the newer poke games. Thanks again!!
__________________
  #38    
Old June 16th, 2005 (07:44 AM).
Neo Genesis
The Wanderer
 
Join Date: May 2005
Location: California
Age: 22
Gender:
Nature: Naive
Can you make a basic menu with the trainer card and pokedex in it?
__________________



New Djinn, New Heros, New Lighthouses, New Adepts, New Psynergy, The same bad guys. Coming soon Golden Sun Scars of Time! Will you journey with the heros? Or walk in the path of Saturos and Miniradi?Note game will progress very slowly and might be cancled to continue pokemon lost era.


My little brother is Sykora yay!
  #39    
Old June 16th, 2005 (09:49 AM).
Datriot's Avatar
Datriot
Tachikama!!!
 
Join Date: Mar 2005
Location: UK, England, Leeds. Simple.
Age: 23
Nature: Sassy
Hey, I like your scripts! I have a request, could I have a basic menu just like Neo Genisis, and a Pokemon Battle System scripts? Also, could you tell me where to put the scripts?
__________________

Datra: 1804 8720 6653
  #40    
Old June 16th, 2005 (09:57 AM).
Blizzy
me = Scripter.new("Noob")
 
Join Date: Jan 2005
Location: ~The Netherlands~
Age: 24
Gender:
Nature: Relaxed
the trainercard doesn't seem to like the menu.
i'll make up a demo, with the menu and trainercard.
so everything will be working fine.
i'll add the 6th id too.
i did 5 id's because i have that in my game.

@NeoGenesis:
i don't have a pokedex, sorry

@BlackCharizard:
it's $game_temp.id6 or something.
but everything with $game_temp is already stored.
so you dont need to do anything.

and i'm still puzzling how to do the facing and moving.

@Demonic.
there already is a reflection script.
but i'm not allowed to link to forums.
the one who created it is "rataime".

@datriot:
i don't have "pokemon battle scripts".
if you read the first post, you know what i won't do.
__________________

  #41    
Old June 16th, 2005 (10:10 AM).
Jeff_PKLight's Avatar
Jeff_PKLight
RMXP User
 
Join Date: Feb 2005
Location: USA
Nature: Adamant
Here's a pokedex script (sorry if I can't post scripts here -virtual-...)

Chrono_Cry made it.
Replace Scene_Menu with this (this menu is by Chrono_Cry)
Code:
#==============================================================================
# ■ Scene_Menu
#------------------------------------------------------------------------------
#==============================================================================

class Scene_Menu
 #Pokmon Menu - Version 1
 #Developed By Chrono Cry and Scaboon (Same person lol)
 #Changes can easily be made to the scripts and i shall inform you step by step how to.
 def initialize(menu_index = 0)
   @menu_index = menu_index
 end
 #Here is the main line of command it basically makes everything happen
 def main
   # These are the chocies that appear on the menu
   s1 = "Pokdex"
   s2 = "Pokmon"
   s3 = "Bag"
   s4 = "Tora"
   s5 = "Save"
   s6 = "Exit"
   @spriteset = Spriteset_Map.new
   @command_window = Window_Command.new(140, [s1, s2, s3, s4, s5, s6]) # This arranges the order of the selection
   @command_window.index = @menu_index
   # -----------------------------------------
   if $game_party.actors.size == 0
     # ===========================
     @command_window.disable_item(0)
     @command_window.disable_item(1)
     @command_window.disable_item(2)
     @command_window.disable_item(3)
   end
   # --------------------------------
   if $game_system.save_disabled
     # ----------------------------
     @command_window.disable_item(4)
   end
   # プレイ時間ウィンドウを作成
   Graphics.transition
   # メインループ
   loop do
     # ゲーム画面を更新
     Graphics.update
     # 入力情報を更新
     Input.update
     # フレーム更新
     update
     # 画面が切り替わったらループを中断
     if $scene != self
       break
     end
   end
   # トランジション準備
   Graphics.freeze
   # ウィンドウを解放
   @spriteset.dispose
   @command_window.dispose
 end
 #--------------------------------------------------------------------------
 # ● フレーム更新
 #--------------------------------------------------------------------------
 def update
   # ウィンドウを更新
   @spriteset.update
   @command_window.update
   # コマンドウィンドウがアクティブの場合: update_command を呼ぶ
   if @command_window.active
     update_command
     return
   end
   # ステータスウィンドウがアクティブの場合: update_status を呼ぶ
   if @status_window.active
     update_status
     return
   end
 end
 #--------------------------------------------------------------------------
 # ● フレーム更新 (コマンドウィンドウがアクティブの場合)
 #--------------------------------------------------------------------------
 def update_command
   # B ボタンが押された場合
   if Input.trigger?(Input::B)
     # キャンセル SE を演奏
     $game_system.se_play($data_system.cancel_se)
     # マップ画面に切り替え
     $scene = Scene_Map.new
     return
   end
   # C ボタンが押された場合
   if Input.trigger?(Input::C)
     # パーティ人数が 0 人で、セーブ、ゲーム終了以外のコマンドの場合
     if $game_party.actors.size == 0 and @command_window.index < 4
       # ブザー SE を演奏
       $game_system.se_play($data_system.buzzer_se)
       return
     end
     # コマンドウィンドウのカーソル位置で分岐
     case @command_window.index
     # The selection below is what happens when a selection is made
     when 0  # Opens up pokedex scene you have to make this yourself i suggest the biestary script
       # 決定  SE を演奏
       $game_system.se_play($data_system.decision_se)
       # アイテム画面に切り替え
       $scene = Scene_MonsterBook.new
     when 1  # This opens up the pokemon scene you will need to make this yourself
       # 決定 SE を演奏
       $game_system.se_play($data_system.decision_se)
       # ゲーム終了画面に切り替え
       $scene = Scene_Pokemon.new
     when 2  # This opens up the item screen
       # 決定 SE を演奏
       $game_system.se_play($data_system.decision_se)
       # ステータスウィンドウをアクティブにする
       $scene = Scene_Item.new
     when 3  # This opens up status screen i recommend you mess around with Window_Status to get what you want it to look like
       # 決定 SE を演奏
       $game_system.se_play($data_system.decision_se)
       # ステータスウィンドウをアクティブにする
       $scene = Scene_Status.new
     when 4  # This brings up save menu
       # セーブ禁止の場合
       if $game_system.save_disabled
         # ブザー SE を演奏
         $game_system.se_play($data_system.buzzer_se)
         return
       end
       # 決定 SE を演奏
       $game_system.se_play($data_system.decision_se)
       # セーブ画面に切り替え
       $scene = Scene_Save.new
     when 5  # This brings up exit choice
       # 決定 SE を演奏
       $game_system.se_play($data_system.decision_se)
       # ゲーム終了画面に切り替え
       $scene = Scene_End.new
     end
     return
   end
 end
 #--------------------------------------------------------------------------
 # ● フレーム更新 (ステータスウィンドウがアクティブの場合)
 #--------------------------------------------------------------------------
 def update_status
   # B ボタンが押された場合
   if Input.trigger?(Input::B)
     # キャンセル SE を演奏
     $game_system.se_play($data_system.cancel_se)
     # コマンドウィンドウをアクティブにする
     @command_window.active = true
     @status_window.active = false
     @status_window.index = -1
     return
   end
   # C ボタンが押された場合
   if Input.trigger?(Input::C)
     # コマンドウィンドウのカーソル位置で分岐
     case @command_window.index
     when 1  # スキル
       # このアクターの行動制限が 2 以上の場合
       if $game_party.actors[@status_window.index].restriction >= 2
         # ブザー SE を演奏
         $game_system.se_play($data_system.buzzer_se)
         return
       end
       # 決定 SE を演奏
       $game_system.se_play($data_system.decision_se)
       # スキル画面に切り替え
       $scene = Scene_Skill.new(@status_window.index)
     when 2  # 装備
       # 決定 SE を演奏
       $game_system.se_play($data_system.decision_se)
       # 装備画面に切り替え
       $scene = Scene_Equip.new(@status_window.index)
     when 3  # ステータス
       # 決定 SE を演奏
       $game_system.se_play($data_system.decision_se)
       # ステータス画面に切り替え
       $scene = Scene_Status.new(@status_window.index)
     end
     return
   end
 end
end
Replace Window_Command with this:
Code:
#==============================================================================
# ■ Window_Command edited by Chrono Cry
#------------------------------------------------------------------------------
class Window_Command < Window_Selectable
 #--------------------------------------------------------------------------
 #--------------------------------------------------------------------------
 def initialize(width, commands)
   # This defines the position of the command bar
   super(500, 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
end
Then create a new script, ex. Pokedex, above Main in the Script Editor.
Code:
# Originally released by: momomo?
# Removal of comments and fix: Matte


module Enemy_Book_Config
DROP_ITEM_NEED_ANALYZE = false 
EVA_NAME = "Evasion" 
SHOW_COMPLETE_TYPE = 3  
end

class Game_Temp
attr_accessor :enemy_book_data
alias temp_enemy_book_data_initialize initialize
def initialize
  temp_enemy_book_data_initialize
  @enemy_book_data = Data_MonsterBook.new
end
end

class Game_Party
attr_accessor :enemy_info 
#--------------------------------------------------------------------------
alias book_info_initialize initialize
def initialize
  book_info_initialize
  @enemy_info = {}
end
#--------------------------------------------------------------------------
def add_enemy_info(enemy_id, type = 0)
  case type
  when 0
    if @enemy_info[enemy_id] == 2
      return false
    end
    @enemy_info[enemy_id] = 1
  when 1
    @enemy_info[enemy_id] = 2
  when -1
    @enemy_info[enemy_id] = 0
  end
end
#--------------------------------------------------------------------------
def enemy_book_max
  return $game_temp.enemy_book_data.id_data.size - 1
end
#--------------------------------------------------------------------------
def enemy_book_now
  now_enemy_info = @enemy_info.keys
  no_add = $game_temp.enemy_book_data.no_add_element
  new_enemy_info = []
  for i in now_enemy_info
    enemy = $data_enemies[i]
    next if enemy.name == ""
    if enemy.element_ranks[no_add] == 1
      next
    end
    new_enemy_info.push(enemy.id)
  end
  return new_enemy_info.size
end
#--------------------------------------------------------------------------
def enemy_book_complete_percentage
  e_max = enemy_book_max.to_f
  e_now = enemy_book_now.to_f
  comp = e_now / e_max * 100
  return comp.truncate
end
end

class Interpreter
def enemy_book_max
  return $game_party.enemy_book_max
end
def enemy_book_now
  return $game_party.enemy_book_now
end
def enemy_book_comp
  return $game_party.enemy_book_complete_percentage
end
end

class Scene_Battle
alias add_enemy_info_start_phase5 start_phase5
def start_phase5
  for enemy in $game_troop.enemies
    unless enemy.hidden
      $game_party.add_enemy_info(enemy.id, 0)
    end
  end
  add_enemy_info_start_phase5
end
end

class Window_Base < Window

 def initialize(x, y, width, height)
  super()
  self.contents = Bitmap.new(width - 32, height - 32)
  self.contents.font.name = $fontface
  @windowskin_name = $game_system.windowskin_name
  self.windowskin = RPG::Cache.windowskin(@windowskin_name)
  self.x = x
  self.y = y
  self.width = width
  self.height = height
  self.z = 100
end
#--------------------------------------------------------------------------
def draw_enemy_drop_item(enemy, x, y)
  self.contents.font.color = normal_color
  self.contents.font.name = $fontface
  treasures = []
  if enemy.item_id > 0
    treasures.push($data_items[enemy.item_id])
  end
  if enemy.weapon_id > 0
    treasures.push($data_weapons[enemy.weapon_id])
  end
  if enemy.armor_id > 0
    treasures.push($data_armors[enemy.armor_id])
  end
  if treasures.size > 0
    item = treasures[0]
    bitmap = RPG::Cache.icon(item.icon_name)
    opacity = 255
    self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity)
    name = treasures[0].name
  else
    self.contents.font.color = disabled_color
    self.contents.font.name = $fontface
    name = "No Item"
  end
  self.contents.draw_text(x+28, y, 212, 32, name)
end
#--------------------------------------------------------------------------
def draw_enemy_book_id(enemy, x, y)
  self.contents.font.color = normal_color
  self.contents.font.name = $fontface
  id = $game_temp.enemy_book_data.id_data.index(enemy.id)
  self.contents.draw_text(x, y, 32, 32, id.to_s)
end
#--------------------------------------------------------------------------
def draw_enemy_name(enemy, x, y)
  self.contents.font.color = normal_color
  self.contents.font.name = $fontface
  self.contents.draw_text(x, y, 152, 32, enemy.name)
end
#--------------------------------------------------------------------------
def draw_enemy_graphic(enemy, x, y, opacity = 255)
  bitmap = RPG::Cache.battler(enemy.battler_name, enemy.battler_hue)
  cw = bitmap.width
  ch = bitmap.height
  src_rect = Rect.new(0, 0, cw, ch)
  x = x + (cw / 2 - x) if cw / 2 > x
  self.contents.blt(x - cw / 2, y - ch, bitmap, src_rect, opacity)
end
#--------------------------------------------------------------------------
def draw_enemy_exp(enemy, x, y)
  self.contents.font.color = system_color
  self.contents.font.name = $fontface
  self.contents.draw_text(x, y, 120, 32, "EXP")
  self.contents.font.color = normal_color
  self.contents.font.name = $fontface
  self.contents.draw_text(x + 120, y, 36, 32, enemy.exp.to_s, 2)
end
#--------------------------------------------------------------------------
def draw_enemy_gold(enemy, x, y)
  self.contents.font.color = system_color
  self.contents.font.name = $fontface
  self.contents.draw_text(x, y, 120, 32, $data_system.words.gold)
  self.contents.font.color = normal_color
  self.contents.font.name = $fontface
  self.contents.draw_text(x + 120, y, 36, 32, enemy.gold.to_s, 2)
end
end

class Game_Enemy_Book < Game_Enemy
#--------------------------------------------------------------------------
def initialize(enemy_id)
  super(2, 1)
  @enemy_id = enemy_id
  enemy = $data_enemies[@enemy_id]
  @battler_name = enemy.battler_name
  @battler_hue = enemy.battler_hue
  @hp = maxhp
  @sp = maxsp
end
end

class Data_MonsterBook
attr_reader :id_data
#--------------------------------------------------------------------------
def initialize
  @id_data = enemy_book_id_set
end
#--------------------------------------------------------------------------
def no_add_element
  no_add = 0
  for i in 1...$data_system.elements.size
    if $data_system.elements[i] =~ /Monster Book/
      no_add = i
      break
    end
  end
  return no_add
end
#--------------------------------------------------------------------------
def enemy_book_id_set
  data = [0]
  no_add = no_add_element
  for i in 1...$data_enemies.size
    enemy = $data_enemies[i]
    next if enemy.name == ""
    if enemy.element_ranks[no_add] == 1
      next
    end
    data.push(enemy.id)
  end
  return data
end
end


class Window_MonsterBook < Window_Selectable
attr_reader   :data
#--------------------------------------------------------------------------
def initialize(index=0)
  super(0, 64, 640, 416)
  @column_max = 2
  @book_data = $game_temp.enemy_book_data
  @data = @book_data.id_data.dup
  @data.shift
  @item_max = @data.size
  self.index = 0
  refresh if @item_max > 0
end
#--------------------------------------------------------------------------
def data_set
  data = $game_party.enemy_info.keys
  data.sort!
  newdata = []
  for i in data
    next if $game_party.enemy_info[i] == 0
    if book_id(i) != nil
      newdata.push(i)
    end
  end
  return newdata
end
#--------------------------------------------------------------------------
def show?(id)
  if $game_party.enemy_info[id] == 0 or $game_party.enemy_info[id] == nil
    return false
  else
    return true
  end
end
#--------------------------------------------------------------------------
def book_id(id)
  return @book_data.index(id)
end
#--------------------------------------------------------------------------
def item
  return @data[self.index]
end
#--------------------------------------------------------------------------
def refresh
  if self.contents != nil
    self.contents.dispose
    self.contents = nil
  end
  self.contents = Bitmap.new(width - 32, row_max * 32)
  if @item_max > 0
    for i in 0...@item_max
     draw_item(i)
    end
  end
end
#--------------------------------------------------------------------------
def draw_item(index)
  enemy = $data_enemies[@data[index]]
  return if enemy == nil
  x = 4 + index % 2 * (288 + 32)
  y = index / 2 * 32
  rect = Rect.new(x, y, self.width / @column_max - 32, 32)
  self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
  self.contents.font.color = normal_color
  self.contents.font.name = $fontface
  draw_enemy_book_id(enemy, x, y)
  if show?(enemy.id)
    self.contents.draw_text(x + 28+16, y, 212, 32, enemy.name, 0)
  else
    self.contents.draw_text(x + 28+16, y, 212, 32, "-----", 0)
    return
  end
  if analyze?(@data[index])
    self.contents.font.color = text_color(3)
    self.contents.font.name = $fontface
    self.contents.draw_text(x + 256, y, 24, 32, "Cancel", 2)
  end
end
#--------------------------------------------------------------------------
def analyze?(enemy_id)
  if $game_party.enemy_info[enemy_id] == 2
    return true
  else
    return false
  end
end
end


class Window_MonsterBook_Info < Window_Base
include Enemy_Book_Config
#--------------------------------------------------------------------------
def initialize
  super(0, 0+64, 640, 480-64)
  self.contents = Bitmap.new(width - 32, height - 32)
end
#--------------------------------------------------------------------------
def refresh(enemy_id)
  self.contents.clear
  self.contents.font.name = $fontface
  self.contents.font.size = 22
  enemy = Game_Enemy_Book.new(enemy_id)
  draw_enemy_graphic(enemy, 96, 240+48+64, 200)
  draw_enemy_book_id(enemy, 4, 0)
  draw_enemy_name(enemy, 48, 0)
  draw_actor_hp(enemy, 288, 0)
  draw_actor_sp(enemy, 288+160, 0)
  draw_actor_parameter(enemy, 288    ,  32, 0)
  self.contents.font.color = system_color
  self.contents.draw_text(288+160, 32, 120, 32, EVA_NAME)
  self.contents.font.color = normal_color
  self.contents.draw_text(288+160 + 120, 32, 36, 32, enemy.eva.to_s, 2)
  draw_actor_parameter(enemy, 288    ,  64, 3)
  draw_actor_parameter(enemy, 288+160,  64, 4)
  draw_actor_parameter(enemy, 288    ,  96, 5)
  draw_actor_parameter(enemy, 288+160,  96, 6)
  draw_actor_parameter(enemy, 288    , 128, 1)
  draw_actor_parameter(enemy, 288+160, 128, 2)
  draw_enemy_exp(enemy, 288, 160)
  draw_enemy_gold(enemy, 288+160, 160)
  if analyze?(enemy.id) or !DROP_ITEM_NEED_ANALYZE
    self.contents.draw_text(288, 192, 96, 32, "Drop Item")
    draw_enemy_drop_item(enemy, 288+96+4, 192)
    self.contents.font.color = normal_color
  end
end
#--------------------------------------------------------------------------
def analyze?(enemy_id)
  if $game_party.enemy_info[enemy_id] == 2
    return true
  else
    return false
  end
end
end


class Scene_MonsterBook
include Enemy_Book_Config
#--------------------------------------------------------------------------
def main
  $game_temp.enemy_book_data = Data_MonsterBook.new
  @title_window = Window_Base.new(0, 0, 640, 64)
  @title_window.contents = Bitmap.new(640 - 32, 64 - 32)
  @title_window.contents.draw_text(4, 0, 320, 32, "Monster Book", 0)
  if SHOW_COMPLETE_TYPE != 0
    case SHOW_COMPLETE_TYPE
    when 1
      e_now = $game_party.enemy_book_now
      e_max = $game_party.enemy_book_max
      text = e_now.to_s + "/" + e_max.to_s
    when 2
      comp = $game_party.enemy_book_complete_percentage
      text = comp.to_s + "%"
    when 3
      e_now = $game_party.enemy_book_now
      e_max = $game_party.enemy_book_max
      comp = $game_party.enemy_book_complete_percentage
      text = e_now.to_s + "/" + e_max.to_s + " " + comp.to_s + "%"
    end
    if text != nil
      @title_window.contents.draw_text(320, 0, 288, 32,  text, 2)
    end
  end
  @main_window = Window_MonsterBook.new
  @main_window.active = true
  @info_window = Window_MonsterBook_Info.new
  @info_window.z = 110
  @info_window.visible = false
  @info_window.active = false
  @visible_index = 0
  Graphics.transition
  loop do
    Graphics.update
    Input.update
    update
    if $scene != self
      break
    end
  end
  Graphics.freeze
  @main_window.dispose
  @info_window.dispose
  @title_window.dispose
end
#--------------------------------------------------------------------------
def update
  @main_window.update
  @info_window.update
  if @info_window.active
    update_info
    return
  end
  if @main_window.active
    update_main
    return
  end
end
#--------------------------------------------------------------------------
def update_main
  if Input.trigger?(Input::B)
    $game_system.se_play($data_system.cancel_se)
    $scene = Scene_Map.new
    return
  end
  if Input.trigger?(Input::C)
    if @main_window.item == nil or @main_window.show?(@main_window.item) == false
      $game_system.se_play($data_system.buzzer_se)
      return
    end
    $game_system.se_play($data_system.decision_se)
    @main_window.active = false
    @info_window.active = true
    @info_window.visible = true
    @visible_index = @main_window.index
    @info_window.refresh(@main_window.item)
    return
  end
end
#--------------------------------------------------------------------------
def update_info
  if Input.trigger?(Input::B)
    $game_system.se_play($data_system.cancel_se)
    @main_window.active = true
    @info_window.active = false
    @info_window.visible = false
    return
  end
  if Input.trigger?(Input::C)
    return
  end
  if Input.trigger?(Input::L)
    $game_system.se_play($data_system.decision_se)
    loop_end = false
    while loop_end == false
      if @visible_index != 0
        @visible_index -= 1
      else
        @visible_index = @main_window.data.size - 1
      end
      loop_end = true if @main_window.show?(@main_window.data[@visible_index])
    end
    id = @main_window.data[@visible_index]
    @info_window.refresh(id)
    return
  end
  if Input.trigger?(Input::R)
    $game_system.se_play($data_system.decision_se)
    loop_end = false
    while loop_end == false
      if @visible_index != @main_window.data.size - 1
        @visible_index += 1
      else
        @visible_index = 0
      end
      loop_end = true if @main_window.show?(@main_window.data[@visible_index])
    end
    id = @main_window.data[@visible_index]
    @info_window.refresh(id)
    return
  end
end
end
__________________

~The River~

Current project

Pokemon Light Progress:

Light is starting over! I'll update this once I progress more in Light again.


:: Pokemon Light Links ::
:: Site :: :: Forums :: :: Thread ::
  #42    
Old June 16th, 2005 (10:17 AM). Edited June 16th, 2005 by Datriot.
Datriot's Avatar
Datriot
Tachikama!!!
 
Join Date: Mar 2005
Location: UK, England, Leeds. Simple.
Age: 23
Nature: Sassy
That's a very good script! Thanks!

EDIT:Help! Your menu works fine apart from the Pokemon and Poke'dex menus, whenever I type them in it comes up with some error, and I have created the script that you make above main, what's the problem?
__________________

Datra: 1804 8720 6653
  #43    
Old June 16th, 2005 (10:51 AM). Edited June 16th, 2005 by BlackCharizard.
BlackCharizard's Avatar
BlackCharizard
Black Charizard
 
Join Date: May 2005
Location: STALKER!!
Age: 23
Gender:
Send a message via Yahoo to BlackCharizard
Virtual, I sorta think I know what 2 do to make it move. U have to put something like
press left
if facing left
then move_left
then like if not face left (or something)
then turn_left

So then you only turn unless u are already facing in that direction. I can figure it out, but I dont know where to put it, cause there are different script areas where there's a lot of moving things. Do you know hwich part it is that has the Hero's movement? Also do u know where the key commands are in the scripts. Thabnks for All that and thanks in advance for all the help!! It's great to know that someone is so dedicated to helping people!!

Oh and Jeff, How do we set the pokedex to a specific number of pokes. Oh and when I try it, I just get an unknown error at the start that has a bunch ? marks. Might be better to PM me.
__________________
  #44    
Old June 16th, 2005 (12:00 PM).
Jeff_PKLight's Avatar
Jeff_PKLight
RMXP User
 
Join Date: Feb 2005
Location: USA
Nature: Adamant
I think something's wrong with Chrono Cry's menu. Just use -virtual-'s and when you see this:

Code:
when  "Pokedex"
       $game_system.se_play($data_system.decision_se)
       $scene = Scene_Map.new
Change it to this:

Code:
when "Pokedex"  # Opens up pokedex scene you have to make this yourself i suggest the biestary script
       # 決定  SE を演奏
       $game_system.se_play($data_system.decision_se)
       # アイテム画面に切り替え
       $scene = Scene_Monsterbook.new
It should work now...
__________________

~The River~

Current project

Pokemon Light Progress:

Light is starting over! I'll update this once I progress more in Light again.


:: Pokemon Light Links ::
:: Site :: :: Forums :: :: Thread ::
  #45    
Old June 16th, 2005 (04:58 PM).
Demonic Budha's Avatar
Demonic Budha
semi-good RMXPer (not script)
 
Join Date: Jun 2005
Location: Taupo, NZ
Age: 28
Gender:
Nature: Naughty
Hey me again.
according to the member list there isnt anyone name "rataime" on theses forums?
  #46    
Old June 16th, 2005 (07:57 PM).
Krazy_Meerkat's Avatar
Krazy_Meerkat
Rawr!
 
Join Date: Mar 2004
Location: Australia
Age: 26
Gender:
Nature: Lax
Send a message via Windows Live Messenger to Krazy_Meerkat
I get an error saying:
Quote originally posted by Error:
????? 'PokeMenu*' ? 170 ??? NameError ????????

Uninitialized constant Scene_Menu:cene_Monsterbook
I couldn't work it out.. Can you help me? Line 170 is when
Quote:
"Pokedex" # Opens up pokedex scene you have to make this yourself i suggest the biestary script
# 決定 SE を演奏
$game_system.se_play($data_system.decision_se)
# アイテム画面に切り替え
$scene = Scene_Monsterbook.new
Much appreciated :D
__________________
This signature has been disabled.
Exceeds height limit.
Please review and fix the issues by reading the signature rules.

You must edit it to meet the limits set by the rules before you may remove the [sig-reason] code from your signature. Removing this tag will re-enable it.

Do not remove the tag until you fix the issues in your signature. You may be infracted for removing this tag if you do not fix the specified issues. Do not use this tag for decoration purposes.
  #47    
Old June 16th, 2005 (08:30 PM).
BlackCharizard's Avatar
BlackCharizard
Black Charizard
 
Join Date: May 2005
Location: STALKER!!
Age: 23
Gender:
Send a message via Yahoo to BlackCharizard
Well, jeff wrote that one incorrectly. He mean to type "when 1" although he put pokedex, but thats cause at the beginning of the script it tellls the game that 1 = pokedex. aanyway, you were supposed to put
Code:
when 1 # Opens up pokedex scene you have to make this yourself i suggest the biestary script
# 決定 SE を演奏
$game_system.se_play($data_system.decision_se)
# アイテム画面に切り替え
$scene = Scene_Monsterbook.new
Anyway, that still desn't work. I get the same unknown error. Hmmm... I've chhecked a few things, and now am completely stumped. Dont know wuts wrong...

Also, In Game_Player, you can find a code that tells how to move your character that looks like this:
Code:
  #--------------------------------------------------------------------------
  # ● フレーム更新
  #--------------------------------------------------------------------------
  def update
    # ローカル変数に移動中かどうかを記憶
    last_moving = moving?
    # 移動中、イベント実行中、移動ルート強制中、
    # メッセージウィンドウ表示中のいずれでもない場合
    unless moving? or $game_system.map_interpreter.running? or
           @move_route_forcing or $game_temp.message_window_showing
      # 方向ボタンが押されていれば、その方向へプレイヤーを移動

      case Input.dir4
      when 2
        move_down
      when 4
        move_left
      when 6
        move_right
      when 8
        move_up
      end
    end
Anyway, that is what must be edited to allow your charatcer to turn and stay in the same tile unless u r already facing ni the direction indicated. U know liike in R/S/E/FR/LG where u tap the directional button and the guy/girl turns slightly, THAT!
Anyway, I've come up with this: (NOTE: THIS IS NOT A REAL WORKIN SCRIPT!!)
Code:
  #--------------------------------------------------------------------------
  # ● フレーム更新
  #--------------------------------------------------------------------------
  def update
    # ローカル変数に移動中かどうかを記憶
    last_moving = moving?
    # 移動中、イベント実行中、移動ルート強制中、
    # メッセージウィンドウ表示中のいずれでもない場合
    unless moving? or $game_system.map_interpreter.running? or
           @move_route_forcing or $game_temp.message_window_showing
      # 方向ボタンが押されていれば、その方向へプレイヤーを移動

      case Input.dir4
      when 2
        hero facing_down
         move_down
      when 4
        hero facing_left
         move_left
      when 6
        hero facing_right
         move_right
      when 8
        hero facing_up
         move_up
         
      when 2
        turn_down
      when 4
        turn_left
      when 6
        turn_right
      when 8
        turn_up
      end
    end
If anywone knows what I did wrong, please tell me. I think it something else, not "facing_up, down, left, right" I think kits another word, not facing, but I dont know wut. Thanks!
Oh, and Virtual, If u dont want this here, I will edit it out of my post, If u tell me!
__________________
  #48    
Old June 16th, 2005 (08:42 PM). Edited June 16th, 2005 by Krazy_Meerkat.
Krazy_Meerkat's Avatar
Krazy_Meerkat
Rawr!
 
Join Date: Mar 2004
Location: Australia
Age: 26
Gender:
Nature: Lax
Send a message via Windows Live Messenger to Krazy_Meerkat
I think it should be more like this:
Code:
  #--------------------------------------------------------------------------
  # ● フレーム更新
  #--------------------------------------------------------------------------
  def update
    # ローカル変数に移動中かどうかを記憶
    last_moving = moving?
    # 移動中、イベント実行中、移動ルート強制中、
    # メッセージウィンドウ表示中のいずれでもない場合
    unless moving? or $game_system.map_interpreter.running? or
           @move_route_forcing or $game_temp.message_window_showing
      # 方向ボタンが押されていれば、その方向へプレイヤーを移動

      case Input.dir4
      when 2
        if hero facing_down
         move_down
        else
         turn_down
        end
      when 4
        if hero facing_left
         move_left
        else
         turn_left
        end
      when 6
        if hero facing_right
         move_right
        else
         turn_right
        end
      when 8
        if hero facing_up
         move_up
        else
         turn_up
        end
      end
    end
__________________
This signature has been disabled.
Exceeds height limit.
Please review and fix the issues by reading the signature rules.

You must edit it to meet the limits set by the rules before you may remove the [sig-reason] code from your signature. Removing this tag will re-enable it.

Do not remove the tag until you fix the issues in your signature. You may be infracted for removing this tag if you do not fix the specified issues. Do not use this tag for decoration purposes.
  #49    
Old June 16th, 2005 (10:39 PM).
Ravecat's Avatar
Ravecat
I'm Right.
 
Join Date: May 2005
Location: Adelaide, Australia
Gender: Male
Nature: Careful
What about mine? (too short)
__________________
  #50    
Old June 17th, 2005 (01:14 AM).
Krazy_Meerkat's Avatar
Krazy_Meerkat
Rawr!
 
Join Date: Mar 2004
Location: Australia
Age: 26
Gender:
Nature: Lax
Send a message via Windows Live Messenger to Krazy_Meerkat
Your question was already answered:
Quote originally posted by freakboy:
oh that's easy.. just change the super in Window_Message at the top in this:
super(72, 304, 496, 94)
__________________
This signature has been disabled.
Exceeds height limit.
Please review and fix the issues by reading the signature rules.

You must edit it to meet the limits set by the rules before you may remove the [sig-reason] code from your signature. Removing this tag will re-enable it.

Do not remove the tag until you fix the issues in your signature. You may be infracted for removing this tag if you do not fix the specified issues. Do not use this tag for decoration purposes.
 
Quick Reply

Sponsored Links
Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Minimum Characters Per Post: 25



All times are UTC -8. The time now is 12:19 AM.