madmaxoft@gmail.com
e1b5f0af04
Renamed HOOK_WEATHER_CHANGE to HOOK_WEATHER_CHANGED, added the glue code for it to actually work
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@610 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-14 19:20:31 +00:00
madmaxoft@gmail.com
0f39e9b10b
Added a world parameter to HOOK_CHUNK_GENERATING.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@609 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-14 17:30:37 +00:00
cedeel@gmail.com
92c59963f8
Attempt to bring sanity to newlines across systems.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@606 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-14 13:06:06 +00:00
cedeel@gmail.com
0b29b3b3cf
Added HOOK_WEATHER_CHANGE.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@605 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-14 12:24:39 +00:00
faketruth
79f9841449
Exported the ItemCategory functions and added a IsTool() function to it, for easy checking whether an item is a tool
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@603 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-13 18:14:20 +00:00
madmaxoft@gmail.com
1c60680fba
Added a BlockToPickup hook for modifying pickups when a player breaks a block.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@602 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-13 17:37:23 +00:00
faketruth
ee9e024bed
I think the chunk generation hooks for Lua are pretty good now, though it might still need some tweaking
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@600 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-13 15:52:28 +00:00
cedeel@gmail.com
900c26dc30
Revamped the weather system.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@599 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-13 00:46:23 +00:00
madmaxoft@gmail.com
223967b80d
Added working crafting hooks HOOK_PRE_CRAFTING, HOOK_CRAFTING_NO_RECIPE and HOOK_POST_CRAFTING
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@598 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-12 21:30:32 +00:00
madmaxoft@gmail.com
5e6c736859
Updated the crafting recipes architecture to better support crafting hooks. Removed the old recipe file and implementation altogether.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@597 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-12 20:03:46 +00:00
faketruth
373dac3204
Added implementation of E_PLUGIN_CHUNK_GENERATING lua hook
...
It crashes the server when a plugin actually overrides default behavior though...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@594 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-11 19:25:55 +00:00
madmaxoft@gmail.com
a9350c4361
New IniFile functionality: read value and set default if it isn't present (GetValueSet() ); used by cWorld
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@586 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-09 15:12:52 +00:00
madmaxoft@gmail.com
8189487258
Sugarcane and cactus max height can be set in world.ini.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@585 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-09 13:00:14 +00:00
madmaxoft@gmail.com
2c241bb9a4
Plants growable by bonemeal are settable in the world.ini. Default matches vanilla MC.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@584 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-09 12:44:02 +00:00
madmaxoft@gmail.com
ec61713221
Cacti grow by themselves and by bonemeal
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@583 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-09 12:03:49 +00:00
cedeel@gmail.com
2295c1d7cb
Configurable classic composition generator
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@575 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-08 01:56:44 +00:00
madmaxoft@gmail.com
876014b8e8
Bonemeal works on crops, melons, pumpkins, saplings and grass. Plant growing has been refactored into separate functions callable from Lua, too.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@573 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-07 21:07:21 +00:00
madmaxoft@gmail.com
1cca9b13b3
Item-dropping code rewritten and centralized - now there's only one place to modify if we want to split or merge same-item drops: cWorld:SpawnItemPickups(). Also, mined blocks can now drop more items, and they recognize if they're being mined by the correct tool.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@561 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-06 20:18:50 +00:00
madmaxoft@gmail.com
d832996e19
New hook, E_PLUGIN_CHUNK_GENERATED, called after each chunk is generated (the chunk is already present in cWorld)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@558 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-05 15:20:48 +00:00
madmaxoft@gmail.com
b355bdecce
Added the new recipe parser, parsing the crafting.txt file. Included are a few recipes. The old parser still works, but will be replaced soon.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@549 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-04 12:08:20 +00:00
cedeel@gmail.com
b17d12c86f
Updated zlib, added chat formatting, fixed upside down stairs and slabs, fixed makefiles, hopefully updated vc project files
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@546 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-03 23:35:17 +00:00
madmaxoft@gmail.com
1d6c55afcc
Added Lua function cRoot:ForEachWorld(), removed the obsolete cRoot:GetWorld() method (both C++ and Lua)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@534 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-02 09:38:51 +00:00
madmaxoft@gmail.com
c95b11b83a
cWorld::UnloadUnusedChunks() exported to Lua
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@531 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-05-31 20:04:32 +00:00
madmaxoft@gmail.com
7af3df03a0
Added support for SetNextBlockTick() function callable from Lua
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@527 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-05-30 21:29:51 +00:00
madmaxoft@gmail.com
f8328346b5
Lua plugins can now query the world for various queue sizes ( http://forum.mc-server.org/showthread.php?tid=432 )
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@524 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-05-30 18:20:38 +00:00
madmaxoft@gmail.com
5d4e9e18da
Added wool and netherrack block IDs
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@509 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-05-27 14:02:13 +00:00
madmaxoft@gmail.com
a4a418a679
Merged the composable_generator branch into the trunk
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@504 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-05-25 07:18:52 +00:00
madmaxoft@gmail.com
ba5b6ca751
A globally-accessible OS-independent GetDirectoryContents() function for listing all objects in a folder as an AStringList
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@433 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-25 14:24:51 +00:00
madmaxoft@gmail.com
b69ac328c0
Reverted the previous commit - it is useless, since entities still depend heavily on cWorld
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@428 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-24 11:14:34 +00:00
madmaxoft@gmail.com
be31652c40
Encapsulated cWorld functions needed in cWorldStorage into an interface, so that cWorldStorage can actually be used outside of MC-Server (such as storage conversion tools and chunk analyzers)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@427 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-23 21:12:48 +00:00
faketruth
38b219de62
Exposed a function to Lua to get a block's sky light value
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@416 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-16 15:48:40 +00:00
faketruth
f43b65cf53
cClientHandles have a unique ID now to distinguish them
...
cAuthenticator uses unique client ID for authentication
Changed the kick function used by cAuthenticator to take a client ID instead of name, so the correct user is kicked
Using callback reference instead of pointer in GetChunkData and affiliates
GetChunkData returns false when failed, and true when succeeded
Renamed entity type enums to something prettier
Exposed some functions to Lua
git-svn-id: http://mc-server.googlecode.com/svn/trunk@388 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-09 13:42:28 +00:00
faketruth
787382caf8
Fixed bug where cPlayer's cClientHandle was used after cPlayer was destroyed http://forum.mc-server.org/showthread.php?tid=380
...
Also removed the SetClientHandle() function from cPlayer
Added a Destroyed() function to cEntity that is called ONLY ONCE after an entity has been 'destroyed'
Cleaned up some code, using enums for GameMode and Weather and replaced some 'const char *' with 'const AString &'
Exposed some more functions to Lua
git-svn-id: http://mc-server.googlecode.com/svn/trunk@382 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-07 13:36:30 +00:00
faketruth
fb7c60ec11
Changed signed char to unsigned char in block packets, so we can receive height up to 255
...
Blocks placed above 128 limit don't become obsidian anymore. This was due to the cChunk::MakeIndex() function return 0 when outside of bounds, it now returns an 'error constant'
git-svn-id: http://mc-server.googlecode.com/svn/trunk@356 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-04 13:54:33 +00:00
faketruth
957ef3b297
Started carefully moving to 1.2.2
...
Clients can get up to the login packet, after which the server tries to send chunks but in the wrong format and the client disconnects
git-svn-id: http://mc-server.googlecode.com/svn/trunk@347 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-03-01 17:07:41 +00:00
faketruth
41d55ef86b
Lua seems to have trouble with a combination of overloaded functions and class inheritance, so I renamed TeleportTo( cEntity* ) to TeleportToEntity
...
/tp command should work again :)
git-svn-id: http://mc-server.googlecode.com/svn/trunk@314 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-22 15:46:38 +00:00
faketruth
008addf5d7
Got rid of dangerous GetEntity(), not using DoWithEntity()
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@278 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-16 17:20:28 +00:00
faketruth
d15d40ad69
No longer using pointers for Vector3(f/d/i) in cEntity's and cTracer
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@268 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-15 22:50:00 +00:00
madmaxoft@gmail.com
4f17362aeb
Rewritten most of the code for multithreading; still not 100%, but getting there. If this commit proves to be too problematic, we can always undo it.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@251 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-13 21:47:03 +00:00
madmaxoft@gmail.com
32880153ab
MTRand class is not created in each tick, therefore much improving tick-thread time (now uses ~5 % CPU instead of one full core)
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@245 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-08 12:36:54 +00:00
madmaxoft@gmail.com
99e8f1808c
tolua: modified the binding generator to accept AString as a std::string synonym, re-generated Bindings with these settings. Lua callbacks can now safely use AString functions in C++.
...
git-svn-id: http://mc-server.googlecode.com/svn/trunk@225 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-02 14:11:54 +00:00
madmaxoft@gmail.com
48d30d6ab4
Rewritten cAuthenticator to make use of the new cIsThread architecture - now authentication runs in a single separate thread for all clients;
...
Global player-kicking function (cServer, cRoot);
More char * -> AString conversion
git-svn-id: http://mc-server.googlecode.com/svn/trunk@221 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01 22:38:03 +00:00
faketruth
28ff03fcfe
Added all current hooks to the new plugin structure.
...
Converted MagicCarpet to the new plugin structure
When you fall of the MagicCarpet you teleport back up :D
git-svn-id: http://mc-server.googlecode.com/svn/trunk@220 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01 19:19:51 +00:00
faketruth
28bc14e267
Plugins can now be enabled and disabled through WebAdmin
...
WebPlugins can now have spaces in their tab names
git-svn-id: http://mc-server.googlecode.com/svn/trunk@204 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-02-01 00:02:48 +00:00
faketruth
968f41ba51
Changed how Lua handles the (Post)Params in the HTTPRequest of a WebPlugin
...
It should now be theoretically possible to upload files through WebAdmin
git-svn-id: http://mc-server.googlecode.com/svn/trunk@203 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-31 20:56:42 +00:00
faketruth
c142424571
Can now receive POST data in WebPlugins!
...
Fixed Debug With optimized Noise in VS2010 by having it run the correct MCServer_debug.exe instead of MCServer.exe
Changed winsock.h to Winsock2.h in Globals.h so sockets can be graciously closed (See webserver Socket::Close() )
git-svn-id: http://mc-server.googlecode.com/svn/trunk@197 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-31 00:38:18 +00:00
faketruth
9dfa0f1f15
Added a WebAdmin interface to view users their groups, and the permissions of groups.
...
cChunk::Tick did an assertion in cCSLock, I used a cCSUnlock to fix it, but not sure if this is correct.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@194 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-30 16:47:26 +00:00
faketruth
de29399987
Converted entire Core plugin including WebAdmin interface to new plugin method/system/thingy and sexyfied it.
...
Made some changes to WebAdmin to make the new plugins work
Old plugins still work like they're supposed to
Not all hooks have been programmed for the new plugins yet, this still needs to be done
git-svn-id: http://mc-server.googlecode.com/svn/trunk@182 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-27 23:47:32 +00:00
faketruth
4e34e438f1
Working on a new plugin design with Lua. While retaining backwards compatibility of course...
...
In this new design a plugin consists of a folder with Lua files, this should enable plugin developers to keep things separate and have more overview.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@172 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-26 20:39:46 +00:00
faketruth
738b1b3467
Improved Core's WebAmin interface a bit.
...
Can now kick players through WebAdmin
Can now enable/disable whitelist through WebAdmin
Tick speed is limited in a better way now, instead of always sleeping 50ms before each tick, it now add only sleeps additional time when the tick time was faster than 50ms. Server should run slightly faster because of this (and use more cpu%)
git-svn-id: http://mc-server.googlecode.com/svn/trunk@167 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-22 20:15:11 +00:00