private void ShowMeshes(Part part)
        {
            MeshRenderer[] renderers = ModuleControllableEmissive.GetMeshes(part);
            if ((renderers == null) || (renderers.Length < 1))
            {
                throw GetException("Part has no meshes: " + Logging.GetTitle(part));
            }
            StringBuilder builder = new StringBuilder();

            builder.AppendFormat("Part '{0}' has {1} meshes:", Logging.GetTitle(part), renderers.Length);
            for (int i = 0; i < renderers.Length; ++i)
            {
                builder.AppendFormat("\n{0}: {1}", i, DescribeMesh(renderers[i]));
            }
            Logging.Log(builder.ToString());
        }
        private void ShowPart(Part part, string qualifier, string[] arguments)
        {
            if (qualifier == null)
            {
                Logging.Log(string.Format(
                                "Part '{0}' has {1} meshes, {2} emissives, {3} controllers.",
                                Logging.GetTitle(part),
                                ModuleControllableEmissive.GetMeshes(part).Length,
                                FindModules <ModuleControllableEmissive>(part).Count,
                                FindModules <ModuleEmissiveControllerBase>(part).Count));
                return;
            }

            if (qualifier == MESHES)
            {
                ShowMeshes(part);
                return;
            }

            if (qualifier == EMISSIVES)
            {
                ShowModules <ModuleControllableEmissive>(part, "emissives", DescribeEmissive);
                return;
            }

            if (qualifier == CONTROLLERS)
            {
                ShowModules <ModuleEmissiveControllerBase>(part, "controllers", DescribeController);
                return;
            }

            if (qualifier == CONTROLLER)
            {
                if (arguments.Length < 1)
                {
                    throw GetException("No controller index specified");
                }
                List <ModuleEmissiveControllerBase> controllers = FindModules <ModuleEmissiveControllerBase>(part);
                int index = parseInteger(arguments[0], 0, controllers.Count, "controller index");
                ShowController(controllers[index], arguments.SubArray(1));
                return;
            }

            throw GetException("/" + DebugConsole.COMMAND + " " + COMMAND + ": unknown qualifier '" + qualifier + "'");
        }