public bool TryFindStandingSpotOrChair(CompMusicSpot musicSpot, Pawn musician, Thing instrument, out LocalTargetInfo target) { IntVec3 standingSpot; Thing chair; target = null; PerformanceManager pm = musician.Map.GetComponent <PerformanceManager>(); CompMusicalInstrument comp = instrument.TryGetComp <CompMusicalInstrument>(); if (comp.Props.isBuilding) { if (pm.TryFindChairAt(comp, musician, out chair)) { target = chair; return(true); } else if (pm.TryFindSpotAt(comp, musician, out standingSpot)) { target = standingSpot; return(true); } } else { if (pm.TryFindSitSpotOnGroundNear(musicSpot, musician, out standingSpot)) { target = standingSpot; return(true); } } return(false); }