mirror of
https://github.com/OpenRCT2/OpenRCT2.git
synced 2025-01-22 18:31:59 -05:00
fix directories in linux
This commit is contained in:
parent
5793ded423
commit
ffee5229b5
8 changed files with 98 additions and 124 deletions
30
build.sh
30
build.sh
|
@ -64,8 +64,20 @@ pushd build
|
||||||
fi
|
fi
|
||||||
popd
|
popd
|
||||||
|
|
||||||
if [[ ! -h openrct2.dll ]]; then
|
if [[ $TARGET == "windows" ]]; then
|
||||||
ln -s build/openrct2.dll openrct2.dll
|
if [[ ! -h openrct2.dll ]]; then
|
||||||
|
ln -s build/openrct2.dll openrct2.dll
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ ! -h build/data ]]; then
|
||||||
|
ln -s ../data build/data
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ $TARGET == "linux" ]] || [[ $TARGET == "docker32" ]]; then
|
||||||
|
if [[ ! -h openrct2 ]]; then
|
||||||
|
ln -s build/openrct2 openrct2
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ -z "$DISABLE_G2_BUILD" ]]; then
|
if [[ -z "$DISABLE_G2_BUILD" ]]; then
|
||||||
|
@ -73,8 +85,16 @@ if [[ -z "$DISABLE_G2_BUILD" ]]; then
|
||||||
./build_g2.sh > /dev/null 2>&1
|
./build_g2.sh > /dev/null 2>&1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ -t 1 ]]; then
|
if [[ $TARGET == "windows" ]]; then
|
||||||
echo -e "\nDone! Run OpenRCT2 by typing:\n\n\033[95mwine openrct2.exe\n\033[0m"
|
if [[ -t 1 ]]; then
|
||||||
|
echo -e "\nDone! Run OpenRCT2 by typing:\n\n\033[95mwine openrct2.exe\n\033[0m"
|
||||||
|
else
|
||||||
|
echo -e "\nDone! Run OpenRCT2 by typing:\n\nwine openrct2.exe\n"
|
||||||
|
fi
|
||||||
else
|
else
|
||||||
echo -e "\nDone! Run OpenRCT2 by typing:\n\nwine openrct2.exe\n"
|
if [[ -t 1 ]]; then
|
||||||
|
echo -e "\nDone! Run OpenRCT2 by typing:\n\n\033[95m./openrct2\n\033[0m"
|
||||||
|
else
|
||||||
|
echo -e "\nDone! Run OpenRCT2 by typing:\n\n./openrct2\n"
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -1,3 +1,7 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
wine openrct2.exe sprite build data/g2.dat resources/g2/
|
if [[ $TARGET == "windows" ]]; then
|
||||||
|
wine openrct2.exe sprite build data/g2.dat resources/g2/
|
||||||
|
else
|
||||||
|
./openrct2 sprite build data/g2.dat resources/g2/
|
||||||
|
fi
|
||||||
|
|
|
@ -459,7 +459,7 @@ static bool openrct2_setup_rct2_segment()
|
||||||
#ifdef __linux__
|
#ifdef __linux__
|
||||||
#define DATA_OFFSET 0x004A4000
|
#define DATA_OFFSET 0x004A4000
|
||||||
|
|
||||||
const char *exepath = "../openrct2.exe";
|
const char *exepath = "openrct2.exe";
|
||||||
int fd = open(exepath, O_RDONLY);
|
int fd = open(exepath, O_RDONLY);
|
||||||
if (fd < 0) {
|
if (fd < 0) {
|
||||||
log_fatal("failed to open %s, errno = %d", exepath, errno);
|
log_fatal("failed to open %s, errno = %d", exepath, errno);
|
||||||
|
|
|
@ -128,7 +128,7 @@ bool platform_original_game_data_exists(const utf8 *path)
|
||||||
buffer[len] = '\0';
|
buffer[len] = '\0';
|
||||||
free(wPath);
|
free(wPath);
|
||||||
char checkPath[MAX_PATH];
|
char checkPath[MAX_PATH];
|
||||||
sprintf(checkPath, "%s%c%s%c%s", buffer, platform_get_path_separator(), "data", platform_get_path_separator(), "g1.dat");
|
sprintf(checkPath, "%s%c%s%c%s", buffer, platform_get_path_separator(), "Data", platform_get_path_separator(), "g1.dat");
|
||||||
return platform_file_exists(checkPath);
|
return platform_file_exists(checkPath);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -374,8 +374,11 @@ void platform_enumerate_files_end(int handle)
|
||||||
|
|
||||||
static int dirfilter(const struct dirent *d)
|
static int dirfilter(const struct dirent *d)
|
||||||
{
|
{
|
||||||
|
if (d->d_name[0] == '.') {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
#ifdef _DIRENT_HAVE_D_TYPE
|
#ifdef _DIRENT_HAVE_D_TYPE
|
||||||
if (d->d_type != DT_DIR)
|
if (d->d_type == DT_DIR)
|
||||||
{
|
{
|
||||||
return 1;
|
return 1;
|
||||||
} else {
|
} else {
|
||||||
|
@ -510,7 +513,7 @@ int platform_get_drives(){
|
||||||
return GetLogicalDrives();
|
return GetLogicalDrives();
|
||||||
*/
|
*/
|
||||||
STUB();
|
STUB();
|
||||||
return 0xff;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool platform_file_copy(const utf8 *srcPath, const utf8 *dstPath, bool overwrite)
|
bool platform_file_copy(const utf8 *srcPath, const utf8 *dstPath, bool overwrite)
|
||||||
|
@ -664,16 +667,10 @@ uint16 platform_get_locale_language(){
|
||||||
}
|
}
|
||||||
|
|
||||||
time_t platform_file_get_modified_time(const utf8* path){
|
time_t platform_file_get_modified_time(const utf8* path){
|
||||||
/*
|
struct stat buf;
|
||||||
WIN32_FILE_ATTRIBUTE_DATA data;
|
if (stat(path, &buf) == 0) {
|
||||||
if (!GetFileAttributesEx(path, GetFileExInfoStandard, &data))
|
return buf.st_mtime;
|
||||||
return 0;
|
}
|
||||||
ULARGE_INTEGER ull;
|
|
||||||
ull.LowPart = data.ftLastWriteTime.dwLowDateTime;
|
|
||||||
ull.HighPart = data.ftLastWriteTime.dwHighDateTime;
|
|
||||||
return ull.QuadPart / 10000000ULL - 11644473600ULL;
|
|
||||||
*/
|
|
||||||
STUB();
|
|
||||||
return 100;
|
return 100;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -931,4 +931,4 @@ void platform_set_cursor_position(int x, int y)
|
||||||
unsigned int platform_get_ticks()
|
unsigned int platform_get_ticks()
|
||||||
{
|
{
|
||||||
return SDL_GetTicks();
|
return SDL_GetTicks();
|
||||||
}
|
}
|
||||||
|
|
|
@ -132,7 +132,7 @@ bool platform_directory_exists(const utf8 *path)
|
||||||
bool platform_original_game_data_exists(const utf8 *path)
|
bool platform_original_game_data_exists(const utf8 *path)
|
||||||
{
|
{
|
||||||
utf8 checkPath[MAX_PATH];
|
utf8 checkPath[MAX_PATH];
|
||||||
sprintf(checkPath, "%s%c%s%c%s", path, platform_get_path_separator(), "data", platform_get_path_separator(), "g1.dat");
|
sprintf(checkPath, "%s%c%s%c%s", path, platform_get_path_separator(), "Data", platform_get_path_separator(), "g1.dat");
|
||||||
return platform_file_exists(checkPath);
|
return platform_file_exists(checkPath);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -449,8 +449,15 @@ const utf8 *get_file_path(int pathId)
|
||||||
return path;
|
return path;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
char *pathp = path + strnlen(path, sizeof(path));
|
||||||
|
|
||||||
strcat(path, file_paths[pathId]);
|
strcat(path, file_paths[pathId]);
|
||||||
|
|
||||||
|
while (*pathp) {
|
||||||
|
if (*pathp == '\\') *pathp = platform_get_path_separator();
|
||||||
|
pathp++;
|
||||||
|
}
|
||||||
|
|
||||||
return path;
|
return path;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
150
src/rct2.h
150
src/rct2.h
|
@ -206,111 +206,57 @@ enum {
|
||||||
// rct2 @ 0x0097F67C
|
// rct2 @ 0x0097F67C
|
||||||
static const char * const file_paths[] =
|
static const char * const file_paths[] =
|
||||||
{
|
{
|
||||||
#ifdef _WIN32
|
"Data\\g1.dat",
|
||||||
"data\\g1.dat",
|
"Data\\plugin.dat",
|
||||||
"Data\\PLUGIN.DAT",
|
"Data\\css1.dat",
|
||||||
"Data\\CSS1.DAT",
|
"Data\\css2.dat",
|
||||||
"Data\\CSS2.DAT",
|
"Data\\css4.dat",
|
||||||
"Data\\CSS4.DAT",
|
"Data\\css5.dat",
|
||||||
"Data\\CSS5.DAT",
|
"Data\\css6.dat",
|
||||||
"Data\\CSS6.DAT",
|
"Data\\css7.dat",
|
||||||
"Data\\CSS7.DAT",
|
"Data\\css8.dat",
|
||||||
"Data\\CSS8.DAT",
|
"Data\\css9.dat",
|
||||||
"Data\\CSS9.DAT",
|
"Data\\css11.dat",
|
||||||
"Data\\CSS11.DAT",
|
"Data\\css12.dat",
|
||||||
"Data\\CSS12.DAT",
|
"Data\\css13.dat",
|
||||||
"Data\\CSS13.DAT",
|
"Data\\css14.dat",
|
||||||
"Data\\CSS14.DAT",
|
"Data\\css15.dat",
|
||||||
"Data\\CSS15.DAT",
|
"Data\\css3.dat",
|
||||||
"Data\\CSS3.DAT",
|
"Data\\css17.dat",
|
||||||
"Data\\CSS17.DAT",
|
"Data\\css18.dat",
|
||||||
"Data\\CSS18.DAT",
|
"Data\\css19.dat",
|
||||||
"Data\\CSS19.DAT",
|
"Data\\css20.dat",
|
||||||
"Data\\CSS20.DAT",
|
"Data\\css21.dat",
|
||||||
"Data\\CSS21.DAT",
|
"Data\\css22.dat",
|
||||||
"Data\\CSS22.DAT",
|
"Saved Games\\scores.dat",
|
||||||
"Saved Games\\scores.DAT",
|
"Data\\css23.dat",
|
||||||
"Data\\CSS23.DAT",
|
"Data\\css24.dat",
|
||||||
"Data\\CSS24.DAT",
|
"Data\\css25.dat",
|
||||||
"Data\\CSS25.DAT",
|
"Data\\css26.dat",
|
||||||
"Data\\CSS26.DAT",
|
"Data\\css27.dat",
|
||||||
"Data\\CSS27.DAT",
|
"Data\\css28.dat",
|
||||||
"Data\\CSS28.DAT",
|
"Data\\css29.dat",
|
||||||
"Data\\CSS29.DAT",
|
"Data\\css30.dat",
|
||||||
"Data\\CSS30.DAT",
|
"Data\\css31.dat",
|
||||||
"Data\\CSS31.DAT",
|
"Data\\css32.dat",
|
||||||
"Data\\CSS32.DAT",
|
"Data\\css33.dat",
|
||||||
"Data\\CSS33.DAT",
|
"Data\\css34.dat",
|
||||||
"Data\\CSS34.DAT",
|
"Data\\css35.dat",
|
||||||
"Data\\CSS35.DAT",
|
"Data\\css36.dat",
|
||||||
"Data\\CSS36.DAT",
|
"Data\\css37.dat",
|
||||||
"Data\\CSS37.DAT",
|
"Data\\css38.dat",
|
||||||
"Data\\CSS38.DAT",
|
|
||||||
"Data\\CUSTOM1.WAV",
|
"Data\\CUSTOM1.WAV",
|
||||||
"Data\\CUSTOM2.WAV",
|
"Data\\CUSTOM2.WAV",
|
||||||
"Data\\CSS39.DAT",
|
"Data\\css39.dat",
|
||||||
"Data\\CSS40.DAT",
|
"Data\\css40.dat",
|
||||||
"Data\\CSS41.DAT",
|
"Data\\css41.dat",
|
||||||
"Scenarios\\Six Flags Magic Mountain.SC6",
|
"Scenarios\\Six Flags Magic Mountain.SC6",
|
||||||
"Data\\CSS42.DAT",
|
"Data\\css42.dat",
|
||||||
"Data\\CSS43.DAT",
|
"Data\\css43.dat",
|
||||||
"Data\\CSS44.DAT",
|
"Data\\css44.dat",
|
||||||
"Data\\CSS45.DAT",
|
"Data\\css45.dat",
|
||||||
"Data\\CSS46.DAT",
|
"Data\\css46.dat",
|
||||||
"Data\\CSS50.DAT"
|
"Data\\css50.dat"
|
||||||
#else
|
|
||||||
"data/g1.dat",
|
|
||||||
"data/plugin.dat",
|
|
||||||
"data/css1.dat",
|
|
||||||
"data/css2.dat",
|
|
||||||
"data/css4.dat",
|
|
||||||
"data/css5.dat",
|
|
||||||
"data/css6.dat",
|
|
||||||
"data/css7.dat",
|
|
||||||
"data/css8.dat",
|
|
||||||
"data/css9.dat",
|
|
||||||
"data/css11.dat",
|
|
||||||
"data/css12.dat",
|
|
||||||
"data/css13.dat",
|
|
||||||
"data/css14.dat",
|
|
||||||
"data/css15.dat",
|
|
||||||
"data/css3.dat",
|
|
||||||
"data/css17.dat",
|
|
||||||
"data/css18.dat",
|
|
||||||
"data/css19.dat",
|
|
||||||
"data/css20.dat",
|
|
||||||
"data/css21.dat",
|
|
||||||
"data/css22.dat",
|
|
||||||
"Saved Games/scores.dat",
|
|
||||||
"data/css23.dat",
|
|
||||||
"data/css24.dat",
|
|
||||||
"data/css25.dat",
|
|
||||||
"data/css26.dat",
|
|
||||||
"data/css27.dat",
|
|
||||||
"data/css28.dat",
|
|
||||||
"data/css29.dat",
|
|
||||||
"data/css30.dat",
|
|
||||||
"data/css31.dat",
|
|
||||||
"data/css32.dat",
|
|
||||||
"data/css33.dat",
|
|
||||||
"data/css34.dat",
|
|
||||||
"data/css35.dat",
|
|
||||||
"data/css36.dat",
|
|
||||||
"data/css37.dat",
|
|
||||||
"data/css38.dat",
|
|
||||||
"data/CUSTOM1.WAV",
|
|
||||||
"data/CUSTOM2.WAV",
|
|
||||||
"data/css39.dat",
|
|
||||||
"data/css40.dat",
|
|
||||||
"data/css41.dat",
|
|
||||||
"Scenarios/Six Flags Magic Mountain.SC6",
|
|
||||||
"data/css42.dat",
|
|
||||||
"data/css43.dat",
|
|
||||||
"data/css44.dat",
|
|
||||||
"data/css45.dat",
|
|
||||||
"data/css46.dat",
|
|
||||||
"data/css50.dat"
|
|
||||||
#endif // _WIN32
|
|
||||||
};
|
};
|
||||||
|
|
||||||
// Files to check (rct2 @ 0x0097FB5A)
|
// Files to check (rct2 @ 0x0097FB5A)
|
||||||
|
|
Loading…
Reference in a new issue