Jump to content
New account registrations are disabed. This website is now an archive. Read more here.

isaacsol

Member
  • Content Count

    657
  • Joined

  • Last visited

  • Days Won

    4

Everything posted by isaacsol

  1. I have alot of things that I need to take care of (exams etc...) and will not be posting a tutorial for a while. -isaacsol-
  2. :( Don't leave, you are a great Admin, you have done so much for this place, you still have so much more you could give to make this place great.
  3. UPDATE! I just got permission from Aaron Walz to use some of his music in my game, for those who do not know he composed the music for the Game Aveyond, and I'll soon post post them here.
  4. These are some of the areas that appear, i will write their name in their respective Language as well as English so you can get a taste of the games run-though. The Kingdom of Sol - Ta Kindoma Ogh Sol Castle Sol - Castantan Sol Home to the Sol Family for 8 Generations, perched on top Mt Sol which is only a mile long above the surface of the Sea of Sol. The Castle Stretches all over the mountaintop with tons of Buildings and Gardens. Deep Below ground and past the grand library lies and ancient lava filled cavern called the Sols Grounds. Sols Grounds - Sols Ganuta Hidden deep below Castle Sol this lava filled cavern system hold the elemental key to the whole universe, The Solus, the magical stone bestowed to Isau Sol by the Goddess Solyathna, controls the element of Sol "Sun". No-one but a Sol Priest can touch this sacred Stone The Great Library of Sol - Ta Grentan Libran Ogh Sol Between the Sols Grounds and Castle Sol's Dungeons is the Great Library which contains all of the known books in the universe. This library contains an ancient mirror that teleports the viewer to the Senate of Sol when they reach into its liquid surface. Mount Sol - Motintas Sol An ancient volcano that has formed in the middle of the Sea of Sol, the size of a continent (S. America to Canada). All the surfaces is a the 2 square mile peak which Castle Sol was built. Many caverns on the surface lead to a boiling lake of lava. This lake of lava has been tamed by the Sol family so it will never erupt. The Sea of Sol - Ta Siesta Ogh Sol In the middle of the Kingdom of Sol lies a sea the size of an ocean, it is only a sea because it is surrounded by land. It is the size of all the water on earth. It links Castle Sol to the City of Sol, The Senate, Conahailo City and also links it to the nearby Kingdom of Gaia. The Forest of Sol - Ta Gaian Ogh Sol An ancient forest that stemmed from the Kingdom of Gaia, it separates The City of Sol and the Senate from the Port and Conahailo. It is the size of London. The City of Sol - Ta Cuidat Ogh Sol The Capital to the Kingdom and home to the Senate. This city it extremely large, the Cathedral covers a square mile. There are many homes, markets, stores, smiths and tailors. Conahailo - Conahailo This city is the midway between the forest which lead to the Senate and the Desert which leads to the Kingdom of Gaia. The main feature is that the city is laid out around the Cathedral like a circle. Conahailo Desert - Conahailo Dresart A large desert that connects Conahailo to the Oasis of Gaia, one of the openings to the Kingdom of Gaia from the Kingdom of Sol The Senate - Ta Setane Home to the governors of the Kingdom of Sol, they help run the kingdom for Isaac Sol, though the cannot go against his wishes, Isaac's decision is final. The Port of Sol - Ta Porteta Ogh Sol And ancient port that link cities on the coast of the Sea of Sol to each other and Castle Sol. Always full of life, always full of merchants trying to sell their goods. Bargains can be found from the right dealer here. The Caves of Mount Sol - Ta Carvran Ogh Montintas Sol An ancient labyrinth that connects Castle Sol on the Summit to Mount Sol Base. Most of the passages are small and winding, some say that a Sol D?mon lives deep inside. The Base of Mount Sol - Ta Bastan Ogh Montintas Sol A cliff-face that links the top of the Summit of Mount Sol to the Mountain Docks. Castle Sol Docks - Castantan Sol Docres The Ancient Pier that connects Mount Sol to the mainland.
  5. Basically if you have any problems with events et cetera, please post it here and I will answer it. -isaacsol-
  6. Just updated the ost above, until i know how to use html here they are just direct links to the file.
  7. Official Sound Track, most games produce one during or after release.
  8. This is the Official OST to my game, at the moment these are MP3 versions of the original MIDI files used in the game. Arena Battle Time Boss Theme Vampire Theme Dragonian Theme Gaian Rejoice New Theme Positive02 Theme EDIT: How do you use html on the site?
  9. it looked life a bad wax crayon drawing so im trying to make it better. EDIT: I have added it above, it is only basic so enjoy.
  10. true but i always found myself listening to it before i got rmxp, the soundtrack was truly amazing, motoi sakuraba can be proud
  11. UPDATE! I have have added a basic tutorial on how to render manga in photoshop.
  12. you might be surprised, golden sun music fits very well with some areas of any rmxp game. especially the Desert Heat (Lamakan Desert) Theme, which is really good for exotic areas.
  13. This site has the complete soundtrack to the GBA Game Golden Sun and its sequel Golden Sun: The Lost Age. The music is one of the best i have heard in games and a must have for your games. Golden Sun OST Remember that if use it you have to credit Nintendo and the composer Motoi Sakuraba, also credit the names in the first paragraphs.
  14. actually, she appear a week ago on UK television and she looked nice and had a great voice, and anyway, this was nine years ago, she has clearly changed since then.
  15. this is a very useful script for rmxp, it allows you to change your party with reserve characters very easily. I do not know how to use the class changer, for that you will have to Contact Seph himself. to call the Party Changer just use this $scene = Scene_Party_Changer.new This is the Script #============================================================================== # Party & Class Changing System #-------------------------------------------------------------------------- # Created By SephirothSpawn (11.27.05) # Last Updated: 11.30.05 #============================================================================== #============================================================================== # Class Scene Title #============================================================================== class Scene_Title #-------------------------------------------------------------------------- # * Alias' New Game Method #-------------------------------------------------------------------------- alias new_game command_new_game #-------------------------------------------------------------------------- # * Adds Base Stats For Enemies #-------------------------------------------------------------------------- def command_new_game # Sets Class Requirements for i in 1...$data_classes.size $data_classes[i].set_reqirements end # Sets Characters Sex for i in 1...$data_actors.size $data_actors[i].set_sex end new_game end end #============================================================================== # ** Module RPG #============================================================================== module RPG #=========================================================================== # ** Class Actor #=========================================================================== class Actor #-------------------------------------------------------------------------- # * Public Instance Variables #-------------------------------------------------------------------------- attr_accessor :sex #-------------------------------------------------------------------------- # * Set Sex #-------------------------------------------------------------------------- def set_sex if @name.include?('(') @sex = @name.slice!(@name.index('(')..@name.index(')')) == '(M)' ? 1 : 2 else @sex = 1 end end end #=========================================================================== # ** Class Class #=========================================================================== class Class #-------------------------------------------------------------------------- # * Public Instance Variables #-------------------------------------------------------------------------- attr_accessor :level_requirements attr_accessor :sex_requirements #-------------------------------------------------------------------------- # * Set Requirements #-------------------------------------------------------------------------- def set_reqirements # Sets Level Requirements @level_requirements = @name.include?('{') ? eval (@name.slice!(@name.index('{')..@name.index('}'))) : {} # Sets Sex Requirements if @name.include?('(') sex = @name.slice!(@name.index('(')..@name.index(')')) @sex_requirements = sex == '(M)' ? 1 : 2 else @sex_requirements = 0 end end end end #============================================================================== # ** Class Window_Base #============================================================================== class Window_Base #-------------------------------------------------------------------------- # * Draw Item Name # item : item # x : draw spot x-coordinate # y : draw spot y-coordinate # width : draw text width # align : text align #-------------------------------------------------------------------------- def draw_item_name(item, x, y, width = 212, align = 0, type = 0) if item == nil case type when 0 # Weapon bitmap = RPG::Cache.icon("001-Weapon01") when 1 # Shield bitmap = RPG::Cache.icon("009-Shield01") when 2 # Helmet bitmap = RPG::Cache.icon("010-Head01") when 3 # Armor bitmap = RPG::Cache.icon("014-Body02") when 4 # Accessory bitmap = RPG::Cache.icon("016-Accessory01") end self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24), disabled_color.alpha) self.contents.font.color = disabled_color self.contents.draw_text(x + 28, y, width - 28, 32, "Nothing Equipped", align) return end bitmap = RPG::Cache.icon(item.icon_name) self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24)) self.contents.font.color = normal_color self.contents.draw_text(x + 28, y, width - 28, 32, item.name, align) end #-------------------------------------------------------------------------- # * Draw Sprite #-------------------------------------------------------------------------- def draw_sprite(x, y, name, hue, pose, frame, actor_contents = true) bitmap = RPG::Cache.character(name, hue) cw = bitmap.width / 4 ch = bitmap.height / 4 # Facing Direction case pose when 0;a = 0 # Down when 1;a = ch # Left when 2;a = ch * 3 # Up when 3;a = ch * 2 # Right end # Current Animation Slide case frame when 0;b = 0 when 1;b = cw when 2;b = cw * 2 when 3;b = cw * 3 end # Bitmap Rectange src_rect = Rect.new(b, a, cw, ch) # Draws Bitmap if actor_contents @sprite_contents.bitmap.blt(x - cw / 2, y - ch, bitmap, src_rect) else self.contents.blt(x - cw / 2, y - ch, bitmap, src_rect) end end #-------------------------------------------------------------------------- # Draw Bar # Credit Near Fantastica for Orginal Script #-------------------------------------------------------------------------- def draw_bar(x, y, min, max, width = 152, height = 20) self.contents.fill_rect(x, y, width, height, Color.new(255, 255, 255, 100)) bar_color = Color.new(0, 0, 200, 255) for i in 0..(width * min / max) r = bar_color.red * (width - i) / width + 0 * i / width g = bar_color.green * (width - i) / width + 0 * i / width b = bar_color.blue * (width - i) / width + 0 * i / width a = bar_color.alpha * (width - i) / width + 255 * i / width self.contents.fill_rect(x + i, y, 1 , height, Color.new(r, g, b, a)) end end #-------------------------------------------------------------------------- # * Alias Update #-------------------------------------------------------------------------- alias sprite_update update #-------------------------------------------------------------------------- # * Update #-------------------------------------------------------------------------- def update sprite_update unless @sprite_contents == nil @sprite_contents.x = self.x + self.ox + 16 @sprite_contents.y = self.y + self.oy + 16 end end #-------------------------------------------------------------------------- # * Alias Dispose #-------------------------------------------------------------------------- alias sprite_dispose dispose #-------------------------------------------------------------------------- # * Dispose #-------------------------------------------------------------------------- def dispose sprite_dispose unless @sprite_contents == nil @sprite_contents.dispose @sprite_contents.dispose end end end #============================================================================== # ** Window_Selectable #============================================================================== class Window_Selectable < Window_Base #-------------------------------------------------------------------------- # * Public Instance Variables #-------------------------------------------------------------------------- attr_accessor :cursor_height #-------------------------------------------------------------------------- # * Alias Initialization #-------------------------------------------------------------------------- alias custom_int initialize #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- def initialize(x, y, width, height) custom_int(x, y, width, height) @cursor_height = 32 end #-------------------------------------------------------------------------- # * Get Top Row #-------------------------------------------------------------------------- def top_row # Divide y-coordinate of window contents transfer origin by 1 row # height of @cursor_height return self.oy / @cursor_height end #-------------------------------------------------------------------------- # * Set Top Row # row : row shown on top #-------------------------------------------------------------------------- def top_row=(row) # If row is less than 0, change it to 0 if row < 0 row = 0 end # If row exceeds row_max - 1, change it to row_max - 1 if row > row_max - 1 row = row_max - 1 end # Multiply 1 row height by 32 for y-coordinate of window contents # transfer origin self.oy = row * @cursor_height end #-------------------------------------------------------------------------- # * Get Number of Rows Displayable on 1 Page #-------------------------------------------------------------------------- def page_row_max # Subtract a frame height of 32 from the window height, and divide it by # 1 row height of @cursor_height return (self.height - 32) / @cursor_height end #-------------------------------------------------------------------------- # * Update Cursor Rectangle #-------------------------------------------------------------------------- def update_cursor_rect # If cursor position is less than 0 if @index < 0 self.cursor_rect.empty return end # Get current row row = @index / @column_max # If current row is before top row if row < self.top_row # Scroll so that current row becomes top row self.top_row = row end # If current row is more to back than back row if row > self.top_row + (self.page_row_max - 1) # Scroll so that current row becomes back row self.top_row = row - (self.page_row_max - 1) end # Calculate cursor width cursor_width = self.width / @column_max - 32 # Calculate cursor coordinates x = @index % @column_max * (cursor_width + 32) y = @index / @column_max * @cursor_height - self.oy if self.active == true # Update cursor rectangle self.cursor_rect.set(x, y, cursor_width, @cursor_height) end end end #============================================================================== # ** Window_Command #============================================================================== class Window_Command < Window_Selectable #-------------------------------------------------------------------------- # * Unisable Item # index : item number #-------------------------------------------------------------------------- def undisable_item(index) draw_item(index, normal_color) end end #============================================================================== # ** Game_Actor #============================================================================== class Game_Actor < Game_Battler #-------------------------------------------------------------------------- # * Public Instance Variables #-------------------------------------------------------------------------- attr_accessor :class_levels attr_accessor :class_exp attr_accessor :class_skills attr_accessor :sex #-------------------------------------------------------------------------- # * Alias Setup #-------------------------------------------------------------------------- alias class_setup setup #-------------------------------------------------------------------------- # * Setup #-------------------------------------------------------------------------- def setup(actor_id) class_setup(actor_id) @class_levels, @class_exp, @class_skills = [nil], [nil], [nil] for i in 0...$data_classes.size @class_levels.push(1) @class_exp.push(0) @class_skills.push([]) end @sex = $data_actors[actor_id].sex end #-------------------------------------------------------------------------- # * Switch Class #-------------------------------------------------------------------------- def switch_class(class_id) # Updates Class Arrays @class_levels[@class_id ] = @level @class_exp[@class_id] = @exp @class_skills[@class_id] = @skills # Loads New Class ID @class_id = class_id # Loads Class Level & Exp Count @level = @class_levels[class_id] @exp = @class_exp[class_id] @skills = @class_skills[class_id] end #-------------------------------------------------------------------------- # * Update Levels & Exp #-------------------------------------------------------------------------- def update_classes # Updates Class Arrays @class_levels[@class_id ] = @level @class_exp[@class_id] = @exp @class_skills[@class_id] = @skills end end #============================================================================== # ** Class Game_Party #============================================================================== class Game_Party #-------------------------------------------------------------------------- # * Public Instance Variables #-------------------------------------------------------------------------- attr_accessor :reserve_actors #-------------------------------------------------------------------------- # * Alias Initialization #-------------------------------------------------------------------------- alias reserve_initialize initialize #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- def initialize reserve_initialize @reserve_actors = [] end #-------------------------------------------------------------------------- # * Add an Actor # actor_id : actor ID #-------------------------------------------------------------------------- def add_actor(actor_id) # Get actor actor = $game_actors[actor_id] # If the party has less than 4 members and this actor is not in the party if @actors.size < 4 and not @actors.include?(actor) # Add actor @actors.push(actor) # Refresh player $game_player.refresh elsif @actors.size >= 4 and not @actors.include?(actor) and not @reserve_actors.include?(actor) # Add actor @reserve_actors.push(actor) # Refresh player $game_player.refresh end end #-------------------------------------------------------------------------- # * Move To Reserve # actor_id : actor ID #-------------------------------------------------------------------------- def move_to_reserve(actor_id) # Get actor actor = $game_actors[actor_id] if @actors.include?(actor) @actors.delete(actor) @reserve_actors.push(actor) end # Refresh player $game_player.refresh end #-------------------------------------------------------------------------- # * Move To Party # actor_id : actor ID #-------------------------------------------------------------------------- def move_to_party(actor_id) # Get actor actor = $game_actors[actor_id] if @reserve_actors.include?(actor) @reserve_actors.delete(actor) @actors.push(actor) end # Refresh player $game_player.refresh end end #============================================================================== # ** Window_Member_Sprites #============================================================================== class Window_Member_Sprites < Window_Base #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- def initialize(x = 0, y = 384, width = 160) super(x, y, width, 96) self.z = 500 # Creates Contents self.contents = Bitmap.new(width - 32, height - 32) @sprite_contents = Sprite.new @sprite_contents.bitmap = Bitmap.new(width - 32, height - 32) @sprite_contents.z = 505 self.contents.font.size = 10 # Animation Varaibles @pose, @frame = 0, 0 # Updates Window update end #-------------------------------------------------------------------------- # * Refresh # actors : $game_party.actors or $game_party.reserve_actors #-------------------------------------------------------------------------- def refresh(actors) # Clears Contents contents.clear @sprite_contents.bitmap.clear # Stores Actors @actors = actors.dup # Adds Blank Actors max = @actors == $game_party.actors ? 3 : 14 @actors.push(nil) until @actors.size > max # Draw Sprites draw_sprites # Draws Info draw_info end #-------------------------------------------------------------------------- # Draw Sprites #-------------------------------------------------------------------------- def draw_sprites @sprite_contents.bitmap.clear for i in 0...@actors.size actor = @actors[i] if actor == nil draw_sprite(i * 32 + 16, 64, "Empty", 0, @pose, @frame) else draw_sprite(i * 32 + 16, 64, actor.character_name, actor.character_hue , @pose, @frame) end end end #-------------------------------------------------------------------------- # Draw Information #-------------------------------------------------------------------------- def draw_info contents.clear for i in 0...@actors.size actor = @actors[i] if actor == nil contents.font.color = disabled_color contents.draw_text(i * 32, 0, 32, 12, "Empty", 1) else contents.font.color = normal_color contents.draw_text(i * 32, 0, 32, 12, actor.name, 1) end end end #-------------------------------------------------------------------------- # Frame Update #-------------------------------------------------------------------------- def frame_update @frame == 3 ? @frame = 0 : @frame += 1 draw_sprites end #-------------------------------------------------------------------------- # * Update Cursor Rectangle #-------------------------------------------------------------------------- def update_cursor_rect(index) self.cursor_rect.set(index * 32, 0, 32, 64) end #-------------------------------------------------------------------------- # Update Pose # direction : 0 - Left 1 - Right #-------------------------------------------------------------------------- def update_pose(direction) if direction == 0 @pose == 0 ? @pose = 3 : @pose -= 1 else @pose == 3 ? @pose = 0 : @pose += 1 end draw_sprites end end #============================================================================== # ** Window_Party_Changing #============================================================================== class Window_Party_Changing < Window_Selectable #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- def initialize super(0, 0, 640, 288) # Sets Cursor Height self.cursor_height = 64 # Sets Index self.index = 0 # Animated Sprite Counters @pose, @frame = 0, 0 # Sets Up Window Contents self.contents = Bitmap.new(width - 32, height - 32) # Sprite Contents @sprite_contents = Sprite.new @sprite_contents.bitmap = Bitmap.new(width - 32, height - 32) @sprite_contents.z = 500 # Updates Window update end #-------------------------------------------------------------------------- # * Refresh # actors : $game_party.actors or $game_party.reserve_actors #-------------------------------------------------------------------------- def refresh(actors) # Clears Contents contents.clear @sprite_contents.bitmap.clear # Duplicates Actors @actors = actors.dup # Checks Actors List max = @actors == $game_party.actors ? 3 : 0 @actors.push(nil) until @actors.size > max # Sets Up Item Max @item_max = @actors.size # Draw Sprites draw_sprites # Draws Info draw_info end #-------------------------------------------------------------------------- # Draws Sprites #-------------------------------------------------------------------------- def draw_sprites @sprite_contents.bitmap.clear # Draws actors for i in 0...@actors.size actor = @actors[i] y = i * 64 + 8 if actor == nil draw_sprite(20, y + 48, "Empty", 0, @pose, @frame) else draw_sprite(20, y + 48, actor.character_name, actor.character_hue , @pose, @frame) end end end #-------------------------------------------------------------------------- # Draws Information #-------------------------------------------------------------------------- def draw_info contents.clear # Draws actors for i in 0...@actors.size actor = @actors[i] y = i * 64 + 8 if actor == nil contents.font.size = 40 contents.font.color = disabled_color contents.draw_text(60, y - 8, contents.width, 64, "Empty Position") else contents.font.size = 22 # Draws Name contents.font.color = normal_color contents.draw_text(60, y, 90, 24, actor.name) # Draws Class contents.draw_text(60, y + 24, 90, 24, $data_classes[actor.class_id].name) # Draws Level contents.font.color = system_color contents.draw_text(160, y, 100, 24, "Level") contents.font.color = normal_color contents.draw_text(160, y, 100, 24, actor.level.to_s, 2) # Draws State state = make_battler_state_text(actor, 112, true) contents.font.color = actor.hp == 0 ? knockout_color : normal_color contents.draw_text(160, y + 24, 100, 24, state) # Draws Experience contents.font.color = system_color contents.draw_text(274, y, 160, 24, "Exp") contents.font.color = normal_color contents.draw_text(274, y, 160, 24, actor.exp.to_s, 2) # Draws Next Level Bar draw_bar(270, y + 26, actor.exp, actor.next_exp_s.to_i, 168) # Draws Next Level contents.font.color = system_color contents.draw_text(274, y + 24, 160, 24, "Next Level") contents.font.color = normal_color contents.draw_text(274, y + 24, 160, 24, actor.next_rest_exp_s.to_s, 2) # Draw HP Bar draw_bar(446, y + 2, actor.hp, actor.maxhp) # Draw MP Bar draw_bar(446, y + 26, actor.sp, actor.maxsp) # Draws HP contents.font.size = 22 contents.font.color = system_color contents.draw_text(452, y, 160, 24, $data_system.words.hp) contents.font.size = 16 contents.font.color = actor.hp == 0 ? knockout_color : normal_color contents.draw_text(452, y, 140, 24, "#{actor.hp} / #{actor.maxhp}", 2) # Draws SP contents.font.size = 22 contents.font.color = system_color contents.draw_text(452, y + 24, 160, 24, $data_system.words.sp) contents.font.size = 16 contents.font.color = actor.sp == 0 ? knockout_color : normal_color contents.draw_text(452, y + 24, 140, 24, "#{actor.sp} / #{actor.maxsp}", 2) end end end #-------------------------------------------------------------------------- # * Frame Update #-------------------------------------------------------------------------- def frame_update @frame == 3 ? @frame = 0 : @frame += 1 draw_sprites end #-------------------------------------------------------------------------- # * Update Pose # direction : 0 - Left 1 - Right #-------------------------------------------------------------------------- def update_pose(direction) if direction == 0 @pose == 0 ? @pose = 3 : @pose -= 1 else @pose == 3 ? @pose = 0 : @pose += 1 end draw_sprites end end #============================================================================== # ** Window Class Changing #============================================================================== class Window_Class_Changing < Window_Selectable #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- def initialize super(0, 64, 160, 320) # Sets Cursor Height self.cursor_height = 72 # Sets Index self.index = 0 # Animated Sprite Counters @pose, @frame = 0, 0 # Window Contents self.contents = Bitmap.new(width - 32, height - 32) # Refreshes Window Contents refresh end #-------------------------------------------------------------------------- # * Refresh #-------------------------------------------------------------------------- def refresh # Clears Contents contents.clear # Duplicates Actors @actors = $game_party.actors.dup # Checks Actors List @actors.push(nil) until @actors.size > 3 # Sets Up Item Max @item_max = @actors.size # Draw Actors Info contents.clear for i in 0...@item_max actor = @actors[i] y = i * 72 # Draws Animated Sprite if actor == nil draw_sprite(20, y + 66, "Empty", 0, @pose, @frame, false) contents.font.color = disabled_color contents.draw_text(32, y + 2, contents.width - 40, 24, "", 2) contents.draw_text(32, y + 24, contents.width - 40, 24, "Empty", 2) contents.draw_text(32, y + 46, contents.width - 40, 24, "", 2) else draw_sprite(20, y + 66, actor.character_name, actor.character_hue , @pose, @frame, false) contents.font.color = normal_color # Draws Name contents.draw_text(32, y + 2, contents.width - 40, 24, actor.name, 2) # Draws Class contents.draw_text(32, y + 24, contents.width - 40, 24, $data_classes[actor.class_id].name, 2) # Draws Level contents.draw_text(32, y + 46, contents.width - 40, 24, "Level: #{actor.level}", 2) end end end # Frame Update #-------------------------------------------------------------------------- def frame_update @frame == 3 ? @frame = 0 : @frame += 1 refresh end #-------------------------------------------------------------------------- # Update Pose # direction : 0 - Left 1 - Right #-------------------------------------------------------------------------- def update_pose(direction) if direction == 0 @pose == 0 ? @pose = 3 : @pose -= 1 else @pose == 3 ? @pose = 0 : @pose += 1 end refresh end end #============================================================================== # ** Window Character Status #============================================================================== class Window_Character_Status < Window_Base #-------------------------------------------------------------------------- # * Object Initialization # actor : actor #-------------------------------------------------------------------------- def initialize super(160, 64, 480, 416) # Animation Varaibles @pose, @frame = 0, 0 # Window Contents self.contents = Bitmap.new(width - 32, height - 32) # Refreshes Contents refresh($game_party.actors[0]) end #-------------------------------------------------------------------------- # * Refresh #-------------------------------------------------------------------------- def refresh(actor) # Clears Contents contents.clear # Stores Actor @actor = actor if actor == nil draw_sprite(contents.width / 2, contents.height / 2, "Empty", 0, @pose, @frame, false) # Draws Empty Text contents.font.size = 48 contents.font.color = system_color contents.font.color.alpha = disabled_color.alpha contents.draw_text(0, contents.height / 2, contents.width, 48, "Empty Position", 1) else draw_sprite(40, 80, actor.character_name, actor.character_hue , @pose, @frame, false) contents.font.size = 22 contents.font.color = normal_color # Draws Name contents.draw_text(-8, 4, 96, 24, actor.name, 1) # Draws State state = make_battler_state_text(actor, 112, true) contents.font.color = actor.hp == 0 ? knockout_color : normal_color contents.draw_text(96, 8, 96, 24, state, 1) # Draws Class contents.font.color = system_color contents.draw_text(96, 32, 96, 24, actor.class_name, 1) # Draws Level contents.font.color = system_color contents.draw_text(96, 56, 96, 24, "Level :") contents.font.color = normal_color contents.draw_text(96, 56, 96, 24, actor.level.to_s, 2) # Draws Experience contents.font.color = system_color contents.draw_text(224, 8, 224, 24, "Experience :") contents.font.color = normal_color contents.draw_text(216, 8, 224, 24, actor.exp_s, 2) # Next Level Experience contents.font.color = system_color contents.draw_text(224, 32, 224, 24, "Next Level :") contents.font.color = normal_color contents.draw_text(216, 32, 224, 24, actor.next_rest_exp_s, 2) # Draws Next Level Bar draw_bar(224, 58, actor.exp, actor.next_exp_s.to_i, 216) # Draws HP Bar draw_bar(32, 126, actor.hp, actor.maxhp, 228, 24) # Draws HP contents.font.color = system_color contents.draw_text(40, 126, 224, 24, "HP") contents.font.color = normal_color contents.draw_text(32, 126, 224, 24, "#{actor.hp} / #{actor.maxhp}", 2) # Draws SP Bar draw_bar(32, 158, actor.sp, actor.maxsp, 228, 24) # Draws SP contents.font.color = system_color contents.draw_text(40, 158, 224, 24, "SP") contents.font.color = normal_color contents.draw_text(32, 158, 224, 24, "#{actor.sp} / #{actor.maxsp}", 2) # Draws Equiped Items draw_item_name($data_weapons[actor.weapon_id], 36, 190, 224, 2, 0) draw_item_name($data_armors[actor.armor1_id], 36, 222, 224, 2, 1) draw_item_name($data_armors[actor.armor2_id], 36, 254, 224, 2, 2) draw_item_name($data_armors[actor.armor3_id], 36, 286, 224, 2, 3) draw_item_name($data_armors[actor.armor4_id], 36, 318, 224, 2, 4) # Draws Stats stat_names = [$data_system.words.str, $data_system.words.dex, $data_system.words.agi, $data_system.words.int, $data_system.words.atk, $data_system.words.pdef, $data_system.words.mdef, "Evasion"] stats = [actor.str, actor.dex, actor.agi, actor.int, actor.atk, actor.pdef, actor.mdef, actor.eva] for i in 0...stats.size contents.font.color = system_color contents.draw_text(278, 108 + i * 32, 170, 24, stat_names[i]) contents.font.color = normal_color contents.draw_text(270, 108 + i * 32, 170, 24, stats[i].to_s, 2) end end end #-------------------------------------------------------------------------- # Frame Update #-------------------------------------------------------------------------- def frame_update @frame == 3 ? @frame = 0 : @frame += 1 refresh(@actor) end #-------------------------------------------------------------------------- # Update Pose # direction : 0 - Left 1 - Right #-------------------------------------------------------------------------- def update_pose(direction) if direction == 0 @pose == 0 ? @pose = 3 : @pose -= 1 else @pose == 3 ? @pose = 0 : @pose += 1 end refresh(@actor) end end #============================================================================== # ** Window_Class_Status #============================================================================== class Window_Class_Status < Window_Base #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- def initialize super(160, 64, 480, 416) # Creates Contents self.contents = Bitmap.new(width - 32, height - 32) # Animation Varaibles @pose, @frame = 0, 0 # Refreshes Contents refresh($game_party.actors[0], $data_classes[1]) end #-------------------------------------------------------------------------- # * Refresh #-------------------------------------------------------------------------- def refresh(actor, current_class) # Clears Contents contents.clear # Requirements Met (For Return) @requirements_met = true # Stores Variables for Refreshing @actor = actor @current_class = current_class # Draws Actors Info contents.font.size = 22 contents.font.color = normal_color # Draws Name of Actor contents.draw_text(0, 4, contents.width / 3, 24, actor.name, 1) # Draws Actor Sprite draw_sprite(contents.width / 6, 82, actor.character_name, actor.character_hue , @pose, @frame, false) # Current Class contents.font.color = system_color contents.draw_text(contents.width / 3 + 4, 4, contents.width / 3, 24, actor.class_name, 1) # Current Level contents.draw_text(contents.width / 3 + 4, 30, contents.width / 3, 24, "Level :") contents.font.color = normal_color contents.draw_text(contents.width / 3 - 4, 30, contents.width / 3, 24, actor.level.to_s, 2) # Current Experience contents.font.color = system_color contents.draw_text(contents.width / 3 + 4, 56, contents.width / 3, 24, "Experience :") contents.font.color = normal_color contents.draw_text(contents.width / 3 - 4, 56, contents.width / 3, 24, actor.exp_s, 2) # Checks to Make Sure Current Class isn't Nil if current_class == nil contents.font.size = 32 contents.font.color = system_color contents.draw_text(0, contents.width / 2 - 18, contents.width, 36, "Return to Actors", 1) else contents.font.size = 22 contents.font.color = normal_color # Next Class contents.font.color = system_color contents.draw_text(contents.width / 3 * 2 + 4 , 4, contents.width / 3, 26, current_class.name, 1) # Next Level contents.draw_text(contents.width / 3 * 2 + 4, 30, contents.width / 3, 26, "Level :") contents.font.color = normal_color contents.draw_text(contents.width / 3 * 2 - 4, 30, contents.width / 3, 26, actor.class_levels[current_class.id].to_s, 2) # Next Experience contents.font.color = system_color contents.draw_text(contents.width / 3 * 2 + 4, 56, contents.width / 3, 26, "Experience :") contents.font.color = normal_color contents.draw_text(contents.width / 3 * 2 - 4, 56, contents.width / 3, 26, actor.class_exp[current_class.id].to_s, 2) pos = current_class.position == 0 ? "Front Row" : current_class.position == 1 ? "Middle Row" : "Back Row" contents.draw_text(0, 96, contents.width, 24, "#{current_class.name}: #{pos}", 1) contents.font.color = system_color # Draws Class Requirements contents.draw_text(0, 120, contents.width, 24, "Requirements", 1) contents.draw_text(4, 144, contents.width, 24, "Sex Requirement:") # Sex Requirements contents.font.color = normal_color sex_req = current_class.sex_requirements if sex_req == 0 or sex_req == actor.sex contents.font.color = normal_color else contents.font.color = disabled_color end contents.draw_text(32, 168, contents.width, 24, sex_req == 0 ? "None" : sex_req == 1 ? "Male" : "Female") contents.draw_text(- 8, 168, contents.width, 24, actor.sex == 1 ? "Male" : "Female", 2) # Checks if Requirements met @requirements_met = false unless sex_req == 0 or sex_req == actor.sex # Class Level Requirements contents.font.color = system_color contents.draw_text(4, 192, contents.width, 24, "Class Requirement:") contents.draw_text(32, 216, contents.width, 24, "Class") contents.draw_text(160, 216, contents.width, 24, "Req. Level") contents.draw_text(-8, 216, contents.width, 24, "Current Level", 2) contents.font.color = normal_color # Class Requirement Arrays classes, level_reqs, levels = [], [], [] current_class.level_requirements.each_key { |key| classes.push($data_classes[key].name) level_reqs.push(current_class.level_requirements[key]) levels.push(actor.class_levels[$data_classes[key].id]) } for i in 0...classes.size if levels[i] >= level_reqs[i] contents.font.color = normal_color else contents.font.color = disabled_color @requirements_met = false end contents.draw_text(32, 240 + i * 24, contents.width, 24, classes[i]) contents.draw_text(160, 240 + i * 24, contents.width, 24, level_reqs[i].to_s) contents.draw_text(-8, 240 + i * 24, contents.width, 24, levels[i].to_s, 2) end end end #-------------------------------------------------------------------------- # Frame Update #-------------------------------------------------------------------------- def frame_update @frame == 3 ? @frame = 0 : @frame += 1 refresh(@actor, @current_class) end #-------------------------------------------------------------------------- # Check Requirements #-------------------------------------------------------------------------- def check return @requirements_met end end #============================================================================== # ** Scene Party Changer #============================================================================== class Scene_Party_Changer #-------------------------------------------------------------------------- # * Main Processing #-------------------------------------------------------------------------- def main # Current Phase @phase = 0 # Frame Update (For Sprite Animations) @update_frame = 0 # Help Window @help_window = Window_Help.new @help_window.set_text("Select Member To Transfer to Reserves", 1) @help_window.z = 9999 # Active Party Window @active_actors_window = Window_Party_Changing.new @active_actors_window.refresh($game_party.actors) @active_actors_window.y = 64 # Reserve Party Window @reserver_actors_window = Window_Party_Changing.new @reserver_actors_window.refresh($game_party.reserve_actors) @reserver_actors_window.y = 352 @reserver_actors_window.active = false # Active Party Sprites @active_actors_sprites = Window_Member_Sprites.new @active_actors_sprites.refresh($game_party.actors) @active_actors_sprites.update_cursor_rect(0) # Reserve Party Sprites @reserve_actors_sprites = Window_Member_Sprites.new(160, 384, 480) @reserve_actors_sprites.refresh($game_party.reserve_actors) @reserve_actors_sprites.update_cursor_rect(0) # Scene Objects @objects = [@help_window, @active_actors_window, @reserver_actors_window, @active_actors_sprites, @reserve_actors_sprites] Graphics.transition # Main loop while $scene == self # Update game screen Graphics.update # Update input information Input.update # Objects Update @objects.each {|x| x.update} # Animated Sprites Update @update_frame += 1 if @update_frame == 10 @update_frame = 0 @objects.each {|x| x.frame_update unless x == @help_window} end # Updates Poses if Input.trigger?(Input::RIGHT) $game_system.se_play($data_system.cursor_se) @objects.each {|x| x.update_pose(0) unless x == @help_window} elsif Input.trigger?(Input::LEFT) $game_system.se_play($data_system.cursor_se) @objects.each {|x| x.update_pose(1) unless x == @help_window} end # Frame update @phase == 0 ? active_update : reserve_update end # Prepare for transition Graphics.freeze # Disposes Objects @objects.each {|x| x.dispose} end #-------------------------------------------------------------------------- # * Update #-------------------------------------------------------------------------- def active_update # Slides Windows @active_actors_window.y += 8 if @active_actors_window.y < 64 @reserver_actors_window.y += 8 if @reserver_actors_window.y < 352 # Updates Cursor Rectangles if Input.trigger?(Input::UP) or Input.trigger?(Input::DOWN) @active_actors_sprites.update_cursor_rect(@active_actors_window.index) # Exits Scene elsif Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) $scene = Scene_Map.new # Selects Party Spot to Switch Spot With elsif Input.trigger?(Input::C) actor = $game_party.actors[@active_actors_window.index] if $game_party.reserve_actors.size == 0 $game_system.se_play($data_system.buzzer_se) @help_window.set_text("No Reserve Actors to Switch With", 1) else $game_system.se_play($data_system.decision_se) @active_actors_window.active = false @reserver_actors_window.active = true text = actor == nil ? "Select Member to Add to Party" : "Select Member to Switch Spots with #{actor.name}" @help_window.set_text(text, 1) @phase = 1 end end end #-------------------------------------------------------------------------- # * Update #-------------------------------------------------------------------------- def reserve_update # Slides Windows @active_actors_window.y -= 8 if @active_actors_window.y > -192 @reserver_actors_window.y -= 8 if @reserver_actors_window.y > 96 # Updates Cursor Rectangles if Input.trigger?(Input::UP) or Input.trigger?(Input::DOWN) @reserve_actors_sprites.update_cursor_rect(@reserver_actors_window.index) # Returns to Main Phase elsif Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) @help_window.set_text("Select Member To Transfer to Reserves", 1) @active_actors_window.active = true @reserver_actors_window.active = false @phase = 0 end if Input.trigger?(Input::C) $game_system.se_play($data_system.decision_se) active_member = $game_party.actors[@active_actors_window.index] reserve_member = $game_party.reserve_actors[@reserver_actors_window.index] $game_party.move_to_reserve(active_member.id) unless active_member == nil $game_party.move_to_party(reserve_member.id) [@active_actors_window, @active_actors_sprites].each {|x| x.refresh($game_party.actors)} [@reserver_actors_window, @reserve_actors_sprites].each {|x| x.refresh($game_party.reserve_actors)} @active_actors_window.active = true @reserver_actors_window.active = false @phase = 0 end end end #============================================================================== # ** Scene Class Changer #============================================================================== class Scene_Class_Changer #-------------------------------------------------------------------------- # * Main Processing #-------------------------------------------------------------------------- def main # Updates Actors Class Arrays for actor in $game_party.actors actor.update_classes end # Frame Update (For Sprite Animations) @update_frame = 0 # Help Window @help_window = Window_Help.new @help_window.set_text("Select Actor to Change Class", 1) # Actors Window @actors_window = Window_Class_Changing.new # Class Window commands = ["Back"] for job in $data_classes commands.push(job.name) unless job == nil end @class_window = Window_Command.new(160, commands) @class_window.y = 64 @class_window.height = 320 @class_window.active = @class_window.visible = false # Sprites Window @sprites_window = Window_Member_Sprites.new @sprites_window.refresh($game_party.actors) @sprites_window.frame_update @sprites_window.update_cursor_rect(0) # Character Window @character_status_window = Window_Character_Status.new # Class Window @class_status_window = Window_Class_Status.new @class_status_window.visible = false # Scene Objects @objects = [@help_window, @actors_window, @class_window, @sprites_window, @character_status_window, @class_status_window] Graphics.transition # Main loop while $scene == self # Update game screen Graphics.update # Update input information Input.update # Objects Update @objects.each {|x| x.update} # Animated Sprites Update @update_frame += 1 if @update_frame == 5 @update_frame = 0 [@actors_window, @sprites_window, @character_status_window, @class_status_window].each {|x| x.frame_update unless x.visible == false} end # Frame update update end # Prepare for transition Graphics.freeze # Disposes Objects @objects.each {|x| x.dispose} end end #-------------------------------------------------------------------------- # * Up
  16. thanks, ill be updating the first post with a tutorial on how to render in photoshop soon.
  17. hey marked, what happened to the forum a few days ago, it said that the account had been suspended :(. Thank God that it is back up.
  18. it is quite easy to do, you could probably find a tutorial on the net. I got a name for that manga man, Kazuki Miyamoto.
  19. isaacsol

    CMS Request

    i really need this CMS, it plays a core part of my game
  20. rmxp.net has now become http://www.rmxp.org
  21. excellent Zeriab, you have earned the title of Event Switch Master, ill add to your name in the class register.
  22. i have started rendering the princess zelda one, not as great as the man but hey :)
  23. This is the current Timetable Fixtures for Level One Classes. Class 1 - Event Command Descriptions Class 2 - Switches Class 3 - Variables Class 4 - Conditional Branches Class 5 - NPC's Class 6 - Changing Aspects TEST ANNOUNCEMENT 1 Week revision for the Test Level 1 Test
  24. PLEASE NOTE that any application received a week or later before the Exam will not be accepted, you will have to wait until the exam has finished before applying. -isaacsol-
×
×
  • Create New...