public static void OnSendMessage(PlayerEntity player, Protobuf.PlayerDamageInfoMessage message) { if (!_active) { return; } var fakePos = player.position.Value; switch (degree % 4) { case 0: fakePos += player.thirdPersonModel.Value.transform.forward; break; case 1: fakePos += player.thirdPersonModel.Value.transform.right; break; case 2: fakePos -= player.thirdPersonModel.Value.transform.forward; break; case 3: fakePos -= player.thirdPersonModel.Value.transform.right; break; } message.PosX = fakePos.x; message.PosZ = fakePos.z; degree++; }
public void SendMessage(Protobuf.PlayerDamageInfoMessage msg, PlayerEntity target) { target.network.NetworkChannel.SendReliable((int)EServer2ClientMessage.DamageInfo, msg); Logger.DebugFormat("send damage info entityid :{0} damage :{1} posx : {2} posz: {3}", msg.EntityId, msg.Damage, msg.PosX, msg.PosZ); }