mirror of
https://github.com/LBPUnion/ProjectLighthouse.git
synced 2025-08-02 18:18:39 +00:00
Create room for user on login
This commit is contained in:
parent
e92b1bf2c9
commit
a5eb9400fe
4 changed files with 18 additions and 23 deletions
|
@ -3,6 +3,7 @@ using System.IO;
|
|||
using System.Net;
|
||||
using System.Threading.Tasks;
|
||||
using Kettu;
|
||||
using LBPUnion.ProjectLighthouse.Helpers;
|
||||
using LBPUnion.ProjectLighthouse.Logging;
|
||||
using LBPUnion.ProjectLighthouse.Types;
|
||||
using LBPUnion.ProjectLighthouse.Types.Settings;
|
||||
|
@ -48,11 +49,16 @@ namespace LBPUnion.ProjectLighthouse.Controllers
|
|||
Token? token = await this.database.AuthenticateUser(loginData, userLocation, titleId);
|
||||
if (token == null) return this.StatusCode(403, "");
|
||||
|
||||
Logger.Log
|
||||
(
|
||||
$"Successfully logged in user {(await this.database.UserFromToken(token))!.Username} as {token.GameVersion} client ({titleId})",
|
||||
LoggerLevelLogin.Instance
|
||||
);
|
||||
User? user = await this.database.UserFromToken(token);
|
||||
if (user == null) return this.StatusCode(403, "");
|
||||
|
||||
Logger.Log($"Successfully logged in user {user.Username} as {token.GameVersion} client ({titleId})", LoggerLevelLogin.Instance);
|
||||
|
||||
// Create a new room on LBP2+/Vita
|
||||
if (token.GameVersion != GameVersion.LittleBigPlanet1)
|
||||
{
|
||||
RoomHelper.CreateRoom(user);
|
||||
}
|
||||
|
||||
return this.Ok
|
||||
(
|
||||
|
|
|
@ -135,19 +135,8 @@ namespace LBPUnion.ProjectLighthouse.Controllers
|
|||
else return this.BadRequest();
|
||||
}
|
||||
|
||||
// Delete old rooms based on host
|
||||
RoomHelper.Rooms.RemoveAll(r => r.Host == user);
|
||||
|
||||
// Create a new one as requested
|
||||
Room newRoom = RoomHelper.CreateRoom(users, createRoom.RoomSlot);
|
||||
|
||||
// Remove players in this new room from other rooms
|
||||
foreach (Room room in RoomHelper.Rooms)
|
||||
{
|
||||
if (room == newRoom) continue;
|
||||
|
||||
foreach (User newRoomPlayer in newRoom.Players) room.Players.RemoveAll(p => p == newRoomPlayer);
|
||||
}
|
||||
RoomHelper.CreateRoom(users, createRoom.RoomSlot);
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
|
|
@ -27,7 +27,7 @@ namespace LBPUnion.ProjectLighthouse.Controllers
|
|||
public async Task<IActionResult> SlotsBy([FromQuery] string u, [FromQuery] int pageStart, [FromQuery] int pageSize)
|
||||
{
|
||||
Token? token = await this.database.TokenFromRequest(this.Request);
|
||||
if (token == null) return this.BadRequest();
|
||||
if (token == null) return this.StatusCode(403, "");
|
||||
|
||||
GameVersion gameVersion = token.GameVersion;
|
||||
|
||||
|
@ -71,7 +71,7 @@ namespace LBPUnion.ProjectLighthouse.Controllers
|
|||
if (user == null) return this.StatusCode(403, "");
|
||||
|
||||
Token? token = await this.database.TokenFromRequest(this.Request);
|
||||
if (token == null) return this.BadRequest();
|
||||
if (token == null) return this.StatusCode(403, "");
|
||||
|
||||
GameVersion gameVersion = token.GameVersion;
|
||||
|
||||
|
@ -95,7 +95,7 @@ namespace LBPUnion.ProjectLighthouse.Controllers
|
|||
public async Task<IActionResult> NewestSlots([FromQuery] int pageStart, [FromQuery] int pageSize)
|
||||
{
|
||||
Token? token = await this.database.TokenFromRequest(this.Request);
|
||||
if (token == null) return this.BadRequest();
|
||||
if (token == null) return this.StatusCode(403, "");
|
||||
|
||||
GameVersion gameVersion = token.GameVersion;
|
||||
|
||||
|
@ -114,7 +114,7 @@ namespace LBPUnion.ProjectLighthouse.Controllers
|
|||
public async Task<IActionResult> TeamPickedSlots([FromQuery] int pageStart, [FromQuery] int pageSize)
|
||||
{
|
||||
Token? token = await this.database.TokenFromRequest(this.Request);
|
||||
if (token == null) return this.BadRequest();
|
||||
if (token == null) return this.StatusCode(403, "");
|
||||
|
||||
GameVersion gameVersion = token.GameVersion;
|
||||
|
||||
|
@ -134,7 +134,7 @@ namespace LBPUnion.ProjectLighthouse.Controllers
|
|||
public async Task<IActionResult> LuckyDipSlots([FromQuery] int pageStart, [FromQuery] int pageSize, [FromQuery] int seed)
|
||||
{
|
||||
Token? token = await this.database.TokenFromRequest(this.Request);
|
||||
if (token == null) return this.BadRequest();
|
||||
if (token == null) return this.StatusCode(403, "");
|
||||
|
||||
GameVersion gameVersion = token.GameVersion;
|
||||
|
||||
|
|
|
@ -204,7 +204,7 @@ namespace LBPUnion.ProjectLighthouse.Types
|
|||
|
||||
return user1.UserId == user2.UserId;
|
||||
}
|
||||
public static bool operator !=(User user1, User user2) => !(user1 == user2);
|
||||
public static bool operator !=(User? user1, User? user2) => !(user1 == user2);
|
||||
|
||||
public override int GetHashCode() => this.UserId;
|
||||
#nullable disable
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue