Commit Graph

39 Commits (16e3242456249508c16a025fa4fc95d1a73a4e7f)

Author SHA1 Message Date
madmaxoft 1a7912744f Moved entities into the Entities subfolder. 2013-08-19 11:39:13 +02:00
madmaxoft c85acd4ece Renamed Plugin_NewLua to PluginLua. 2013-08-10 08:22:52 +02:00
madmaxoft 3f4abe8c95 Addeed OnSpawningEntity, OnSpawnedEntity, OnSpawningMonster, OnSpawnedMonster hooks.
As requested in FS 418.
2013-08-08 09:13:13 +02:00
madmaxoft 58a76a90dc Added cLineBlockTracer to the API 2013-08-07 14:34:00 +02:00
madmaxoft@gmail.com 5951bc76ec Added StringUtils functions to Lua API; added StripColorCodes(); ChatLog now strips color codes from logged messages.
Fixes FS #398

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1661 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-07-07 14:42:07 +00:00
madmaxoft@gmail.com 97eda34a94 Rewritten furnaces
Furnaces now smelt the correct number of items.
Furnaces store their contents in a cItemGrid.
Furnace window is updated with correct items and progressbars.
Furnace recipes now use ticks instead of milliseconds.
Furnaces save and load their state completely, not missing a smelt operation.
Hoppers take items out of furnaces.
Dropped the cSlotAreaDropSpenser class, replaced it with generic cSlotAreaItemGrid

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1601 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-06-16 20:24:07 +00:00
madmaxoft@gmail.com 3ee5236284 Removed cLadder, cSign, cStairs, cTorch and cVine classes, moved their functionality into the appropriate BlockHandlers / ItemHandlers
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1555 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-06-04 19:22:14 +00:00
madmaxoft@gmail.com a19a070121 Enchantments: API and sending to client
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1539 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-06-02 10:40:20 +00:00
madmaxoft@gmail.com 9684f90f83 LuaWindow: Initial code, the window can be opened, but not much manipulated
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1532 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-05-30 19:34:09 +00:00
madmaxoft@gmail.com 9be27992e2 Moved BlockEntities to a separate folder
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1527 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-05-28 19:12:47 +00:00
madmaxoft@gmail.com 5c3235ecdc Implemented droppers
Added a common ancestor class "DropSpenser" that has the common code for dropper and dispenser and is Lua-accessible, too. The Debuggers plugin now triggers both droppers and dispensers when rclking them with a redstone torch.

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1514 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-05-26 14:39:04 +00:00
madmaxoft@gmail.com 41db106a8f Added all new bindings, refactored Debuggers; new Debuggers function.
Rclk with a redstone torch  on a dispenser causes the dispenser to spit out one item each tick.

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1509 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-05-25 12:03:20 +00:00
madmaxoft@gmail.com cc26f16463 Added cItemGrid to represent an XY grid of items; converted chests to use cItemGrid.
http://forum.mc-server.org/showthread.php?tid=831

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1380 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-04-10 19:52:03 +00:00
madmaxoft@gmail.com 9d2c841843 IPv6 support + removed cTCPLink from Lua API
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1253 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-03-05 09:53:29 +00:00
madmaxoft@gmail.com 67048ee057 Added cItems to Lua API.
Now HOOK_BLOCK_TO_PICKUPS is fully functional, as demonstrated by HookNotify.

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1178 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-01-27 03:45:40 +00:00
madmaxoft@gmail.com 1a9960a396 Removed cMCLogger from Lua API
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1175 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-01-27 01:58:23 +00:00
madmaxoft@gmail.com 2960f43782 Merged the usable portion of the "gens" branch.
Splitting off the Composable generator and fiddling with LuaChunk / ChunkDesc is good, other generators not good yet.

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1171 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-01-25 10:12:29 +00:00
madmaxoft@gmail.com 4cebaa99f8 Refactored the world time.
Now it is stored in two values - WorldAge (only incremented, plugins cannot change) and TimeOfDay (plugins can change). Since sub-tick precision is needed in Tick(), we store it both as number of seconds (double) and number of ticks (Int64) is calculated off of that.

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1022 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-11-01 21:38:20 +00:00
faketruth 41ba1a7642 Completely removed support for old style Lua plugins (can use both Plugin and NewPlugin in settings.ini for now)
Removed cPlugin_Lua, obviously
cPluginManager stores plugins by their (folder)name
cPluginManager now scans the Plugins folder for potential plugins and adds them as non-loaded plugins
Added a DisablePlugin and LoadPlugin to disable and load plugins on a per-plugin basis instead of all at once
cPluginManager::FindPlugins refreshes the plugin list by removing non-existing plugins and adding new plugins
Made it incredibly easy to use new plugins from the WebAdmin
Exposed some food/hunger related functions in cPlayer to Lua

