From: danbudworthmead Date: Thu, 12 Nov 2020 02:44:37 +0000 (+0000) Subject: Snap player to position (#109) X-Git-Tag: v1.2.2~30 X-Git-Url: https://git.deb.at/?a=commitdiff_plain;h=b7c9a03ca2f13fb277dc3990e24fea6749d1f466;p=rhonda%2Fimpostor.git Snap player to position (#109) * Snap player to position * Update IInnerCustomNetworkTransform.cs --- diff --git a/src/Impostor.Api/Net/Inner/Objects/Components/IInnerCustomNetworkTransform.cs b/src/Impostor.Api/Net/Inner/Objects/Components/IInnerCustomNetworkTransform.cs index 856e077..d238f37 100644 --- a/src/Impostor.Api/Net/Inner/Objects/Components/IInnerCustomNetworkTransform.cs +++ b/src/Impostor.Api/Net/Inner/Objects/Components/IInnerCustomNetworkTransform.cs @@ -1,6 +1,15 @@ -namespace Impostor.Api.Net.Inner.Objects.Components +using System.Numerics; +using System.Threading.Tasks; + +namespace Impostor.Api.Net.Inner.Objects.Components { public interface IInnerCustomNetworkTransform : IInnerNetObject { + /// + /// Snaps the current to the given position . + /// + /// The target position. + /// Task that must be awaited. + ValueTask SnapTo(Vector2 position); } } diff --git a/src/Impostor.Server/Net/Inner/Objects/Components/InnerCustomNetworkTransform.Api.cs b/src/Impostor.Server/Net/Inner/Objects/Components/InnerCustomNetworkTransform.Api.cs index 302bb73..0f848ad 100644 --- a/src/Impostor.Server/Net/Inner/Objects/Components/InnerCustomNetworkTransform.Api.cs +++ b/src/Impostor.Server/Net/Inner/Objects/Components/InnerCustomNetworkTransform.Api.cs @@ -1,8 +1,17 @@ -using Impostor.Api.Net.Inner.Objects.Components; +using System.Numerics; +using System.Threading.Tasks; +using Impostor.Api.Net.Inner.Objects.Components; namespace Impostor.Server.Net.Inner.Objects.Components { internal partial class InnerCustomNetworkTransform : IInnerCustomNetworkTransform { + public async ValueTask SnapTo(Vector2 position) + { + var writer = _game.StartRpc(NetId, RpcCalls.SnapTo); + WriteVector2(writer, position); + writer.Write(_lastSequenceId + 5U); + await _game.FinishRpcAsync(writer); + } } }