Server is telling the client to update his position
| 8948 | |
| 8949 | // Server is telling the client to update his position |
| 8950 | void MultiSendAdjustPosition(int slot, float timestamp) { |
| 8951 | MULTI_ASSERT_NOMESSAGE(Netgame.local_role == LR_SERVER); |
| 8952 | |
| 8953 | int size_offset; |
| 8954 | int count = 0; |
| 8955 | uint8_t data[MAX_GAME_DATA_SIZE]; |
| 8956 | |
| 8957 | object *obj = &Objects[Players[slot].objnum]; |
| 8958 | |
| 8959 | size_offset = START_DATA(MP_ADJUST_POSITION, data, &count); |
| 8960 | MultiAddFloat(timestamp, data, &count); |
| 8961 | |
| 8962 | MultiAddFloat(obj->pos.x, data, &count); |
| 8963 | MultiAddFloat(obj->pos.y, data, &count); |
| 8964 | MultiAddFloat(obj->pos.z, data, &count); |
| 8965 | |
| 8966 | MultiAddFloat(obj->mtype.phys_info.velocity.x, data, &count); |
| 8967 | MultiAddFloat(obj->mtype.phys_info.velocity.y, data, &count); |
| 8968 | MultiAddFloat(obj->mtype.phys_info.velocity.z, data, &count); |
| 8969 | |
| 8970 | MultiAddInt(obj->roomnum, data, &count); |
| 8971 | |
| 8972 | END_DATA(count, data, size_offset); |
| 8973 | |
| 8974 | nw_Send(&NetPlayers[slot].addr, data, count, 0); |
| 8975 | } |
| 8976 | |
| 8977 | float Last_update_time[MAX_PLAYERS]; |
| 8978 | // Client is asking permission to move |
no test coverage detected