git-svn-id: http://mc-server.googlecode.com/svn/trunk@959 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-10-13 23:34:47 +00:00
madmaxoft@gmail.com cade71ff68 Fixed Lua bindings for file renaming in previous commits
git-svn-id: http://mc-server.googlecode.com/svn/trunk@889 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-09-23 22:25:33 +00:00
madmaxoft@gmail.com 7abb5f7604 Source files cleanup: OSSupport-related files in a separate subfolder, renamed.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@885 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-09-23 21:23:33 +00:00
faketruth 9db307bb53 Exported cWorld::DoWithChestAt to Lua
Exported cChestEntity to Lua for handling in DoWithChestAt

git-svn-id: http://mc-server.googlecode.com/svn/trunk@820 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-09-02 13:34:59 +00:00
madmaxoft@gmail.com f1d62b77cd Gotten completely rid of all cPackets. The cProtocol125 class now does all the parsing and writing by itself.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@802 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-08-29 21:02:39 +00:00
faketruth 7c84349990 WebAdmin should not cause crashes anymore
Got rid of cWebPlugin_Lua
cPlugin_Lua is also a cWebPlugin now, so plugins don't need a separate cWebPlugin object
Changed some stuff to use AString instead of char*

git-svn-id: http://mc-server.googlecode.com/svn/trunk@777 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-08-22 14:22:21 +00:00
madmaxoft@gmail.com 2691e8daed Packet refactoring, phase two, partial. Rewritten a few packet handling functions not to use cPacket-descendant objects.
This breaks plugin API! Plugins need to modify their hook functions to match those used in the Core plugin

git-svn-id: http://mc-server.googlecode.com/svn/trunk@750 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-08-18 09:56:28 +00:00
lapayo94@gmail.com 14dce23845 A new Block handling system :o
It was really a lot of work :D
Took me the complete weekend :D

Would really like to here your opinion on this =)
The aim of this is to put all the actions for one block in one place so it is not spread around the source. (ToPickup, Action in cWorld, Action in cChunk, Action here, action there :D)

git-svn-id: http://mc-server.googlecode.com/svn/trunk@671 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-07-15 20:36:34 +00:00
lapayo94@gmail.com 4b62d1c463 BlockArea name change reverted
fixed VS2008 building

git-svn-id: http://mc-server.googlecode.com/svn/trunk@649 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-07-09 07:00:28 +00:00
lapayo94@gmail.com 083228a10d Squirrel Plugins
I worked a little bit on the squirrel Bindings
They work now on linux and windows :) (OSX is untested, but should work also) but they are very limited at the moment. (Only made OnChat working)
I also fixed some small bugs.


git-svn-id: http://mc-server.googlecode.com/svn/trunk@648 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-07-08 21:01:08 +00:00
madmaxoft@gmail.com 3cb643c9cb BLOCKTYPE and NIBBLETYPE are finally exported in Lua API as numbers, not usertypes
git-svn-id: http://mc-server.googlecode.com/svn/trunk@642 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-07-02 16:38:30 +00:00
madmaxoft@gmail.com bf13084f1f cBlockArea object added (with only minimal testing so far)
git-svn-id: http://mc-server.googlecode.com/svn/trunk@641 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-07-02 16:30:17 +00:00
cedeel@gmail.com c4f785e0be Lua binding for cVine fixed
git-svn-id: http://mc-server.googlecode.com/svn/trunk@619 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-06-15 22:40:51 +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
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
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 89afb970d8 VC2008 / VC2010: Enabled precompiled header through Globals.h; the header included in every module in the project. Compilation optimization.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@188 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-01-29 19:28:19 +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 386d58b586 MCServer c++ source files
git-svn-id: http://mc-server.googlecode.com/svn/trunk@3 0a769ca7-a7f5-676a-18bf-c427514a06d6
2011-10-03 18:41:19 +00:00