aboutsummaryrefslogtreecommitdiff
path: root/src/serverobject.h (unfollow)
Commit message (Collapse)AuthorFilesLines
2012-11-30Log /grant and /revoke command usageDannyDark1-0/+2
2012-11-30Make dragged itemstack following the mouse cursor much smootherJürgen Doser3-15/+10
by using the cursor coordinates directly, instead of updating them only when a mouse event is seen.
2012-11-30Ignore directories beginning with a "." when searching for modsMatthew I1-0/+4
This is not a problem on POSIX systems (these directories are ignored by the POSIX implementation of fs::GetDirListing() in filesys.cpp), but these directories still are reported on Windows systems. This becomes a problem when mod authors use version control systems that create directories like ".git" or ".svn" and collectMods() picks up on them. It has also been suggested that ignoring such directories would allow for the easily disabling mods by inserting a "." in front of their name. This quick fix simply makes collectMods() ignore directories beginning with a ".".
2012-11-30Run scriptapi_on_shutdown() thread-safely and remove some old crapPerttu Ahola1-13/+10
2012-11-30Add shutdown hook interface to Lua APIMatthew I5-0/+27
Scripts can call minetest.register_on_shutdown() to register a shutdown hook. Document that minetest.register_on_shutdown() callbacks may not be run If the server crashes, it is unlikely that callbacks registered using minetest.register_on_shutdown() will be called.
2012-11-29Add congestion control settings to minetest.confPerttu Ahola4-12/+40
2012-11-29Full protocol 13 compatibility on server sidePerttu Ahola4-38/+72
2012-11-29Make strict and non-strict protocol version checking to work more like expectedPerttu Ahola3-16/+22
2012-11-29Allow server to accept protocol 13 clients altough they don't work too wellPerttu Ahola1-1/+1
2012-11-29Ranged support of protocol version on server sidePerttu Ahola4-14/+38
2012-11-29Support serialization of protocol 13 ContentFeaturesPerttu Ahola3-120/+195
2012-11-29unit test: TestNodedefSerializationPerttu Ahola1-0/+21
2012-11-29Modify new ObjectProperties format to such that 0.4.3 will eat itPerttu Ahola1-56/+31
2012-11-29Fix Taoki's messed up generic object command idsPerttu Ahola2-36/+35
2012-11-29Change version to 0.4.4-dev because... ehm... why it wasn't that already?Perttu Ahola1-1/+1
2012-11-28Fix head shifting downards in glass, nodeboxes...Calinou1-1/+1
2012-11-27Fix mesh glitches on MapBlock boundariesPerttu Ahola1-2/+2
2012-11-27Revert "Use wielditem drawtype for all nodes in item_entity"Perttu Ahola1-6/+6
This reverts commit ffad18e42442fed10c312adc989fc62b74e05896.
2012-11-27Fix forgotten material properties for meshes (also seems to have been ↵MirceaKitsune1-0/+10
forgotten for cubes previously). This allows transparent png images to work properly
2012-11-26Default server step to 0.1s and sync object/player update intervals to itPerttu Ahola8-9/+29
2012-11-26Use wielditem drawtype for all nodes in item_entityPilzAdam1-6/+6
2012-11-26Remove unnecessary util/serialize.h from content_mapblock.cppPerttu Ahola1-1/+0
2012-11-26Const-correct SharedBuffer::SharedBuffer(const T *t, unsigned int size)Perttu Ahola1-1/+1
2012-11-26Move util/serialize.h out from staticobject.h for smaller header dependenciesPerttu Ahola7-69/+102
2012-11-26Move a function from clientserver.h to clientserver.cppPerttu Ahola3-11/+36
2012-11-26Proper versioning of new network-serialized stuffPerttu Ahola4-91/+193
2012-11-26New PROTOCOL_VERSION scheme (allow client to support a range of versions)Perttu Ahola3-13/+32
2012-11-26Fix LuaEntitySAO::getClientInitializationData() and bump the related versionPerttu Ahola2-4/+4
2012-11-26Bump version to 0.4.4 as this isn't compatible with 0.4.3Perttu Ahola2-2/+2
2012-11-25Update ContentFeatures serialization format now as PROTOCOL_VERSION was changedPerttu Ahola1-4/+4
2012-11-25RealBadAngel's patch which allows the lua api to read pressed player keys. ↵MirceaKitsune9-69/+165
This should make it possible to change the player's animation based on what he is doing Correct lua api version number Always update animations and attachments after the entity is added to scene client side. Fixes animations not being applied in client initialization for some reason. Attachments should be re-tested now just to be safe. Fix a segmentation fault caused by reaching materials that didn't exist in a loop for setting texture
2012-11-25A bunch of fixesMirceaKitsune13-156/+144
No longer hide players who are dead. With models, a death animation should be used instead Some changes requested by celeron55 Rename a lot of things in the code, and use better lua api function names Minor code corrections Bump protocol version up, since the models / animations / attachments code creates new client<->server messages
2012-11-25Allow Vanessa's texture filtering / mipmap patch to work on models, as well ↵MirceaKitsune2-20/+63
as all other node types Initialize m_bone_posrot too Update pos_translator for attached players, which should fix a bug noticed with carts where a detached player would travel from the detachment spot to where it was detached Don't make attachments possible to right-click either Properly apply object and text visibility for local attachments, and fix them showing when they shouldn't
2012-11-25Fix more things I forgot for attached players. Such players will now ↵MirceaKitsune3-10/+16
properly see themselves moving when attached, and the server will read their position accordingly Fix attached players being able to bob their view and generate foostep sounds by pressing a movement key (running in place)
2012-11-25Update attachments at the ending of the addToScene function for parents. And ↵MirceaKitsune10-106/+171
with this... *drum roll* Client-side attachments are at last functional and stick visibly. Fix the last segmentation fault (apparently). So far attachments seem to be fully functional, although removing the parent causes children to go to origin 0,0,0 and possibly still cause such a fault (though this should already be addressed) Fix a bug in falling code where entities get stuck Also check if the parent has been removed server-side, and detach the child if so. Fixes children going to origin 0,0,0 when their parent is removed. Unset all attachment properties when permanently detaching (on both the client and server). Also store less data we don't need Create a separate function for detaching, and also update lua api documentation When a child is detached, update its position from the server to clients. This WILL cause it to get positioned slightly differently client side, as the server attachment system only copies parent origin and knows not about mesh / bone transformation. This prevents different clients seeing the object detached in different spots which is most correct Update the position of attached players to clients. An attached player will see himself move, but this is currently VERY ugly and laggy as it is done by the server (it probably must stay this way too) Use a different approach for locally attached players. This allows for smooth positio transitions to work, as well at the player turning around freely. Still buggy however
2012-11-25Send animations, bone overrides and attachments in entity initialization. ↵MirceaKitsune8-116/+249
Clients no longer have to be near an object when an animation or attachment is set to see the changes, and newly connected clients (or a client that simply renders the object for the first time) will get all of those settings. Therefore, the lua script no longer needs to run every X seconds either, just once per entity. Finish fixing the material color code. But it won't work until MineTest has dynamic lighting... another day another feature. Extra checks for the bone positioning / rotation code Many checks and consistency improvements to the client attachment code Make a separate function for checking if a client object is attached. A more in-depth change will be needed here to fix reading of invalid pointers Use a different method of fetching the parent. Fixes the mass segmentation faults when rendering an attachment (some still happen though) Major change to how attachments are handled. Fix the last segmentaton fault, which was due to the parent becoming invalid while being refreshed / removed which would bause the child to remain attached to nothing. Parents remove their children when being deleted themselves and add them back when re-added. Attachments are stored inside a 2D a vector which easily allows both a child to find their parent and a parent to find its children. Remove attachment list entry when an object is being permanently removed. Also avoid duplicate entries in this list when re-attaching the same object The "big code comments" can now go away. Client attachments almost work properly, and I know what else needs to be done
2012-11-25Enable client-side attachments, add detachment codeMirceaKitsune3-77/+196
2012-11-25Fix some remaining issues with attachments, now they work. Tested with ↵MirceaKitsune4-44/+209
object->player and player->player attachments
2012-11-25Complete the attachment framework.MirceaKitsune6-145/+263
The child ID can now be checked against the parent ID in content_cao.cpp so the parent can be detected. Actual attachment code to come Divide attachment system between server attachments and client attachments, neither coded right now. As explained in the code comment: // Attachments need to be handled on both the server and client. // If we attach only on the server, models (which are client-side) // can't be read so we don't know the origin and orientation of bones. // If we attach only on the client, the real position of attachments is // not updated and you can't click them for example.
2012-11-25Framework for the attachment system, new object property which allows ↵MirceaKitsune11-4/+181
changing the color and alpha of mesh materials New object property which allows changing the color and alpha of mesh materials. Due to the current lighting systems it doesn't work yet, but the full implementation is there Framework for the attachment system, with no actual functionality yet Send bone and player object to the setAttachment function in content_sao.cpp, but we need a way to translate it there and send it to the client I will also want position and rotation offsets to be possible to apply to attachments Network object ID from server to client. This will be used to identify the parent client-side and know what to attach to
2012-11-25Get the new animation framework properly workingMirceaKitsune10-135/+139
Store start and end frames as v2f Also move bone animations to their own function instead of object properties
2012-11-25Joint positioning and rotation code, and fix a problem related to their lua APIMirceaKitsune9-50/+86
Attempt to move the animation system to a more correct implementation, rather than using object properties. Incomplete and breaks functionality
2012-11-25Allow the LUA API to set animations to meshes as well as the animation ↵MirceaKitsune5-4/+128
speed. Also update animations only when needed. Support for animation blending, though for some reason it doesn't work. Don't enable animation transitions by default for many reaosons Object property to store individual bone positions. LUA can specify a bone name followed by a bone position. No functionality yet. Bone rotation to be added in the following commit Same system for bone rotation, plus a few other things I missed
2012-11-25Get the mesh working through the memory cache properly. Most credit goes to ↵MirceaKitsune4-14/+28
celeron55 for the help on this code Get the texture from memory as well Add .x to the list of supported formats Update LUA API documentation
2012-11-25Add a subfolder for models and transfer models from server to clientMirceaKitsune6-16/+43
(obj, md2 and md3 are currently allowed) Get rid of the texture string and use the existing textures array. Segmented meshes have multiple materials, and this will allow us to texture each. Do not switch to this commit yet! If a texture string is left empty in LUA, don't modify that material. Useful so a script can change specific textures without affecting others
2012-11-25Fix material properties and allow lighting. Models should now be affected by ↵MirceaKitsune1-0/+5
light instead of being black
2012-11-25Properly read the mesh from LUA.MirceaKitsune4-11/+25
Players can now be set to meshes using the following test script: function switch_player_visual() prop = { mesh="player.obj", texture="player.png", visual="mesh", } for _, obj in pairs(minetest.get_connected_players()) do obj:set_properties(prop) end minetest.after(1.0, switch_player_visual) end minetest.after(1.0, switch_player_visual)
2012-11-253D model support for players using Irrlicht. Also ready the basis for mesh ↵MirceaKitsune3-3/+51
support on nodes / items via LUA (to be done). Supports any mesh format compatible with Irrlicht, but animations are not set up yet.
2012-11-25Revert "Don't leak textures all over the place"Perttu Ahola2-31/+12
This causes textures to be deleted before they are no longer accessed, resulting in a segmentation fault. This needs to be rewritten in such a way that textures are deleted when the client disconnects from a server. This reverts commit 41c00e87d42580881d8c7001f39014814e3b55f2.
2012-11-23Fix trees growing into any type of nodeIlya Zhuravlev1-1/+2