# HG changeset patch
# User KarstenBock@gmx.net
# Date 1318252353 -7200
# Node ID 59c4db30fe050ef727e310a977d898751d0d5a48
# Parent 828dcf3d4ee7c7ec2a4fc7c186aca21d9f150b26
Created parpg.py and moved code from parpg\main.py to it.
diff -r 828dcf3d4ee7 -r 59c4db30fe05 src/parpg.py
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/parpg.py Mon Oct 10 15:12:33 2011 +0200
@@ -0,0 +1,39 @@
+#!/usr/bin/env python2
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see .
+
+#TODO: Modularize this script
+import sys
+from optparse import OptionParser
+from os import path
+
+from parpg.main import main
+
+usage = ('usage: %prog [options] settings_path [system_path user_path]\n\n'
+ 'The settings_path argument is mandatory and is the directory in \n'
+ 'which your parpg.cfg file is located. Optionally, you may \n'
+ 'specify where data files are located (system_path), and where \n'
+ 'the user settings and data files should be saved to (user_path)\n\n'
+ 'Example: python %prog .')
+
+parser = OptionParser(description='PARPG Launcher Script', usage=usage)
+parser.add_option('-f', '--logfile',
+ help='Name of log file to save to')
+parser.add_option('-l', '--loglevel', default='critical',
+ help='desired output level for log file')
+opts, args = parser.parse_args()
+
+if not args:
+ parser.print_help()
+ sys.exit(1)
+main(args, opts)
\ No newline at end of file
diff -r 828dcf3d4ee7 -r 59c4db30fe05 src/parpg/main.py
--- a/src/parpg/main.py Mon Oct 10 15:05:15 2011 +0200
+++ b/src/parpg/main.py Mon Oct 10 15:12:33 2011 +0200
@@ -11,81 +11,62 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see .
-
-#TODO: Modularize this script
+import logging
import sys
-import logging
-
-from optparse import OptionParser
+from os.path import abspath
from parpg.settings import Settings
-usage = ('usage: %prog [options] settings_path [system_path user_path]\n\n'
- 'The settings_path argument is mandatory and is the directory in \n'
- 'which your system.cfg file is located. Optionally, you may \n'
- 'specify where data files are located (system_path), and where \n'
- 'the user settings and data files should be saved to (user_path)\n\n'
- 'Example: python %prog .')
-
-parser = OptionParser(description='PARPG Launcher Script', usage=usage)
-parser.add_option('-f', '--logfile',
- help='Name of log file to save to')
-parser.add_option('-l', '--loglevel', default='critical',
- help='desired output level for log file')
-opts, args = parser.parse_args()
-
-if not args:
- parser.print_help()
- sys.exit(1)
-
-
-
-settings = Settings(*args)
-
-levels = {'debug': logging.DEBUG,
- 'info': logging.INFO,
- 'warning': logging.WARNING,
- 'error': logging.ERROR,
- 'critical': logging.CRITICAL}
-
-#TODO: setup formating
-logging.basicConfig(filename=opts.logfile, level=levels[opts.loglevel])
-logger = logging.getLogger('parpg')
-
-try:
- old_path = sys.path
- sys.path = [settings.parpg.FifePath]
- import fife
-except AttributeError:
- logger.warning('[parpg] section has no FifePath option')
-except ImportError:
- logger.critical("Could not import fife module. Please install fife or add "
- "'FifePath' to the [parpg] section of your settings file")
- sys.exit(1)
-finally:
- sys.path = old_path
-
-from parpg.application import PARPGApplication
-from parpg.common import utils
-
-# enable psyco if available and in settings file
-try:
- import psyco
- psyco_available = True
-except ImportError:
- logger.warning('Psyco Acceleration unavailable')
- psyco_available = False
-
-if settings.fife.UsePsyco:
- if psyco_available:
- psyco.full()
- logger.info('Psyco Acceleration enabled')
+
+def main(args, opts):
+ settings = Settings(*args)
+
+ settings.parpg.DataPath = abspath(settings.parpg.DataPath)
+
+ levels = {'debug': logging.DEBUG,
+ 'info': logging.INFO,
+ 'warning': logging.WARNING,
+ 'error': logging.ERROR,
+ 'critical': logging.CRITICAL}
+
+ #TODO: setup formating
+ logging.basicConfig(filename=opts.logfile, level=levels[opts.loglevel])
+ logger = logging.getLogger('parpg')
+
+ try:
+ old_path = sys.path
+ sys.path = [settings.parpg.FifePath]
+ import fife
+ except AttributeError:
+ logger.warning('[parpg] section has no FifePath option')
+ except ImportError:
+ logger.critical("Could not import fife module. Please install fife or add "
+ "'FifePath' to the [parpg] section of your settings file")
+ sys.exit(1)
+ finally:
+ sys.path = old_path
+
+ from parpg.application import PARPGApplication
+ from parpg.common import utils
+
+ # enable psyco if available and in settings file
+ try:
+ import psyco
+ psyco_available = True
+ except ImportError:
+ logger.warning('Psyco Acceleration unavailable')
+ psyco_available = False
+
+ if settings.fife.UsePsyco:
+ if psyco_available:
+ psyco.full()
+ logger.info('Psyco Acceleration enabled')
+ else:
+ logger.warning('Please install psyco before attempting to use it'
+ 'Psyco Acceleration disabled')
else:
- logger.warning('Please install psyco before attempting to use it'
- 'Psyco Acceleration disabled')
-else:
- logger.info('Psycho Acceleration disabled')
-
-# run the game
-app = PARPGApplication(settings)
-app.run()
+ logger.info('Psycho Acceleration disabled')
+
+ # run the game
+ app = PARPGApplication(settings)
+ app.run()