Update Guilds

This commit is contained in:
2026-05-28 13:15:21 -04:00
parent 45f893688a
commit 3fa3cdfc39
32 changed files with 1328 additions and 404 deletions
@@ -0,0 +1,52 @@
CREATE TABLE IF NOT EXISTS {{table:guilds}} (
`guild_uuid` VARCHAR(46) NOT NULL,
`name` VARCHAR(64) NOT NULL,
`prefix` VARCHAR(64),
`owner_uuid` VARCHAR(46) NOT NULL,
`created_at` BIGINT NOT NULL,
`home_world` VARCHAR(128),
`home_x` DOUBLE,
`home_y` DOUBLE,
`home_z` DOUBLE,
`home_yaw` FLOAT,
`home_pitch` FLOAT,
`motd` VARCHAR(3000),
`tag_enabled` BOOLEAN NOT NULL DEFAULT TRUE,
`public` BOOLEAN NOT NULL DEFAULT FALSE,
PRIMARY KEY (`guild_uuid`),
UNIQUE KEY `uq_guilds_name` (`name`)
);
CREATE TABLE IF NOT EXISTS {{table:members}} (
`id` BIGINT NOT NULL AUTO_INCREMENT,
`guild_uuid` VARCHAR(46) NOT NULL,
`player_uuid` VARCHAR(46) NOT NULL,
`role` VARCHAR(20) NOT NULL,
`joined_at` BIGINT NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `uq_members_guild_player` (`guild_uuid`, `player_uuid`)
);
CREATE TABLE IF NOT EXISTS {{table:warps}} (
`id` BIGINT NOT NULL AUTO_INCREMENT,
`guild_uuid` VARCHAR(46) NOT NULL,
`name` VARCHAR(16) NOT NULL,
`world` VARCHAR(128) NOT NULL,
`x` DOUBLE NOT NULL,
`y` DOUBLE NOT NULL,
`z` DOUBLE NOT NULL,
`yaw` FLOAT NOT NULL,
`pitch` FLOAT NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `uq_warps_guild_name` (`guild_uuid`, `name`)
);
CREATE TABLE IF NOT EXISTS {{table:invites}} (
`id` BIGINT NOT NULL AUTO_INCREMENT,
`guild_uuid` VARCHAR(46) NOT NULL,
`inviter_uuid` VARCHAR(46) NOT NULL,
`invitee_uuid` VARCHAR(46) NOT NULL,
`expires_at` BIGINT NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `uq_invites_guild_invitee` (`guild_uuid`, `invitee_uuid`)
);
@@ -0,0 +1,47 @@
CREATE TABLE IF NOT EXISTS {{table:guilds}} (
guild_uuid VARCHAR(46) NOT NULL PRIMARY KEY,
name VARCHAR(64) NOT NULL UNIQUE,
prefix VARCHAR(64),
owner_uuid VARCHAR(46) NOT NULL,
created_at BIGINT NOT NULL,
home_world VARCHAR(128),
home_x DOUBLE PRECISION,
home_y DOUBLE PRECISION,
home_z DOUBLE PRECISION,
home_yaw REAL,
home_pitch REAL,
motd VARCHAR(3000),
tag_enabled BOOLEAN NOT NULL DEFAULT TRUE,
public BOOLEAN NOT NULL DEFAULT FALSE
);
CREATE TABLE IF NOT EXISTS {{table:members}} (
id BIGSERIAL PRIMARY KEY,
guild_uuid VARCHAR(46) NOT NULL,
player_uuid VARCHAR(46) NOT NULL,
role VARCHAR(20) NOT NULL,
joined_at BIGINT NOT NULL,
CONSTRAINT uq_members_guild_player UNIQUE (guild_uuid, player_uuid)
);
CREATE TABLE IF NOT EXISTS {{table:warps}} (
id BIGSERIAL PRIMARY KEY,
guild_uuid VARCHAR(46) NOT NULL,
name VARCHAR(16) NOT NULL,
world VARCHAR(128) NOT NULL,
x DOUBLE PRECISION NOT NULL,
y DOUBLE PRECISION NOT NULL,
z DOUBLE PRECISION NOT NULL,
yaw REAL NOT NULL,
pitch REAL NOT NULL,
CONSTRAINT uq_warps_guild_name UNIQUE (guild_uuid, name)
);
CREATE TABLE IF NOT EXISTS {{table:invites}} (
id BIGSERIAL PRIMARY KEY,
guild_uuid VARCHAR(46) NOT NULL,
inviter_uuid VARCHAR(46) NOT NULL,
invitee_uuid VARCHAR(46) NOT NULL,
expires_at BIGINT NOT NULL,
CONSTRAINT uq_invites_guild_invitee UNIQUE (guild_uuid, invitee_uuid)
);
@@ -0,0 +1,47 @@
CREATE TABLE IF NOT EXISTS {{table:guilds}} (
guild_uuid VARCHAR(46) NOT NULL PRIMARY KEY,
name VARCHAR(64) NOT NULL UNIQUE,
prefix VARCHAR(64),
owner_uuid VARCHAR(46) NOT NULL,
created_at BIGINT NOT NULL,
home_world VARCHAR(128),
home_x DOUBLE,
home_y DOUBLE,
home_z DOUBLE,
home_yaw FLOAT,
home_pitch FLOAT,
motd VARCHAR(3000),
tag_enabled BOOLEAN NOT NULL DEFAULT 1,
public BOOLEAN NOT NULL DEFAULT 0
);
CREATE TABLE IF NOT EXISTS {{table:members}} (
id INTEGER PRIMARY KEY AUTOINCREMENT,
guild_uuid VARCHAR(46) NOT NULL,
player_uuid VARCHAR(46) NOT NULL,
role VARCHAR(20) NOT NULL,
joined_at BIGINT NOT NULL,
UNIQUE (guild_uuid, player_uuid)
);
CREATE TABLE IF NOT EXISTS {{table:warps}} (
id INTEGER PRIMARY KEY AUTOINCREMENT,
guild_uuid VARCHAR(46) NOT NULL,
name VARCHAR(16) NOT NULL,
world VARCHAR(128) NOT NULL,
x DOUBLE NOT NULL,
y DOUBLE NOT NULL,
z DOUBLE NOT NULL,
yaw FLOAT NOT NULL,
pitch FLOAT NOT NULL,
UNIQUE (guild_uuid, name)
);
CREATE TABLE IF NOT EXISTS {{table:invites}} (
id INTEGER PRIMARY KEY AUTOINCREMENT,
guild_uuid VARCHAR(46) NOT NULL,
inviter_uuid VARCHAR(46) NOT NULL,
invitee_uuid VARCHAR(46) NOT NULL,
expires_at BIGINT NOT NULL,
UNIQUE (guild_uuid, invitee_uuid)
);
+10 -1
View File
@@ -4,6 +4,7 @@ guildCommandNotFound: "<red>'<gold>{0}</gold>'<red> is not a valid sub command!"
guildNotFound: "<red>You're currently not a part of a guild!"
guildInThis: "<red>You're currently a part of this guild!"
alreadyInGuild: "<red>You're currently in a guild. Please do <gold>/guild leave<red> if you're a member, or if you're an owner with members, <gold>/guild promote <player><red> then <gold>/guild leave<red>, or just an owner, <gold>/guild disband<red>."
guildCreated: "<green>Created guild named <dark_green>{0}<green>."
guildNotOwner: "<red>You're not the owner of this guild!"
guildMemberNotFound: "<red>This guild member could not be found!"
guildOwnerSet: "<green>You have successfully promoted <dark_green>{0}<green> to be the new guild owner. You have been set to a default guild member."
@@ -23,8 +24,16 @@ guildNoInvite: "<red>You don't have any pending invitations!"
guildNotValidInvite: "<red>You don't have an invite from this guild!"
guildInviteExists: "<red>You've already sent an invite to this person!"
guildInviteSent: "<green>You have sent an invite to <dark_green>{0}"
guildInviteReceived: "<gold>You have received an invite from <yellow>{0}<gold> for the guild <yellow>{1}<newline><newline><green><bold><click:run_command:/guild invite accept {1}>[ACCEPT]<newline><newline><!bold><gold>You may also run <yellow>/guild invite accept {1}<gold> to accept this invite. It will expire in 5 minutes"
guildInviteReceived: "<gold>You have received an invite from <yellow>{0}<gold> for the guild <yellow>{1}<newline><newline><green><bold><click:run_command:/guild accept {1}>[ACCEPT]<newline><newline><!bold><gold>You may also run <yellow>/guild accept {1}<gold> to accept this invite. It will expire in 5 minutes"
guildMemberJoined: "<green>{0} has joined the guild!"
guildMemberLeft: "<green>{0} has left the guild!"
guildDisbandNeeded: "<red>You need to disband your guild using <gold>/guild disband<red> or promote a new owner using <gold>/guild owner <player>"
guildAutoDisbanded: "<green>Auto-disbanding your guild since there were no members"
guildDisbanded: "<green>Your guild has been disbanded."
guildLeft: "<green>You have left the guild."
guildOwnerLeaveBlocked: "<red>You must transfer ownership before leaving this guild."
guildInviteDenied: "<green>You denied the guild invite."
guildInviteExpired: "<red>This guild invite has expired."
guildTargetAlreadyInGuild: "<red>That player is already in a guild."
guildCannotInviteSelf: "<red>You cannot invite yourself."
guildStorageFailed: "<red>The guild storage operation failed."