fix late aimPosition
This commit is contained in:
parent
658fab846e
commit
696abcca71
@ -874,6 +874,12 @@ void ClientApplication::updateRunning(float dt) {
|
|||||||
else
|
else
|
||||||
m_player->setMoveVector(Vec2F());
|
m_player->setMoveVector(Vec2F());
|
||||||
|
|
||||||
|
m_voice->setInput(m_input->bindHeld("opensb", "pushToTalk"));
|
||||||
|
DataStreamBuffer voiceData;
|
||||||
|
voiceData.setByteOrder(ByteOrder::LittleEndian);
|
||||||
|
//voiceData.writeBytes(VoiceBroadcastPrefix.utf8Bytes()); transmitting with SE compat for now
|
||||||
|
bool needstoSendVoice = m_voice->send(voiceData, 5000);
|
||||||
|
|
||||||
auto checkDisconnection = [this]() {
|
auto checkDisconnection = [this]() {
|
||||||
if (!m_universeClient->isConnected()) {
|
if (!m_universeClient->isConnected()) {
|
||||||
m_cinematicOverlay->stop();
|
m_cinematicOverlay->stop();
|
||||||
@ -893,11 +899,7 @@ void ClientApplication::updateRunning(float dt) {
|
|||||||
if (checkDisconnection())
|
if (checkDisconnection())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
m_voice->setInput(m_input->bindHeld("opensb", "pushToTalk"));
|
m_mainInterface->preUpdate(dt);
|
||||||
DataStreamBuffer voiceData;
|
|
||||||
voiceData.setByteOrder(ByteOrder::LittleEndian);
|
|
||||||
//voiceData.writeBytes(VoiceBroadcastPrefix.utf8Bytes()); transmitting with SE compat for now
|
|
||||||
bool needstoSendVoice = m_voice->send(voiceData, 5000);
|
|
||||||
m_universeClient->update(dt);
|
m_universeClient->update(dt);
|
||||||
|
|
||||||
if (checkDisconnection())
|
if (checkDisconnection())
|
||||||
|
@ -505,6 +505,12 @@ void MainInterface::handleInteractAction(InteractAction interactAction) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MainInterface::preUpdate(float dt) {
|
||||||
|
auto player = m_client->mainPlayer();
|
||||||
|
if (!m_client->paused())
|
||||||
|
player->aim(cursorWorldPosition());
|
||||||
|
}
|
||||||
|
|
||||||
void MainInterface::update(float dt) {
|
void MainInterface::update(float dt) {
|
||||||
m_paneManager.update(dt);
|
m_paneManager.update(dt);
|
||||||
m_cursor.update(dt);
|
m_cursor.update(dt);
|
||||||
@ -516,8 +522,6 @@ void MainInterface::update(float dt) {
|
|||||||
|
|
||||||
auto player = m_client->mainPlayer();
|
auto player = m_client->mainPlayer();
|
||||||
auto cursorWorldPos = cursorWorldPosition();
|
auto cursorWorldPos = cursorWorldPosition();
|
||||||
if (!m_client->paused())
|
|
||||||
player->aim(cursorWorldPos);
|
|
||||||
if (player->wireToolInUse()) {
|
if (player->wireToolInUse()) {
|
||||||
m_paneManager.displayRegisteredPane(MainInterfacePanes::WireInterface);
|
m_paneManager.displayRegisteredPane(MainInterfacePanes::WireInterface);
|
||||||
player->setWireConnector(m_wireInterface.get());
|
player->setWireConnector(m_wireInterface.get());
|
||||||
|
@ -89,6 +89,7 @@ public:
|
|||||||
|
|
||||||
void handleInteractAction(InteractAction interactAction);
|
void handleInteractAction(InteractAction interactAction);
|
||||||
|
|
||||||
|
void preUpdate(float dt);
|
||||||
// Handles incoming client messages, aims main player, etc.
|
// Handles incoming client messages, aims main player, etc.
|
||||||
void update(float dt);
|
void update(float dt);
|
||||||
|
|
||||||
|
@ -900,7 +900,9 @@ void Player::update(float dt, uint64_t) {
|
|||||||
|
|
||||||
m_tools->effects(*m_effectEmitter);
|
m_tools->effects(*m_effectEmitter);
|
||||||
|
|
||||||
|
auto aimRelative = world()->geometry().diff(m_aimPosition, position()); // dumb, but due to how things are ordered
|
||||||
m_movementController->tickMaster(dt);
|
m_movementController->tickMaster(dt);
|
||||||
|
m_aimPosition = position() + aimRelative; // it's gonna have to be like this for now
|
||||||
|
|
||||||
m_techController->tickMaster(dt);
|
m_techController->tickMaster(dt);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user