Merge remote-tracking branch 'origin/master'

This commit is contained in:
Marc Zinnschlag 2015-11-25 19:18:17 +01:00
commit ef68e2aec4
6 changed files with 22 additions and 12 deletions

View file

@ -27,6 +27,7 @@
Bug #2014: Antialiasing setting does nothing on Linux Bug #2014: Antialiasing setting does nothing on Linux
Bug #2037: Some enemies attack the air when spotting the player Bug #2037: Some enemies attack the air when spotting the player
Bug #2052: NIF rotation matrices including scales are not supported Bug #2052: NIF rotation matrices including scales are not supported
Bug #2062: Crank in Old Mournhold: Forgotten Sewer turns about the wrong axis
Bug #2111: Raindrops in front of fire look wrong Bug #2111: Raindrops in front of fire look wrong
Bug #2140: [OpenGL] Water effects, flames and parts of creatures solid black when observed through brazier flame Bug #2140: [OpenGL] Water effects, flames and parts of creatures solid black when observed through brazier flame
Bug #2147: Trueflame and Hopesfire flame effects not properly aligned with blade Bug #2147: Trueflame and Hopesfire flame effects not properly aligned with blade
@ -176,6 +177,7 @@
Bug #2980: Editor: Attribute and Skill can be selected for spells that do not require these parameters, leading to non-functional spells Bug #2980: Editor: Attribute and Skill can be selected for spells that do not require these parameters, leading to non-functional spells
Bug #2990: Compiling a script with warning mode 2 and enabled error downgrading leads to infinite recursion Bug #2990: Compiling a script with warning mode 2 and enabled error downgrading leads to infinite recursion
Bug #2992: [Mod: Great House Dagoth] Killing Dagoth Gares freezes the game Bug #2992: [Mod: Great House Dagoth] Killing Dagoth Gares freezes the game
Bug #3007: PlaceItem takes radians instead of degrees + angle reliability
Feature #706: Editor: Script Editor enhancements Feature #706: Editor: Script Editor enhancements
Feature #872: Editor: Colour values in tables Feature #872: Editor: Colour values in tables
Feature #880: Editor: ID auto-complete Feature #880: Editor: ID auto-complete

View file

@ -762,9 +762,10 @@ if (APPLE)
set(ABSOLUTE_PLUGINS "") set(ABSOLUTE_PLUGINS "")
set(USED_OSG_PLUGINS set(USED_OSG_PLUGINS
osgdb_tga
osgdb_dds osgdb_dds
osgdb_imageio osgdb_jpeg
osgdb_png
osgdb_tga
) )
foreach (PLUGIN_NAME ${USED_OSG_PLUGINS}) foreach (PLUGIN_NAME ${USED_OSG_PLUGINS})

View file

@ -471,16 +471,18 @@ namespace MWGui
MWBase::Environment::get().getScriptManager()->run (script, interpreterContext); MWBase::Environment::get().getScriptManager()->run (script, interpreterContext);
} }
mSkippedToEquip = MWWorld::Ptr();
if (ptr.getRefData().getCount()) // make sure the item is still there, the script might have removed it
{
if (script.empty() || ptr.getRefData().getLocals().getIntVar(script, "pcskipequip") == 0) if (script.empty() || ptr.getRefData().getLocals().getIntVar(script, "pcskipequip") == 0)
{ {
boost::shared_ptr<MWWorld::Action> action = ptr.getClass().use(ptr); boost::shared_ptr<MWWorld::Action> action = ptr.getClass().use(ptr);
action->execute (player); action->execute (player);
mSkippedToEquip = MWWorld::Ptr();
} }
else else
mSkippedToEquip = ptr; mSkippedToEquip = ptr;
}
if (isVisible()) if (isVisible())
{ {

View file

@ -52,7 +52,12 @@ namespace MWWorld
} }
} }
assert(it != invStore.end()); if (it == invStore.end())
{
std::stringstream error;
error << "ActionEquip can't find item " << object.getCellRef().getRefId();
throw std::runtime_error(error.str());
}
// equip the item in the first free slot // equip the item in the first free slot
std::vector<int>::const_iterator slot=slots_.first.begin(); std::vector<int>::const_iterator slot=slots_.first.begin();

View file

@ -164,7 +164,7 @@ namespace SceneUtil
mStateSetCache.clear(); mStateSetCache.clear();
} }
void LightManager::addLight(LightSource* lightSource, osg::Matrixf worldMat) void LightManager::addLight(LightSource* lightSource, const osg::Matrixf& worldMat)
{ {
LightSourceTransform l; LightSourceTransform l;
l.mLightSource = lightSource; l.mLightSource = lightSource;

View file

@ -77,7 +77,7 @@ namespace SceneUtil
void update(); void update();
// Called automatically by the LightSource's UpdateCallback // Called automatically by the LightSource's UpdateCallback
void addLight(LightSource* lightSource, osg::Matrixf worldMat); void addLight(LightSource* lightSource, const osg::Matrixf& worldMat);
struct LightSourceTransform struct LightSourceTransform
{ {