Perhaps you should look around at some Ruby tutorials and how to get / set an object's properties (aka variables). For instance, you were calling this code:
def start super() @background_sprite = Sprite.new() @background_sprite = Cache.picture("background") @background_sprite = 0 @background_sprite = 0 @background_sprite.zoom_x = 544.0 / @background_sprite.bitmap.width @background_sprite.zoom_y = 414.0 / @background_sprite.bitmap.heightendDo you fully understand the code you just wrote, or did you write it by looking / copying from another source? Here are quite a few problems with your code:1) @background_sprite is being set to a new Sprite object, but then is set to a Bitmap object on the next line. The next two lines after that both set @background_sprite to 0. From the context, I'm assuming you were trying to set the sprite's bitmap, x, and y variables, so you need to do as Venka suggessted.
2) The line "@title = Window.help.new(1)" will throw an error; perhaps you meant: "@title = Window_Help.new(1)" ?
3) I would also recommend that you move the code that creates the background into it's own method, and call that method from the start() method.
4) All your if; elsif blocks of code are missing the end off of them, like so:
if some_condition do_stuffelsif this_other_condition do_other_stuffend # this end is required for your script to not errorI think this is why you had to add those ends on at the bottom of your script, right?5) In your rock(), paper(), and scissors() methods, don't use SceneManager.call(Scene_RPS); this is adding tons of instances of Scene_RPS to the SceneManager array of scenes, and when you call return_scene(), it'll just be Scene_RPS again, not Scene_Map.
6) Speaking of return_scene(), why is it in terminate()? I'm not sure you understand how the RPG Maker scene system works, but I would recommend that you remove it from terminate(). and add it to @window_selection, like so:
Code:@window_selection.set_handler(:cancel, method(:return_scene))
I would also merging all of the rock(), paper(), and scissors() commands into one, like so:
Code:@window_selection.set_handler(:ok, method(:choose_rps))def choose_rps case @window_selection.current_symbol when :rock do_rock_stuff when :paper do_paper_stuff when :scissors do_scissors_stuff endend
Does all of that make sense? Ask away if it doesn't
:)