mirror of
https://github.com/LBPUnion/ProjectLighthouse.git
synced 2025-08-04 19:08:42 +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.Net;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Kettu;
|
using Kettu;
|
||||||
|
using LBPUnion.ProjectLighthouse.Helpers;
|
||||||
using LBPUnion.ProjectLighthouse.Logging;
|
using LBPUnion.ProjectLighthouse.Logging;
|
||||||
using LBPUnion.ProjectLighthouse.Types;
|
using LBPUnion.ProjectLighthouse.Types;
|
||||||
using LBPUnion.ProjectLighthouse.Types.Settings;
|
using LBPUnion.ProjectLighthouse.Types.Settings;
|
||||||
|
@ -48,11 +49,16 @@ namespace LBPUnion.ProjectLighthouse.Controllers
|
||||||
Token? token = await this.database.AuthenticateUser(loginData, userLocation, titleId);
|
Token? token = await this.database.AuthenticateUser(loginData, userLocation, titleId);
|
||||||
if (token == null) return this.StatusCode(403, "");
|
if (token == null) return this.StatusCode(403, "");
|
||||||
|
|
||||||
Logger.Log
|
User? user = await this.database.UserFromToken(token);
|
||||||
(
|
if (user == null) return this.StatusCode(403, "");
|
||||||
$"Successfully logged in user {(await this.database.UserFromToken(token))!.Username} as {token.GameVersion} client ({titleId})",
|
|
||||||
LoggerLevelLogin.Instance
|
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
|
return this.Ok
|
||||||
(
|
(
|
||||||
|
|
|
@ -135,19 +135,8 @@ namespace LBPUnion.ProjectLighthouse.Controllers
|
||||||
else return this.BadRequest();
|
else return this.BadRequest();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Delete old rooms based on host
|
|
||||||
RoomHelper.Rooms.RemoveAll(r => r.Host == user);
|
|
||||||
|
|
||||||
// Create a new one as requested
|
// Create a new one as requested
|
||||||
Room newRoom = RoomHelper.CreateRoom(users, createRoom.RoomSlot);
|
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);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
|
@ -27,7 +27,7 @@ namespace LBPUnion.ProjectLighthouse.Controllers
|
||||||
public async Task<IActionResult> SlotsBy([FromQuery] string u, [FromQuery] int pageStart, [FromQuery] int pageSize)
|
public async Task<IActionResult> SlotsBy([FromQuery] string u, [FromQuery] int pageStart, [FromQuery] int pageSize)
|
||||||
{
|
{
|
||||||
Token? token = await this.database.TokenFromRequest(this.Request);
|
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;
|
GameVersion gameVersion = token.GameVersion;
|
||||||
|
|
||||||
|
@ -71,7 +71,7 @@ namespace LBPUnion.ProjectLighthouse.Controllers
|
||||||
if (user == null) return this.StatusCode(403, "");
|
if (user == null) return this.StatusCode(403, "");
|
||||||
|
|
||||||
Token? token = await this.database.TokenFromRequest(this.Request);
|
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;
|
GameVersion gameVersion = token.GameVersion;
|
||||||
|
|
||||||
|
@ -95,7 +95,7 @@ namespace LBPUnion.ProjectLighthouse.Controllers
|
||||||
public async Task<IActionResult> NewestSlots([FromQuery] int pageStart, [FromQuery] int pageSize)
|
public async Task<IActionResult> NewestSlots([FromQuery] int pageStart, [FromQuery] int pageSize)
|
||||||
{
|
{
|
||||||
Token? token = await this.database.TokenFromRequest(this.Request);
|
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;
|
GameVersion gameVersion = token.GameVersion;
|
||||||
|
|
||||||
|
@ -114,7 +114,7 @@ namespace LBPUnion.ProjectLighthouse.Controllers
|
||||||
public async Task<IActionResult> TeamPickedSlots([FromQuery] int pageStart, [FromQuery] int pageSize)
|
public async Task<IActionResult> TeamPickedSlots([FromQuery] int pageStart, [FromQuery] int pageSize)
|
||||||
{
|
{
|
||||||
Token? token = await this.database.TokenFromRequest(this.Request);
|
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;
|
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)
|
public async Task<IActionResult> LuckyDipSlots([FromQuery] int pageStart, [FromQuery] int pageSize, [FromQuery] int seed)
|
||||||
{
|
{
|
||||||
Token? token = await this.database.TokenFromRequest(this.Request);
|
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;
|
GameVersion gameVersion = token.GameVersion;
|
||||||
|
|
||||||
|
|
|
@ -204,7 +204,7 @@ namespace LBPUnion.ProjectLighthouse.Types
|
||||||
|
|
||||||
return user1.UserId == user2.UserId;
|
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;
|
public override int GetHashCode() => this.UserId;
|
||||||
#nullable disable
|
#nullable disable
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue