- Add convenience functions toggleValid() and isValid() to wrap around
the alpha/alphaMod members
- Fix bug #37 that allows cooking with the third slot at all times
Another vector that was always empty, optionally filled when specified
by a skeletal file, but none actually did this. Should be safe to remove.
Also small related optimization in Game::collideSkeletalVsCircle().
This was always (0, 0) and optionally used for bones if defined in skeletal files.
None of the official skeletal files used this, so this should be safe to remove.
I chose to add an extra XML tag storing only the needed data in order to
preserve compatibility with older versions that expect the specific
layout of the <SE k="..." /> tag, which can't be changed.
Adding a new tag like <SE m="..." /> with an updated layout is also
not an option, because older versions would not load these, and
maps would be empty as a result.
There were still only 6 of 8 bits of the map grid in use.
The last 2 bits are now available as non-colliding user bits,
and are ignored unless specially treated.
The findPath() function can now be told which bits to respect,
which allows to prevent pathfinding to pass through fish tunnels,
for example.
A function for fast user bit map dilation is added as well.
- Now, the camera will now no longer be pulled towards the upper left
or lower rigtht corner.
- cameraPos was never used as an interpolating vector, cleaned up related code.
- Core::invGlobalScale is now updated whenever Core::globalScale is changed
(Not a nice solution but it does work)
- Increase cull radius by 10%, should prevent tiles from disappearing when
zoomed in a lot.
These nodes will no longer do their thing if active is set to false.
node_[is|set]EffectOn() is now an alias for the node_[is|set]Active() functions.
Also add getMaxCameraValues() Lua function.
Removed a "using namepsace std;" to stop an ambiguous symbol error
regarding the "hash" datatype when compiling with Visual Studio 2010. As
a result, I had to add a "std::" to an ostringstream.
Duplicated, upgraded, and reworked the existing Visual Studio 2008
project so that it now compiles successfully with Visual Studio 2010.
Both debug and release work without a hitch on Windows 7. The original
Visual Studio 2008 solution is still there if it is needed.
- Make ACTION_LOOK and ACTION_ROLL available to handle via nodes
- Add entity_getPushVec()
- Fix typo in beam_setFirer()
- Add pull param to addInfluence()
- Add entity_getPushDamage()
- Add getMouseWheelChange()
With this patch, entities can serve as a sound source whose position
updates relative to the listener. This implements the last missing
feature of my previous positional audio patch, which is moving sound sources.
Previously, all sounds were relative to the listener with the listener
centered at (0, 0, 0), and once a sound started playing, the position could
not be changed. Volume was set as an estimation of the distance to the listener.
These restrictions are now gone; OpenAL will handle the volume & panning
based on the distance.
The remaining problem is that stereo sounds are not attenuated, at all.
Lua additions:
- playSfx() takes an additional parameter now.
- entity_setStopSoundsOnDeath()
This allows to e.g. prevent ACTION_TOGGLEHELPSCREEN from being handled by
the game, and instead use a node's catch action functionality to handle the event.
Add related Lua functions:
- setIgnoreAction()
- isIgnoreAction()
- sendAction()