Commit Graph

90 Commits (d7a490a99205d69abce52c77854fafee52b4e82b)

Author SHA1 Message Date
Samuel Barney d7a490a992 Merge branch 'master' of https://github.com/SamJBarney/MCServer into MobSpawning 2013-10-28 16:40:13 -06:00
Samuel Barney 47283f9daa Got spiders and other mobs respecting night and day for spawning 2013-10-28 16:38:34 -06:00
Samuel Barney 16bac5ace9 Made mob spawning code use the chunk so that it could use varying sizes of areas for different mobs. 2013-10-28 09:49:06 -06:00
madmaxoft 3fa03e854f Added cChunk::UnboundedRelGetBlockLights().
This queries both BlockLight and SkyLight for the specified block.
2013-10-27 09:19:13 +01:00
Samuel Barney 0b853dca93 Moving spawning position to the center of the block. 2013-10-26 03:50:34 -06:00
Samuel Barney 00480a1d9a Using provided UnboundedRelGetBlockBlockLight and UnboundedRelGetBlockSkyLight. 2013-10-23 17:51:14 -06:00
Samuel Barney 4666c1bf30 Merge branch 'master' of https://github.com/SamJBarney/MCServer into MobSpawning 2013-10-23 17:41:36 -06:00
Samuel Barney f558f3c6d2 Removed my hackish Light functions 2013-10-23 17:41:24 -06:00
Samuel Barney d6d73a1754 Invalid light value is now 127 2013-10-22 17:10:32 -06:00
madmaxoft 76ed2f441a Implemented UnboundedRel BlockLight and SkyLight.
Also unified the various UnboundedRel operations to use the same underlying structure.
2013-10-22 17:54:09 +02:00
Samuel Barney 6e361f195f Added two new unbounded del functions to deal with looking up the lighting. 2013-10-21 14:38:38 -06:00
Samuel Barney 56fa632d5e Swapped which block is checked for light first. 2013-10-21 10:03:05 -06:00
Samuel Barney d73a0cd8b0 Current Mob Spawning code. 2013-10-21 09:41:48 -06:00
mgueydan 59f4635309 replacing dynamic_cast by c-style cast 2013-09-09 18:45:39 +02:00
mgueydan ead953898d replacing C-style cast by dynamic_cast 2013-09-08 12:37:14 +02:00
mgueydan b4bb255344 Replacing chunCk by chunk 2013-09-08 12:25:07 +02:00
mgueydan 5846be9400 replacing asserts by ASSERTs 2013-09-08 12:20:19 +02:00
mgueydan 668b6edaa7 renaming the cChunk::getRandomBlock method + removing a buggy working log 2013-09-08 11:49:33 +02:00
mgueydan 7a5e3592ff Adding glue to call everything done in last commits - now the mobs are spawning 2013-09-08 02:47:02 +02:00
mgueydan 04151677d5 Disabeling current mob spawning and tick 2013-09-08 01:43:55 +02:00
mgueydan bf1fb0aa3d Adding an Empty shell that would launch mob spawner - not called yet 2013-09-08 00:11:38 +02:00
mgueydan d2eb58f277 Adding mob census (sorry this is a big commit as work was done before git integration i couldn't split it more) 2013-09-07 22:19:56 +02:00
madmaxoft 94f8884f60 Fixed the extreme strain on the world tick thread.
Block changes were sent even with empty changesets, causing a lot of lost CPU cycles.
2013-08-19 21:55:03 +02:00
madmaxoft 1a7912744f Moved entities into the Entities subfolder. 2013-08-19 11:39:13 +02:00
madmaxoft 909a9c6973 cChunk::SetBlock() now uses cChunk::FastSetBlock() for the common code path. 2013-08-19 09:19:45 +02:00
madmaxoft 82ce40e2cc Removed an unused CriticalSection from cChunk.
Fixes #109
2013-08-19 09:13:19 +02:00
madmaxoft 7b10068370 Implemented cWorld:QueueSetBlock(), as requested for delayed blocksetting.
Untested yet, so might not work.
2013-08-18 22:44:22 +02:00
madmaxoft 861d5c75c9 Removed SetServerBlock griefing. 2013-08-18 20:00:50 +02:00
Tiger Wang 8a3174164b Properly fixed piston non-animation
Fixes #57
2013-08-18 14:52:38 +01:00
madmaxoft@gmail.com b1d05b0f57 Improved function names for protocol packet sending; alpha-sorted the function lists
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1659 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-07-07 13:06:06 +00:00
madmaxoft@gmail.com 4fe7801cfc Unified the way mobs are spawned (egg vs natural). Fixed deadlocks in mob moving. Fixed mob destroying code.
Should fix FS #400 and partially fix FS #381

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1626 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-06-25 06:36:59 +00:00
madmaxoft@gmail.com 8dd5fe5070 Furnaces light up visually when they're cooking
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1612 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-06-20 11:41:44 +00:00
madmaxoft@gmail.com 03c6bb9f85 Added hopper entity, it can suck items out of chests, dispensers, droppers and other hopppers above it.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1587 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-06-13 07:36:43 +00:00
madmaxoft@gmail.com fe3712284e Added cWorld::SetSignLines(), re-exported to Lua manually to avoid ghost return values
FS #364

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1582 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-06-12 07:14:06 +00:00
madmaxoft@gmail.com 3ee5236284 Removed cLadder, cSign, cStairs, cTorch and cVine classes, moved their functionality into the appropriate BlockHandlers / ItemHandlers
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1555 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-06-04 19:22:14 +00:00
madmaxoft@gmail.com dff77e8e56 Implemented proper player crouching.
Fixes FS #365

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1553 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-06-04 14:18:03 +00:00
madmaxoft@gmail.com 9be27992e2 Moved BlockEntities to a separate folder
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1527 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-05-28 19:12:47 +00:00
madmaxoft@gmail.com 3138daa1f8 Block entities now receive the cChunk param in their Tick() function
They can safely access that chunk and any of its neighbors during ticking.

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1526 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-05-28 18:50:44 +00:00
madmaxoft@gmail.com 9cd6333486 cChunk: Added the GetRelNeighborChunkAdjustCoords() function
Not only does it return the proper neighbor chunk, but also it adjusts the relative coords to be in that returned chunk.

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1523 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-05-28 12:18:03 +00:00
madmaxoft@gmail.com 5f208f30ac Chunk / ChunkMap: Added support for unbounded querying blocktype-only or blockmeta-only
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1522 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-05-28 12:05:23 +00:00
madmaxoft@gmail.com 5c3235ecdc Implemented droppers
Added a common ancestor class "DropSpenser" that has the common code for dropper and dispenser and is Lua-accessible, too. The Debuggers plugin now triggers both droppers and dispensers when rclking them with a redstone torch.

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1514 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-05-26 14:39:04 +00:00
madmaxoft@gmail.com 34fa53ca3a Fixed entity chunking.
Sand simulator was off, sand in negative coords wouldn't fall properly

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1489 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-05-19 11:49:01 +00:00
madmaxoft@gmail.com b7041c1bd2 Removed pickup logging
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1487 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-05-17 14:30:18 +00:00
madmaxoft@gmail.com fd26595b56 Added logging to pickup collection when a player is near and when collecting.
This should help fix the inactive pickups bug, http://forum.mc-server.org/showthread.php?tid=434&pid=8019#pid8019 )

git-svn-id: http://mc-server.googlecode.com/svn/trunk@1480 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-05-13 20:26:45 +00:00
madmaxoft@gmail.com 5d4591de47 Fixed player teleporting too far away ("Entity lost")
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1452 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-05-06 18:32:22 +00:00
madmaxoft@gmail.com 5c6164b55a Fixed most of client slowdowns caused by sending too many block changes (bad condition in FastSetBlock)
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1431 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-04-28 18:54:56 +00:00
madmaxoft@gmail.com 1b7ea2ef82 Fixed a few possible crashes with out-of-bounds Y coords
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1413 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-04-27 13:23:20 +00:00
madmaxoft@gmail.com a49c004278 Rewritten entities so that they are owned by individual chunks and ticked within their chunk's Tick()
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1385 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-04-13 21:02:10 +00:00
madmaxoft@gmail.com 46197e3be6 Fixed chunk possibly writing to uninitialized memory
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1376 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-04-09 19:25:19 +00:00
madmaxoft@gmail.com 502935c061 Mineshafts: Added random loot to generated chests and fixed chest direction
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1365 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-04-06 21:21:57 +00:00