Sha256: 2e44e03f50a92cb5e03fc53a483a5695bdd2205d199dbd37b6c02ae1999d0f65
Contents?: true
Size: 1.15 KB
Versions: 8
Compression:
Stored size: 1.15 KB
Contents
#!/usr/bin/env ruby $: << "#{File.dirname(__FILE__)}/../config" begin # optional file require "environment" rescue LoadError => err end class GameboxApp attr_reader :context, :game def self.run(argv,env) GameboxApp.new.start argv, env end def initialize @context = Conject.default_object_context end def start(argv,env) setup(argv,env) main_loop shutdown end def setup(argv,env) @game = @context[:game] @game.configure self.class.post_setup_handlers.each { |handler| handler.setup(argv, env, @context[:config_manager]) } end def main_loop @input_manager = @context[:input_manager] @input_manager.register @game @input_manager.show end def shutdown ; end def self.register_post_setup_handler(handler) post_setup_handlers.push handler end def self.post_setup_handlers @post_setup_handlers ||= [ ] end end GameboxApp.register_post_setup_handler PostSetupHandlers::FileWatcher GameboxApp.register_post_setup_handler PostSetupHandlers::GameboxAppAddDebugHelpers GameboxApp.register_post_setup_handler PostSetupHandlers::PryRemoteServer if $0 == __FILE__ GameboxApp.run ARGV, ENV end
Version data entries
8 entries across 8 versions & 1 rubygems