Fixed items that aren't selected with the default select key being impossible to interact with, unconscious characters CanBeSelected

This commit is contained in:
Regalis
2017-03-19 18:29:53 +02:00
parent 4285cdde27
commit dde0160956
2 changed files with 6 additions and 12 deletions
+3 -9
View File
@@ -446,7 +446,7 @@ namespace Barotrauma
{ {
get get
{ {
return isDead || Stun > 0.0f || LockHands; return isDead || Stun > 0.0f || LockHands || IsUnconscious;
} }
} }
@@ -661,28 +661,22 @@ namespace Barotrauma
{ {
case InputType.Left: case InputType.Left:
return !(dequeuedInput.HasFlag(InputNetFlags.Left)) && (prevDequeuedInput.HasFlag(InputNetFlags.Left)); return !(dequeuedInput.HasFlag(InputNetFlags.Left)) && (prevDequeuedInput.HasFlag(InputNetFlags.Left));
//break;
case InputType.Right: case InputType.Right:
return !(dequeuedInput.HasFlag(InputNetFlags.Right)) && (prevDequeuedInput.HasFlag(InputNetFlags.Right)); return !(dequeuedInput.HasFlag(InputNetFlags.Right)) && (prevDequeuedInput.HasFlag(InputNetFlags.Right));
//break;
case InputType.Up: case InputType.Up:
return !(dequeuedInput.HasFlag(InputNetFlags.Up)) && (prevDequeuedInput.HasFlag(InputNetFlags.Up)); return !(dequeuedInput.HasFlag(InputNetFlags.Up)) && (prevDequeuedInput.HasFlag(InputNetFlags.Up));
//break;
case InputType.Down: case InputType.Down:
return !(dequeuedInput.HasFlag(InputNetFlags.Down)) && (prevDequeuedInput.HasFlag(InputNetFlags.Down)); return !(dequeuedInput.HasFlag(InputNetFlags.Down)) && (prevDequeuedInput.HasFlag(InputNetFlags.Down));
//break;
case InputType.Run: case InputType.Run:
return !(dequeuedInput.HasFlag(InputNetFlags.Run)) && (prevDequeuedInput.HasFlag(InputNetFlags.Run)); return !(dequeuedInput.HasFlag(InputNetFlags.Run)) && (prevDequeuedInput.HasFlag(InputNetFlags.Run));
//break;
case InputType.Crouch: case InputType.Crouch:
return !(dequeuedInput.HasFlag(InputNetFlags.Crouch)) && (prevDequeuedInput.HasFlag(InputNetFlags.Crouch)); return !(dequeuedInput.HasFlag(InputNetFlags.Crouch)) && (prevDequeuedInput.HasFlag(InputNetFlags.Crouch));
//break;
case InputType.Select: case InputType.Select:
return dequeuedInput.HasFlag(InputNetFlags.Select); //TODO: clean up the way this input is registered return dequeuedInput.HasFlag(InputNetFlags.Select); //TODO: clean up the way this input is registered
//break; case InputType.Use:
return !(dequeuedInput.HasFlag(InputNetFlags.Use)) && (prevDequeuedInput.HasFlag(InputNetFlags.Use));
default: default:
return false; return false;
//break;
} }
} }
@@ -212,7 +212,7 @@ namespace Barotrauma
{ {
msg.Write(memInput[i].intAim); msg.Write(memInput[i].intAim);
} }
if (memInput[i].states.HasFlag(InputNetFlags.Select)) if (memInput[i].states.HasFlag(InputNetFlags.Select) || memInput[i].states.HasFlag(InputNetFlags.Use))
{ {
msg.Write(memInput[i].interact); msg.Write(memInput[i].interact);
} }
@@ -254,7 +254,7 @@ namespace Barotrauma
{ {
newAim = msg.ReadUInt16(); newAim = msg.ReadUInt16();
} }
if (newInput.HasFlag(InputNetFlags.Select)) if (newInput.HasFlag(InputNetFlags.Select) || newInput.HasFlag(InputNetFlags.Use))
{ {
newInteract = msg.ReadUInt16(); newInteract = msg.ReadUInt16();
} }