mirror of
https://github.com/isledecomp/isle-portable.git
synced 2026-05-02 02:23:56 +00:00
Allow spectator to play click animation during scene playback
This commit is contained in:
parent
ac4cd6b979
commit
f7e2dd41ef
@ -75,6 +75,7 @@ class Controller {
|
|||||||
m_animStopCallback = p_animPlaying ? std::move(p_animStopCallback) : nullptr;
|
m_animStopCallback = p_animPlaying ? std::move(p_animStopCallback) : nullptr;
|
||||||
}
|
}
|
||||||
bool IsAnimPlaying() const { return m_animPlaying; }
|
bool IsAnimPlaying() const { return m_animPlaying; }
|
||||||
|
bool IsAnimLockDisplay() const { return m_animLockDisplay; }
|
||||||
|
|
||||||
void OnWorldEnabled(LegoWorld* p_world);
|
void OnWorldEnabled(LegoWorld* p_world);
|
||||||
void OnWorldDisabled(LegoWorld* p_world);
|
void OnWorldDisabled(LegoWorld* p_world);
|
||||||
|
|||||||
@ -1889,9 +1889,8 @@ std::string NetworkManager::BuildCompletionJson(uint16_t p_animIndex, uint64_t p
|
|||||||
}
|
}
|
||||||
|
|
||||||
std::vector<int8_t> slotChars = Animation::SessionHost::ComputeSlotCharIndices(entry);
|
std::vector<int8_t> slotChars = Animation::SessionHost::ComputeSlotCharIndices(entry);
|
||||||
uint8_t count = view->slotCount < static_cast<uint8_t>(slotChars.size())
|
uint8_t count = view->slotCount < static_cast<uint8_t>(slotChars.size()) ? view->slotCount
|
||||||
? view->slotCount
|
: static_cast<uint8_t>(slotChars.size());
|
||||||
: static_cast<uint8_t>(slotChars.size());
|
|
||||||
|
|
||||||
char eventIdHex[17];
|
char eventIdHex[17];
|
||||||
SDL_snprintf(
|
SDL_snprintf(
|
||||||
@ -2198,8 +2197,10 @@ void NetworkManager::HandleCustomize(const CustomizeMsg& p_msg)
|
|||||||
p_msg.changeType == CHANGE_MOOD
|
p_msg.changeType == CHANGE_MOOD
|
||||||
);
|
);
|
||||||
|
|
||||||
// Only play click animation in 3rd person (not during multi-part emote or animation playback)
|
// Only play click animation in 3rd person (not during multi-part emote or animation performance; spectators
|
||||||
if (cam->GetDisplayROI() && !cam->IsInVehicle() && !cam->IsExtraAnimBlocking() && !cam->IsAnimPlaying()) {
|
// allowed)
|
||||||
|
if (cam->GetDisplayROI() && !cam->IsInVehicle() && !cam->IsExtraAnimBlocking() &&
|
||||||
|
!(cam->IsAnimPlaying() && cam->IsAnimLockDisplay())) {
|
||||||
cam->StopClickAnimation();
|
cam->StopClickAnimation();
|
||||||
MxU32 clickAnimId =
|
MxU32 clickAnimId =
|
||||||
Common::CharacterCustomizer::PlayClickAnimation(cam->GetDisplayROI(), cam->GetCustomizeState());
|
Common::CharacterCustomizer::PlayClickAnimation(cam->GetDisplayROI(), cam->GetCustomizeState());
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user