mirror of
https://github.com/TES3MP/openmw-tes3mp.git
synced 2025-01-30 06:15:32 +00:00
Fix some issues, found by Coverity Scan
This commit is contained in:
parent
778dfa0350
commit
e5a81b1f99
4 changed files with 13 additions and 6 deletions
|
@ -2145,9 +2145,11 @@ void CharacterController::update(float duration)
|
|||
if (isTurning())
|
||||
{
|
||||
// Adjust animation speed from 1.0 to 1.5 multiplier
|
||||
float turnSpeed = std::min(1.5f, std::abs(rot.z()) / duration / static_cast<float>(osg::PI));
|
||||
if (duration > 0)
|
||||
{
|
||||
float turnSpeed = std::min(1.5f, std::abs(rot.z()) / duration / static_cast<float>(osg::PI));
|
||||
mAnimation->adjustSpeedMult(mCurrentMovement, std::max(turnSpeed, 1.0f));
|
||||
}
|
||||
}
|
||||
else if (mMovementState != CharState_None && mAdjustMovementAnimSpeed)
|
||||
{
|
||||
|
|
|
@ -219,6 +219,7 @@ namespace
|
|||
|
||||
RemoveFinishedCallbackVisitor(int effectId)
|
||||
: RemoveVisitor()
|
||||
, mHasMagicEffects(false)
|
||||
, mEffectId(effectId)
|
||||
{
|
||||
}
|
||||
|
|
|
@ -1159,11 +1159,17 @@ namespace MWWorld
|
|||
|
||||
osg::Vec3f vec(x, y, z);
|
||||
|
||||
CellStore *currCell = ptr.isInCell() ? ptr.getCell() : NULL; // currCell == NULL should only happen for player, during initial startup
|
||||
CellStore *currCell = ptr.isInCell() ? ptr.getCell() : nullptr; // currCell == nullptr should only happen for player, during initial startup
|
||||
bool isPlayer = ptr == mPlayer->getPlayer();
|
||||
bool haveToMove = isPlayer || (currCell && mWorldScene->isCellActive(*currCell));
|
||||
MWWorld::Ptr newPtr = ptr;
|
||||
|
||||
if (!isPlayer && !currCell)
|
||||
throw std::runtime_error("Can not move actor \"" + ptr.getCellRef().getRefId() + "\" to another cell: current cell is nullptr");
|
||||
|
||||
if (!newCell)
|
||||
throw std::runtime_error("Can not move actor \"" + ptr.getCellRef().getRefId() + "\" to another cell: new cell is nullptr");
|
||||
|
||||
if (currCell != newCell)
|
||||
{
|
||||
removeContainerScripts(ptr);
|
||||
|
@ -1185,10 +1191,10 @@ namespace MWWorld
|
|||
addContainerScripts (getPlayerPtr(), newCell);
|
||||
newPtr = getPlayerPtr();
|
||||
}
|
||||
else if (currCell)
|
||||
else
|
||||
{
|
||||
bool currCellActive = mWorldScene->isCellActive(*currCell);
|
||||
bool newCellActive = newCell && mWorldScene->isCellActive(*newCell);
|
||||
bool newCellActive = mWorldScene->isCellActive(*newCell);
|
||||
if (!currCellActive && newCellActive)
|
||||
{
|
||||
newPtr = currCell->moveTo(ptr, newCell);
|
||||
|
|
|
@ -41,8 +41,6 @@ namespace Debug
|
|||
{
|
||||
return size;
|
||||
}
|
||||
|
||||
char mDebugLevel;
|
||||
};
|
||||
|
||||
#if defined(_WIN32) && defined(_DEBUG)
|
||||
|
|
Loading…
Reference in a new issue