forked from mirror/openmw-tes3mp
Merge branch 'master' of https://github.com/OpenMW/openmw
Conflicts: components/esm/inventorystate.hpp
This commit is contained in:
commit
5b76c0893a
20 changed files with 73 additions and 33 deletions
|
@ -594,6 +594,7 @@ if (WIN32)
|
|||
4706 # Assignment in conditional expression
|
||||
4738 # Storing 32-bit float result in memory, possible loss of performance
|
||||
4986 # Undocumented warning that occurs in the crtdbg.h file
|
||||
4987 # nonstandard extension used (triggered by setjmp.h)
|
||||
4996 # Function was declared deprecated
|
||||
|
||||
# cause by ogre extensivly
|
||||
|
@ -610,7 +611,9 @@ if (WIN32)
|
|||
4305 # Truncating value (double to float, for example)
|
||||
4309 # Variable overflow, trying to store 128 in a signed char for example
|
||||
4355 # Using 'this' in member initialization list
|
||||
4505 # Unreferenced local function has been removed
|
||||
4701 # Potentially uninitialized local variable used
|
||||
4702 # Unreachable code
|
||||
4800 # Boolean optimization warning, e.g. myBool = (myInt != 0) instead of myBool = myInt
|
||||
)
|
||||
|
||||
|
@ -618,19 +621,31 @@ if (WIN32)
|
|||
set(WARNINGS "${WARNINGS} /wd${d}")
|
||||
endforeach(d)
|
||||
|
||||
set_target_properties(shiny PROPERTIES COMPILE_FLAGS ${WARNINGS})
|
||||
set_target_properties(shiny.OgrePlatform PROPERTIES COMPILE_FLAGS ${WARNINGS})
|
||||
# boost::wave has a few issues with signed / unsigned conversions, so we suppress those here
|
||||
set(SHINY_WARNINGS "${WARNINGS} /wd4245")
|
||||
set_target_properties(shiny PROPERTIES COMPILE_FLAGS ${SHINY_WARNINGS})
|
||||
# there's an unreferenced local variable in the ogre platform, suppress it
|
||||
set(SHINY_OGRE_WARNINGS "${WARNINGS} /wd4101")
|
||||
set_target_properties(shiny.OgrePlatform PROPERTIES COMPILE_FLAGS ${SHINY_OGRE_WARNINGS})
|
||||
set_target_properties(sdl4ogre PROPERTIES COMPILE_FLAGS ${WARNINGS})
|
||||
set_target_properties(oics PROPERTIES COMPILE_FLAGS ${WARNINGS})
|
||||
set_target_properties(components PROPERTIES COMPILE_FLAGS ${WARNINGS})
|
||||
if (BUILD_LAUNCHER)
|
||||
set_target_properties(omwlauncher PROPERTIES COMPILE_FLAGS ${WARNINGS})
|
||||
endif (BUILD_LAUNCHER)
|
||||
set_target_properties(openmw PROPERTIES COMPILE_FLAGS ${WARNINGS})
|
||||
if (BUILD_BSATOOL)
|
||||
if (BUILD_BSATOOL)
|
||||
set_target_properties(bsatool PROPERTIES COMPILE_FLAGS ${WARNINGS})
|
||||
endif (BUILD_BSATOOL)
|
||||
endif (BUILD_BSATOOL)
|
||||
if (BUILD_ESMTOOL)
|
||||
set_target_properties(esmtool PROPERTIES COMPILE_FLAGS ${WARNINGS})
|
||||
endif (BUILD_ESMTOOL)
|
||||
if (BUILD_OPENCS)
|
||||
set_target_properties(opencs PROPERTIES COMPILE_FLAGS ${WARNINGS})
|
||||
endif (BUILD_OPENCS)
|
||||
if (BUILD_MWINIIMPORTER)
|
||||
set_target_properties(mwiniimport PROPERTIES COMPILE_FLAGS ${WARNINGS})
|
||||
endif (BUILD_MWINIIMPORTER)
|
||||
endif(MSVC)
|
||||
|
||||
# Same for MinGW
|
||||
|
|
|
@ -79,7 +79,7 @@ void CSVWorld::VarTypeDelegateFactory::add (ESM::VarType type)
|
|||
std::vector<std::string> enums =
|
||||
CSMWorld::Columns::getEnums (CSMWorld::Columns::ColumnId_ValueType);
|
||||
|
||||
if (type<0 && type>=enums.size())
|
||||
if (static_cast<size_t>(type) >= enums.size())
|
||||
throw std::logic_error ("Unsupported variable type");
|
||||
|
||||
mValues.push_back (std::make_pair (type, QString::fromUtf8 (enums[type].c_str())));
|
||||
|
|
|
@ -721,6 +721,8 @@ protected:
|
|||
typedef TypesetBookImpl::Section Section;
|
||||
typedef TypesetBookImpl::Line Line;
|
||||
typedef TypesetBookImpl::Run Run;
|
||||
bool mIsPageReset;
|
||||
size_t mPage;
|
||||
|
||||
struct TextFormat : ISubWidget
|
||||
{
|
||||
|
@ -771,6 +773,23 @@ protected:
|
|||
void destroyDrawItem() {};
|
||||
};
|
||||
|
||||
void resetPage()
|
||||
{
|
||||
mIsPageReset = true;
|
||||
mPage = 0;
|
||||
}
|
||||
|
||||
void setPage(size_t page)
|
||||
{
|
||||
mIsPageReset = false;
|
||||
mPage = page;
|
||||
}
|
||||
|
||||
bool isPageDifferent(size_t page)
|
||||
{
|
||||
return mIsPageReset || (mPage != page);
|
||||
}
|
||||
|
||||
public:
|
||||
|
||||
typedef TypesetBookImpl::StyleImpl Style;
|
||||
|
@ -786,14 +805,13 @@ public:
|
|||
|
||||
|
||||
boost::shared_ptr <TypesetBookImpl> mBook;
|
||||
size_t mPage;
|
||||
|
||||
MyGUI::ILayerNode* mNode;
|
||||
ActiveTextFormats mActiveTextFormats;
|
||||
|
||||
PageDisplay ()
|
||||
{
|
||||
mPage = -1;
|
||||
resetPage ();
|
||||
mViewTop = 0;
|
||||
mViewBottom = 0;
|
||||
mFocusItem = NULL;
|
||||
|
@ -928,7 +946,7 @@ public:
|
|||
createActiveFormats (newBook);
|
||||
|
||||
mBook = newBook;
|
||||
mPage = newPage;
|
||||
setPage (newPage);
|
||||
|
||||
if (newPage < mBook->mPages.size ())
|
||||
{
|
||||
|
@ -944,19 +962,19 @@ public:
|
|||
else
|
||||
{
|
||||
mBook.reset ();
|
||||
mPage = -1;
|
||||
resetPage ();
|
||||
mViewTop = 0;
|
||||
mViewBottom = 0;
|
||||
}
|
||||
}
|
||||
else
|
||||
if (mBook && mPage != newPage)
|
||||
if (mBook && isPageDifferent (newPage))
|
||||
{
|
||||
if (mNode != NULL)
|
||||
for (ActiveTextFormats::iterator i = mActiveTextFormats.begin (); i != mActiveTextFormats.end (); ++i)
|
||||
mNode->outOfDate(i->second->mRenderItem);
|
||||
|
||||
mPage = newPage;
|
||||
setPage (newPage);
|
||||
|
||||
if (newPage < mBook->mPages.size ())
|
||||
{
|
||||
|
|
|
@ -25,7 +25,7 @@ namespace MWGui
|
|||
ItemView* mItemView;
|
||||
SortFilterItemModel* mSortModel;
|
||||
CompanionItemModel* mModel;
|
||||
size_t mSelectedItem;
|
||||
int mSelectedItem;
|
||||
|
||||
DragAndDrop* mDragAndDrop;
|
||||
|
||||
|
|
|
@ -62,7 +62,7 @@ namespace MWGui
|
|||
MWGui::ItemView* mItemView;
|
||||
SortFilterItemModel* mSortModel;
|
||||
ItemModel* mModel;
|
||||
size_t mSelectedItem;
|
||||
int mSelectedItem;
|
||||
|
||||
MyGUI::Button* mDisposeCorpseButton;
|
||||
MyGUI::Button* mTakeButton;
|
||||
|
|
|
@ -511,7 +511,7 @@ namespace MWGui
|
|||
|
||||
void DialogueWindow::onScrollbarMoved(MyGUI::ScrollBar *sender, size_t pos)
|
||||
{
|
||||
mHistory->setPosition(0,-pos);
|
||||
mHistory->setPosition(0, pos * -1);
|
||||
}
|
||||
|
||||
void DialogueWindow::addResponse(const std::string &text, const std::string &title)
|
||||
|
|
|
@ -52,7 +52,7 @@ namespace MWGui
|
|||
DragAndDrop* mDragAndDrop;
|
||||
|
||||
bool mPreviewDirty;
|
||||
size_t mSelectedItem;
|
||||
int mSelectedItem;
|
||||
|
||||
MWWorld::Ptr mPtr;
|
||||
|
||||
|
|
|
@ -42,6 +42,8 @@ namespace MWGui
|
|||
|
||||
std::map <int, std::vector<MagicEffectInfo> > mEffectSources;
|
||||
|
||||
virtual ~EffectSourceVisitor() {}
|
||||
|
||||
virtual void visit (MWMechanics::EffectKey key,
|
||||
const std::string& sourceName, int casterActorId,
|
||||
float magnitude, float remainingTime = -1);
|
||||
|
|
|
@ -146,8 +146,8 @@ namespace MWMechanics
|
|||
|| weapon.get<ESM::Weapon>()->mBase->mData.mFlags & ESM::Weapon::Magical))
|
||||
damage *= multiplier;
|
||||
|
||||
if (weapon.get<ESM::Weapon>()->mBase->mData.mFlags & ESM::Weapon::Silver
|
||||
& actor.getClass().isNpc() && actor.getClass().getNpcStats(actor).isWerewolf())
|
||||
if ((weapon.get<ESM::Weapon>()->mBase->mData.mFlags & ESM::Weapon::Silver)
|
||||
&& actor.getClass().isNpc() && actor.getClass().getNpcStats(actor).isWerewolf())
|
||||
damage *= MWBase::Environment::get().getWorld()->getStore().get<ESM::GameSetting>().find("fWereWolfSilverWeaponDamageMult")->getFloat();
|
||||
|
||||
if (damage == 0 && attacker.getRefData().getHandle() == "player")
|
||||
|
|
|
@ -70,7 +70,7 @@ namespace MWMechanics
|
|||
return getLevelledItem(ref.getPtr().get<ESM::CreatureLevList>()->mBase, failChance);
|
||||
}
|
||||
}
|
||||
catch (std::logic_error& e)
|
||||
catch (std::logic_error&)
|
||||
{
|
||||
// Vanilla doesn't fail on nonexistent items in levelled lists
|
||||
std::cerr << "Warning: ignoring nonexistent item '" << item << "'" << std::endl;
|
||||
|
|
|
@ -35,7 +35,7 @@ OcclusionQuery::OcclusionQuery(OEngine::Render::OgreRenderer* renderer, SceneNod
|
|||
|
||||
mSupported = (mSunTotalAreaQuery != 0) && (mSunVisibleAreaQuery != 0);
|
||||
}
|
||||
catch (Ogre::Exception& e)
|
||||
catch (Ogre::Exception&)
|
||||
{
|
||||
mSupported = false;
|
||||
}
|
||||
|
|
|
@ -33,6 +33,7 @@ namespace MWRender
|
|||
{
|
||||
public:
|
||||
WeaponAnimation() : mPitchFactor(0) {}
|
||||
virtual ~WeaponAnimation() {}
|
||||
|
||||
virtual void attachArrow(MWWorld::Ptr actor);
|
||||
virtual void releaseArrow(MWWorld::Ptr actor);
|
||||
|
|
|
@ -295,7 +295,7 @@ namespace MWScript
|
|||
{
|
||||
store = MWBase::Environment::get().getWorld()->getInterior(cellID);
|
||||
}
|
||||
catch(std::exception &e)
|
||||
catch(std::exception&)
|
||||
{
|
||||
const ESM::Cell* cell = MWBase::Environment::get().getWorld()->getExterior(cellID);
|
||||
if(cell)
|
||||
|
@ -395,7 +395,7 @@ namespace MWScript
|
|||
{
|
||||
store = MWBase::Environment::get().getWorld()->getInterior(cellID);
|
||||
}
|
||||
catch(std::exception &e)
|
||||
catch(std::exception&)
|
||||
{
|
||||
const ESM::Cell* cell = MWBase::Environment::get().getWorld()->getExterior(cellID);
|
||||
if(cell)
|
||||
|
|
|
@ -204,7 +204,7 @@ void FFmpeg_Decoder::open(const std::string &fname)
|
|||
|
||||
mFrame = avcodec_alloc_frame();
|
||||
}
|
||||
catch(std::exception &e)
|
||||
catch(std::exception&)
|
||||
{
|
||||
if (mFormatCtx->pb->buffer != NULL)
|
||||
{
|
||||
|
|
|
@ -288,7 +288,7 @@ OpenAL_SoundStream::OpenAL_SoundStream(OpenAL_Output &output, ALuint src, Decode
|
|||
|
||||
mOutput.mActiveSounds.push_back(this);
|
||||
}
|
||||
catch(std::exception &e)
|
||||
catch(std::exception&)
|
||||
{
|
||||
alDeleteBuffers(sNumBuffers, mBuffers);
|
||||
alGetError();
|
||||
|
@ -471,7 +471,7 @@ bool OpenAL_SoundStream::process()
|
|||
|
||||
mIsFinished = finished;
|
||||
}
|
||||
catch(std::exception &e) {
|
||||
catch(std::exception&) {
|
||||
std::cout<< "Error updating stream \""<<mDecoder->getName()<<"\"" <<std::endl;
|
||||
mSamplesQueued = 0;
|
||||
mIsFinished = true;
|
||||
|
@ -781,7 +781,7 @@ ALuint OpenAL_Output::getBuffer(const std::string &fname)
|
|||
{
|
||||
decoder->open(fname);
|
||||
}
|
||||
catch(Ogre::FileNotFoundException &e)
|
||||
catch(Ogre::FileNotFoundException&)
|
||||
{
|
||||
std::string::size_type pos = fname.rfind('.');
|
||||
if(pos == std::string::npos)
|
||||
|
@ -859,7 +859,7 @@ MWBase::SoundPtr OpenAL_Output::playSound(const std::string &fname, float vol, f
|
|||
buf = getBuffer(fname);
|
||||
sound.reset(new OpenAL_Sound(*this, src, buf, Ogre::Vector3(0.0f), vol, basevol, pitch, 1.0f, 1000.0f, flags));
|
||||
}
|
||||
catch(std::exception &e)
|
||||
catch(std::exception&)
|
||||
{
|
||||
mFreeSources.push_back(src);
|
||||
if(buf && alIsBuffer(buf))
|
||||
|
@ -898,7 +898,7 @@ MWBase::SoundPtr OpenAL_Output::playSound3D(const std::string &fname, const Ogre
|
|||
buf = getBuffer(fname);
|
||||
sound.reset(new OpenAL_Sound3D(*this, src, buf, pos, vol, basevol, pitch, min, max, flags));
|
||||
}
|
||||
catch(std::exception &e)
|
||||
catch(std::exception&)
|
||||
{
|
||||
mFreeSources.push_back(src);
|
||||
if(buf && alIsBuffer(buf))
|
||||
|
@ -940,7 +940,7 @@ MWBase::SoundPtr OpenAL_Output::streamSound(DecoderPtr decoder, float volume, fl
|
|||
{
|
||||
sound.reset(new OpenAL_SoundStream(*this, src, decoder, volume, pitch, flags));
|
||||
}
|
||||
catch(std::exception &e)
|
||||
catch(std::exception&)
|
||||
{
|
||||
mFreeSources.push_back(src);
|
||||
throw;
|
||||
|
|
|
@ -321,7 +321,7 @@ namespace MWSound
|
|||
sound = mOutput->playSound(file, volume, basevol, pitch, mode|type, offset);
|
||||
mActiveSounds[sound] = std::make_pair(MWWorld::Ptr(), soundId);
|
||||
}
|
||||
catch(std::exception &e)
|
||||
catch(std::exception&)
|
||||
{
|
||||
//std::cout <<"Sound Error: "<<e.what()<< std::endl;
|
||||
}
|
||||
|
@ -349,7 +349,7 @@ namespace MWSound
|
|||
else
|
||||
mActiveSounds[sound] = std::make_pair(ptr, soundId);
|
||||
}
|
||||
catch(std::exception &e)
|
||||
catch(std::exception&)
|
||||
{
|
||||
//std::cout <<"Sound Error: "<<e.what()<< std::endl;
|
||||
}
|
||||
|
|
|
@ -33,7 +33,7 @@ using namespace Ogre;
|
|||
namespace MWWorld
|
||||
{
|
||||
|
||||
static const float sMaxSlope = 60.0f;
|
||||
static const float sMaxSlope = 49.0f;
|
||||
static const float sStepSize = 32.0f;
|
||||
// Arbitrary number. To prevent infinite loops. They shouldn't happen but it's good to be prepared.
|
||||
static const int sMaxIterations = 8;
|
||||
|
|
|
@ -24,6 +24,8 @@ namespace ESM
|
|||
|
||||
std::map<std::string, int> mLevelledItemMap;
|
||||
|
||||
virtual ~InventoryState() {}
|
||||
|
||||
virtual void load (ESMReader &esm);
|
||||
virtual void save (ESMWriter &esm) const;
|
||||
};
|
||||
|
|
|
@ -38,6 +38,8 @@ void Script::load(ESMReader &esm)
|
|||
char* str = &tmp[0];
|
||||
for (size_t i = 0; i < mVarNames.size(); i++)
|
||||
{
|
||||
char *termsym = strchr(str, '\r');
|
||||
if(termsym) *termsym = '\0';
|
||||
mVarNames[i] = std::string(str);
|
||||
str += mVarNames[i].size() + 1;
|
||||
|
||||
|
|
|
@ -181,7 +181,7 @@ namespace Terrain
|
|||
// shadow. TODO: repeated, put in function
|
||||
if (mShadows)
|
||||
{
|
||||
for (Ogre::uint i = 0; i < (mSplitShadows ? 3 : 1); ++i)
|
||||
for (int i = 0; i < (mSplitShadows ? 3 : 1); ++i)
|
||||
{
|
||||
sh::MaterialInstanceTextureUnit* shadowTex = p->createTextureUnit ("shadowMap" + Ogre::StringConverter::toString(i));
|
||||
shadowTex->setProperty ("content_type", sh::makeProperty<sh::StringValue> (new sh::StringValue("shadow")));
|
||||
|
@ -334,7 +334,7 @@ namespace Terrain
|
|||
// shadow
|
||||
if (shadows)
|
||||
{
|
||||
for (Ogre::uint i = 0; i < (mSplitShadows ? 3 : 1); ++i)
|
||||
for (int i = 0; i < (mSplitShadows ? 3 : 1); ++i)
|
||||
{
|
||||
sh::MaterialInstanceTextureUnit* shadowTex = p->createTextureUnit ("shadowMap" + Ogre::StringConverter::toString(i));
|
||||
shadowTex->setProperty ("content_type", sh::makeProperty<sh::StringValue> (new sh::StringValue("shadow")));
|
||||
|
|
Loading…
Reference in a new issue