Responsible for synchronizing entity physics over network
More...
|
| MyEntityPhysicsStateGroup (MyEntity entity, IMyReplicable ownerReplicable) |
|
void | CreateClientData (MyClientStateBase forClient) |
| Called on server new clients starts replicating this group. More...
|
|
void | DestroyClientData (MyClientStateBase forClient) |
| Called on server when client stops replicating this group. More...
|
|
virtual void | Destroy () |
| Called when state group is being destroyed. More...
|
|
void | OnAck (MyClientStateBase forClient, byte packetId, bool delivered) |
| Called for each packet id sent to client from this state group. When ACK received, called immediatelly. When several other packets received from client, but some were missing, called for each missing packet. More...
|
|
void | ForceSend (MyClientStateBase clientData) |
|
void | TimestampReset (MyTimeSpan timestamp) |
|
virtual void | ClientUpdate (MyTimeSpan clientTimestamp) |
| Update method called on client. More...
|
|
virtual void | Serialize (BitStream stream, EndpointId forClient, MyTimeSpan timeStamp, byte packetId, int maxBitPosition) |
| (De)serializes group state or it's diff for client. When writing, you can write beyond maxBitPosition, but message won't be sent and ACKs won't be received for it. ReplicationServer will detect, that state group written beyond packet size and revert it. When nothing written, ReplicationServer will detect that and state group won't receive ACK for that packet id. More...
|
|
bool | IsStillDirty (EndpointId forClient) |
|
Responsible for synchronizing entity physics over network
Definition at line 20 of file MyEntityPhysicsStateGroup.cs.
Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.MyEntityPhysicsStateGroup |
( |
MyEntity |
entity, |
|
|
IMyReplicable |
ownerReplicable |
|
) |
| |
|
inline |
virtual void Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.ClientUpdate |
( |
MyTimeSpan |
clientTimestamp | ) |
|
|
inlinevirtual |
void Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.CreateClientData |
( |
MyClientStateBase |
forClient | ) |
|
|
inline |
virtual void Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.Destroy |
( |
| ) |
|
|
inlinevirtual |
void Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.DestroyClientData |
( |
MyClientStateBase |
forClient | ) |
|
|
inline |
void Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.ForceSend |
( |
MyClientStateBase |
clientData | ) |
|
|
inline |
float Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.GetBasicPhysicsPriority |
( |
MyClientInfo |
client | ) |
|
|
inlineprotected |
Takes into account: Static body (zero priority for static), ResponsibilityForUpdate by client (zero priority for not responsible), otherwise returns OwnerReplicable priority.
Definition at line 185 of file MyEntityPhysicsStateGroup.cs.
virtual float Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.GetGroupPriority |
( |
int |
frameCountWithoutSync, |
|
|
MyClientInfo |
client, |
|
|
PrioritySettings |
settings |
|
) |
| |
|
inlineprotectedvirtual |
float Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.GetMovementScale |
( |
PrioritySettings |
prioritySettings, |
|
|
out float |
updateOncePer |
|
) |
| |
|
inlineprotected |
virtual bool Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.IsMoving |
( |
MyEntity |
entity | ) |
|
|
inlineprotectedvirtual |
bool Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.IsStillDirty |
( |
EndpointId |
forClient | ) |
|
|
inline |
void Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.OnAck |
( |
MyClientStateBase |
forClient, |
|
|
byte |
packetId, |
|
|
bool |
delivered |
|
) |
| |
|
inline |
Called for each packet id sent to client from this state group. When ACK received, called immediatelly. When several other packets received from client, but some were missing, called for each missing packet.
- Parameters
-
forClient | The client. |
packetId | Id of the delivered or lost packet. |
delivered | True when packet was delivered, false when packet is considered lost. |
Implements VRage.Network.IMyStateGroup.
Definition at line 93 of file MyEntityPhysicsStateGroup.cs.
static bool Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.ResponsibleForUpdate |
( |
MyEntity |
entity, |
|
|
EndpointId |
endpointId |
|
) |
| |
|
inlinestatic |
virtual void Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.Serialize |
( |
BitStream |
stream, |
|
|
EndpointId |
forClient, |
|
|
MyTimeSpan |
timestamp, |
|
|
byte |
packetId, |
|
|
int |
maxBitPosition |
|
) |
| |
|
inlinevirtual |
(De)serializes group state or it's diff for client. When writing, you can write beyond maxBitPosition, but message won't be sent and ACKs won't be received for it. ReplicationServer will detect, that state group written beyond packet size and revert it. When nothing written, ReplicationServer will detect that and state group won't receive ACK for that packet id.
- Parameters
-
stream | Stream to write to or read from. |
forClient | When writing the client which will receive the data. When reading, it's null. |
packetId | Id of packet in which the data will be sent or from which the data is received. |
maxBitPosition | Maximum position in bit stream where you can write data, it's inclusive. |
Implements VRage.Network.IMyStateGroup.
Reimplemented in Sandbox.Game.Replication.StateGroups.MyCharacterPhysicsStateGroup.
Definition at line 115 of file MyEntityPhysicsStateGroup.cs.
void Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.TimestampReset |
( |
MyTimeSpan |
timestamp | ) |
|
|
inline |
uint Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.m_lastMovementFrame = 0 |
|
protected |
const int Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.NUM_DECIMAL_PRECISION = 3 |
float Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.PRECISION = 1 / (float)Math.Pow(10, NUM_DECIMAL_PRECISION) |
|
staticprotected |
MyEntity Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.Entity |
|
get |
virtual StateGroupEnum Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.GroupType |
|
get |
bool Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.IsAccelerating |
|
getprotected |
bool Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.IsControlledLocally |
|
getprotected |
IMyReplicable Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.Owner |
|
get |
The documentation for this class was generated from the following file: