feat: complete in-game commands, GUIs, admin panel fixes, and launcher enhancements

This commit is contained in:
scoped committed 2026-09-29 12:14:16 -04:00
1 parent a9ff92e1d1
commit 752f0cc43d
34 files changed
+4170 -181

No files matched your search

+30 -4
View File
@@ -2,6 +2,7 @@ pub mod account;
pub mod achievements;
pub mod activity;
pub mod admin;
pub mod economy;
pub mod guilds;
pub mod landing;
pub mod leveling;
@@ -23,6 +24,7 @@ pub fn api(state: &AppState) -> Router<AppState> {
.route("/launcher/manifest", get(public::manifest))
.route("/launcher/instances/{id}", get(public::instance_manifest))
.route("/launcher/events", post(public::event))
.route("/instances", get(admin::list_instances))
.route("/auth/login", post(public::login))
.route("/auth/register", post(public::register))
.route("/auth/me", get(public::me))
@@ -65,7 +67,13 @@ pub fn api(state: &AppState) -> Router<AppState> {
.route("/guilds/{id}/claims", post(guilds::claim_chunk).delete(guilds::unclaim_chunk))
.route("/guilds/{id}/claim", post(guilds::claim_chunk))
.route("/guilds/{id}/unclaim", post(guilds::unclaim_chunk))
// Social: Friends, DMs, Invites, Profiles, Posts
// Economy
.route("/economy/me", get(economy::get_my_balances))
.route("/economy/balances", get(economy::get_my_balances))
.route("/economy/transactions", get(economy::get_my_transactions))
.route("/servers/{id}/economy/baltop", get(economy::get_server_baltop))
.route("/servers/{id}/economy/market", get(economy::get_server_market))
// Social: Friends, DMs, Invites, Profiles, Posts, Members Search
.route("/friends", get(social::list_friends))
.route("/friends/request", post(social::send_friend_request))
.route("/friends/respond", post(social::respond_friend_request))
@@ -87,6 +95,8 @@ pub fn api(state: &AppState) -> Router<AppState> {
.route("/social/profile/{uuid}", get(social::get_player_profile))
.route("/social/posts", post(social::create_user_post))
.route("/social/posts/{id}/like", post(social::like_user_post))
.route("/social/members", get(social::search_members))
.route("/members/search", get(social::search_members))
.layer(DefaultBodyLimit::max(4 * 1024 * 1024));
let admin = Router::new()
@@ -124,13 +134,17 @@ pub fn api(state: &AppState) -> Router<AppState> {
.route("/modrinth/project/{id}/versions", get(meta::modrinth_versions))
.route("/curseforge/search", get(meta::curseforge_search))
.route("/curseforge/mod/{id}/files", get(meta::curseforge_files))
// Admin Quests & Achievements & Rewards
.route("/rewards", post(leveling::admin_create_reward))
.route("/rewards/{id}", delete(leveling::admin_delete_reward))
// Admin Quests & Achievements & Rewards & Guilds
.route("/rewards", get(leveling::list_rewards).post(leveling::admin_create_reward))
.route("/rewards/{id}", put(leveling::admin_update_reward).delete(leveling::admin_delete_reward))
.route("/levels/rewards", get(leveling::list_rewards).post(leveling::admin_create_reward))
.route("/levels/rewards/{id}", put(leveling::admin_update_reward).delete(leveling::admin_delete_reward))
.route("/quests", get(quests::admin_list_quests).post(quests::admin_create_quest))
.route("/quests/{id}", put(quests::admin_update_quest).delete(quests::admin_delete_quest))
.route("/achievements", get(achievements::admin_list_achievements).post(achievements::admin_create_achievement))
.route("/achievements/{id}", put(achievements::admin_update_achievement).delete(achievements::admin_delete_achievement))
.route("/guilds", get(guilds::admin_list_guilds))
.route("/guilds/{id}", delete(guilds::admin_delete_guild))
.layer(DefaultBodyLimit::max(upload_limit));
// Called by the SCOPENET Paper plugin and Fabric/Forge mods.
@@ -139,6 +153,18 @@ pub fn api(state: &AppState) -> Router<AppState> {
.route("/login", post(servers::login))
.route("/sync", post(servers::sync))
.route("/guilds/check-chunk", post(guilds::server_check_chunk))
.route("/guilds/claim", post(guilds::server_claim_chunk))
.route("/guilds/unclaim", post(guilds::server_unclaim_chunk))
.route("/guilds/player", post(guilds::server_get_player_guild))
.route("/guilds/create", post(guilds::server_create_guild))
.route("/guilds/leave", post(guilds::server_guild_leave))
.route("/economy/balance", post(economy::server_get_balance))
.route("/economy/pay", post(economy::server_transfer))
.route("/economy/transfer", post(economy::server_transfer))
.route("/economy/sync-balance", post(economy::server_sync_balance))
.route("/economy/baltop", post(economy::server_baltop))
.route("/economy/market/list", post(economy::server_market_list))
.route("/economy/market/buy", post(economy::server_market_buy))
.layer(DefaultBodyLimit::max(2 * 1024 * 1024));
Router::new()