@tryforge/forgescript
Version:
ForgeScript is a comprehensive package that empowers you to effortlessly interact with Discord's API. It ensures scripting remains easy to learn and consistently effective.
54 lines • 1.64 kB
JavaScript
"use strict";
/*
* SPDX-License-Identifier: GPL-3.0-or-later
* Copyright © 2025 BotForge
*/
Object.defineProperty(exports, "__esModule", { value: true });
const structures_1 = require("../../structures");
exports.default = new structures_1.NativeFunction({
name: "$cloneRole",
version: "2.4.0",
description: "Clones an existing role of a guild, returns role id if success",
unwrap: true,
brackets: true,
args: [
{
name: "guild ID",
description: "The guild to fetch role from",
rest: false,
type: structures_1.ArgType.Guild,
required: true,
},
{
name: "role ID",
description: "The role to clone",
rest: false,
required: true,
type: structures_1.ArgType.Role,
pointer: 0,
},
{
name: "name",
description: "The role name for the cloned role",
rest: false,
type: structures_1.ArgType.String,
},
],
output: structures_1.ArgType.Role,
async execute(ctx, [guild, role, name]) {
const created = await guild.roles
.create({
name: name || role.name,
colors: role.colors,
icon: role.icon,
hoist: role.hoist,
mentionable: role.mentionable,
permissions: role.permissions,
unicodeEmoji: role.unicodeEmoji,
reason: ctx.reason
})
.catch(ctx.noop);
return this.success(created ? created.id : undefined);
},
});
//# sourceMappingURL=cloneRole.js.map