summaryrefslogtreecommitdiffstats
path: root/src/World.cpp (unfollow)
Commit message (Expand)AuthorFilesLines
2014-02-07Improved chat messaging functionsTiger Wang1-4/+7
2014-02-02Added IsBlockWaterOrIce()Tiger Wang1-1/+1
2014-02-02Revert "Added LOGREPLACELINE for line replacement"Tiger Wang1-5/+5
2014-02-02Revert "Improved code"Tiger Wang1-2/+0
2014-02-02Possibly fixed #618Tiger Wang1-2/+2
2014-02-01Added checks for ice into IsBlockWater()Tiger Wang1-1/+1
2014-02-01Changed pointers to referencesTycho1-4/+3
2014-01-31Improved codeTiger Wang1-0/+2
2014-01-30Attempt at implementing #563tonibm191-2/+1
2014-01-29Added LOGREPLACELINE for line replacementTiger Wang1-5/+5
2014-01-27The world can now be configured wether farmers should be able to harvest crops.STRWarrior1-0/+1
2014-01-26Refactored cBlockHandler::OnUse and dependentsTycho1-88/+5
2014-01-25Did what xoft recommendedTiger Wang1-1/+1
2014-01-25Mob bugfixesTiger Wang1-2/+11
2014-01-23Command block fixes 2andrew1-1/+26
2014-01-22cWorld now saves/loads the scoreboardandrew1-0/+9
2014-01-21Scoreboard protocol supportandrew1-1/+56
2014-01-19Changed the cWorld::ScheduleTask() signature.madmaxoft1-11/+21
2014-01-18Fixed iterators bugTycho1-2/+1
2014-01-18Removed the particles when a mob spawns.STRWarrior1-3/+0
2014-01-18switched to using m_WorldAge rather than m_TickIDTycho1-6/+3
2014-01-18Basic command block implementationandrew1-0/+9
2014-01-17Added user setting compression factorTycho1-1/+3
2014-01-17Increased tick count to longTycho1-2/+2
2014-01-17Implemented xsofts suggestion for a saturating counter in the schedulerTycho1-5/+5
2014-01-14added cWorld::ScheduleTask FunctionTycho1-0/+39
2014-01-12Renamed cEmptyMinecart to cRideableMinecartSTRWarrior1-2/+2
2014-01-12EmptyMinecarts should be able to get a block inside of them.STRWarrior1-3/+3
2014-01-12Added cWorld::SpawnMinecart.STRWarrior1-0/+24
2014-01-10Decoupled cChunkGenerator from cWorld and cRoot.madmaxoft1-1/+77
2014-01-02rewrote queue not to use promises for waitsTycho Bickerstaff1-1/+4
2013-12-31fixed warnings in World.cppTycho Bickerstaff1-1/+3
2013-12-22Implented BroadcastParticleEffectSTRWarrior1-0/+9
2013-12-20Fixed the rest of constructor reorders.madmaxoft1-6/+6
2013-12-16Removed some old cRedstone remnantsTiger Wang1-24/+0
2013-12-15This adds the cWorld::BroadcastEntityEffect and cWorld::BroadcastRemoveEntityEffect functions.STRWarrior1-0/+18
2013-12-14Implemented note block playing and fixed wireTiger Wang1-0/+9
2013-12-10Improved pickups spawning speed againTiger Wang1-4/+4
2013-12-08Now spawn points will not be in deep oceans or rivers etc.STRWarrior1-1/+1
2013-12-08Moved bindings-related to a Bindings subfolder.madmaxoft1-2/+1
2013-12-08Bonemeal has particles, fixes #393Tiger Wang1-0/+6
2013-12-07Added a SpawnFallingBlock function so plugins can make other blocks fall.STRWarrior1-0/+12
2013-12-07Renamed animation functionTiger Wang1-2/+2
2013-12-06Fixed duplication glitch with QueueSetBlockTiger Wang1-2/+2
2013-12-06Added pickup invalid item checkTiger Wang1-0/+11
2013-12-04Lava can spawn fire.madmaxoft1-0/+1
2013-11-30Changed cBlockHandler->OnUpdate() to use cChunk directly.madmaxoft1-2/+2
2013-11-30Explicitly set spawnpoint fixes.madmaxoft1-20/+11
2013-11-30Added the real tick duration to the OnWorldTick hook.madmaxoft1-9/+10
2013-11-27Made TNT pickups spawning chance 25%Tiger Wang1-1/+1
2013-11-26Fixed another one.Alexander Harkness1-1/+1
2013-11-24Attempt to fix compilationTiger Wang1-1/+1
2013-11-24Moved source to srcAlexander Harkness1-0/+0
2013-11-20Added cWorld:ForEachBlockEntityInChunk() and cWorld:DoWithBlockEntityAt() functions.madmaxoft1-0/+18
2013-11-10Bundled fixes [SEE DESC]Tiger Wang1-2/+1
2013-11-10Bundled fixes [SEE DESC]Tiger Wang1-3/+5
2013-11-04Autogeneration of settings.ini and webadmin.iniTiger Wang1-3/+3
2013-10-30Fixed a compiler warning.madmaxoft1-26/+31
2013-10-29Changes based on madmaxoft's nitpicker notes.Samuel Barney1-0/+1
2013-10-29Update to allow the light map to remain the same, but allow alteration of sky light values based on time.Samuel Barney1-1/+31
2013-10-25cIniFile doesn't store filename internally anymore.madmaxoft1-3/+3
2013-10-24Renamed cMonster::GetSpawnRate() to GetSpawnDelay().madmaxoft1-2/+2
2013-10-24Pickups now have collection delay when vomitedTiger Wang1-4/+4
2013-10-22Temporary fix for world not locking chunkmap in TickMobs.madmaxoft1-0/+3
2013-10-20Fixed memory leak in cMobFamilyCollecter.madmaxoft1-14/+18
2013-10-20Fixed memory leaks in cMobCensus, moved GetSpawnRate() to cMonster.madmaxoft1-20/+19
2013-10-20Fixed memory leaks in cMobSpawner.madmaxoft1-1/+1
2013-10-20Moved all MobTypesManager functions to cMonster.madmaxoft1-7/+7
2013-10-20Fixed loading allowed mobs in world.madmaxoft1-11/+28
2013-10-18Adapted code style.madmaxoft1-7/+5
2013-10-14Removed reading default values from settings.ini for worlds.Samuel Barney1-10/+1
2013-10-14General fixes to get the new Monster spawning code working.Samuel Barney1-6/+17
2013-10-14Mobs no longer spawn up in the air.Samuel Barney1-0/+2
2013-10-13Eight round of fixesTiger Wang1-1/+1
2013-10-12Fixed and exported cWorld:QueueTask().madmaxoft1-1/+1
2013-10-12Added more ghast spawning probabilitytonibm191-4/+4
2013-10-12Added extra linetonibm191-0/+1
2013-10-12Mob spawning changestonibm191-4/+24
2013-10-11Fifth round of fixesTiger Wang1-3/+7
2013-10-09Second round of fixesTiger Wang1-1/+1
2013-10-09Moved cMakeDir::MakeDir to cFile::CreateFolder.madmaxoft1-2/+1
2013-10-08Initial Metadata Commit [SEE DESC]Tiger Wang1-30/+47
2013-09-21Linux compilation fix #3.madmaxoft1-2/+2
2013-09-18Fixed pickupsTiger Wang1-13/+2
2013-09-18Added moar mobs!Tiger Wang1-4/+16
2013-09-16cWorld:QueueTickBlock takes the delay in ticks.madmaxoft1-8/+9
2013-09-15Fixed doxycomments of cWorld plant-growing codemadmaxoft1-2/+2
2013-09-10Fixed codepage conversionmadmaxoft1-1/+1
2013-09-09Added a few changes [SEE DESC]Tiger Wang1-2/+2
2013-09-08Adding mobtype filter inside world.inimgueydan1-8/+13
2013-09-08Adding glue to call everything done in last commits - now the mobs are spawningmgueydan1-138/+71
2013-09-08Disabeling current mob spawning and tickmgueydan1-4/+5
2013-09-07Adding mob census (sorry this is a big commit as work was done before git integration i couldn't split it more)mgueydan1-0/+5
2013-09-07relockating mobs includes (they probably will end somewhere else in order not to recompile world each time you update a mob)mgueydan1-23/+1
2013-09-07Renamed cWorld::DoExplosiontAt() to cWorld::DoExplosionAt()madmaxoft1-2/+2
2013-09-04Pickups spawn with correct speed and positionTiger Wang1-29/+11
2013-08-24Slight performance improvement in cWorld::FindClosestPlayer()madmaxoft1-6/+3
2013-08-22Added skeleton code for projectile spawning.madmaxoft1-3/+25
2013-08-19Fixed WorldTickThread reporting wrong time durations for each tick.madmaxoft1-8/+16
2013-08-19Moved entities into the Entities subfolder.madmaxoft1-4/+4
2013-08-19Implemented the OnWorldTick hook.madmaxoft1-0/+3
2013-08-18Implemented cWorld:QueueSetBlock(), as requested for delayed blocksetting.madmaxoft1-0/+9
2013-08-18Removed SetServerBlock griefing.madmaxoft1-15/+0
2013-08-18Properly fixed piston non-animationTiger Wang1-5/+23
2013-08-18Enhancements to Tabcompletion and Compile FixTiger Wang1-11/+7
2013-08-18Bugfix Update [SEE DESC}Tiger Wang1-4/+11
2013-08-16Replaced E_ENTITY_TYPE_XXX with cMonster::mtXXX.madmaxoft1-61/+79
2013-08-14Generation and simulation defaultsTiger Wang1-2/+2
2013-08-14Fixed world's a_Dt parameter getting time values in wrong units.madmaxoft1-1/+1
2013-08-14Clients are deleted when the world is stopped.madmaxoft1-0/+11
2013-08-14Fixed crashes in world's clientlist manipulatorsmadmaxoft1-2/+22
2013-08-14Buncha bugfixes [SEE DESC]Tiger Wang1-1/+1
2013-08-13Clients are now ticked in cServer first, then in cWorld once they get assigned a world.madmaxoft1-8/+58
2013-08-12Removed cServer::BroadcastChat() and cServer::SendMessage().madmaxoft1-1/+1
2013-08-11Now Endermans spawn in The Endtonibm191-0/+7
2013-08-11Added cWorld:QueueSaveAllChunks() function for saving chunks asynchronously.madmaxoft1-1/+55
2013-08-11Each world now ticks in a separate thread.madmaxoft1-97/+107
2013-08-11Moved MaxPlayers and Description from cWorld to cServer.madmaxoft1-23/+50
2013-08-09Added OnExploding() and OnExploded() hooks.madmaxoft1-4/+10
2013-08-08Addeed OnSpawningEntity, OnSpawnedEntity, OnSpawningMonster, OnSpawnedMonster hooks.madmaxoft1-2/+12
2013-08-06Now zombies spawn in Overworld during nighttonibm191-4/+3
2013-08-04cWorld: Added a self-test for LineBlockTracer, disabled by an #ifdef.madmaxoft1-0/+57
2013-08-03Added cWorld::DoWithChunk() function.madmaxoft1-0/+9
2013-07-31Implemented the actual tab completion for commands and playernames.madmaxoft1-6/+10
2013-07-30Tab completion packet is handled and sent.madmaxoft1-0/+14
2013-07-07Mobs are assigned MaxHealth from monsters.ini; reading monsters.ini doesn't need settings.ini values anymore.madmaxoft@gmail.com1-0/+1
2013-07-07Improved function names for protocol packet sending; alpha-sorted the function listsmadmaxoft@gmail.com1-80/+80
2013-07-03Fixed player moving between worlds.madmaxoft@gmail.com1-0/+2
2013-07-01Rewritten entity-on-fire management ("forever on fire" bugs)madmaxoft@gmail.com1-25/+27
2013-06-25Unified the way mobs are spawned (egg vs natural). Fixed deadlocks in mob moving. Fixed mob destroying code.madmaxoft@gmail.com1-41/+31
2013-06-24The weather doesn't change if the dimension is not Overworld.nielsbreu@gmail.com1-0/+6
2013-06-22Added the End height and composition generators.madmaxoft@gmail.com1-2/+3
2013-06-21Dispensers dispense primed TNTmadmaxoft@gmail.com1-2/+2
2013-06-21Simulators are woken up after an explosion.madmaxoft@gmail.com1-0/+10
2013-06-18More TNT fixes.madmaxoft@gmail.com1-3/+15
2013-06-18TNT fixes.madmaxoft@gmail.com1-2/+2
2013-06-15First attempt at fixing the inter-threading deadlocks between the tick thread and the socket threadmadmaxoft@gmail.com1-0/+12
2013-06-12Added cWorld::SetSignLines(), re-exported to Lua manually to avoid ghost return valuesmadmaxoft@gmail.com1-4/+17
2013-05-26Implemented droppersmadmaxoft@gmail.com1-0/+36
2013-05-12Temporarily set all pickups to spawn in the middle of the block from which they fall.madmaxoft@gmail.com1-9/+25
2013-05-12cWorld: Temporary fix for FS #338madmaxoft@gmail.com1-0/+9
2013-05-04Explosion: Switched from a cube to a sphere. Implemented using cBlockArea and moved block changing code to ChunkMapkeyboard.osh@gmail.com1-31/+4
2013-04-19Slight performance improvements in cWorld::DoExplosiontAt()madmaxoft@gmail.com1-3/+5
2013-04-19Fixed Linux compilation, slight code cleanupmadmaxoft@gmail.com1-25/+25
2013-04-18Initial implementation of explosions and TNT blockkeyboard.osh@gmail.com1-0/+62
2013-04-13Proper entity removal functionsmadmaxoft@gmail.com1-10/+10
2013-04-13Rewritten entities so that they are owned by individual chunks and ticked within their chunk's Tick()madmaxoft@gmail.com1-102/+55
2013-04-05Added carrots and potatoes handling, bonemealing and proper lighting.madmaxoft@gmail.com1-3/+31
2013-04-01Proper fix for FS #347. Also unification of ticking block entities.madmaxoft@gmail.com1-11/+11
2013-04-01Hotfix for FS #347.madmaxoft@gmail.com1-7/+13
2013-03-18Added support for the packet #28 (0x1C): ENTITY_VELOCITYkeyboard.osh@gmail.com1-0/+8
2013-03-14Removed the Classic fluid simulator, it was too unstable (2nd attempt)madmaxoft@gmail.com1-2/+2
2013-03-14Removed the Classic fluid simulator, it was too unstablemadmaxoft@gmail.com1-17/+7
2013-03-14Added a Noop fluid simulator that doesn't do anything with the fluid (fluid doesn't spread at all, behaves like a normal block)madmaxoft@gmail.com1-0/+10
2013-03-14Added a Vaporize fluid simulator that simply replaces fluid blocks with air.madmaxoft@gmail.com1-0/+8
2013-03-11Initial nether composition generatormadmaxoft@gmail.com1-0/+16
2013-03-03Player can sit in minecarts (but not move them yet)madmaxoft@gmail.com1-41/+50
2013-03-02Rewritten SandSimulator to use direct chunk access; and sand falling on torches now creates a pickup.madmaxoft@gmail.com1-5/+5
2013-03-01New fire simulator, fully rewritten to the new scheme of things, directly accessing chunk data.madmaxoft@gmail.com1-2/+2
2013-02-28Converted simulators to take cWorld reference instead of a pointermadmaxoft@gmail.com1-6/+6
2013-02-28Simulators now have direct access to the cChunk object in the WakeUp() callmadmaxoft@gmail.com1-1/+9
2013-02-13Added HOOK_WEATHER_CHANGING.madmaxoft@gmail.com1-88/+58
2013-02-01Simplified cWorld::FindAndDoWithPlayer()madmaxoft@gmail.com1-11/+8
2013-01-12Merged branch "branches/hooks" into "trunk".madmaxoft@gmail.com1-46/+36
2013-01-04Floody fluid simulator can create sourceblocks (configurable in World.ini)madmaxoft@gmail.com1-5/+4
2012-12-26Dispensers can dispense items and liquids nowluksor111@gmail.com1-0/+18
2012-12-22MTRand 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.com1-1/+2
2012-12-17Fixed time calculation in cWorld::Tick()madmaxoft@gmail.com1-2/+2
2012-11-16Android: Made the initial pre-calculated spawn area smallerfaketruth1-1/+1
2012-11-11Removed an unused obsolete function chain - cWorld::GetChunkBlockData()madmaxoft@gmail.com1-9/+0
2012-11-01Refactored the world time.madmaxoft@gmail.com1-57/+40
2012-11-01Added Bats and Witches.luksor111@gmail.com1-0/+4
2012-10-28Fixed gcc compilationmadmaxoft@gmail.com1-1/+1
2012-10-28Added cWorld:SpawnMob(PosX, PosY, PosZ, EntityType) to Lua APImadmaxoft@gmail.com1-10/+59
2012-10-26Fixed a valgrind warning in BlockDirt.madmaxoft@gmail.com1-4/+4
2012-10-25Fixed up a few valgrind warningsmadmaxoft@gmail.com1-7/+8
2012-10-21Top blocks are now snowed over, either normally, or in deep snow (patch contributed by funmaker, Luksor and Sebi)madmaxoft@gmail.com1-0/+1
2012-10-21Added jukeboxes (patch contributed by Luksor)madmaxoft@gmail.com1-2/+11
2012-10-20Made cWorld's block query functions more orthogonal, added GetBlockInfo() returning all info on a block.madmaxoft@gmail.com1-0/+18
2012-10-15Fixed DelayedFluidSimulator.madmaxoft@gmail.com1-3/+6
2012-10-14Floody fluid sim: reads params from world.ini; water and lava react together into cobblestone / stone / obsidianmadmaxoft@gmail.com1-5/+8
2012-10-14Initial Floody fluid simulator.madmaxoft@gmail.com1-13/+13
2012-10-13Preparation for multiple fluid simulators.madmaxoft@gmail.com1-11/+54
2012-10-13Added delayed ticking to Lua APImadmaxoft@gmail.com1-24/+41
2012-10-10Added an option to disable/enable PVP on a per world basisfaketruth1-1/+2
2012-10-06Completely removed the old (buggy) redstone simulator.madmaxoft@gmail.com1-10/+5
2012-10-06BlockArea writing support (BlockTypes with BlockMeta only)madmaxoft@gmail.com1-0/+9
2012-10-03Fixed saplings not growing into treesmadmaxoft@gmail.com1-1/+1
2012-10-03Moved blockticking into blockhandler classes.madmaxoft@gmail.com1-2/+20
2012-09-29Beds can be slept in now (it doesn't change the time though)faketruth1-0/+9
2012-09-29Unified folder name-casingmadmaxoft@gmail.com1-1/+1
2012-09-25Added the block dig animation packet (patch contributed by l0udPL)madmaxoft@gmail.com1-0/+9
2012-09-24Source files cleanup: The rest of the files renamed.madmaxoft@gmail.com1-18/+18
2012-09-23Source files cleanup: OSSupport-related files in a separate subfolder, renamed.madmaxoft@gmail.com1-1/+1
2012-09-23Source files cleanup: Removed unused cBlockToPickupmadmaxoft@gmail.com1-1/+0
2012-09-23Source files cleanup: Mobs-related files in a separate subfolder, renamed.madmaxoft@gmail.com1-16/+19
2012-09-23Source files cleanup: Generating-related files in a separate subfoldermadmaxoft@gmail.com1-2/+1
2012-09-11Merged in a patch for sounds by l0udPLmadmaxoft@gmail.com1-0/+9
2012-09-02Next iteration on the 1.3.2 protocol. Still no good, but sometimes it just gets through. For your testing pleasures ;)madmaxoft@gmail.com1-9/+0
2012-09-01Added 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.com1-3/+3
2012-08-31Progress on the 1.3.2 protocol.madmaxoft@gmail.com1-2/+2
2012-08-29Gotten completely rid of all cPackets. The cProtocol125 class now does all the parsing and writing by itself.madmaxoft@gmail.com1-4/+4
2012-08-27Cut out all packet handling to a separate cProtocol descendantmadmaxoft@gmail.com1-36/+19
2012-08-26git-svn-id: http://mc-server.googlecode.com/svn/trunk@795 0a769ca7-a7f5-676a-18bf-c427514a06d6madmaxoft@gmail.com1-0/+9
2012-08-25cWorld doesn't use cPackets.madmaxoft@gmail.com1-40/+70
2012-08-24cPickup doesn't use cPackets.madmaxoft@gmail.com1-0/+9
2012-08-24Monster classes don't use cPackets. Chat messages are sent / broadcast without cPackets. BlockEntities don't use cPackets.madmaxoft@gmail.com1-4/+31
2012-08-23Added a RateCompareString function to StringUtilsfaketruth1-0/+36
2012-08-19Window, Chest, Furnace and Pawn are not using cPackets at allmadmaxoft@gmail.com1-0/+18
2012-08-19Almost all packets' handling is now rewritten not to use cPacket descendants elsewhere than in cClientHandle.madmaxoft@gmail.com1-3/+74
2012-08-19Another handful of packets rewritten.madmaxoft@gmail.com1-0/+18
2012-08-18Chat packet handled in the new way; fixed missing packet sending for inventory slot.madmaxoft@gmail.com1-1/+19
2012-08-15Added a true "all chunks saved" message for the save-all console command (FS #215)madmaxoft@gmail.com1-2/+2
2012-08-03Fixed a few gcc pedantic warnings; made BLOCKTYPE an unsigned char type.madmaxoft@gmail.com1-8/+8
2012-07-15A new Block handling system :olapayo94@gmail.com1-83/+56
2012-07-15World threads are stopped before the plugin mgr for clean exit (FS #228)madmaxoft@gmail.com1-3/+10
2012-07-15Basic jungle trees with vines, efficient trees handling.madmaxoft@gmail.com1-10/+13
2012-07-13Fixed case comparison - used the builtin functionmadmaxoft@gmail.com1-1/+1
2012-07-13fixed /tp commandlapayo94@gmail.com1-1/+1
2012-07-02cBlockArea object added (with only minimal testing so far)madmaxoft@gmail.com1-2/+9
2012-07-02Added the cWorld::DoWithPlayer() function and exported it in the Lua API. Removed the obsolete cWorld::GetPlayer() function.madmaxoft@gmail.com1-47/+10
2012-06-19Made ForEach API safer to use, now supports Destroy()-ing objects, too ( http://forum.mc-server.org/showthread.php?tid=434&pid=3513#pid3513 )madmaxoft@gmail.com1-2/+4
2012-06-17Removed the deprecated GetBlockEntity(), added several enumerators to replace it.madmaxoft@gmail.com1-10/+45
2012-06-17Logs completion of chunk saving (FS #215)cedeel@gmail.com1-0/+1
2012-06-16Added 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.com1-4/+13
2012-06-16Exported cWorld::ForEachEntity and cWorld::ForEachEntityInChunk; no idea if they actually workmadmaxoft@gmail.com1-7/+33
2012-06-15Only spawn nether mobs in nether biome.cedeel@gmail.com1-20/+26
2012-06-14Renamed HOOK_WEATHER_CHANGE to HOOK_WEATHER_CHANGED, added the glue code for it to actually workmadmaxoft@gmail.com1-3/+3
2012-06-14Attempt to bring sanity to newlines across systems.cedeel@gmail.com1-1845/+1845
2012-06-14Added HOOK_WEATHER_CHANGE.cedeel@gmail.com1-0/+3
2012-06-13Revamped the weather system.cedeel@gmail.com1-28/+69
2012-06-09Fixed a forgotten ini file readmadmaxoft@gmail.com1-0/+1
2012-06-09More ini settings save their defaultsmadmaxoft@gmail.com1-5/+5
2012-06-09New IniFile functionality: read value and set default if it isn't present (GetValueSet() ); used by cWorldmadmaxoft@gmail.com1-29/+20
2012-06-09Sugarcane and cactus max height can be set in world.ini.madmaxoft@gmail.com1-2/+2
2012-06-09Plants growable by bonemeal are settable in the world.ini. Default matches vanilla MC.madmaxoft@gmail.com1-8/+67
2012-06-09Cacti grow by themselves and by bonemealmadmaxoft@gmail.com1-0/+6
2012-06-09Bonemeal is consumed in survival mode when used on growable blocksmadmaxoft@gmail.com1-6/+7
2012-06-08Sugarcane grows and can be grown using bonemeal.madmaxoft@gmail.com1-0/+6
2012-06-07Bonemeal works on crops, melons, pumpkins, saplings and grass. Plant growing has been refactored into separate functions callable from Lua, too.madmaxoft@gmail.com1-0/+88
2012-06-07Repeaters' delays can be set by rclkmadmaxoft@gmail.com1-0/+9
2012-06-06Item-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.com1-7/+44
2012-05-30Added support for SetNextBlockTick() function callable from Luamadmaxoft@gmail.com1-0/+9
2012-05-29Added code for the chunks to manipulate their neighbors while ticking. Also added some basic farming support - melon and pumpkin growing code. Untested and untestable so far, will test and fix later.madmaxoft@gmail.com1-21/+75
2012-05-25Merged the composable_generator branch into the trunkmadmaxoft@gmail.com1-234/+258
2012-04-10Added the "/regeneratechunk" command that regenerates either current chunk or a chunk specified with x, z parameters. TODO: permissions - we don't want guests erasing our chunks!madmaxoft@gmail.com1-0/+12
2012-03-24Reverted the previous commit - it is useless, since entities still depend heavily on cWorldmadmaxoft@gmail.com1-98/+0
2012-03-23Encapsulated 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.com1-0/+98
2012-03-22Fixed a deadlock by removing clients from all chunks upon their exit, not using the clients chunklists.madmaxoft@gmail.com1-2/+2
2012-03-16Exposed a function to Lua to get a block's sky light valuefaketruth1-0/+9
2012-03-14Unified the chunk data to use the BLOCKDATA datatype.madmaxoft@gmail.com1-0/+15
2012-03-14Split chunk data into separate arrays; decoupled most sources from cChunk.h dependencymadmaxoft@gmail.com1-9/+27
2012-03-12Added a flat terrain generator with settable terrain heightmadmaxoft@gmail.com1-2/+4
2012-03-11Stopping the ChunkSender upon server stopmadmaxoft@gmail.com1-0/+1
2012-03-10Fixed a few obsoleted functionsmadmaxoft@gmail.com1-23/+28
2012-03-10Fixed *nix threading issue;madmaxoft@gmail.com1-1/+1
2012-03-09cClientHandles have a unique ID now to distinguish themfaketruth1-2/+2
2012-03-07Fixed bug where cPlayer's cClientHandle was used after cPlayer was destroyed http://forum.mc-server.org/showthread.php?tid=380faketruth1-32/+44
2012-03-06That was not a good place to use ARRAYCOUNT()madmaxoft@gmail.com1-5/+5
2012-03-06Fixed rev368's ChunkSender, now sends properly even chunks that are loaded. Fixed a deadlock in cClientHandle vs TickThread over cClientHandle::m_CSChunkListsmadmaxoft@gmail.com1-0/+18
2012-03-06Fixed bug FS#157 http://mc-server.org/support/index.php?do=details&task_id=157faketruth1-5/+5
2012-03-05ChunkSender: Chunks are now compressed and sent to clients from a separate threads, proper passive waiting between threads. Not much tested, just appears to work :)madmaxoft@gmail.com1-9/+13
2012-03-03Got rid of some hardcoded numbers, now using hardcoded variables! woofaketruth1-6/+6
2012-03-01New redstone simulator. Should work without crashes!faketruth1-0/+4
2012-02-29Fixed the authenticator bugmadmaxoft@gmail.com1-0/+3
2012-02-29Added validity checks to world broadcasting. Also added logging to cPlayer deletion to catch that stupid BugByBoo.madmaxoft@gmail.com1-3/+5
2012-02-28Chunk now has an indicator of load failure; Chunk generator uses cChunkStaymadmaxoft@gmail.com1-0/+9
2012-02-28Implemented synchronous chunk loading; optimized cChunkStay interface for speed (though still unused ;)madmaxoft@gmail.com1-2/+20
2012-02-28Const-correctness for packet broadcasting (fixes GCC compilation)madmaxoft@gmail.com1-1/+1
2012-02-26New cChunkStay class for temporarily keeping chunks loaded even when then have no clients. For now unused, will be used by generator and lighting in the future.madmaxoft@gmail.com1-0/+9
2012-02-22Added a crude way of disabling redstone. It's necessary though, redstone is completely broken, crashes the server all the timefaketruth1-22/+0
2012-02-21Removed cChunkPtrs from everywhere but internal cChunkMap usage. Now we should finally be threadsafe :)madmaxoft@gmail.com1-74/+35
2012-02-21Fixed heightmap optimization from rev 302; removed a few more cChunkPtrsmadmaxoft@gmail.com1-0/+27
2012-02-21Fixed block-getting so that simulators work againmadmaxoft@gmail.com1-16/+26
2012-02-20Removed some more cChunkPtr usagemadmaxoft@gmail.com1-14/+53
2012-02-18Substantial cWorld::FastSetBlock() speed up by queueing all such calls and processing them later chunk-wise (makes growing trees in the generator fast again)madmaxoft@gmail.com1-20/+9
2012-02-18Fixed previous commit: forgot to remove a debugging settingmadmaxoft@gmail.com1-3/+1
2012-02-18Re-implemented tree-growing. May produce artefacts on old-world / new-world boundaries.madmaxoft@gmail.com1-11/+32
2012-02-18Thread-safe chunk generation, storage and generator are queried for progress while initializing servermadmaxoft@gmail.com1-40/+108
2012-02-17Chunk coords mostly "upgraded" to include the Y coord for future compatibilitymadmaxoft@gmail.com1-0/+2
2012-02-17Removed useless log messagesmadmaxoft@gmail.com1-1/+0
2012-02-16git-svn-id: http://mc-server.googlecode.com/svn/trunk@281 0a769ca7-a7f5-676a-18bf-c427514a06d6faketruth1-2/+2
2012-02-16cWorldGenerator speedup - doesn't call GetChunk() anymore, not queueing the chunk it's generating to be loaded recursively.madmaxoft@gmail.com1-0/+9
2012-02-16Got rid of dangerous GetEntity(), not using DoWithEntity()faketruth1-5/+4
2012-02-16Chunk is now marked as dirty; saving only dirty chunks; rewritten load / save not to use cChunkPtr; set VC2008 project to level4 warnings; block entities are now loaded and saved properlymadmaxoft@gmail.com1-1/+72
2012-02-15Fixed logging formatting error in cWorldmadmaxoft@gmail.com1-1/+1
2012-02-14Got rid of cWorld::GetAllPlayers() and implemented ForEachPlayer() more or less in Luafaketruth1-20/+0
2012-02-13Rewritten 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.com1-451/+404
2012-02-08Added total chunk count to webadminmadmaxoft@gmail.com1-2/+108
2012-02-08MTRand class is not created in each tick, therefore much improving tick-thread time (now uses ~5 % CPU instead of one full core)madmaxoft@gmail.com1-42/+82
2012-02-01Rewritten cAuthenticator to make use of the new cIsThread architecture - now authentication runs in a single separate thread for all clients;madmaxoft@gmail.com1-0/+4
2012-01-29Old code begone! ChunkMap cleanupmadmaxoft@gmail.com1-1/+1
2012-01-29VC2008 / VC2010: Enabled precompiled header through Globals.h; the header included in every module in the project. Compilation optimization.madmaxoft@gmail.com1-5/+6
2012-01-19Terrain generation is synchronous again, async generation has bugs.faketruth1-27/+29
2012-01-01Fixed the numchunks console command.faketruth1-1/+15
2011-12-31Made a couple of functions in cChunk inline, this should speed up several block operations on chunksfaketruth1-2/+2
2011-12-28- implemented the fire simulation in native c++ (cFireSimulator)lapayo94@gmail.com1-5/+12
2011-12-28Fixed some small memory leakslapayo94@gmail.com1-0/+2
2011-12-27Users file was pretty messed up with mixed unix and windows line endings. The ini failed to parse correctly under cygwin.faketruth1-1/+8
2011-12-27Some kind of 'template' world generator that right now just generates an all dirt world. You can use this to test new algorithmsfaketruth1-8/+14
2011-12-26- improved Simulator system lapayo94@gmail.com1-8/+22
2011-12-26 - Linux compatible fixes including updated makefilemtilden@gmail.com1-14/+18
2011-12-25Chunks are generated in a separate thread allowing players to keep on playing and chatting while chunks are generated. This means, however, that cWorld::GetChunk() does not always return a chunk and is something you need to be aware of. I am not entirely sure if all this is completely stable, but I think so :Ofaketruth1-50/+120
2011-12-24Max. players and MOTD are now changeable in the settings.inilapayo94@gmail.com1-0/+21
2011-12-22Digging leaves with shears now drops leaveslapayo94@gmail.com1-5/+5
2011-11-10Added code for doors. Doors now place correctly but opening them is buggy and I need to change the current opening code to use bitwise operators.admin@omencraft.com1-3/+3
2011-11-10Storms were WAY too frequent. I toned them down.admin@omencraft.com1-4/+4
2011-11-10Added random weather that persists per world. Also added SetWeather, GetWeather, and CastThunderbolt to lua bindings.admin@omencraft.com1-0/+71
2011-11-09bugfix to redstone, it can climb walls again.admin@omencraft.com1-5/+5
2011-11-09Redstone clocks now work. even one clocks. torches don't update themselves when placed yet, but redstone wire updates the torch. Fixed a bug with piston animations.admin@omencraft.com1-0/+35
2011-11-08Fixed world timefaketruth1-1/+10
2011-11-07Added Sebi's changes to pistons and item drops.admin@omencraft.com1-0/+38
2011-11-06Patch with diff file created by Sebi (implemented some stuff like lava physics, drops are deleted when in lava, water is now slower, lava gives actual damage etc.). Pistons now work mostly as they should. They do not yet show the motion animation and do not emit sound. They do extend, push, and retract as they should though. Right now the only way to activate a piston is to light redstone wire adjacent to it with a redstone torch.admin@omencraft.com1-3/+15
2011-11-02Fixed some "Entity was not found in any chunk!" warningsfaketruth1-0/+1
2011-11-02Changed world gamemode location to world.ini for world based gamemodes.admin@omencraft.com1-2/+4
2011-11-01fixed player spawning in the ground.admin@omencraft.com1-5/+0
2011-11-01You can now run multiple worlds by defining them in settings.ini . However there's no way to change worlds on the fly yetfaketruth1-36/+32
2011-10-31Prepared some parts of the code for multi world support, I created lots of TODO'sfaketruth1-4/+4
2011-10-26Made several recomended changes. Gamemode is now world based. Need to add it to player.admin@omencraft.com1-1/+2
2011-10-26Updated VS2010 project filesfaketruth1-104/+43
2011-10-26git-svn-id: http://mc-server.googlecode.com/svn/trunk@10 0a769ca7-a7f5-676a-18bf-c427514a06d6admin@omencraft.com1-10/+120
2011-10-03MCServer c++ source filesfaketruth1-0/+764