public GamePlayer ReferencePlayerById(int PlayerId, IALFADatabase Database)
{
//
// Check if the object is already known first.
//
GamePlayer Player = (from P in Players
where P.PlayerId == PlayerId
select P).FirstOrDefault();
if (Player != null)
return Player;
//
// Need to pull the data from the database.
//
if (Database == null)
return null;
Database.ACR_SQLQuery(String.Format(
"SELECT `Name`, `IsDM` FROM `players` WHERE `ID` = {0}",
PlayerId));
if (!Database.ACR_SQLFetch())
return null;
Player = new GamePlayer(this);
Player.PlayerName = Database.ACR_SQLGetData(0);
Player.PlayerId = PlayerId;
Player.IsDM = ConvertToBoolean(Database.ACR_SQLGetData(1));
InsertNewPlayer(Player, Database);
return Player;
}