More changes...

This commit is contained in:
2026-02-27 19:30:49 -08:00
parent 20fdf60665
commit b64e257b9a
36 changed files with 553 additions and 63 deletions

View File

@@ -0,0 +1,21 @@
namespace RecRoomArchive.Models.API.GameSessions
{
public enum ActivityLevels
{
INVALID = -1,
DORM_ROOM = 1000,
REC_CENTER = 2000,
CHARADES = 3000,
DISC_GOLF = 4000,
DODGEBALL = 5000,
THE_LOUNGE = 6000,
PADDLEBALL = 7000,
PAINTBALL = 8000,
QUEST = 9000,
SOCCER = 10000,
ART_TESTING = 11000,
PERFORMANCE_HALL = 12000,
ROOM_CALIBRATION = 13000,
PARK = 14000
}
}

View File

@@ -0,0 +1,34 @@
using System.Text.Json.Serialization;
namespace RecRoomArchive.Models.API.GameSessions
{
public class GameSession
{
[JsonPropertyName(name: "GameSessionId")]
public long GameSessionId { get; set; } = 1;
[JsonPropertyName(name: "RegionId")]
public string RegionId { get; set; } = "us";
[JsonPropertyName(name: "RoomId")]
public string RoomId { get; set; } = "fba33a23-b4a5-4f55-a631-37028b1db7f9";
[JsonPropertyName(name: "EventId")]
public ulong? EventId { get; set; }
[JsonPropertyName(name: "ActivityLevelId")]
public string ActivityLevelId { get; set; } = "76d98498-60a1-430c-ab76-b54a29b7a163";
[JsonPropertyName(name: "Private")]
public bool Private { get; set; } = false;
[JsonPropertyName(name: "GameInProgress")]
public bool GameInProgress { get; set; } = false;
[JsonPropertyName(name: "MaxCapacity")]
public int MaxCapacity { get; set; } = 8;
[JsonPropertyName(name: "IsFull")]
public bool IsFull { get; set; } = false;
}
}

View File

@@ -0,0 +1,14 @@
namespace RecRoomArchive.Models.API.GameSessions
{
public enum JoinGameErrorCode
{
Success,
NoSuchGame,
PlayerNotOnline,
InsufficientSpace,
EventNotStarted,
EventAlreadyFinished,
EventCreatorNotReady,
Blocked
}
}

View File

@@ -0,0 +1,14 @@
using System.Text.Json.Serialization;
namespace RecRoomArchive.Models.API.GameSessions
{
public class JoinGameSessionResponse
{
[JsonPropertyName(name: "Result")]
public JoinGameErrorCode Result { get; set; } = JoinGameErrorCode.Success;
[JsonPropertyName(name: "GameSession")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public GameSession? GameSession { get; set; }
}
}

View File

@@ -0,0 +1,8 @@
namespace RecRoomArchive.Models.API.GameSessions
{
public class JoinRandomGameSessionRequest
{
public required string[] ActivityLevelIds { get; set; } = [];
public ulong[] ExpectedPlayerIds { get; set; } = [];
}
}

View File

@@ -0,0 +1,16 @@
using System.Text.Json.Serialization;
namespace RecRoomArchive.Models.API.GameSessions
{
public class PresenceResponseFuckYou
{
[JsonPropertyName(name: "PlayerId")]
public ulong PlayerId { get; set; }
[JsonPropertyName(name: "IsOnline")]
public bool IsOnline { get; set; }
[JsonPropertyName(name: "GameSession")]
public GameSession? GameSession { get; set; }
}
}