RMRK RPG Maker Creation => XP => XP Scripts Database => Topic started by: Rune on February 23, 2008, 03:01:02 PM
Title: A brand new, shiny CMS [Update: Edit logo in-game]
Post by: Rune on February 23, 2008, 03:01:02 PM
I'm back, with a new CMS too. Again, only simple, take a look at the features:
Location window. Display name of your game at the top. Inlcude a logo for your game (No more than 220 x 288 pixels). I have used FFXII as an example. Unlimited commands, any number over 6 will make the command window scrolling.
class Window_Steps def initialize super(0, 0, 410, 96) self.contents = Bitmap.new(width - 32, height - 32) refresh end def refresh contents.clear contents.font.color = system_color contents.draw_text(0, 0, 378, 32, 'Location', 1) contents.font.color = normal_color name = $data_mapinfos[$game_map.map_id].name contents.draw_text(0, 32, 378, 32, name, 1) end end
class Window_GName < Window_Base def initialize super(0, 0, 250, 64) self.contents = Bitmap.new(width - 32, height - 32) refresh end def refresh self.contents.clear self.contents.font.color = system_color self.contents.draw_text(0, 0, 218, 32, "Insert Game Name Here", 1) end end
class Window_GLogo < Window_Base def initialize super(0, 0, 250, 320) self.contents = Bitmap.new(width - 32, height - 32) refresh end def refresh self.contents.clear self.contents.blt(0, 0, $LOGO, Rect.new(0, 0, 220, 288)) end end
class Window_MenuStatus < Window_Selectable def initialize super(0, 0, 230, 480) self.contents = Bitmap.new(width - 32, height - 32) refresh self.active = false self.index = -1 end def refresh self.contents.clear @item_max = $game_party.actors.size for i in 0...$game_party.actors.size x = 64 y = i * 116 actor = $game_party.actors[i] draw_actor_graphic(actor, x - 40, y + 75) draw_actor_name(actor, x - 60, y - 5) draw_actor_class(actor, x - 20, y + 19) draw_actor_level(actor, x + 30, y - 5) draw_actor_state(actor, x + 54, y + 19) draw_actor_hp(actor, x - 16, y + 43) draw_actor_sp(actor, x - 16, y + 67) end end def update_cursor_rect if @index < 0 self.cursor_rect.empty else self.cursor_rect.set(0, @index * 116, self.width - 32, 96) end end end
class Scene_Menu def initialize(menu_index = 0) @menu_index = menu_index end def main s1 = "Inventory" s2 = "Techniques" s3 = "Equipment" s4 = "Status" s5 = "Save Game" s6 = "Quit Game" @command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6]) @command_window.index = @menu_index @command_window.x = 480 @command_window.height = 32 * 7 + 1 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 @playtime_window = Window_PlayTime.new @playtime_window.x = 480 @playtime_window.y = 288 @steps_window = Window_Steps.new @steps_window.x = 230 @steps_window.y = 384 @gold_window = Window_Gold.new @gold_window.x = 480 @gold_window.y = 224 @status_window = Window_MenuStatus.new @status_window.x = 0 @status_window.y = 0 @gnam_window = Window_GName.new @gnam_window.x = 230 @gnam_window.y = 0 @glog_window = Window_GLogo.new @glog_window.x = 230 @glog_window.y = 64 Graphics.transition loop do Graphics.update Input.update update if $scene != self break end end Graphics.freeze @command_window.dispose @playtime_window.dispose @steps_window.dispose @gold_window.dispose @status_window.dispose @gnam_window.dispose @glog_window.dispose end def update @command_window.update @playtime_window.update @steps_window.update @gold_window.update @status_window.update @gnam_window.update @glog_window.update if @command_window.active update_command return end if @status_window.active update_status return end end def update_command if Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) $scene = Scene_Map.new return end if Input.trigger?(Input::C) if $game_party.actors.size == 0 and @command_window.index < 4 $game_system.se_play($data_system.buzzer_se) return end case @command_window.index when 0 $game_system.se_play($data_system.decision_se) $scene = Scene_Item.new when 1 $game_system.se_play($data_system.decision_se) @command_window.active = false @status_window.active = true @status_window.index = 0 when 2 $game_system.se_play($data_system.decision_se) @command_window.active = false @status_window.active = true @status_window.index = 0 when 3 $game_system.se_play($data_system.decision_se) @command_window.active = false @status_window.active = true @status_window.index = 0 when 4 if $game_system.save_disabled $game_system.se_play($data_system.buzzer_se) return end $game_system.se_play($data_system.decision_se) $scene = Scene_Save.new when 5 $game_system.se_play($data_system.decision_se) $scene = Scene_End.new end return end end def update_status if Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) @command_window.active = true @status_window.active = false @status_window.index = -1 return end if Input.trigger?(Input::C) case @command_window.index when 1 if $game_party.actors[@status_window.index].restriction >= 2 $game_system.se_play($data_system.buzzer_se) return end $game_system.se_play($data_system.decision_se) $scene = Scene_Skill.new(@status_window.index) when 2 $game_system.se_play($data_system.decision_se) $scene = Scene_Equip.new(@status_window.index) when 3 $game_system.se_play($data_system.decision_se) $scene = Scene_Status.new(@status_window.index) end return end end end
Your logo must be no bigger than 220 x 288 pixels, and must go inside your 'pictures' folder. When inserting it, look for the first line of actual code in the script:
Change "Logo" to whatever your logo is called. Case sensitive. DO NOT REMOVE THE QUOTATION MARKS. To change the logo in-game, simply use a call script command:
class Window_Base def draw_actor_graphic(actor, x, y) bitmap = RPG::Cache.picture(actor.name + "_face") cw = bitmap.width ch = bitmap.height src_rect = Rect.new(0, 0, cw, ch) self.contents.blt(x - cw / 2, y - ch, bitmap, src_rect) end end
Insert that scriptlet above main, or in the menu script, at the top. The images should be around 96x96 pixels, should go in your project's Pictures folder, and should include the character's name, followed by "_face". E.g, "Aluxes_face"
Title: Re: A brand new, shiny CMS
Post by: emidy on March 06, 2008, 04:03:00 AM
Great. Thanks!
Title: Re: A brand new, shiny CMS
Post by: vath on March 07, 2008, 10:13:18 AM
Eh, Rune. What about my request a while ago? :'( *maybe i can use this. But can u remove "Save Game" selection from the menu screen? ;)
Title: Re: A brand new, shiny CMS
Post by: Rune on March 07, 2008, 04:40:25 PM
I sent that to you :-\
Decide which one you want, and i'll send again ;)
Title: Re: A brand new, shiny CMS
Post by: vath on March 09, 2008, 04:12:58 AM
Title: Re: A brand new, shiny CMS
Post by: Rune on March 11, 2008, 05:36:01 PM
You're welcome ;)
Title: Re: A brand new, shiny CMS
Post by: Klarth F. Lester on March 18, 2008, 07:23:18 AM
Sorry to bother you Rune-san but ummm... it doesn't work on mine.
I've put the pic iwanted for the logo following the pixel requirements and well I put it in my picture folder. and I wrote the name in the script all it says is "unable to find file Graphics/Pictures/Logo."
if you get some time.. can you help me out?
Thanks in advance ^^
EDIT: Nevermind sorry I got it now now Imma try to put faces instead of the ugly sprites...
Edit#2: Help same problem I did everything but it sez "Cannot find file Graphics/Pictures/AluxesAluxes_face, lol sorry I bother so much xD xD
Title: Re: A brand new, shiny CMS
Post by: Rune on March 18, 2008, 10:21:23 PM
I don't think that's anything to do with the script :-\ Just make sure the files are named right. Did you mean to put 2 'Aluxes'? If that's what the error says then, check the name of that character to see if he hasn't got a duplicate name.
Other than that, I can't see what could be causing that :-\ Sorry...
Title: Re: A brand new, shiny CMS
Post by: Klarth F. Lester on March 19, 2008, 05:46:05 AM
I've tried everything... nothing works...
my image is 96x96 pixels, its in my projects picture folder. the actor name is Cless; I named the file Cless_face.bmp which is what you explained Rune-san. I put the scriptlet inside the CMS on the top. and I put "Cless_face" just like you said... still says "Unable to find file Graphics/Pictures/ClessCless_face."
yes it says it twice... so does that mean i need to name my Actor "Cless_face"?
lol I dunno but it would be kinda weird eh?, umm if there is any way you can help me I would greatly appreciate it Rune-san ^^
Title: Re: A brand new, shiny CMS
Post by: Rune on March 19, 2008, 11:39:40 AM
class Window_Steps def initialize super(0, 0, 410, 96) self.contents = Bitmap.new(width - 32, height - 32) refresh end def refresh contents.clear contents.font.color = system_color contents.draw_text(0, 0, 378, 32, 'Location', 1) contents.font.color = normal_color name = $data_mapinfos[$game_map.map_id].name contents.draw_text(0, 32, 378, 32, name, 1) end end
class Window_GName < Window_Base def initialize super(0, 0, 250, 64) self.contents = Bitmap.new(width - 32, height - 32) refresh end def refresh self.contents.clear self.contents.font.color = system_color self.contents.draw_text(0, 0, 218, 32, "Nagi", 1) end end
class Window_GLogo < Window_Base def initialize super(0, 0, 250, 320) self.contents = Bitmap.new(width - 32, height - 32) refresh end def refresh self.contents.clear bitmap = RPG::Cache.picture("Nagi") self.contents.blt(0, 0, bitmap, Rect.new(0, 0, 220, 288)) end end
class Window_MenuStatus < Window_Selectable def initialize super(0, 0, 230, 480) self.contents = Bitmap.new(width - 32, height - 32) refresh self.active = false self.index = -1 end def refresh self.contents.clear @item_max = $game_party.actors.size for i in 0...$game_party.actors.size x = 64 y = i * 116 actor = $game_party.actors[i] draw_actor_graphic(actor, x - 40, y + 75) draw_actor_name(actor, x - 60, y - 5) draw_actor_class(actor, x - 20, y + 19) draw_actor_level(actor, x + 30, y - 5) draw_actor_state(actor, x + 54, y + 19) draw_actor_hp(actor, x - 16, y + 43) draw_actor_sp(actor, x - 16, y + 67) end end def update_cursor_rect if @index < 0 self.cursor_rect.empty else self.cursor_rect.set(0, @index * 116, self.width - 32, 96) end end end
class Scene_Menu def initialize(menu_index = 0) @menu_index = menu_index end def main s1 = "Items" s2 = "Skills" s3 = "Equipment" s4 = "Status" s5 = "Save Game" s6 = "Quit Game" @command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6]) @command_window.index = @menu_index @command_window.x = 480 @command_window.height = 32 * 7 + 1 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 @playtime_window = Window_PlayTime.new @playtime_window.x = 480 @playtime_window.y = 288 @steps_window = Window_Steps.new @steps_window.x = 230 @steps_window.y = 384 @gold_window = Window_Gold.new @gold_window.x = 480 @gold_window.y = 224 @status_window = Window_MenuStatus.new @status_window.x = 0 @status_window.y = 0 @gnam_window = Window_GName.new @gnam_window.x = 230 @gnam_window.y = 0 @glog_window = Window_GLogo.new @glog_window.x = 230 @glog_window.y = 64 Graphics.transition loop do Graphics.update Input.update update if $scene != self break end end Graphics.freeze @command_window.dispose @playtime_window.dispose @steps_window.dispose @gold_window.dispose @status_window.dispose @gnam_window.dispose @glog_window.dispose end def update @command_window.update @playtime_window.update @steps_window.update @gold_window.update @status_window.update @gnam_window.update @glog_window.update if @command_window.active update_command return end if @status_window.active update_status return end end def update_command if Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) $scene = Scene_Map.new return end if Input.trigger?(Input::C) if $game_party.actors.size == 0 and @command_window.index < 4 $game_system.se_play($data_system.buzzer_se) return end case @command_window.index when 0 $game_system.se_play($data_system.decision_se) $scene = Scene_Item.new when 1 $game_system.se_play($data_system.decision_se) @command_window.active = false @status_window.active = true @status_window.index = 0 when 2 $game_system.se_play($data_system.decision_se) @command_window.active = false @status_window.active = true @status_window.index = 0 when 3 $game_system.se_play($data_system.decision_se) @command_window.active = false @status_window.active = true @status_window.index = 0 when 4 if $game_system.save_disabled $game_system.se_play($data_system.buzzer_se) return end $game_system.se_play($data_system.decision_se) $scene = Scene_Save.new when 5 $game_system.se_play($data_system.decision_se) $scene = Scene_End.new end return end end def update_status if Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) @command_window.active = true @status_window.active = false @status_window.index = -1 return end if Input.trigger?(Input::C) case @command_window.index when 1 if $game_party.actors[@status_window.index].restriction >= 2 $game_system.se_play($data_system.buzzer_se) return end $game_system.se_play($data_system.decision_se) $scene = Scene_Skill.new(@status_window.index) when 2 $game_system.se_play($data_system.decision_se) $scene = Scene_Equip.new(@status_window.index) when 3 $game_system.se_play($data_system.decision_se) $scene = Scene_Status.new(@status_window.index) end return end end end
that's the jig of it... the file name is Aluxes_face.bmp and is on my picture folder. I have tried several other methods and same thing happens...
sorry for being a pain in the ass... ><;; , lol I feel embarrased that many that used this script didn't have any problems.. and I'm the only idiot that does... xD
Title: Re: A brand new, shiny CMS
Post by: modern algebra on March 20, 2008, 02:24:50 AM
Title: Re: A brand new, shiny CMS
Post by: Klarth F. Lester on March 20, 2008, 03:04:36 AM
YAY~!!
Thanks Rune-san... you shall be golrified ny me for many decades to come and even my concubines xDD
thank you~!!! /ok
Title: Re: A brand new, shiny CMS
Post by: A13x on March 20, 2008, 10:14:56 AM
Perfect. not overdone, or oversimple. ill use it!
Title: Re: A brand new, shiny CMS
Post by: Rune on March 20, 2008, 11:32:11 PM
Thanks for the replies, and i'm glad your problem's sorted Klarth :D
Title: Re: A brand new, shiny CMS
Post by: Sx2 on March 23, 2008, 09:49:05 AM
I have 2 issues installing the script (imma noob) 1. Do I delete the current "window_steps" "window_menustatus" and "scene_menu" 2. I always get an error about the line "super(0, 0, 410, 96)"
Please help
Title: Re: A brand new, shiny CMS
Post by: Rune on March 23, 2008, 11:46:40 AM
1. You don't delete the current Window_Steps, but you do delete Window_MenuStatus. You replace the default Scene_Menu with the one I posted in the first post. 2. Did you delete the current Window_Steps already?
Title: Re: A brand new, shiny CMS
Post by: Sx2 on March 24, 2008, 07:11:33 AM
1. okay I wasn't sure.
2. yeah but I always make a back-up file so its fine
Thanks Rune for taking time to help a noobie.
Title: Re: A brand new, shiny CMS
Post by: Rune on March 24, 2008, 12:19:16 PM
No prob. 's what I do. ;)
Title: Re: A brand new, shiny CMS
Post by: Sx2 on March 25, 2008, 12:07:05 AM
ok I got it working but the characters Hp/Mp don't appear. And the Game Title and Map Name don't appear Help again
Title: Re: A brand new, shiny CMS
Post by: Rune on March 25, 2008, 09:59:28 AM
Does everything else show up? And do they show it with the Monotype Corsiva font? If not, download the font (link in first post) and put it in your computer's 'Fonts' folder.
Title: Re: A brand new, shiny CMS
Post by: Demonic Blade on March 25, 2008, 01:55:44 PM
This is real nice and cool, and I have a question for it; Would it be possible to change the logo with a call script? Like to show change in chapters or to show that you've done something special like beaten the game...? If not, still friggin' cool ;)
Title: Re: A brand new, shiny CMS
Post by: Revo on March 25, 2008, 06:13:21 PM
Rune, I should give you lots of love for this one. I was worried this wouldn't have support for more than 4 characters, but it does. I finally have a decent CMS that can support all 8 of my characters. :tpg:
[offtopic]Your avatar is awesome[/offtopic]
Title: Re: A brand new, shiny CMS
Post by: Rune on March 25, 2008, 08:10:07 PM
I never actually tried it with more than 4 characters :D Glad you like it ;)
[offtopic]Thanks ;8[/offtopic]
@Demonic Blade You're in luck! I updated the script just now. Look at the first post, and take the script off that ;)
Your logo must be no bigger than 220 x 288 pixels, and must go inside your 'pictures' folder. When inserting it, look for the first line of actual code in the script:
Change "Logo" to whatever your logo is called. Case sensitive. DO NOT REMOVE THE QUOTATION MARKS. To change the logo in-game, simply use a call script command:
If that fails, change $fontface and $fontsize to $defaultfonttype and $defaultfontsize. If that also fails, inform me.
Title: Re: A brand new, shiny CMS [Update: Edit logo in-game]
Post by: Klarth F. Lester on May 23, 2008, 05:20:02 AM
Rune-sempai~!!
I don't know who else to turn to... ><
I have made a post of my problem in the troubleshooting site, but it has been useless... only you can help me...
is about this same CMS I need some help:
http://rmrk.net/index.php/topic,26630.0.html
thats the link to the other post... i would apreciate every bit of your help thanks so much~
Title: Re: A brand new, shiny CMS [Update: Edit logo in-game]
Post by: Blasphemy on June 23, 2008, 03:44:32 PM
Hey, first ; nice guide, the text and logo thing in the menu has given me a few possible ideas to make my game cooler.
But I'm having the same problem as Sx2.
I've attached a screenshot of what happens with me to this message. BTW the blackness isn't an error, I done that myself, but as you can see there is allot of text missing that should be there. I'm only doing this as a bit of practice (as you can see from the game title xD), and then I'll probably have my own menu, but I want to use this one for a while.
return end end def update_status if Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) @command_window.active = true @status_window.active = false @status_window.index = -1 return end if Input.trigger?(Input::C) case @command_window.index when 1 if $game_party.actors[@status_window.index].restriction >= 2 $game_system.se_play($data_system.buzzer_se) return end $game_system.se_play($data_system.decision_se) $scene = Scene_Skill.new(@status_window.index) when 2 $game_system.se_play($data_system.decision_se) $scene = Scene_Equip.new(@status_window.index) when 3 $game_system.se_play($data_system.decision_se) $scene = Scene_Status.new(@status_window.index) end return end end end
Could my problem be something to do with the fact that I deleted Window_(something) earlier on? (it's mentioned in one of your earlier posts that I have to delete it)?
Title: Re: A brand new, shiny CMS [Update: Edit logo in-game]
Post by: Blasphemy on June 23, 2008, 05:22:40 PM
Oh, I've fixed my little problem guys. For those of you who were also experiencing my problem, here's what to do :
Go into the script, and into Scene_Menu. Now go down until you see
Again. There we go. I think the problem was that the game didn't know what font to use.
I done not bad for a total newb at this, huh?
Title: Re: A brand new, shiny CMS [Update: Edit logo in-game]
Post by: Rune on June 23, 2008, 05:43:31 PM
Nice work. I had a strong feeling it was to do with the script not knowing which font to use. Thanks for posting your solution, but remember to use the edit post feature next time. ;)
One more tip, '$defaultfonttype' and '$defaultfontsize' could be replaced with '$fontface' and '$fontsize', or 'Font.default_type' and 'Font.default_size'. ;)
Title: Re: A brand new, shiny CMS [Update: Edit logo in-game]
Post by: Dlarhen on August 04, 2008, 03:25:38 PM
I like it, and I'm going to use it in my game. But is there any way to get the text with the hero's current status out of the menu's first page or into another line? See, my heroes' classes' names are sort of long, and the "[Normal]" or "[Unconscious]" cover it.
Title: Re: A brand new, shiny CMS [Update: Edit logo in-game]
Post by: Rune on August 06, 2008, 12:03:14 AM
class Window_Steps def initialize super(0, 0, 410, 96) self.contents = Bitmap.new(width - 32, height - 32) refresh end def refresh contents.clear contents.font.color = system_color contents.draw_text(0, 0, 378, 32, 'Location', 1) contents.font.color = normal_color name = $data_mapinfos[$game_map.map_id].name contents.draw_text(0, 32, 378, 32, name, 1) end end
class Window_GName < Window_Base def initialize super(0, 0, 250, 64) self.contents = Bitmap.new(width - 32, height - 32) refresh end def refresh self.contents.clear self.contents.font.color = system_color self.contents.draw_text(0, 0, 218, 32, "Insert Game Name Here", 1) end end
class Window_GLogo < Window_Base def initialize super(0, 0, 250, 320) self.contents = Bitmap.new(width - 32, height - 32) refresh end def refresh self.contents.clear self.contents.blt(0, 0, $LOGO, Rect.new(0, 0, 220, 288)) end end
class Window_MenuStatus < Window_Selectable def initialize super(0, 0, 230, 480) self.contents = Bitmap.new(width - 32, height - 32) refresh self.active = false self.index = -1 end def refresh self.contents.clear @item_max = $game_party.actors.size for i in 0...$game_party.actors.size x = 64 y = i * 116 actor = $game_party.actors[i] draw_actor_graphic(actor, x - 40, y + 75) draw_actor_name(actor, x - 60, y - 8) draw_actor_class(actor, x - 20, y + 11) draw_actor_level(actor, x + 30, y - 8) draw_actor_state(actor, x - 20, y + 30) draw_actor_hp(actor, x - 20, y + 51) draw_actor_sp(actor, x - 20, y + 71) end end def update_cursor_rect if @index < 0 self.cursor_rect.empty else self.cursor_rect.set(0, @index * 116, self.width - 32, 96) end end end
class Scene_Menu def initialize(menu_index = 0) @menu_index = menu_index end def main s1 = "Inventory" s2 = "Techniques" s3 = "Equipment" s4 = "Status" s5 = "Save Game" s6 = "Quit Game" @command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6]) @command_window.index = @menu_index @command_window.x = 480 @command_window.height = 32 * 7 + 1 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 @playtime_window = Window_PlayTime.new @playtime_window.x = 480 @playtime_window.y = 288 @steps_window = Window_Steps.new @steps_window.x = 230 @steps_window.y = 384 @gold_window = Window_Gold.new @gold_window.x = 480 @gold_window.y = 224 @status_window = Window_MenuStatus.new @status_window.x = 0 @status_window.y = 0 @gnam_window = Window_GName.new @gnam_window.x = 230 @gnam_window.y = 0 @glog_window = Window_GLogo.new @glog_window.x = 230 @glog_window.y = 64 Graphics.transition loop do Graphics.update Input.update update if $scene != self break end end Graphics.freeze @command_window.dispose @playtime_window.dispose @steps_window.dispose @gold_window.dispose @status_window.dispose @gnam_window.dispose @glog_window.dispose end def update @command_window.update @playtime_window.update @steps_window.update @gold_window.update @status_window.update @gnam_window.update @glog_window.update if @command_window.active update_command return end if @status_window.active update_status return end end def update_command if Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) $scene = Scene_Map.new return end if Input.trigger?(Input::C) if $game_party.actors.size == 0 and @command_window.index < 4 $game_system.se_play($data_system.buzzer_se) return end case @command_window.index when 0 $game_system.se_play($data_system.decision_se) $scene = Scene_Item.new when 1 $game_system.se_play($data_system.decision_se) @command_window.active = false @status_window.active = true @status_window.index = 0 when 2 $game_system.se_play($data_system.decision_se) @command_window.active = false @status_window.active = true @status_window.index = 0 when 3 $game_system.se_play($data_system.decision_se) @command_window.active = false @status_window.active = true @status_window.index = 0 when 4 if $game_system.save_disabled $game_system.se_play($data_system.buzzer_se) return end $game_system.se_play($data_system.decision_se) $scene = Scene_Save.new when 5 $game_system.se_play($data_system.decision_se) $scene = Scene_End.new end return end end def update_status if Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) @command_window.active = true @status_window.active = false @status_window.index = -1 return end if Input.trigger?(Input::C) case @command_window.index when 1 if $game_party.actors[@status_window.index].restriction >= 2 $game_system.se_play($data_system.buzzer_se) return end $game_system.se_play($data_system.decision_se) $scene = Scene_Skill.new(@status_window.index) when 2 $game_system.se_play($data_system.decision_se) $scene = Scene_Equip.new(@status_window.index) when 3 $game_system.se_play($data_system.decision_se) $scene = Scene_Status.new(@status_window.index) end return end end end
There you go, if it still ain't enough, tell me. ;)
Title: Re: A brand new, shiny CMS [Update: Edit logo in-game]
Post by: Dlarhen on August 06, 2008, 05:12:14 AM
You're awesome, Rune. Thanks!
Title: Re: A brand new, shiny CMS [Update: Edit logo in-game]
Post by: calebmoorehead on September 20, 2008, 02:39:51 AM
I'm having trouble scripting...mainly because I just started.. Okay here is what I get when I put the script in (https://rmrk.net/proxy.php?request=http%3A%2F%2Fi196.photobucket.com%2Falbums%2Faa245%2Faster527%2Fscripterror.png&hash=cf524ff2c66b2064c7fb64cb5719aa0ce788af65) I put logo 200X200, cuz I made it and such. Title "Knights of Dranora" Any help?
Oh, I think it might be this added script, but I need it...got a way of making it where both work? It's an additional Scene_Menu for a FFVII menu system that makes you recieve and use items differently.
def main s1 = $data_system.words.item s2 = "Trade" s3 = $data_system.words.skill s4 = $data_system.words.equip s5 = "Status" s6 = "Save" s7 = "Exit" @command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6, s7]) @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) @command_window.disable_item(4) end if $game_system.save_disabled @command_window.disable_item(5) end @playstep_window = Window_PlayTimeStep.new @playstep_window.x = 0 @playstep_window.y = 256 @gold_window = Window_Gold.new @gold_window.x = 0 @gold_window.y = 416 @status_window = Window_MenuStatus.new @status_window.x = 160 @status_window.y = 0 Graphics.transition loop do Graphics.update Input.update update if $scene != self break end end Graphics.freeze @command_window.dispose @playstep_window.dispose @gold_window.dispose @status_window.dispose end
def update @command_window.update @playstep_window.update @gold_window.update @status_window.update if @command_window.active update_command return end if @status_window.active update_status return end end
#-------------------------------------------------------------------------- #-------------------------------------------------------------------------- def update_command if Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) $scene = Scene_Map.new return end if Input.trigger?(Input::C) if $game_party.actors.size == 0 and @command_window.index < 4 $game_system.se_play($data_system.buzzer_se) return end case @command_window.index when 0 $game_system.se_play($data_system.decision_se) unless $game_party.actors.size > 1 $scene = Scene_Item.new(@status_window.index) else @command_window.active = false @status_window.active = true @status_window.index = 0 end when 2 $game_system.se_play($data_system.decision_se) @command_window.active = false @status_window.active = true @status_window.index = 0 when 3 $game_system.se_play($data_system.decision_se) @command_window.active = false @status_window.active = true @status_window.index = 0 when 4 $game_system.se_play($data_system.decision_se) @command_window.active = false @status_window.active = true @status_window.index = 0 when 5 if $game_system.save_disabled $game_system.se_play($data_system.buzzer_se) return end $game_system.se_play($data_system.decision_se) $scene = Scene_Save.new when 6 $game_system.se_play($data_system.decision_se) $scene = Scene_End.new when 1#Code for opening trade menu $game_system.se_play($data_system.decision_se) $scene = Scene_Trade.new(0) end return end end #-------------------------------------------------------------------------- #-------------------------------------------------------------------------- def update_status if Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) @command_window.active = true @status_window.active = false @status_window.index = -1 return end if Input.trigger?(Input::C) case @command_window.index when 0 $game_system.se_play($data_system.decision_se) $scene = Scene_Item.new(@status_window.index) when 2 if $game_party.actors[@status_window.index].restriction >= 2 $game_system.se_play($data_system.buzzer_se) return end $game_system.se_play($data_system.decision_se) $scene = Scene_Skill.new(@status_window.index) when 3 $game_system.se_play($data_system.decision_se) $scene = Scene_Equip.new(@status_window.index) when 4 $game_system.se_play($data_system.decision_se) $scene = Scene_Status.new(@status_window.index) end return end end end
Title: Re: A brand new, shiny CMS [Update: Edit logo in-game]
Post by: Rune on October 03, 2008, 10:06:07 PM
The second script is obviously overwriting mine, I'll look into making them compatible and shizz. Sorry for the late reply, I haven't been able to access the internet for a few weeks. It's late at the moment, so I'll have a closer look at your problem tomorrow ;)