Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • alchemy/viewer
  • Miezhiko/alchemy-next
  • JennaHuntsman/xdg-integration
  • logue/alchemy-next
  • FelixWolf/alchemy-viewer
  • XenHat/xdg-integration
6 results
Show changes
Commits on Source (2)
  • XenHat's avatar
    Improve handling of recent VISTA AO notecards · b99abe16
    XenHat authored
    This fixes association between the VISTA custom standing states and the viewer's own standing animation list:
    The viewer AO will now load the animations present in the "Mode 1" preset - All standing animations, according to their manual - into the "Standing" animation list.
    It will also avoid throwing misleading errors when loading the "Calm" and "Mode 2" states, as those are known, but not handled by the viewer AO.
    b99abe16
  • XenHat's avatar
    Merge branch 'viewer-ao' into 'master' · 4a822eb8
    XenHat authored
    Viewer ao improvements
    
    See merge request alchemy/alchemy-next!5
    4a822eb8
......@@ -1741,6 +1741,12 @@ void ALAOEngine::parseNotecard(std::unique_ptr<char[]>&& buffer)
std::string stateName = line.substr(1, endTag - 1);
LLStringUtil::trim(stateName);
// Recognized but not currently implemented. Handled here to avoid misleading "state not found" notification.
if ("Standing mode 2" == stateName || "Standing Calm" == stateName)
{
continue;
}
ALAOSet::AOState* newState = mImportSet->getStateByName(stateName);
if (!newState)
{
......@@ -1770,6 +1776,13 @@ void ALAOEngine::parseNotecard(std::unique_ptr<char[]>&& buffer)
newState->mAnimations.push_back(animation);
isValid = true;
}
if ("Standing mode 1" == stateName)
{
newState->mCycle = true;
newState->mCycleTime = 30.0f;
newState->mDirty = true;
}
}
if (!isValid)
......@@ -1824,6 +1837,16 @@ void ALAOEngine::processImport(bool aFromTimer)
ALAOSet::AOState* state = mImportSet->getState(index);
if (!state->mAnimations.empty())
{
if (state->mCycleTime)
{
const std::string oldName = state->mName;
state->mName = llformat("%s%d",oldName + ":CT",state->mCycleTime);
}
if (state->mCycle)
{
const std::string oldName = state->mName;
state->mName = llformat("%s%s", oldName, ":CY";
}
allComplete = false;
LL_DEBUGS("AOEngine") << "state " << state->mName << " still has animations to link." << LL_ENDL;
......
......@@ -48,7 +48,7 @@ ALAOSet::ALAOSet(const LLUUID& inventoryID)
// ZHAO names first, alternate names following, separated by | characters
// keep number and order in sync with the enum in the declaration
static const std::array<std::string, AOSTATES_MAX> sStateNames {{
"Standing|Stand.1|Stand.2|Stand.3",
"Standing|Standing mode 1|Stand.1|Stand.2|Stand.3",
"Walking|Walk.N",
"Running",
"Sitting|Sit.N",
......