Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 530c6109ea | |||
| 3efd73d8cb | |||
| a85ac99a3c | |||
| e295e9f7db |
@@ -165,6 +165,7 @@ namespace Ragon.Common
|
|||||||
public void FromSpan(ref ReadOnlySpan<byte> data)
|
public void FromSpan(ref ReadOnlySpan<byte> data)
|
||||||
{
|
{
|
||||||
Clear();
|
Clear();
|
||||||
|
ResizeIfNeed(data.Length);
|
||||||
var dataSpan = _data.AsSpan();
|
var dataSpan = _data.AsSpan();
|
||||||
data.CopyTo(dataSpan);
|
data.CopyTo(dataSpan);
|
||||||
_size = data.Length;
|
_size = data.Length;
|
||||||
@@ -182,7 +183,7 @@ namespace Ragon.Common
|
|||||||
if (_offset + lenght < _data.Length)
|
if (_offset + lenght < _data.Length)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
var newData = new byte[_data.Length * 2];
|
var newData = new byte[_data.Length * 2 + lenght];
|
||||||
Buffer.BlockCopy(_data, 0, newData, 0, _data.Length);
|
Buffer.BlockCopy(_data, 0, newData, 0, _data.Length);
|
||||||
_data = newData;
|
_data = newData;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -26,8 +26,4 @@
|
|||||||
<ProjectReference Include="..\Ragon.Common\Ragon.Common.csproj" />
|
<ProjectReference Include="..\Ragon.Common\Ragon.Common.csproj" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
|
||||||
<Folder Include="Sources\Utils" />
|
|
||||||
</ItemGroup>
|
|
||||||
|
|
||||||
</Project>
|
</Project>
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ namespace Ragon.Core
|
|||||||
public static class ConfigurationLoader
|
public static class ConfigurationLoader
|
||||||
{
|
{
|
||||||
private static readonly Logger _logger = LogManager.GetCurrentClassLogger();
|
private static readonly Logger _logger = LogManager.GetCurrentClassLogger();
|
||||||
private static readonly string _serverVersion = "1.0.3-rc";
|
private static readonly string _serverVersion = "1.0.4-rc";
|
||||||
|
|
||||||
private static void CopyrightInfo()
|
private static void CopyrightInfo()
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -180,10 +180,10 @@ namespace Ragon.Core
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
Span<byte> payloadRaw = stackalloc byte[_serializer.Size];
|
Span<byte> payloadRaw = stackalloc byte[_serializer.Size];
|
||||||
ReadOnlySpan<byte> payload = payloadRaw;
|
|
||||||
var payloadData = _serializer.ReadData(_serializer.Size);
|
var payloadData = _serializer.ReadData(_serializer.Size);
|
||||||
payloadData.CopyTo(payloadRaw);
|
payloadData.CopyTo(payloadRaw);
|
||||||
|
|
||||||
|
ReadOnlySpan<byte> payload = payloadRaw;
|
||||||
if (_plugin.InternalHandle(peerId, entityId, evntId, ref payload))
|
if (_plugin.InternalHandle(peerId, entityId, evntId, ref payload))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
@@ -200,13 +200,20 @@ namespace Ragon.Core
|
|||||||
case RagonOperation.REPLICATE_EVENT:
|
case RagonOperation.REPLICATE_EVENT:
|
||||||
{
|
{
|
||||||
var evntId = _serializer.ReadUShort();
|
var evntId = _serializer.ReadUShort();
|
||||||
var payload = _serializer.ReadData(_serializer.Size);
|
|
||||||
|
Span<byte> payloadRaw = stackalloc byte[_serializer.Size];
|
||||||
|
var payloadData = _serializer.ReadData(_serializer.Size);
|
||||||
|
payloadData.CopyTo(payloadRaw);
|
||||||
|
|
||||||
|
ReadOnlySpan<byte> payload = payloadRaw;
|
||||||
if (_plugin.InternalHandle(peerId, evntId, ref payload))
|
if (_plugin.InternalHandle(peerId, evntId, ref payload))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
_serializer.Clear();
|
_serializer.Clear();
|
||||||
_serializer.WriteOperation(RagonOperation.REPLICATE_EVENT);
|
_serializer.WriteOperation(RagonOperation.REPLICATE_EVENT);
|
||||||
_serializer.WriteUShort(evntId);
|
_serializer.WriteUShort(evntId);
|
||||||
|
_serializer.WriteData(ref payload);
|
||||||
|
|
||||||
var sendData = _serializer.ToArray();
|
var sendData = _serializer.ToArray();
|
||||||
Broadcast(_readyPlayers, sendData, DeliveryType.Reliable);
|
Broadcast(_readyPlayers, sendData, DeliveryType.Reliable);
|
||||||
break;
|
break;
|
||||||
|
|||||||
Reference in New Issue
Block a user