From bc9c79c6abcc3bb53a09147f2d66f7f36dbca28c Mon Sep 17 00:00:00 2001 From: Jeff Armstrong Date: Wed, 29 May 2013 09:16:47 -0400 Subject: Initial commit of final entry --- lib/data.py | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 lib/data.py (limited to 'lib/data.py') diff --git a/lib/data.py b/lib/data.py new file mode 100644 index 0000000..b17bb0c --- /dev/null +++ b/lib/data.py @@ -0,0 +1,44 @@ +# Murder in the Park - A Robotic Mystery +# Copyright (C) 2008 Jeffrey Armstrong (a.k.a. PrintStar) +# http://jeff.rainbow-100.com/ +# +# 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 . +# +# A full version of the license terms is available in LICENSE. + +'''Simple data loader module. + +Loads data files from the "data" directory shipped with a game. + +Enhancing this to handle caching etc. is left as an exercise for the reader. +''' + +import os + +#data_py = os.path.abspath(os.path.dirname(__file__)) +#data_dir = os.path.normpath(os.path.join(data_py, '..', 'data')) +data_dir = 'data' + +def filepath(filename): + '''Determine the path to a file in the data directory. + ''' + return os.path.join(data_dir, filename) + +def load(filename, mode='rb'): + '''Open a file in the data directory. + + "mode" is passed as the second arg to open(). + ''' + return open(os.path.join(data_dir, filename), mode) + -- cgit v1.2.3