1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126
|
description: use /etc/amphetamine for config files
Index: amphetamine-0.8.10/src/ConstVal.cpp
===================================================================
--- amphetamine-0.8.10.orig/src/ConstVal.cpp 2006-05-15 19:16:56.000000000 +0200
+++ amphetamine-0.8.10/src/ConstVal.cpp 2006-05-15 19:17:02.000000000 +0200
@@ -19,7 +19,7 @@
{
char levelSetString[11] = "xxLevelSet";
char levelBkgndString[13] = "xxLevelBkgnd";
- FILE *paramFile = fopen(gSystem->QualifyDataDir(kParFileName), "r"); // by LL
+ FILE *paramFile = fopen(gSystem->QualifyEtcDir(kParFileName), "r"); // by LL
gConst = new tConstValues;
@@ -159,7 +159,7 @@
fclose(paramFile);
// Hier sollte auch im Home Directory gesucht werden...
- paramFile = gSystem->FindFile(gConst->kFileConfig); // by LL
+ paramFile = fopen(gSystem->QualifyEtcDir(gConst->kFileConfig), "r"); // by LL
gConfigData->leftKey = GetLongConstant(paramFile, "LeftKey");
GetStringConstant(paramFile, "LeftKeyText", gConfigData->leftKeyText);
@@ -212,6 +212,7 @@
char c = 0;
short n;
+ key[0] = '\0';
fseek(f, 0, SEEK_SET);
while (strcmp(key, constName)) {
Index: amphetamine-0.8.10/src/Gui.cpp
===================================================================
--- amphetamine-0.8.10.orig/src/Gui.cpp 2006-05-15 19:16:56.000000000 +0200
+++ amphetamine-0.8.10/src/Gui.cpp 2006-05-15 19:17:02.000000000 +0200
@@ -688,7 +688,7 @@
void CGUI::LoadMessages()
{
- FILE *f = fopen(gSystem->QualifyDataDir(kParFileName), "r"); // by LL
+ FILE *f = fopen(gSystem->QualifyEtcDir(kParFileName), "r"); // by LL
char msgString[6] = "msgxx";
short n;
@@ -724,7 +724,7 @@
void LoadGUIParameters()
{
- FILE *f = fopen(gSystem->QualifyDataDir(kParFileName), "r"); // by LL
+ FILE *f = fopen(gSystem->QualifyEtcDir(kParFileName), "r"); // by LL
gGUIConst = new tGUIConstants;
Index: amphetamine-0.8.10/src/System.cpp
===================================================================
--- amphetamine-0.8.10.orig/src/System.cpp 2006-05-15 19:16:56.000000000 +0200
+++ amphetamine-0.8.10/src/System.cpp 2006-05-15 19:17:02.000000000 +0200
@@ -143,6 +143,14 @@
return tmp;
}
+char *CSystem::QualifyEtcDir(const char *fname)
+{
+ char *tmp = new char[strlen(etcDir)+strlen(fname)+2];
+ sprintf(tmp, "%s/%s", etcDir, fname);
+
+ return tmp;
+}
+
void CSystem::GetHomeDir()
{
char *tmp;
@@ -169,7 +177,9 @@
GetHomeDir();
dataDir = new char[strlen(INSTALL_DIR)+1];
strcpy(dataDir, INSTALL_DIR);
-
+ etcDir = new char[strlen(ETC_DIR)+1];
+ strcpy(etcDir, ETC_DIR);
+
char *logFileName = QualifyHomeDir(kLogFileName);
logFile = fopen(logFileName, "w"); // by LL
@@ -180,6 +190,8 @@
if ( SDL_Init(SDL_INIT_VIDEO|SDL_INIT_AUDIO) < 0 ) {
MSG("SDL_Init_Failed.");
MSG(SDL_GetError());
+ /* Ouput to stdout too. */
+ printf("SDL_Init_Failed: %s\n", SDL_GetError());
exit(1);
}
Index: amphetamine-0.8.10/src/System.hpp
===================================================================
--- amphetamine-0.8.10.orig/src/System.hpp 2006-05-15 19:16:57.000000000 +0200
+++ amphetamine-0.8.10/src/System.hpp 2006-05-15 19:17:02.000000000 +0200
@@ -16,6 +16,10 @@
#define INSTALL_DIR "/usr/local/games/amph"
#endif
+#ifndef ETC_DIR
+#define ETC_DIR "/etc/amphetamine"
+#endif
+
#if SDL_BYTEORDER == SDL_LIL_ENDIAN
#undef __BIG_ENDIAN__
#else
@@ -76,6 +80,7 @@
RGBcolor *palColors;
char *homeDir;
char *dataDir;
+ char *etcDir;
int workingSound;
//"""""""""""""""" System Stuff
@@ -107,8 +112,10 @@
void GetHomeDir();
char *QualifyDataDir(const char *fname);
char *QualifyHomeDir(const char *fname);
+ char *QualifyEtcDir(const char *fname);
void ScreenShot();
FILE *FindFile(const char *fname);
};
#endif
+
|