diff options
Diffstat (limited to 'Impostor-dev/src/Impostor.Plugins.Debugger/Pages')
-rw-r--r-- | Impostor-dev/src/Impostor.Plugins.Debugger/Pages/Index.razor | 69 | ||||
-rw-r--r-- | Impostor-dev/src/Impostor.Plugins.Debugger/Pages/_Host.cshtml | 19 |
2 files changed, 88 insertions, 0 deletions
diff --git a/Impostor-dev/src/Impostor.Plugins.Debugger/Pages/Index.razor b/Impostor-dev/src/Impostor.Plugins.Debugger/Pages/Index.razor new file mode 100644 index 0000000..1bfa478 --- /dev/null +++ b/Impostor-dev/src/Impostor.Plugins.Debugger/Pages/Index.razor @@ -0,0 +1,69 @@ +@page "/" +@implements IDisposable +@using Impostor.Api.Events.Managers +@using Impostor.Api.Games.Managers +@using Impostor.Api.Events +@using Impostor.Api.Events.Player +@implements Impostor.Api.Events.IEventListener +@inject IEventManager EventManager +@inject IGameManager GameManager + +<div class="container"> + <h2>Games</h2> + @if (GameManager.Games.Any()) + { + <table class="table table-striped"> + <thead> + <tr> + <th>Code</th> + <th>Players</th> + </tr> + </thead> + <tbody> + @foreach (var game in GameManager.Games) + { + <tr> + <td>@game.Code</td> + <td> + <ul class="mb-0"> + @foreach (var player in game.Players) + { + <li>@player.Client.Name</li> + } + </ul> + </td> + </tr> + } + </tbody> + </table> + } + else + { + <div class="text-center"> + <i class="text-muted">There are no active games.</i> + </div> + } +</div> + +@code { + private IDisposable _disposable; + + [EventListener(typeof(IGameCreatedEvent))] + [EventListener(typeof(IGameDestroyedEvent))] + [EventListener(typeof(IGamePlayerJoinedEvent))] + [EventListener(typeof(IGamePlayerLeftEvent))] + public void OnGameCreated(IGameEvent e) + { + StateHasChanged(); + } + + protected override void OnInitialized() + { + _disposable = EventManager.RegisterListener(this, InvokeAsync); + } + + public void Dispose() + { + _disposable?.Dispose(); + } +}
\ No newline at end of file diff --git a/Impostor-dev/src/Impostor.Plugins.Debugger/Pages/_Host.cshtml b/Impostor-dev/src/Impostor.Plugins.Debugger/Pages/_Host.cshtml new file mode 100644 index 0000000..eed3aaf --- /dev/null +++ b/Impostor-dev/src/Impostor.Plugins.Debugger/Pages/_Host.cshtml @@ -0,0 +1,19 @@ +@page "/" +@namespace Impostor.Plugins.Debugger.Pages +@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers + +<!DOCTYPE html> +<html lang="en"> +<head> + <meta charset="utf-8"/> + <meta name="viewport" content="width=device-width, initial-scale=1.0"/> + <title>Impostor Debugger</title> + <base href="~/"/> + <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" integrity="sha384-JcKb8q3iqJ61gNV9KGb8thSsNjpSL0n8PARn9HuZOnIxN0hoP+VmmDGMN5t9UJ0Z" crossorigin="anonymous"> +</head> +<body> +<component type="typeof(App)" render-mode="Server"/> + +<script src="_framework/blazor.server.js"></script> +</body> +</html>
\ No newline at end of file |