summaryrefslogtreecommitdiffstats
path: root/source/Bindings.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'upstream/master' into playerxpDaniel O'Brien2013-11-151-578/+27
|\
| * Removed cBlockEntity:CreateByBlockType() from the Lua API.madmaxoft2013-11-151-42/+1
| | | | | | | | Plugins cannot be allowed to create block entities, that would result in memory leaks.
| * Removed BlockEntities' constructors from the API.madmaxoft2013-11-151-537/+27
| | | | | | | | Plugins shouldn't construct block entities, rather, they will query them either from the cWorld (while playing), or from cChunkDesc (while generating).
* | added cProtocol function to pass xp to clientDaniel O'Brien2013-11-151-6/+6
|/
* Added cNoteEntity to Lua API.madmaxoft2013-11-141-8/+143
| | | | Ref. #228.
* Exported cJukeboxEntity to Lua API.madmaxoft2013-11-141-7/+144
| | | | Ref. #228
* Added cSignEntity into API, added cChunkDesc:GetBlockEntity().madmaxoft2013-11-141-26/+314
| | | | This fixes both #228 and #347.
* luaExportDaniel O'Brien2013-11-141-4/+254
|
* Added cItem::GetMaxStackSize()madmaxoft2013-11-101-1/+34
|
* Removed cStringMap.madmaxoft2013-11-091-199/+208
| | | | It wasn't used for anything anymore.
* Moved cTracer::SetValues to be an internal function because it is only ever used in cTracer::Trace.Samuel Barney2013-11-051-36/+0
| | | | | Removed SetValues from Bindings.cpp. Added some commenting to explain what each function does in cTracer.
* Added cEntity:GetYaw() and cEntity:SetYaw().madmaxoft2013-11-031-1/+101
| | | | This is the preferred way to get / set rotation, GetRotation() and SetRotation is obsoleted due to bad name.
* Renamed cWindow constants to include the "wt" prefix.madmaxoft2013-10-281-12/+12
|
* cIniFile: Renamed functions to make meaning more explicit.madmaxoft2013-10-251-410/+152
| | | | For example KeyComment() -> GetKeyComment() / AddKeyComment()
* cIniFile doesn't store filename internally anymore.madmaxoft2013-10-251-163/+15
|
* Renamed cMonster::GetSpawnRate() to GetSpawnDelay().madmaxoft2013-10-241-29/+70
|
* Fixed cLuaWindow's binding.madmaxoft2013-10-231-19/+1
| | | | No longer exporting multiple inheritance.
* Fixed bindings for cHopperEntity:GetOutputBlockPos().madmaxoft2013-10-231-45/+1
|
* Fixed cDropSpenserEntity bindings generating an extra var.madmaxoft2013-10-231-25/+6
| | | | Caused by inadvertently exporting multiple-inheritance from a class that is not Lua-exported.
* Exported cHopperEntity to API.madmaxoft2013-10-231-19/+154
| | | | This allows hoppers to be created by plugins during chunk generation.
* Removed cRoot:m_PrimaryServerVersion from Lua API.madmaxoft2013-10-231-32/+1
| | | | We have the accessor methods for it.
* Fixed GetHTMLEscapedString() binding, removed obsolete memory function from API.madmaxoft2013-10-211-36/+3
|
* Fixed memory leaks in cMobCensus, moved GetSpawnRate() to cMonster.madmaxoft2013-10-201-1/+32
|
* Moved all MobTypesManager functions to cMonster.madmaxoft2013-10-201-1/+95
| | | | This removes some of the memory leaks and is more logical in structure. Also the functions are exported to Lua.
* Fixed loading allowed mobs in world.madmaxoft2013-10-201-4/+79
|
* Merge branch 'metadata' of git://github.com/tigerw/MCServer into tigerw-metadata.madmaxoft2013-10-131-1/+139
|\
| * Eight round of fixesTiger Wang2013-10-131-5/+0
| | | | | | | | | | | | | | * Changed IsA() to *long if statement* - Removed deprecated values in Entity.h - to blazes with the plugins! * Renamed villager type enumerations to be LESS SHOUTY and more vt-y + Use vtMax for World.cpp testificate spawning
* | Added GetIniItemSet() function.madmaxoft2013-10-111-6/+52
| | | | | | | | It reads a block / item description from the specified INI file value and returns as cItem; stores and uses the default if value doesn't exist.
* | Moved cMakeDir::MakeDir to cFile::CreateFolder.madmaxoft2013-10-091-1/+33
| | | | | | | | And exported to Lua.
* | Added static cFile functions to Lua API.madmaxoft2013-10-091-9/+244
| |
* | Implemented the two memory-statistics functions in cRoot.madmaxoft2013-10-081-1/+59
| | | | | | | | This fixes #185. cWebAdmin::GetMemoryUsage() is accessible but deprecated (with a warning output to the screen).
* | Cleaned up cEntity's enums.madmaxoft2013-10-081-19/+1
| | | | | | | | Several were obsoleted and unused, others weren't supposed to be exported to the Lua API.
* | Merge branch 'master' into NewWebServermadmaxoft2013-10-061-37/+166
|\ \ | | | | | | | | | This should simplify merging
| * | Added cWorld::IsWeatherXXX() functionsmadmaxoft2013-10-041-1/+133
| | |
| * | Removed cChunkDesc::SetChunkCoords() from Lua API.madmaxoft2013-09-251-37/+1
| | |
* | | WebAdmin uses the new HTTP functionality.madmaxoft2013-10-051-39/+7
|/ / | | | | | | This is a partial implementation of #183.
* | Implemented cWebAdmin:GetMemoryUsage() on Linux proper.madmaxoft2013-09-211-33/+62
| | | | | | | | Also the function now returns an int, number of KiB used, or -1 on failure.
* | Added cPlugin:GetLocalFolder() API function.madmaxoft2013-09-181-1/+34
|/ | | | This supersedes the cPlugin:GetLocalDirectory() function.
* Exported cMonster:GetMobType() to the Lua API.madmaxoft2013-09-161-1/+34
|
* Removed cWorld:SaveAllChunks() from the API.madmaxoft2013-09-161-33/+1
| | | | Use cWorld:QueueSaveAllChunks() instead, the old function was prone to deadlocks.
* cWorld:QueueTickBlock takes the delay in ticks.madmaxoft2013-09-161-3/+3
|
* Fixed previous commitmadmaxoft2013-09-151-37/+3
|
* Removed obsoleted cWorld functions from the API:madmaxoft2013-09-151-59/+1
| | | | | GetClassStatic() (is used only internally by ManualBindings) GetTime() (is replaced with GetWorldAge() and GetTimeOfDay()
* Fixed API bindings of cWorld:GetSignLines(), exported cWorld:UseBlockEntity().madmaxoft2013-09-151-27/+16
|
* Updated the bindings again.madmaxoft2013-09-151-2/+2
|
* Fixed cWorld bindings for GetBlockInfo() and GetBlockTypeMeta().madmaxoft2013-09-151-97/+1
| | | | They no longer require the superficial arguments.
* Updated the automatic bindings.madmaxoft2013-09-151-1/+35
|
* Merged branch 'Projectiles'.madmaxoft2013-09-071-52/+1171
|\
| * Updated the API bindings.madmaxoft2013-09-071-45/+117
| |
| * Renamed cWorld::DoExplosiontAt() to cWorld::DoExplosionAt()madmaxoft2013-09-071-7/+7
| |
| * Added cEntity's gravity to the Lua API.madmaxoft2013-09-031-1/+68
| |
| * Added cArrowEntity's criticalness to the API.madmaxoft2013-09-031-21/+92
| |
| * Added line collision calculation to cBoundingBox.madmaxoft2013-09-011-1/+283
| |
| * Added the cBoundingBox class.madmaxoft2013-09-011-7/+598
| |
* | Fixed inconsistent meta namingTiger Wang2013-09-031-10/+10
| |
* | Merge remote-tracking branch 'upstream/master'Tiger Wang2013-09-021-294/+1079
|\ \ | | | | | | | | | | | | | | | | | | | | | Conflicts: source/Bindings.cpp source/Entities/Entity.cpp Updated from upsteam
| * | Exported BroadcastSoundEffect and BroadcastSoundParticleEffect to the Lua APISTRWarrior2013-09-011-29589/+29680
| |/
| * Basic support for thrown items - eggs, snowballs and ender pearls.madmaxoft2013-08-301-23/+35
| | | | | | | | They can be thrown, but they don't do anything on impact. Also they don't save to nor load from MCA.
| * Moved throw pos and speed calculation from cProjectileEntity into cPlayer.madmaxoft2013-08-301-85/+89
| |
| * Merged in the Projectiles branch.madmaxoft2013-08-301-247/+746
| |\ | | | | | | | | | Although the projectiles are not yet finished, the branch has several bugfixes that are needed in master as well.
| | * Added a few API accessors to cArrowEntity.madmaxoft2013-08-251-1/+170
| | |
| | * Merged branch 'master' into Projectiles.madmaxoft2013-08-251-25/+135
| | |\
| | * | Added skeleton code for projectile spawning.madmaxoft2013-08-221-247/+345
| | | |
| * | | Added g_BlockIsXXX[] arrays to the API.madmaxoft2013-08-271-1/+181
| | |/ | |/|
| * | Merging in tigerw's changes from PR #118madmaxoft2013-08-251-25/+33
| |\ \ | | |/ | |/|
| * | Hook adding uses the new API.madmaxoft2013-08-211-37/+3
| | | | | | | | | | | | Multiple hooks per plugin can be added. The cPluginManager.AddHook() has four available signatures, the recommended one is cPluginManager.AddHook(HOOK_TYPE, CallbackFunction)
| * | Added cWorld:GetIniFileName() to the Lua API.madmaxoft2013-08-211-3/+36
| | |
* | | Implemented xoft's suggestions [SEE DESC]Tiger Wang2013-08-291-0/+10
| |/ |/| | | | | | | | | Rail metas are now in BlockID and exported to LUA Minecart now does a SetMass, instead of m_Mass Minecarts use SubType instead of TypeType
* | Fixed inconsistent metas and added snow metasTiger Wang2013-08-241-24/+32
|/
* Added cPickup:IsCollected() to the Lua API.madmaxoft2013-08-191-1/+34
|
* Added cPickup:GetAge() the the Lua API.madmaxoft2013-08-191-1/+34
|
* Moved entities into the Entities subfolder.madmaxoft2013-08-191-5/+5
|
* Finished renaming cPlugin_NewLua to cPluginLua.madmaxoft2013-08-191-11/+12
|
* Implemented cWorld:QueueSetBlock(), as requested for delayed blocksetting.madmaxoft2013-08-181-1/+81
| | | | Untested yet, so might not work.
* Added cWindow property manipulation API.madmaxoft2013-08-181-1/+70
| | | | Now enchantment table and furnace properties can be set by a plugin
* Disabled Lua virtual hooks.madmaxoft2013-08-181-1955/+16
| | | | This technology was used for old-style plugins and is no longer supported nor needed. Fixes #78.
* Added cRoot:BroadcastChat() to the Lua API.madmaxoft2013-08-171-1/+36
| | | | This allows plugins to broadcast a chat message to all connected players. It is a replacement for previously removed cServer:BroadcastChat().
* Replaced E_ENTITY_TYPE_XXX with cMonster::mtXXX.madmaxoft2013-08-161-31/+36
| | | | Also slightly improved the spawning algorithm.
* Exported cWorld:DoExplosionAt() to Lua API.madmaxoft2013-08-151-1/+47
|
* Fixed wrong names for some metas.madmaxoft2013-08-141-9/+9
| | | | They were E_BLOCK_ instead of E_META_.
* Player counts are now properly handled.madmaxoft2013-08-141-3/+3
| | | | Fixes #80
* Exported cWorld:BroadcastChat() to the Lua API; used in the Core.madmaxoft2013-08-131-1/+38
|
* Merge branch 'master' into PerWorldThreads.madmaxoft2013-08-131-1/+2
|\ | | | | | | Also fixed the AllToLua script not resolving conflicts.
| * Added quartz stairs.STRWarrior2013-08-121-30581/+30582
| |
* | Clients are now ticked in cServer first, then in cWorld once they get assigned a world.madmaxoft2013-08-131-85/+1
| |
* | Removed cServer::BroadcastChat() and cServer::SendMessage().madmaxoft2013-08-121-77/+1
| | | | | | | | These two functions make it difficult to move to the new ticking system, and they aren't used anyway. If so required, they can be emulated by ForEachWorld / ForEachPlayer calls.
* | Added cWorld:QueueSaveAllChunks() function for saving chunks asynchronously.madmaxoft2013-08-111-1/+33
| | | | | | | | The cWorld:SaveAllChunks() is therefore deprecated in the API and will be removed soon, use QueueSaveAllChunks() instead.
* | Moved MaxPlayers and Description from cWorld to cServer.madmaxoft2013-08-111-101/+134
|/ | | | Also started creating a new cWorld::cTickThread class, but not used yet.
* Added the OnHopperPullingItem and OnHopperPushingItem hooks.madmaxoft2013-08-111-4/+9
| | | | Requested in FS 412, slightly modified the params.
* Renamed Plugin_NewLua to PluginLua.madmaxoft2013-08-101-1/+1
|
* Added OnExploding() and OnExploded() hooks.madmaxoft2013-08-091-31/+236
| | | | | | | | As requested in FS 413, with extra parameters: World, BlockX, BlockY, BlockZ, Size, CanCauseFire, Source, SourceData OnExploding() can return 3 values: StopHook, CanCauseFire, ExplosionSize
* Addeed OnSpawningEntity, OnSpawnedEntity, OnSpawningMonster, OnSpawnedMonster hooks.madmaxoft2013-08-081-10/+24
| | | | As requested in FS 418.
* Added cLineBlockTracer to the APImadmaxoft2013-08-071-50/+111
|
* Implemented OnPlayerRightClickingEntity() hookmadmaxoft2013-08-021-1/+2
| | | | Fixes FS 425
* Updated the nightbuild script for Gitmadmaxoft2013-07-291-1/+1
|
* WebAdmin: Removed the duplicate memory usage queryingmadmaxoft2013-07-291-7/+3
|
* Updated the automatic Lua bindingsmadmaxoft2013-07-291-87/+222
|
* WebAdmin templates can use LuaFakeTruth2013-07-291-26/+401
| | | | | New WebAdmin templates can use Lua to completely compose the pages themselves. This should allow infinite WebAdmin design possibilities.
* cInventory: Added the ChangeSlotCount() function to the Lua APImadmaxoft@gmail.com2013-07-261-1/+38
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1683 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added a StringToMobType() function to the Lua API (patch contributed by STR_Warrior)madmaxoft@gmail.com2013-07-121-1/+32
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1674 0a769ca7-a7f5-676a-18bf-c427514a06d6
* First implementation of movement-related hunger and APImadmaxoft@gmail.com2013-07-121-51/+323
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1673 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added StringUtils functions to Lua API; added StripColorCodes(); ChatLog now strips color codes from logged messages.madmaxoft@gmail.com2013-07-071-1/+165
| | | | | | Fixes FS #398 git-svn-id: http://mc-server.googlecode.com/svn/trunk@1661 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed sprinting in 1.6.1, made speeds available through API; fixed messages containing quotes.madmaxoft@gmail.com2013-07-071-9/+252
| | | | | | Fixes FS #415 git-svn-id: http://mc-server.googlecode.com/svn/trunk@1660 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Empty buckets replace fluid buckets on use and vice versa (patch contributed by Mgueydan)madmaxoft2013-07-031-2/+2
| | | | | | | Fixes FS #277. API change: added an optional parameter to cItemGrid:AddItem(), cItemGrid:AddItems(), cInventory:AddItem() and cInventory:AddItems() git-svn-id: http://mc-server.googlecode.com/svn/trunk@1643 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added DamageType translation to APImadmaxoft@gmail.com2013-07-011-32/+93
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1639 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Rewritten entity-on-fire management ("forever on fire" bugs)madmaxoft@gmail.com2013-07-011-1189/+1235
| | | | | | | | | Fixes FS #297 and part of FS #403. Added sizes to all entities. Moved all damage-related functions from cPawn to cEntity API change: renamed cPawn:TeleportTo() to cEntity:TeleportToCoords() git-svn-id: http://mc-server.googlecode.com/svn/trunk@1635 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Advanced RCON: Command output is sent to the RCON client.madmaxoft@gmail.com2013-06-291-59/+25
| | | | | | | | | RCON authentication is now required before executing commands. Console command handlers now return two values, bool (IsHandled) and string (CommandOutput). API change: removed cRoot:ExecuteConsoleCommand(), added cRoot:QueueExecuteConsoleCommand(). API change: removed cPluginManager:ExecuteConsoleCommand(), use cRoot:QueueExecuteConsoleCommand() instead git-svn-id: http://mc-server.googlecode.com/svn/trunk@1631 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added the End height and composition generators.madmaxoft@gmail.com2013-06-221-5/+67
| | | | | | Also made the dimension in world.ini specifiable by a string. Exported StringToDimension() and StringToBiome() to Lua API. git-svn-id: http://mc-server.googlecode.com/svn/trunk@1621 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Dispensers dispense primed TNTmadmaxoft@gmail.com2013-06-211-3/+5
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1617 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Simulators are woken up after an explosion.madmaxoft@gmail.com2013-06-211-1/+83
| | | | | | Fixes FS #391 git-svn-id: http://mc-server.googlecode.com/svn/trunk@1615 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Furnaces light up visually when they're cookingmadmaxoft@gmail.com2013-06-201-5/+13
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1612 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added the API for spawning primed TNTsmadmaxoft@gmail.com2013-06-181-1/+41
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1605 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Rewritten furnacesmadmaxoft@gmail.com2013-06-161-22/+485
| | | | | | | | | | | | 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
* Entity: Added IsTNTnielsbreu@gmail.com2013-06-151-1/+34
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1593 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cItemGrid: Added IsSlotEmpty() functionsmadmaxoft@gmail.com2013-06-131-1/+68
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1585 0a769ca7-a7f5-676a-18bf-c427514a06d6
* ChestEntity: fixed bindingsmadmaxoft@gmail.com2013-06-121-19/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1584 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Implemented the Hopper block handlermadmaxoft@gmail.com2013-06-121-8/+13
| | | | | | Hoppers can be placed properly, but won't work yet. git-svn-id: http://mc-server.googlecode.com/svn/trunk@1583 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added cWorld::SetSignLines(), re-exported to Lua manually to avoid ghost return valuesmadmaxoft@gmail.com2013-06-121-53/+1
| | | | | | FS #364 git-svn-id: http://mc-server.googlecode.com/svn/trunk@1582 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed previous commit.nielsbreu@gmail.com2013-06-091-704/+3272
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1573 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added SetTicksUntilWeatherChange/GetTicksUntilWeatherChange. to set/get the amount of ticks before the weather changes. Added SendBlockChange to Lua to create "fake" blocksnielsbreu@gmail.com2013-06-091-3272/+813
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1572 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Removed cLadder, cSign, cStairs, cTorch and cVine classes, moved their functionality into the appropriate BlockHandlers / ItemHandlersmadmaxoft@gmail.com2013-06-041-261/+24
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1555 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added cItem copy-constructor to Lua API, made cItem::IsEqual() and IsStackable() enchantment-awaremadmaxoft@gmail.com2013-06-041-5/+98
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1546 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added the possibility to specify enchantments by name in the constructor and AddFromString() functionmadmaxoft@gmail.com2013-06-021-1/+33
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1542 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Enchantments: API and sending to clientmadmaxoft@gmail.com2013-06-021-35/+492
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1539 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cItem constructor changed to create single-piece items when not given countmadmaxoft@gmail.com2013-06-011-17/+85
| | | | | | http://forum.mc-server.org/showthread.php?tid=1150 git-svn-id: http://mc-server.googlecode.com/svn/trunk@1536 0a769ca7-a7f5-676a-18bf-c427514a06d6
* LuaWindow: Initial code, the window can be opened, but not much manipulatedmadmaxoft@gmail.com2013-05-301-4/+590
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1532 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Moved BlockEntities to a separate foldermadmaxoft@gmail.com2013-05-281-7/+73
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1527 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Chunk / ChunkMap: Added support for unbounded querying blocktype-only or blockmeta-onlymadmaxoft@gmail.com2013-05-281-1/+35
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1522 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed cItemGrid API, no more changeable GetSlot().madmaxoft@gmail.com2013-05-261-5/+5
| | | | | | Also fixed possible water and lava duplication glitches in the dispenser. git-svn-id: http://mc-server.googlecode.com/svn/trunk@1520 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Block entities with storage now correctly mark the chunk as dirty when their contents change.madmaxoft@gmail.com2013-05-261-1/+67
| | | | | | http://forum.mc-server.org/showthread.php?tid=434&pid=8210#pid8210 git-svn-id: http://mc-server.googlecode.com/svn/trunk@1515 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Implemented droppersmadmaxoft@gmail.com2013-05-261-103/+334
| | | | | | 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
* Added all new bindings, refactored Debuggers; new Debuggers function.madmaxoft@gmail.com2013-05-251-235/+455
| | | | | | 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
* Slight cleanup in the cInventory / cItemGrid APImadmaxoft@gmail.com2013-05-241-35/+203
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1504 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Refactored cInventory to use cItemGrid for the actual Storagemadmaxoft@gmail.com2013-05-241-195/+767
| | | | | | This makes the API more orthogonal and is easier to use in the plugins. Also changes in the inventory are now propagated to the needed places (armor updates to BroadcastEntityEquipment etc.) even when the inventory is changed by a plugin. git-svn-id: http://mc-server.googlecode.com/svn/trunk@1503 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed linking error from rev 1498madmaxoft@gmail.com2013-05-211-8/+142
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1501 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Inventory code cleanup, players can now see each other's armormadmaxoft@gmail.com2013-05-191-39/+185
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1493 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cItems: Added runtime bounds-checking to avoid server crashes with badly written plugins.madmaxoft@gmail.com2013-05-121-66/+26
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1472 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed error while compiling.nielsbreu@gmail.com2013-05-091-13/+41
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1464 0a769ca7-a7f5-676a-18bf-c427514a06d6
* function SpawnItemPickups is now exported to Lua. Lua is able to create a Items object.nielsbreu@gmail.com2013-05-091-0/+166
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1463 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Refactored window clicking code to use different click actionsmadmaxoft@gmail.com2013-05-081-8/+141
| | | | | | First part of solving FS #371; should fix #370. git-svn-id: http://mc-server.googlecode.com/svn/trunk@1459 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added dtAdmin damage type for use in pluginsmadmaxoft@gmail.com2013-04-281-1/+3
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1429 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Initial implementation of explosions and TNT blockkeyboard.osh@gmail.com2013-04-181-1/+2
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1392 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Rewritten entities so that they are owned by individual chunks and ticked within their chunk's Tick()madmaxoft@gmail.com2013-04-131-34/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1385 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed a bit of coding style and function names in cItemmadmaxoft@gmail.com2013-04-111-17/+17
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1384 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Dispensers rewritten to use ItemGridmadmaxoft@gmail.com2013-04-101-1/+44
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1383 0a769ca7-a7f5-676a-18bf-c427514a06d6
* ItemGrid: Renamed all Item to Slot - better and consistent namingmadmaxoft@gmail.com2013-04-101-57/+57
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1381 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added cItemGrid to represent an XY grid of items; converted chests to use cItemGrid.madmaxoft@gmail.com2013-04-101-11/+762
| | | | | | 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
* Mineshafts: Added random loot to generated chests and fixed chest directionmadmaxoft@gmail.com2013-04-061-3/+250
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1365 0a769ca7-a7f5-676a-18bf-c427514a06d6
* MineShafts: Added tracks to corridorsmadmaxoft@gmail.com2013-03-311-1/+3
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1342 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cChunkDesc: Added the RandomFillRelCuboid() functionmadmaxoft@gmail.com2013-03-311-1/+90
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1341 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cCuboid: Added the IsCompletelyInside() functionmadmaxoft@gmail.com2013-03-311-1/+36
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1339 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added cCuboid:Assign() and cChunkDesc:FloorRelCuboid()madmaxoft@gmail.com2013-03-311-1/+126
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1333 0a769ca7-a7f5-676a-18bf-c427514a06d6
* ChunkDesc: Extended the interface, RelCuboid functions now take either a cCuboid or a set of 6 coords.madmaxoft@gmail.com2013-03-301-12/+102
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1330 0a769ca7-a7f5-676a-18bf-c427514a06d6
* ChunkDesc: Cuboid-based manipulationmadmaxoft@gmail.com2013-03-291-1/+114
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1324 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Cuboid: Added DoesIntersect(), more IsInside() and more constructorsmadmaxoft@gmail.com2013-03-291-2/+245
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1323 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Cuboid: Added the DifX/Y/Z functionsmadmaxoft@gmail.com2013-03-291-74/+173
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1320 0a769ca7-a7f5-676a-18bf-c427514a06d6
* BlockArea: Implemented mirroring without meta manipulationmadmaxoft@gmail.com2013-03-251-3/+729
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1316 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Updated bindings for new cChunkDesc functionsmadmaxoft@gmail.com2013-03-191-3/+6
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1288 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Rewritten generators so that they use the cChunkDesc class (and thus can use cBlockArea merging)madmaxoft@gmail.com2013-03-171-3/+138
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1282 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added water and lava springs.madmaxoft@gmail.com2013-03-141-1/+37
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1269 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Pickups are now being saved into Anvil.madmaxoft@gmail.com2013-03-091-15/+83
| | | | | | Also changed cEntity rotation datatype to double git-svn-id: http://mc-server.googlecode.com/svn/trunk@1262 0a769ca7-a7f5-676a-18bf-c427514a06d6
* IPv6 support + removed cTCPLink from Lua APImadmaxoft@gmail.com2013-03-051-364/+7
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1253 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Player can sit in minecarts (but not move them yet)madmaxoft@gmail.com2013-03-031-1/+35
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1249 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added missing item types, fixed placing stone walls.madmaxoft@gmail.com2013-03-031-1/+12
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1243 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Updated cEntity API; removed functions that are unusable from Lua, added a few query functions.madmaxoft@gmail.com2013-03-011-175/+453
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1231 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Moved the Speed member into cEntity class instead of its descendants.madmaxoft@gmail.com2013-02-211-346/+137
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1222 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added HOOK_EXECUTE_COMMAND for intercepting executed commands and console commands.madmaxoft@gmail.com2013-02-211-1/+3
| | | | | | Note that built-in console commands are exempt to this hook - they are always performed and the hook is not called. Also note that, for reasons unknown, the HookNotify plugin doesn't list the callback arguments. git-svn-id: http://mc-server.googlecode.com/svn/trunk@1221 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Removed all E_ITEM_ symbols equivalent to E_BLOCK_, and all obsolete item and block symbols.madmaxoft@gmail.com2013-02-161-139/+15
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1218 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Plugins can now bind console commandsmadmaxoft@gmail.com2013-02-151-35/+172
| | | | | | | FS #300 Most console commands are now implemented in the Core plugin. git-svn-id: http://mc-server.googlecode.com/svn/trunk@1214 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Exported forgotten API functions in cPluginManager: ExecuteCommand(), ForceExecuteCommand()madmaxoft@gmail.com2013-02-131-1/+77
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1212 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added HOOK_WEATHER_CHANGING.madmaxoft@gmail.com2013-02-131-5/+60
| | | | | | http://www.mc-server.org/support/index.php?do=details&task_id=299 git-svn-id: http://mc-server.googlecode.com/svn/trunk@1210 0a769ca7-a7f5-676a-18bf-c427514a06d6
* More API functions in cBlockArea: Create(), Fill(), FillRelArea()madmaxoft@gmail.com2013-02-111-1/+208
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1208 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added cBlockArea:Merge() API function to merge two block areas using different strategies.madmaxoft@gmail.com2013-02-101-3/+48
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1207 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added cBlockArea:Expand() API function (untested)madmaxoft@gmail.com2013-02-091-1/+45
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1203 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cChunkDesc can now read and write cBlockAreas.madmaxoft@gmail.com2013-02-081-8/+222
| | | | | | A simple example is provided in the Debuggers plugin. git-svn-id: http://mc-server.googlecode.com/svn/trunk@1201 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Prepared cChunkDesc for further API extension; used it as the sole container for generated chunk data, including entities / block entities.madmaxoft@gmail.com2013-02-081-31/+111
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1200 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added cBlockArea:CopyTo() and :CopyFrom(), so now block areas can be duplicated easily.madmaxoft@gmail.com2013-02-071-1/+69
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1199 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cBlockArea can now be saved as a .schematic file.madmaxoft@gmail.com2013-02-071-1/+37
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1198 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cBlockArea can now be loaded from a .schematic file.madmaxoft@gmail.com2013-02-061-1/+37
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1195 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added a new API call to cBlockArea: Crop().madmaxoft@gmail.com2013-02-061-2/+46
| | | | | | Also fixed cBlockArea:MakeIndex(), the indexing was wrong. git-svn-id: http://mc-server.googlecode.com/svn/trunk@1194 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added new hooks: OnChunkAvailable(), OnChunkUnloaded() and OnChunkUnloading(). Modified OnChunkGenerated() signature.madmaxoft@gmail.com2013-02-051-1/+62
| | | | | | http://forum.mc-server.org/showthread.php?tid=464&pid=6312#pid6312 git-svn-id: http://mc-server.googlecode.com/svn/trunk@1193 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Moved command API into cPluginManager.madmaxoft@gmail.com2013-02-011-135/+69
| | | | | | As specified in http://forum.mc-server.org/showthread.php?tid=765 , commands are now bound using a single function, cPluginManager:BindCommand(). git-svn-id: http://mc-server.googlecode.com/svn/trunk@1183 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Renamed HOOK_KILLED to HOOK_KILLING to match naming conventions.madmaxoft@gmail.com2013-01-281-2/+2
| | | | | | Also tweaked the mechanics so that plugins may revive without dropping other plugins out of the picture. git-svn-id: http://mc-server.googlecode.com/svn/trunk@1182 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Renamed HOOK_COLLECT_PICKUP to HOOK_COLLECTING_PICKUP to match other hooks' naming.madmaxoft@gmail.com2013-01-281-6/+6
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1180 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added cItems to Lua API.madmaxoft@gmail.com2013-01-271-284/+282
| | | | | | 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
* Added the HOOK_BLOCK_TO_PICKUPS hook that fires when a block is dug up and should be converted to pickups.madmaxoft@gmail.com2013-01-271-1/+2
| | | | | | Note that cItems is used in the function signature but not yet exported in the API, TODO! git-svn-id: http://mc-server.googlecode.com/svn/trunk@1176 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Removed cMCLogger from Lua APImadmaxoft@gmail.com2013-01-271-153/+7
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1175 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Changed HOOK_PLAYER_MOVED to HOOK_PLAYER_MOVING to match the scheme used for names.madmaxoft@gmail.com2013-01-261-2/+2
| | | | | | -ING means the event is being processed and may be refused by a plugin, -ED means it has already happenned and the plugin cannot do anything about it. git-svn-id: http://mc-server.googlecode.com/svn/trunk@1174 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Merged the usable portion of the "gens" branch.madmaxoft@gmail.com2013-01-251-109/+177
| | | | | | 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
* Renamed rclk hook to HOOK_PLAYER_RIGHT_CLICK.madmaxoft@gmail.com2013-01-181-2/+3
| | | | | | http://forum.mc-server.org/showthread.php?tid=464&pid=6163#pid6163 git-svn-id: http://mc-server.googlecode.com/svn/trunk@1158 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed missing bindings in cPluginmadmaxoft@gmail.com2013-01-141-6/+103
| | | | | | FS #291 - crash on "/help" issued via client git-svn-id: http://mc-server.googlecode.com/svn/trunk@1143 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Merged branch "branches/hooks" into "trunk".madmaxoft@gmail.com2013-01-121-3404/+86
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1139 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cBlockArea now has a GetBlockTypeMeta() and GetRelBlockTypeMeta() methodsmadmaxoft@gmail.com2013-01-041-1/+89
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1118 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cPickup now uses full cItem, instead of a pointermadmaxoft@gmail.com2012-12-281-80/+26
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1114 0a769ca7-a7f5-676a-18bf-c427514a06d6
* MTRand reference is now passed as a Tick() parameter so that it isn't created and destroyed over and over again. All entities will handle physics (empty callback for now)madmaxoft@gmail.com2012-12-221-50/+269
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1096 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added more constants into eEntityType; made them a compulsory parameter to the constructor, so that all entities have proper type.madmaxoft@gmail.com2012-12-211-100/+124
| | | | | | Also added a few utility functions to cEntity for distinguishing the types (IsPlayer(), IsPickup() etc.) git-svn-id: http://mc-server.googlecode.com/svn/trunk@1092 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Reworked the IsA() / GetClass() framework to actually be useful. Added GetParentClass().madmaxoft@gmail.com2012-12-211-39/+157
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1090 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Refactored the TakeDamage API to take equipped weapon and armor into consideration (PvP untested)madmaxoft@gmail.com2012-12-211-333/+1393
| | | | | | http://forum.mc-server.org/showthread.php?tid=625 git-svn-id: http://mc-server.googlecode.com/svn/trunk@1087 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added primary server version interface to cRoot and "primaryserverversion" console command.madmaxoft@gmail.com2012-11-201-1/+69
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1059 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Cleanup: Removed deprecated functions from Lua APImadmaxoft@gmail.com2012-11-111-103/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1033 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Hopefully a fix for crash when chunks are added to a client being destroyed.madmaxoft@gmail.com2012-11-111-4/+4
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1032 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Refactored the world time.madmaxoft@gmail.com2012-11-011-17/+183
| | | | | | 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
* Added the [Server].PrimaryServerVersion setting to settings.ini; 1.4.2 gets the correct versionmadmaxoft@gmail.com2012-10-311-1/+32
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1018 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added cWorld:SpawnMob(PosX, PosY, PosZ, EntityType) to Lua APImadmaxoft@gmail.com2012-10-281-9/+146
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@1014 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Double chests are now working, and with sound. (FS #69)madmaxoft@gmail.com2012-10-201-36/+3
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@993 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Made cWorld's block query functions more orthogonal, added GetBlockInfo() returning all info on a block.madmaxoft@gmail.com2012-10-201-124/+213
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@986 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Converted some const char*s and std::strings to AStringsfaketruth2012-10-181-29/+202
| | | | | | | Added a cPlayer:RemoveFromGroup() so players can be removed from groups programmatically Added a cClientHandle:SetUsername to be used by Lua. I'm curious what ThuGie can do with his plugin. git-svn-id: http://mc-server.googlecode.com/svn/trunk@978 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Completely removed support for old style Lua plugins (can use both Plugin and NewPlugin in settings.ini for now)faketruth2012-10-141-166/+334
| | | | | | | | | | | | 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
* Added delayed ticking to Lua APImadmaxoft@gmail.com2012-10-131-1/+113
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@953 0a769ca7-a7f5-676a-18bf-c427514a06d6
* BlockArea writing support (BlockTypes with BlockMeta only)madmaxoft@gmail.com2012-10-061-1/+300
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@933 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Moved blockticking into blockhandler classes.madmaxoft@gmail.com2012-10-031-14/+94
| | | | | | Also slightly refactored the variable / argument names (BlockID is deprecated, use BlockType instead) git-svn-id: http://mc-server.googlecode.com/svn/trunk@921 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added BLOCK_FACE_NONE into the plugin APImadmaxoft@gmail.com2012-10-031-1/+46
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@919 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed Lua bindings for file renaming in previous commitsmadmaxoft@gmail.com2012-09-241-1/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@889 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Source files cleanup: The rest of the files renamed.madmaxoft@gmail.com2012-09-241-28/+28
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@887 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Source files cleanup: OSSupport-related files in a separate subfolder, renamed.madmaxoft@gmail.com2012-09-231-2/+2
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@885 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Source files cleanup: Removed unused cBlockToPickupmadmaxoft@gmail.com2012-09-231-5/+35
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@884 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added cPlugin_NewLua::GetLocalDirectory() and exported it to Lua so plugins can store their settings in their own folder.faketruth2012-09-081-1/+34
| | | | | | Core now stores banned players and whitelist data in its own directory git-svn-id: http://mc-server.googlecode.com/svn/trunk@850 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added the ItemToString() and ItemTypeToString() functions.madmaxoft@gmail.com2012-09-081-1/+167
| | | | | | Ref.: http://forum.mc-server.org/showthread.php?tid=434&pid=4506#pid4506 git-svn-id: http://mc-server.googlecode.com/svn/trunk@847 0a769ca7-a7f5-676a-18bf-c427514a06d6
* ToLua does not like the override keyword :(faketruth2012-09-021-44/+12
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@821 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Exported cWorld::DoWithChestAt to Luafaketruth2012-09-021-27/+310
| | | | | | Exported cChestEntity to Lua for handling in DoWithChestAt git-svn-id: http://mc-server.googlecode.com/svn/trunk@820 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added a Player parameter to OnUpdatedSign and OnUpdatingSign Lua callbacks and to the cWorld:UpdateSign method (http://forum.mc-server.org/showthread.php?tid=464&pid=4393#pid4393)madmaxoft@gmail.com2012-09-011-31/+45
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@814 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Gotten completely rid of all cPackets. The cProtocol125 class now does all the parsing and writing by itself.madmaxoft@gmail.com2012-08-291-60/+4
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@802 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Cut out all packet handling to a separate cProtocol descendantmadmaxoft@gmail.com2012-08-271-2/+2
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@796 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cSocket doesn't use cPackets.madmaxoft@gmail.com2012-08-251-5/+5
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@790 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cPickup doesn't use cPackets.madmaxoft@gmail.com2012-08-241-35/+36
| | | | | | Also, Lua API change, OnCollectItem -> OnCollectPickup; first param is cPlayer to match other callbacks. git-svn-id: http://mc-server.googlecode.com/svn/trunk@786 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Monster classes don't use cPackets. Chat messages are sent / broadcast without cPackets. BlockEntities don't use cPackets.madmaxoft@gmail.com2012-08-241-124/+93
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@783 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added plugin name to deprecation messagesmadmaxoft@gmail.com2012-08-231-226/+11
| | | | | | Removed duplicate inheritance of m_Name in cPlugin_NewLua by making cWebPlugin interface-only git-svn-id: http://mc-server.googlecode.com/svn/trunk@782 0a769ca7-a7f5-676a-18bf-c427514a06d6
* WebAdmin should not cause crashes anymorefaketruth2012-08-221-67/+131
| | | | | | | | 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
* Almost all packets' handling is now rewritten not to use cPacket descendants elsewhere than in cClientHandle.madmaxoft@gmail.com2012-08-191-28/+29
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@761 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Another handful of packets rewritten.madmaxoft@gmail.com2012-08-191-16/+17
| | | | | | Also changed cItem::m_ItemID into m_ItemType of type short. Easier handling. m_ItemID kept for compatibility reasons (Lua-interface etc.) git-svn-id: http://mc-server.googlecode.com/svn/trunk@756 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Chat packet handled in the new way; fixed missing packet sending for inventory slot.madmaxoft@gmail.com2012-08-181-29/+33
| | | | | | Again, API change! cPlugin:OnChat() has had its parameters swapped, to match all the other callbacks - Player first, Message second git-svn-id: http://mc-server.googlecode.com/svn/trunk@751 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Packet refactoring, phase two, partial. Rewritten a few packet handling functions not to use cPacket-descendant objects.madmaxoft@gmail.com2012-08-181-1649/+1019
| | | | | | 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
* Updated Bindings to match the new armor categories and torch metasmadmaxoft@gmail.com2012-08-111-1/+126
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@729 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed a crash in creative inventory (FS 235, patch submitted by l0udPL)madmaxoft@gmail.com2012-08-101-20/+24
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@722 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed a few gcc pedantic warnings; made BLOCKTYPE an unsigned char type.madmaxoft@gmail.com2012-08-031-26/+25
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@711 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed warnings in item handlers - items' damage value is a short, but block meta is only a NIBBLETYPE. Also slight cleanup.madmaxoft@gmail.com2012-07-291-2/+3
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@704 0a769ca7-a7f5-676a-18bf-c427514a06d6
* A new Block handling system :olapayo94@gmail.com2012-07-151-45/+9
| | | | | | | | | | 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
* Removed the deprecated confusing E_BLOCK_WOODmadmaxoft@gmail.com2012-07-151-2/+2
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@667 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Improved Squirrel Bindingslapayo94@gmail.com2012-07-091-1/+1
| | | | | | Added AddCommand / BindCommand for Squirrel Plugins git-svn-id: http://mc-server.googlecode.com/svn/trunk@652 0a769ca7-a7f5-676a-18bf-c427514a06d6
* BlockArea name change revertedlapayo94@gmail.com2012-07-091-1/+1
| | | | | | fixed VS2008 building git-svn-id: http://mc-server.googlecode.com/svn/trunk@649 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Squirrel Pluginslapayo94@gmail.com2012-07-081-2/+2
| | | | | | | | | 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
* BLOCKTYPE and NIBBLETYPE are finally exported in Lua API as numbers, not usertypesmadmaxoft@gmail.com2012-07-021-1/+29
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@642 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cBlockArea object added (with only minimal testing so far)madmaxoft@gmail.com2012-07-021-36/+1007
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@641 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added the cWorld::DoWithPlayer() function and exported it in the Lua API. Removed the obsolete cWorld::GetPlayer() function.madmaxoft@gmail.com2012-07-021-36/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@639 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Removed json-related methods from Lua APImadmaxoft@gmail.com2012-06-191-74/+5
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@634 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Removed the deprecated GetBlockEntity(), added several enumerators to replace it.madmaxoft@gmail.com2012-06-171-28/+39
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@629 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed lighting for cake, fence, fence gates, glass pane, iron bars, iron door and wooden doormadmaxoft@gmail.com2012-06-161-1/+3
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@625 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added new hooks: UPDATING_SIGN and UPDATED_SIGN. The first one is capable of changing the sign text by returning the new four lines along with the bool valuemadmaxoft@gmail.com2012-06-161-1/+299
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@622 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Lua binding for cVine fixedcedeel@gmail.com2012-06-161-16/+52
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@619 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Rewritten ForEach using #define-s, new ones can be added as a simple one-linermadmaxoft@gmail.com2012-06-151-1/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@618 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Renamed HOOK_WEATHER_CHANGE to HOOK_WEATHER_CHANGED, added the glue code for it to actually workmadmaxoft@gmail.com2012-06-141-2/+100
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@610 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added a world parameter to HOOK_CHUNK_GENERATING.madmaxoft@gmail.com2012-06-141-25/+31
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@609 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Attempt to bring sanity to newlines across systems.cedeel@gmail.com2012-06-141-21337/+21337
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@606 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added HOOK_WEATHER_CHANGE.cedeel@gmail.com2012-06-141-1/+2
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@605 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Exported the ItemCategory functions and added a IsTool() function to it, for easy checking whether an item is a toolfaketruth2012-06-131-1/+184
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@603 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added a BlockToPickup hook for modifying pickups when a player breaks a block.madmaxoft@gmail.com2012-06-131-28/+437
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@602 0a769ca7-a7f5-676a-18bf-c427514a06d6
* I think the chunk generation hooks for Lua are pretty good now, though it might still need some tweakingfaketruth2012-06-131-18/+518
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@600 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Revamped the weather system.cedeel@gmail.com2012-06-131-3/+35
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@599 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added working crafting hooks HOOK_PRE_CRAFTING, HOOK_CRAFTING_NO_RECIPE and HOOK_POST_CRAFTINGmadmaxoft@gmail.com2012-06-121-10/+359
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@598 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Updated the crafting recipes architecture to better support crafting hooks. Removed the old recipe file and implementation altogether.madmaxoft@gmail.com2012-06-121-46/+914
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@597 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added implementation of E_PLUGIN_CHUNK_GENERATING lua hookfaketruth2012-06-111-1/+190
| | | | | | 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
* New IniFile functionality: read value and set default if it isn't present (GetValueSet() ); used by cWorldmadmaxoft@gmail.com2012-06-091-26/+225
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@586 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Sugarcane and cactus max height can be set in world.ini.madmaxoft@gmail.com2012-06-091-1/+67
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@585 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Plants growable by bonemeal are settable in the world.ini. Default matches vanilla MC.madmaxoft@gmail.com2012-06-091-3/+5
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@584 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Cacti grow by themselves and by bonemealmadmaxoft@gmail.com2012-06-091-5/+6
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@583 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Configurable classic composition generatorcedeel@gmail.com2012-06-081-3/+3
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@575 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Bonemeal works on crops, melons, pumpkins, saplings and grass. Plant growing has been refactored into separate functions callable from Lua, too.madmaxoft@gmail.com2012-06-071-1/+123
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@573 0a769ca7-a7f5-676a-18bf-c427514a06d6
* 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.madmaxoft@gmail.com2012-06-061-5/+131
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@561 0a769ca7-a7f5-676a-18bf-c427514a06d6
* New hook, E_PLUGIN_CHUNK_GENERATED, called after each chunk is generated (the chunk is already present in cWorld)madmaxoft@gmail.com2012-06-051-808/+116
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@558 0a769ca7-a7f5-676a-18bf-c427514a06d6
* 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.madmaxoft@gmail.com2012-06-041-18862/+18980
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@549 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Updated zlib, added chat formatting, fixed upside down stairs and slabs, fixed makefiles, hopefully updated vc project filescedeel@gmail.com2012-06-041-18793/+18862
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@546 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added Lua function cRoot:ForEachWorld(), removed the obsolete cRoot:GetWorld() method (both C++ and Lua)madmaxoft@gmail.com2012-06-021-39/+11
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@534 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cWorld::UnloadUnusedChunks() exported to Luamadmaxoft@gmail.com2012-05-311-1/+33
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@531 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added support for SetNextBlockTick() function callable from Luamadmaxoft@gmail.com2012-05-301-1/+39
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@527 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Lua plugins can now query the world for various queue sizes ( http://forum.mc-server.org/showthread.php?tid=432 )madmaxoft@gmail.com2012-05-301-3/+136
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@524 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added wool and netherrack block IDsmadmaxoft@gmail.com2012-05-271-1/+3
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@509 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Merged the composable_generator branch into the trunkmadmaxoft@gmail.com2012-05-251-21/+341
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@504 0a769ca7-a7f5-676a-18bf-c427514a06d6
* A globally-accessible OS-independent GetDirectoryContents() function for listing all objects in a folder as an AStringListmadmaxoft@gmail.com2012-03-251-1/+3
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@433 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Reverted the previous commit - it is useless, since entities still depend heavily on cWorldmadmaxoft@gmail.com2012-03-241-2/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@428 0a769ca7-a7f5-676a-18bf-c427514a06d6
* 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)madmaxoft@gmail.com2012-03-231-1/+2
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@427 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Exposed a function to Lua to get a block's sky light valuefaketruth2012-03-161-30/+40
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@416 0a769ca7-a7f5-676a-18bf-c427514a06d6
* cClientHandles have a unique ID now to distinguish themfaketruth2012-03-091-4/+137
| | | | | | | | | | | 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
* Fixed bug where cPlayer's cClientHandle was used after cPlayer was destroyed http://forum.mc-server.org/showthread.php?tid=380faketruth2012-03-071-13/+169
| | | | | | | | | 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
* Changed signed char to unsigned char in block packets, so we can receive height up to 255faketruth2012-03-041-8/+8
| | | | | | 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
* Started carefully moving to 1.2.2faketruth2012-03-011-63/+92
| | | | | | 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
* Lua seems to have trouble with a combination of overloaded functions and class inheritance, so I renamed TeleportTo( cEntity* ) to TeleportToEntityfaketruth2012-02-221-29/+50
| | | | | | /tp command should work again :) git-svn-id: http://mc-server.googlecode.com/svn/trunk@314 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Removed cChunkPtrs from everywhere but internal cChunkMap usage. Now we should finally be threadsafe :)madmaxoft@gmail.com2012-02-211-3/+3
| | | | | | Also fixed a threading issue when a player connecting might have gotten stuck in "Downloading world" forever git-svn-id: http://mc-server.googlecode.com/svn/trunk@304 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Got rid of dangerous GetEntity(), not using DoWithEntity()faketruth2012-02-161-36/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@278 0a769ca7-a7f5-676a-18bf-c427514a06d6
* No longer using pointers for Vector3(f/d/i) in cEntity's and cTracerfaketruth2012-02-151-25/+25
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@268 0a769ca7-a7f5-676a-18bf-c427514a06d6
* 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.madmaxoft@gmail.com2012-02-131-102/+80
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@251 0a769ca7-a7f5-676a-18bf-c427514a06d6
* MTRand class is not created in each tick, therefore much improving tick-thread time (now uses ~5 % CPU instead of one full core)madmaxoft@gmail.com2012-02-081-3/+3
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@245 0a769ca7-a7f5-676a-18bf-c427514a06d6
* 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++.madmaxoft@gmail.com2012-02-021-27/+28
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@225 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Rewritten cAuthenticator to make use of the new cIsThread architecture - now authentication runs in a single separate thread for all clients;madmaxoft@gmail.com2012-02-011-24/+25
| | | | | | | 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
* Added all current hooks to the new plugin structure.faketruth2012-02-011-112/+684
| | | | | | | 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
* Plugins can now be enabled and disabled through WebAdminfaketruth2012-02-011-1/+38
| | | | | | 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
* Changed how Lua handles the (Post)Params in the HTTPRequest of a WebPluginfaketruth2012-01-311-62/+97
| | | | | | 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
* Can now receive POST data in WebPlugins!faketruth2012-01-311-1/+32
| | | | | | | 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
* Added a WebAdmin interface to view users their groups, and the permissions of groups.faketruth2012-01-301-3/+34
| | | | | | 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
* VC2008 / VC2010: Enabled precompiled header through Globals.h; the header included in every module in the project. Compilation optimization.madmaxoft@gmail.com2012-01-291-0/+2
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@188 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Converted entire Core plugin including WebAdmin interface to new plugin method/system/thingy and sexyfied it.faketruth2012-01-281-77/+472
| | | | | | | | 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
* Working on a new plugin design with Lua. While retaining backwards compatibility of course...faketruth2012-01-261-18/+319
| | | | | | 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
* Improved Core's WebAmin interface a bit.faketruth2012-01-221-1/+68
| | | | | | | | | 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
* CreativeInventory Updatelapayo94@gmail.com2012-01-011-50/+49
| | | | | | | - Fixed various problems with the new creative inventory (Crafting, furnace, etc) - Creative inventory will now be saved to disk, so you keep your creative inventory also for the next sessions git-svn-id: http://mc-server.googlecode.com/svn/trunk@162 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Fixed the numchunks console command.faketruth2012-01-011-1/+66
| | | | | | | Added some form of reference counting to cChunk to make sure it's not referenced when deleting it. Right now it's only needed due to the generation of chunks in a separate thread and adding it to the spread light list in cWorld git-svn-id: http://mc-server.googlecode.com/svn/trunk@161 0a769ca7-a7f5-676a-18bf-c427514a06d6
* - implemented separated inventory for creative mode (cSurvivalInventory and cCreativeInventory)lapayo94@gmail.com2012-01-011-17/+51
| | | | | | | | | | | (Separation is not perfect yet, because maybe there are some mayor changes needed :D) - implemented CreativeInventoryAction (was mistakenly called CreateInventoryAction) -> Fixed meta data for creative selected blocks ->->Slabs/Steps are now placed correctly - slabs can now be build to a double slab - fixed a bug in the inventory which put items with different meta values in the same slot git-svn-id: http://mc-server.googlecode.com/svn/trunk@160 0a769ca7-a7f5-676a-18bf-c427514a06d6
* - Implemented Drops from Burning animalslapayo94@gmail.com2011-12-281-83/+14
| | | | | | | | - added right monster health and attack strength - refactored the Pawn/Monster/Player class a little bit - changed some namings to fit the style git-svn-id: http://mc-server.googlecode.com/svn/trunk@140 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Players can switch worlds on the fly with the command /gotoworld [worldName]. This uses the function cPlayer::MoveToWorld()faketruth2011-12-261-6/+42
| | | | | | Changed isValidItem to IsValidItem in Core.lua git-svn-id: http://mc-server.googlecode.com/svn/trunk@126 0a769ca7-a7f5-676a-18bf-c427514a06d6
* - Crafting fixed in 1.0.0lapayo94@gmail.com2011-12-211-1/+1
| | | | | | | | | | - Server compatible with the weapons and equip again. (Some Packets were incompatible) - fixed bucket bugs (not all) - Fixed clients getting crashed by wrong Pickups - fixed nearly all mob drops. (Check wheather they are burning is missing Big Grin) - maybe some other things I canĀ“t recall atm Big Grin git-svn-id: http://mc-server.googlecode.com/svn/trunk@94 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Can now set gamemode via lua.admin@omencraft.com2011-11-101-1/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@89 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Made block action sanity checks more robust, water buckets, lava buckets and empty buckets should all now work.admin@omencraft.com2011-11-101-7/+173
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@87 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added random weather that persists per world. Also added SetWeather, GetWeather, and CastThunderbolt to lua bindings.admin@omencraft.com2011-11-101-1/+106
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@83 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added m_IP to player class and binding to get IP for LUA. (Probably should use m_pState)admin@omencraft.com2011-11-091-1/+67
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@82 0a769ca7-a7f5-676a-18bf-c427514a06d6
* It's a Squirrel!!faketruth2011-11-081-15/+266
| | | | | | In SquirrelBindings.h use #define USE_SQUIRREL 1 to enable squirrel git-svn-id: http://mc-server.googlecode.com/svn/trunk@76 0a769ca7-a7f5-676a-18bf-c427514a06d6
* You can now run multiple worlds by defining them in settings.ini . However there's no way to change worlds on the fly yetfaketruth2011-11-011-15/+248
| | | | | | | | | | | Players are now stored in separate folder /players instead of in the world folder (!so move the folder!) Fixed a memory leak/error in cPickup.cpp Multiple worlds are stored in cRoot cClientHandle lists are taken out of cWorld and now stored in cServer Worlds now have names to distinguish them by Some functions in the Core plugin now distinguish between worlds git-svn-id: http://mc-server.googlecode.com/svn/trunk@40 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Prepared some parts of the code for multi world support, I created lots of TODO'sfaketruth2011-10-311-26/+202
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@29 0a769ca7-a7f5-676a-18bf-c427514a06d6
* Added CreateInventoryAction packet for creative mode. Used cPacketEntityEquipment as template. Forced server into Creative Mode. Can't break blocks yet. Player can stil be damaged in creative mode and dying takes you back to survival mode.admin@omencraft.com2011-10-261-0/+1
| | | | git-svn-id: http://mc-server.googlecode.com/svn/trunk@15 0a769ca7-a7f5-676a-18bf-c427514a06d6
* MCServer c++ source filesfaketruth2011-10-031-0/+15468
git-svn-id: http://mc-server.googlecode.com/svn/trunk@3 0a769ca7-a7f5-676a-18bf-c427514a06d6