Reorganizes Project (#41)
This commit is contained in:
parent
08bf44af9a
commit
3614a66aee
3499 changed files with 79 additions and 55 deletions
108
Projects/Scripts/Misc/DataPath.cs
Normal file
108
Projects/Scripts/Misc/DataPath.cs
Normal file
|
|
@ -0,0 +1,108 @@
|
|||
using System;
|
||||
|
||||
namespace Server.Misc
|
||||
{
|
||||
public class DataPath
|
||||
{
|
||||
/* If you have not installed Ultima Online,
|
||||
* or wish the server to use a separate set of datafiles,
|
||||
* change the 'CustomPath' value.
|
||||
* Example:
|
||||
* private static string CustomPath = @"C:\Program Files\Ultima Online";
|
||||
*/
|
||||
private static string CustomPath = @"C:\Ultima Online Classic";
|
||||
// private static string CustomPath = @"/Users/kamronbatman/UOC";
|
||||
|
||||
/* The following is a list of files which a required for proper execution:
|
||||
*
|
||||
* Multi.idx
|
||||
* Multi.mul
|
||||
* VerData.mul
|
||||
* TileData.mul
|
||||
* Map*.mul or Map*LegacyMUL.uop
|
||||
* StaIdx*.mul
|
||||
* Statics*.mul
|
||||
* MapDif*.mul
|
||||
* MapDifL*.mul
|
||||
* StaDif*.mul
|
||||
* StaDifL*.mul
|
||||
* StaDifI*.mul
|
||||
*/
|
||||
|
||||
public static void Configure()
|
||||
{
|
||||
string pathUO = GetPath(@"Origin Worlds Online\Ultima Online\1.0", "ExePath");
|
||||
string pathTD = GetPath(@"Origin Worlds Online\Ultima Online Third Dawn\1.0",
|
||||
"ExePath"); //These refer to 2D & 3D, not the Third Dawn expansion
|
||||
string pathKR = GetPath(@"Origin Worlds Online\Ultima Online\KR Legacy Beta",
|
||||
"ExePath"); //After KR, This is the new registry key for the 2D client
|
||||
string pathSA = GetPath(@"Electronic Arts\EA Games\Ultima Online Stygian Abyss Classic", "InstallDir");
|
||||
string pathHS = GetPath(@"Electronic Arts\EA Games\Ultima Online Classic", "InstallDir");
|
||||
|
||||
if (CustomPath != null)
|
||||
Core.DataDirectories.Add(CustomPath);
|
||||
|
||||
if (pathUO != null)
|
||||
Core.DataDirectories.Add(pathUO);
|
||||
|
||||
if (pathTD != null)
|
||||
Core.DataDirectories.Add(pathTD);
|
||||
|
||||
if (pathKR != null)
|
||||
Core.DataDirectories.Add(pathKR);
|
||||
|
||||
if (pathSA != null)
|
||||
Core.DataDirectories.Add(pathSA);
|
||||
|
||||
if (pathHS != null)
|
||||
Core.DataDirectories.Add(pathHS);
|
||||
|
||||
if (Core.DataDirectories.Count == 0 && !Core.Service)
|
||||
{
|
||||
Console.WriteLine("Enter the Ultima Online directory:");
|
||||
Console.Write("> ");
|
||||
|
||||
Core.DataDirectories.Add(Console.ReadLine());
|
||||
}
|
||||
}
|
||||
|
||||
private static string GetPath(string subName, string keyName)
|
||||
{
|
||||
return null;
|
||||
/*try
|
||||
{
|
||||
string keyString;
|
||||
|
||||
if (Core.Is64Bit)
|
||||
keyString = @"SOFTWARE\Wow6432Node\{0}";
|
||||
else
|
||||
keyString = @"SOFTWARE\{0}";
|
||||
|
||||
using (RegistryKey key = Registry.LocalMachine.OpenSubKey(string.Format(keyString, subName)))
|
||||
{
|
||||
if (key == null)
|
||||
return null;
|
||||
|
||||
string v = key.GetValue(keyName) as string;
|
||||
|
||||
if (string.IsNullOrEmpty(v))
|
||||
return null;
|
||||
|
||||
if (keyName == "InstallDir")
|
||||
v = v + @"\";
|
||||
|
||||
v = Path.GetDirectoryName(v);
|
||||
|
||||
if (string.IsNullOrEmpty(v))
|
||||
return null;
|
||||
|
||||
return v;
|
||||
}
|
||||
}
|
||||
catch
|
||||
{
|
||||
return null;
|
||||
}*/
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue