public Ghost CreateGhost() { int landID = CurrentField.LandID; if (landID != GlobalVars.Land_Forest && landID != GlobalVars.Land_Caves && landID != GlobalVars.Land_DeepCaves && landID != GlobalVars.Land_GrynrHalls) { return(null); } Ghost result = new Ghost(null, null); result.Assign(this, false); result.HPCur = result.HPMax_Renamed; result.Alignment = Alignment.am_Chaotic_Evil; result.CopyTotalLocation(this); result.LastDir = Directions.DtNone; result.Ghost = true; return(result); }