예제 #1
0
 public static void Assign(this Entity entity, MoveMsg msg)
 {
     EntityHelper.SetEntityId(entity, msg.Id);
     entity.Get<Pos>().X = msg.X;
     entity.Get<Pos>().Y = msg.Y;
     entity.Get<Motion>().Dir = msg.Dir;
     entity.Get<Motion>().Speed = msg.Speed;
 }
예제 #2
0
파일: Movement.cs 프로젝트: ktj007/mmo
        internal void OnMove(Entity entity, MessageSession session, MoveMsg msg)
        {
            entity.Assign(msg);
            entity.Get<Motion>().StartTime = DateTime.Now;
            PositionSystem.Global.Move(entity);

            entity.Broadcast<UpdatePositionMsg>(entity.Id);
        }
예제 #3
0
 public static MoveMsg ToMoveMsg(this Entity entity)
 {
     var msg = new MoveMsg();
     Assign(msg, entity);
     return msg;
 }