NetworkTask init
This commit is contained in:
parent
fb30b8628e
commit
4fd28308f2
3 changed files with 101 additions and 12 deletions
|
@ -1,12 +0,0 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DangerousD.GameCore.Network.Json
|
||||
{
|
||||
public class JsonTask
|
||||
{
|
||||
}
|
||||
}
|
87
DangerousD/GameCore/Network/NetworkTask.cs
Normal file
87
DangerousD/GameCore/Network/NetworkTask.cs
Normal file
|
@ -0,0 +1,87 @@
|
|||
using Microsoft.Xna.Framework;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DangerousD.GameCore.Network
|
||||
{
|
||||
[Serializable]
|
||||
public class NetworkTask
|
||||
{
|
||||
public NetworkTaskOperationEnum operation { get; set; }
|
||||
public string name { get; set; }
|
||||
public int value { get; set; }
|
||||
public int objId { get; set; }
|
||||
public Vector2 position { get; set; }
|
||||
public Vector2 velocity { get; set; }
|
||||
public Type type { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Нанести урон сущности
|
||||
/// </summary>
|
||||
/// <param name="LivingEntityId"></param>
|
||||
/// <param name="Damage"></param>
|
||||
public NetworkTask(int LivingEntityId, int Damage)
|
||||
{
|
||||
operation = NetworkTaskOperationEnum.TakeDamage;
|
||||
objId = LivingEntityId;
|
||||
value = Damage;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Проиграть звук на позиции
|
||||
/// </summary>
|
||||
/// <param name="SoundPosition"></param>
|
||||
/// <param name="SoundName"></param>
|
||||
public NetworkTask(Vector2 SoundPosition, string SoundName)
|
||||
{
|
||||
operation = NetworkTaskOperationEnum.SendSound;
|
||||
position = SoundPosition;
|
||||
name = SoundName;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Создать сущность на позиции с заданной скоростью и присвоить её родительской сущности
|
||||
/// </summary>
|
||||
/// <param name="EntityType"></param>
|
||||
/// <param name="EntityPosition"></param>
|
||||
/// <param name="EntityVelocity"></param>
|
||||
/// <param name="ParentId"></param>
|
||||
public NetworkTask(Type EntityType, Vector2 EntityPosition, Vector2 EntityVelocity, int ParentId)
|
||||
{
|
||||
operation = NetworkTaskOperationEnum.CreateEntity;
|
||||
type = EntityType;
|
||||
position = EntityPosition;
|
||||
velocity = EntityVelocity;
|
||||
objId = ParentId;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Изменить позицию сущности со сложной логикой(игрок)
|
||||
/// </summary>
|
||||
/// <param name="EntityId"></param>
|
||||
/// <param name="EntityPosition"></param>
|
||||
public NetworkTask(int EntityId, Vector2 EntityPosition)
|
||||
{
|
||||
operation = NetworkTaskOperationEnum.SendPosition;
|
||||
objId = EntityId;
|
||||
position = EntityPosition;
|
||||
}
|
||||
/// <summary>
|
||||
/// Изменяет состояние и/или скорость сущности
|
||||
/// </summary>
|
||||
/// <param name="EntityId"></param>
|
||||
/// <param name="StateName"></param>
|
||||
/// <param name="EntityVelocity"></param>
|
||||
public NetworkTask(int EntityId, string StateName, Vector2 EntityVelocity)
|
||||
{
|
||||
operation = NetworkTaskOperationEnum.ChangeState;
|
||||
objId = EntityId;
|
||||
name = StateName;
|
||||
velocity = EntityVelocity;
|
||||
}
|
||||
}
|
||||
}
|
14
DangerousD/GameCore/Network/NetworkTaskOperationEnum.cs
Normal file
14
DangerousD/GameCore/Network/NetworkTaskOperationEnum.cs
Normal file
|
@ -0,0 +1,14 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DangerousD.GameCore.Network
|
||||
{
|
||||
[Serializable]
|
||||
public enum NetworkTaskOperationEnum
|
||||
{
|
||||
TakeDamage, SendSound, CreateEntity, SendPosition, ChangeState
|
||||
}
|
||||
}
|
Loading…
Add table
Reference in a new issue