public static CCPoint positionForNode(CCNode node, CCPoint unitPos)
        {
            LHScene scene = ((LHNodeProtocol)node).getScene();

            CCSize  designSize = scene.designResolutionSize();
            CCPoint offset     = scene.designOffset();

            CCPoint designPos = new CCPoint();

            if (node.Parent == null ||
                node.Parent == scene ||
                node.Parent == scene.getGameWorldNode() ||
                node.Parent == scene.getUINode() ||
                node.Parent == scene.getBackUINode()
                )
            {
                designPos    = new CCPoint(designSize.Width * unitPos.X, (designSize.Height - designSize.Height * unitPos.Y));
                designPos.X += offset.X;
                designPos.Y += offset.Y;
            }
            else
            {
                designPos = new CCPoint(designSize.Width * unitPos.X, node.Parent.ContentSize.Height - designSize.Height * unitPos.Y);
                CCNode p = node.Parent;
                designPos.X += p.ContentSize.Width * 0.5f;
                designPos.Y -= p.ContentSize.Height * 0.5f;
            }

            return(designPos);
        }