1
0
Fork 0
Commit Graph

270 Commits

Author SHA1 Message Date
Tycho 2a9664d6ca Initial convertion of a_Dt to std::chrono
also refactored cWorld::m_WorldAge and cWorld::m_TimeOfDay
2015-01-11 21:12:26 +00:00
Mattes D ccdf03daaf Refactored all player block placing to go through hooks.
Fixes #1618.
2014-12-24 07:20:17 +01:00
Mattes D afdd53729c cChunk: Fixed missing initialization.
Fixes CID 72670.
2014-12-21 22:19:53 +01:00
Tiger Wang 4b20a61519 Merge branch 'master' into redstone 2014-12-13 12:11:01 +00:00
Mattes D c014f5624c Merged branch 'origin/master' into c++11. 2014-12-04 22:04:16 +01:00
Howaner 648fee1a08 Merge branch 'master' into MobSpawner 2014-11-29 12:05:35 +01:00
Mattes D 1480cdb944 Chunk: Fixed same-name iterators. 2014-11-27 23:15:08 +01:00
Tiger Wang 79e5b82354 Merge remote-tracking branch 'origin/master' into c++11
Conflicts:
	src/Noise/Noise.h
	src/World.h
2014-11-23 17:12:34 +00:00
Howaner 42120e2ea5 Merge branch 'master' into MobSpawner
Conflicts:
	MCServer/Plugins/Core
2014-11-18 14:56:32 +01:00
Mattes D 2467d29a4e Moved all Noise-related files into a separate folder. 2014-11-18 12:07:08 +01:00
Tiger Wang 85c298d73e Cleaned up simulators 2014-10-25 21:54:00 +01:00
Mattes D 765bf006ad Merged branch 'master' into c++11. 2014-10-24 10:19:13 +02:00
Howaner 9af58a81d6 Use 3 priorities. 2014-10-23 21:19:43 +02:00
Howaner 72bb299a4a Merge branch 'master' into ChunkLoader
Conflicts:
	src/ChunkSender.cpp
	src/ClientHandle.cpp
	src/World.h
2014-10-23 14:59:42 +02:00
Tiger Wang a26541a7c3 En masse NULL -> nullptr replace 2014-10-22 20:12:49 -07:00
Howaner b0988e65aa Use two lists and 2 chunk send prioritys. 2014-10-21 17:35:23 +02:00
Howaner 44514e53fc Merge branch 'master' into ChunkLoader
Conflicts:
	src/ClientHandle.cpp
2014-10-21 16:55:22 +02:00
Tiger Wang 987f79afdd En masse NULL -> nullptr replace 2014-10-20 21:55:07 +01:00
Tiger Wang 2334c8dd9d Merge branch 'master' of https://github.com/mc-server/MCServer 2014-10-20 19:01:53 +01:00
Julian Laubstein 3082f0d046 Fixed error with non-const function 2014-10-19 15:11:53 +02:00
Tiger Wang aa19a3afb0 Migrated random generators to std::random 2014-10-19 14:10:18 +01:00
Tiger Wang 2874bf73be Merge pull request #1502 from mc-server/furnaces
Improved furnaces
2014-10-18 21:33:55 +01:00
Tiger Wang 6a22b63473 Furnaces now update their block entity type
Therefore improving cChunk's variable boundary checking.
2014-10-18 19:54:34 +01:00
Mattes D eeb580a74e Functions in cPluginManager get references instead of pointers. 2014-10-15 19:09:09 +02:00
Howaner b493beb3bb Stream 4 chunks per tick. Added priority. 2014-10-06 21:27:53 +02:00
Tiger Wang b5a2c6667a Improved furnaces
* Fixed progress bar on 1.8
* Fixed bugs
* Improved code
* Fixes #1068
* Fixes #1070
2014-10-03 21:32:41 +01:00
worktycho 80fe8d7789 Update Chunk.cpp 2014-09-28 17:57:01 +01:00
Tycho f6979642e6 Use factory method to construct redstone simulator data 2014-09-28 15:36:00 +01:00
Howaner 033d16babb Merge branch 'master' into MobSpawner
Conflicts:
	src/MobSpawner.h
	src/Mobs/Monster.h
2014-09-26 23:56:20 +02:00
Tycho 0e141923bb Merge branch 'master' of https://github.com/mc-server/MCServer 2014-09-26 18:14:22 +01:00
Tycho a3f940f47c Removed more unessicary includes 2014-09-26 18:13:19 +01:00
tycho ad5d0eda9c Fixed issue with casting 2014-09-26 17:00:34 +01:00
Tycho 9c459cbe50 Merge branch 'master' into redstoneTests
Conflicts:
	src/Mobs/Monster.h
2014-09-25 15:22:08 +01:00
Howaner 718eb227ab Implemented mob spawner. 2014-09-19 23:00:54 +02:00
Tycho 045d54e0e2 Merge branch 'master' into redstoneTests
Conflicts:
	src/Blocks/ChunkInterface.h
2014-09-17 18:47:33 +01:00
Howaner bee615b75b Merge branch 'master' into 1.8-Protocol 2014-09-12 13:28:06 +02:00
Tycho 0b044e1c83 Possibly decoupled IncrementalRedstoneSimulator from the rest of the server
THis wil hopefully allow for unit testing
2014-09-11 17:48:21 +01:00
Howaner 3bd3ac2200 1.8: Added ParticleEffect packet. 2014-09-11 17:03:09 +02:00
Mattes D 9fd5df26d0 Fixed a redstone sim failure with droppers. 2014-09-11 10:28:48 +02:00
Mattes D e1a9a6291b Removed chunk's unused Y coord.
This fixes the second issue of #1313.
2014-09-06 19:01:30 +02:00
Mattes D 137b021d26 Rewritten chunk status to specify whether the chunk is in queue.
This fixes #1370.
2014-09-05 22:16:48 +02:00
madmaxoft 3297a39c27 Merge remote-tracking branch 'origin/master' into EntitiesInBox 2014-09-04 14:02:18 +02:00
Mattes D c140ba2367 Merge pull request #1351 from LO1ZB/remove-a_RelY
remove y-coord from chunks
2014-09-03 21:47:00 +02:00
madmaxoft a51c1e0b73 Added cWorld::ForEachEntityInBox() 2014-09-03 17:00:26 +02:00
Mattes D 22e3bbd0db Rewritten block entity loading.
Block entities are now loaded based on the blocktype at the coords they specify; before loading, their type ("id" NBT tag) is checked.
The chunk now expects that all block entities given to it via cChunk::SetAllData() have their valid blocktype; asserts if they don't.
Fixes #1354.
2014-08-29 19:19:47 +03:00
LO1ZB 3c1c073714 remove y-coord from chunks 2014-08-28 11:36:35 +02:00
Howaner b5ffe06f88 Code formatting fixes. 2014-08-19 22:14:37 +02:00
madmaxoft 008c1cdaf4 CheckBasicStyle checks the src folder as well. 2014-08-14 01:03:30 +02:00
Tycho 6acddd0cad Fixed style issues 2014-08-06 13:19:22 +01:00
Tycho 9272bd627c Removed dependecy of redstone simulator on NoteBlock 2014-08-05 22:54:36 +01:00
Tycho 06942871dd Refactored Redstone simulator not to depend on TNTEntity or DropSpenserENtity Directly 2014-08-05 21:48:23 +01:00
Howaner 81e095adda Exported the beacon. 2014-07-30 22:19:51 +02:00
Tiger Wang 8811837aea Merge branch 'master' into portals
Conflicts:
	src/World.h
2014-07-29 15:27:19 +01:00
madmaxoft c0b62ef139 Added a queue for setting chunk data.
Fixes #1196.
2014-07-24 18:32:05 +02:00
Tiger Wang a28b0dc120 Speed improvements, crash fixes, & self-suggestions 2014-07-22 17:26:48 +01:00
Tiger Wang 3385ed56b8 Merge remote-tracking branch 'origin/master' into portals
Conflicts:
	src/Chunk.cpp
	src/Entities/Player.cpp
	src/Root.cpp
	src/World.cpp
2014-07-22 10:24:28 +01:00
Tiger Wang 8050a5b98a Suggestions 2014-07-21 22:49:06 +01:00
madmaxoft 93d29555e5 Style: Normalized to no spaces before closing parenthesis. 2014-07-21 17:40:43 +02:00
madmaxoft 6be79575fd Style: Normalized spaces after if, for and while. 2014-07-21 17:38:50 +02:00
Tiger Wang 6ab9afd0fd Bug and crash fixes
* Fixes end portals' solidity
* Fixed crashes to do with multithreading and removing an entity from
the wrong world
* Fixed crashes due to bad merge
* Fixed crashes due to an object being deleted twice
* Simplified cWorld::Start() and added comments to configuration files
2014-07-20 10:46:45 +01:00
madmaxoft 00c524519e Fixed style: spaces after commas. 2014-07-19 14:53:41 +02:00
Tiger Wang 37140ae578 Merge branch 'master' into portals
Conflicts:
	src/Blocks/WorldInterface.h
	src/ClientHandle.cpp
	src/ClientHandle.h
	src/Entities/Player.cpp
	src/Entities/Player.h
	src/Generating/FinishGen.cpp
	src/Protocol/Protocol.h
	src/Protocol/Protocol125.cpp
	src/Protocol/Protocol125.h
	src/Protocol/Protocol16x.cpp
	src/Protocol/Protocol16x.h
	src/Protocol/Protocol17x.cpp
	src/Protocol/Protocol17x.h
	src/Protocol/ProtocolRecognizer.cpp
	src/Protocol/ProtocolRecognizer.h
	src/Root.h
	src/World.cpp
2014-07-18 20:10:51 +01:00
madmaxoft 2423fbf2ef Normalized comments.
This was mostly done automatically and then visually inspected for obvious errors.
All //-style comments should have a 2-space separation from the code, and 1 space after the comment sign.
2014-07-17 22:15:34 +02:00
madmaxoft 7fff12bfac Fixed spaces around single-line comments.
There should be at least two spaces in front and one space after //-style comments.
2014-07-17 19:13:23 +02:00
madmaxoft 993fd14ddf Fixed basic whitespace problems.
Indenting by spaces and alignment by spaces, as well as trailing whitespace on non-empty lines.
2014-07-17 16:33:09 +02:00
Howaner d529971e27 Changed BroadcastSoundEffect function to take floating pos. 2014-07-13 02:08:02 +02:00
Tiger Wang 5f72cdac38 Merge pull request #1154 from mc-server/trappedchests
Implemented trapped chests & others
2014-07-12 23:24:32 +01:00
Tiger Wang e71e432633 Suggestions and bug fix
* Fixed hoppers pushing/pulling to/from (trapped)chests that do not form
a double-chest with the chest type directly connected to said hopper;
thank you, @madmaxoft
2014-07-12 22:06:25 +01:00
madmaxoft 729cc7f6ff Fixed style consistency. 2014-07-10 23:04:33 +02:00
madmaxoft 9e22f46b15 Implemented support for forced chunk ticking.
Fixes #1160.
2014-07-10 18:18:32 +02:00
Tiger Wang 9e44b0aae1 Implemented trapped chests & others
+ Added trapped chests
* Fixed a bunch of bugs in the redstone simulator concerning wires and
repeaters
* Other potential bugfixes
2014-07-06 23:50:22 +01:00
Mattes D 9926abd4f5 Added generic entity-collecting.
Now any cEntity can be collected, not only cPickups.
This should help PR #1098.
2014-06-27 20:56:44 +02:00
Tiger Wang bd5df3d3b9 Merge branch 'master' of https://github.com/mc-server/MCServer into portals 2014-06-24 21:15:48 +01:00
Mattes D 1da39568a3 Added asserts for cChunk::GetBlockEntity() coords. 2014-06-24 09:46:38 +02:00
Tiger Wang 7615ed90c0 Merge branch 'master' into portals
Conflicts:
	src/Chunk.cpp
	src/Entities/Entity.h
	src/Entities/Player.h
2014-06-21 22:14:23 +01:00
Tiger Wang 6e681269d9 Fixed invalid iterators 2014-06-21 22:07:38 +01:00
archshift e8143de01b Nullify deleted pointers. 2014-06-19 01:49:56 -07:00
Tycho ee50790398 Merge branch 'master' of github.com:mc-server/MCServer 2014-06-16 15:12:50 +01:00
Tycho c82f4f6309 Fixed order of initalisation 2014-06-12 18:56:48 +01:00
Tycho 93d4a8aa92 Removed unnessicary indirection from Entity iterator list 2014-06-12 18:51:33 +01:00
Tiger Wang 29567c5610 Portals animate and delay correctly 2014-06-12 15:21:07 +01:00
Tiger Wang bfa8aaf41b Merge branch 'master' into portals
Conflicts:
	src/ClientHandle.cpp
	src/Entities/Player.cpp
	src/Entities/Player.h
	src/Protocol/Protocol125.cpp
	src/Protocol/Protocol17x.cpp
2014-06-10 20:51:22 +01:00
Tiger Wang 35b79e5d71 Portal improvements and suggestions 2014-06-10 20:43:27 +01:00
Tiger Wang 156c9851b8 Suggestions 2014-06-05 17:58:29 +01:00
Tiger Wang 22236a103a Redstone fixes and improvements [SEE DESC]
Haha, see desc.

* Improved redstone speed through a marking dirty system. Only a select
few devices are still continuously simulated
* Fixed redstone crashing with recent piston changes
2014-06-04 23:23:22 +01:00
Tiger Wang 3278a403b5 Removed use of auto 2014-06-04 13:24:43 +01:00
Tiger Wang 86e5273cd1 Merge remote-tracking branch 'origin/master' into portals 2014-06-04 13:14:38 +01:00
Tiger Wang 5fc7592cba Merge remote-tracking branch 'origin/pistonfixes'
Conflicts:
	src/Chunk.cpp
2014-06-02 19:49:14 +01:00
Tiger Wang a84f107400 Suggestions two 2014-06-01 20:00:11 +01:00
Tiger Wang 8bff3e5af2 Implemented end and nether portals 2014-05-31 22:28:51 +01:00
madmaxoft f7777e8c75 Added comments, reformatted code. 2014-05-29 18:25:08 +02:00
Tiger Wang cea3a8e7e8 Cauldrons fill 2014-05-29 16:58:40 +01:00
Tiger Wang 3549d0d5e6 More comments! 2014-05-29 15:59:39 +01:00
Tiger Wang ee929793f0 Hopefully fixed piston duplication issues
* Fixes #879
* Fixes #714
2014-05-25 13:46:34 +01:00
Tycho 8f964886e0 Implemented style changes 2014-05-24 13:33:40 +01:00
Tycho 5929ffbc40 Fixed stylistic issues 2014-05-21 20:08:34 +01:00
Tycho 024027db89 Renamed cChunkBuffer to cChunkData 2014-05-21 19:58:48 +01:00
Tycho cdd3d11496 Fixed minor style issues 2014-05-21 18:33:54 +01:00
Tycho cb6200345c Fixed bug in setting metas 2014-05-10 15:19:06 +01:00
Tycho d478e3cfb1 Merge branch 'master' into chunksparsing/structs
Conflicts:
	src/Chunk.h
2014-05-10 05:05:44 -07:00
Tiger Wang 0d1804e439 Merge branch 'master' into redstoneimprovements
Conflicts:
	src/ClientHandle.cpp
	src/Entities/FallingBlock.cpp
	src/Mobs/AggressiveMonster.cpp
	src/Simulator/IncrementalRedstoneSimulator.cpp
2014-05-04 14:15:10 +01:00
madmaxoft 8ff7cf9262 Fixed a buffer overflow in cChunk:SetLight().
There are only half as many bytes for light than there are blocktypes.
2014-05-02 20:56:42 +02:00
Tiger Wang bbc5faa723 Redstone simulator now directly accesses cChunk
* Redstone simulator performance improvements
* Added return values to some functions
* Minor fixes
2014-04-27 17:35:41 +01:00
Tycho dcb2a590e3 Fixed bad merge 2014-04-27 06:45:33 -07:00
Tycho 57b8ee9163 Merge branch 'master' into chunksparsing/structs
Conflicts:
	src/Chunk.cpp
	src/Chunk.h
2014-04-27 06:35:27 -07:00
Tycho e40f9d6e5b Implemented Chunk Sparsing with segments 2014-04-26 10:50:23 -07:00
Mattes D 1139b117c4 Merge pull request #863 from mc-server/chunkysparsing
Chunky sparsing
2014-04-26 15:12:10 +02:00
Tiger Wang 05f52192c9 Implemented comments 2014-04-25 21:22:43 +01:00
Tiger Wang 3397f9faec Fixed indent 2014-04-24 22:07:20 +01:00
Tiger Wang acbd4e6503 Another small speed improvement? 2014-04-24 21:52:01 +01:00
Tiger Wang ffce8d6907 Implemented suggestions 2014-04-24 21:49:56 +01:00
Mattes D 6492aa000b Merge pull request #909 from jfhumann/fixes
Bug fixes and optimizations.

We need to visit the API functions and check that they return only those values expected. `cWorld::CreateProjectile()` seems affected, too, by the same issue of ToLua returning extra values. In the cleanest form, these functions will need moving to ManualBindings.cpp
2014-04-22 13:34:32 +02:00
jfhumann 013da806ec Did some static analysis, fixed some bugs and optimized a lot of code 2014-04-18 21:09:44 +02:00
STRWarrior 875c2557c3 Implemented the skeleton code for the beacon.
There is no handling for the GUI. It can now check how big the pyramid is under the beacon.
2014-04-12 00:01:15 +02:00
Tycho 01546020fc Replaced all the .data() calls so the code compiles in VS2008 2014-04-10 12:12:36 -07:00
Tycho 18793ca568 Fixed missing - that caused all neighbour lookups to go to the chunkmap 2014-04-08 08:59:50 -07:00
Tiger Wang f13cf1a021 Maybe speed improvements?
* Use a single index to determine from when to begin copying data
* Use heightmap to determine first nonair block
2014-04-07 20:57:14 +01:00
Tiger Wang 74c4789c6f Attempt to fix errors 2014-04-07 12:43:43 +01:00
Tiger Wang a42d1f8517 Blocklight and skylight now compressed 2014-04-06 23:30:21 +01:00
Tiger Wang 3201d1bf16 Nibbletypes are compressed
+ Added nibble compression
* Fixed an off by one
2014-04-04 23:16:52 +01:00
Tiger Wang 15a0ceec26 Speed and memory improvements
* Changed array to be continuous, so no more layer splitting
2014-04-04 13:01:05 +01:00
Tiger Wang e1ba51e6ca Merge remote-tracking branch 'origin/master' into chunkysparsing 2014-04-03 19:18:34 +01:00
Tiger Wang d5faf5a38e Fixed some bugs
* Fixed undefined behaviour
* Fixed compression failure
2014-04-03 19:17:04 +01:00
Tiger Wang 357411a489 Performance improvements and chunk flipping fixed 2014-04-02 22:53:03 +01:00
worktycho 5260146f3c Merge pull request #838 from mc-server/lilypads
Lilypads
2014-03-30 15:17:35 +01:00
Tiger Wang 8ece214920 Fixed a potential crash 2014-03-28 22:51:39 +00:00
madmaxoft bbebb3a2cd Fixed chunk neighbor-getting for long distances.
This fixes a server hang when teleporting to coords too far away.
2014-03-27 18:13:52 +01:00
Tiger Wang 945631ba06 Sort of implementation of chunk sparsing
Issues:
* Chunks are flipped
* Slow/inefficient/badly coded
* Only blocktypes are 'compressed'
2014-03-23 14:34:19 +00:00
Howaner c2090c0d11 Add Lua Bindings for FlowerPotEntity.h and add documentation. 2014-03-07 11:44:16 +01:00
Howaner 787a71929c Add Flower Pots 2014-03-07 01:30:34 +01:00
andrew d73cdba1f6 g_BlockXXX => cBlockInfo::XXX 2014-03-01 21:34:19 +02:00
madmaxoft 31d15f8654 Removed an unused member variable from cChunk. 2014-02-24 09:34:37 +01:00
Mattes D 87db4b6a90 Merge pull request #697 from Howaner/Skull
Add Skulls/Heads to MCServer
2014-02-19 22:12:38 +01:00
Howaner d63ce62f3b Rename SkullEntity to MobHeadEntity 2014-02-19 14:45:09 +01:00
Howaner 52c41f8869 Add Heads completely 2014-02-18 21:40:02 +01:00
madmaxoft 803ea41236 Added cWorld:SetAreaBiome() API function.
Fixes #675.
2014-02-18 13:49:23 +01:00
Howaner 777041806f Add Skulls/Heads 2014-02-17 20:14:08 +01:00
madmaxoft ea71bfa9b6 Initial ChunkStay code. 2014-02-08 21:55:21 +01:00
Tycho b82fc394dd Changed Signiture of OnUpdate 2014-02-02 06:49:37 -08:00
Tycho c6304b2b4f Changed pointers to references 2014-02-01 05:06:32 -08:00
Tycho 25ec7750aa Changed signitures of Several BLockHandler Methods
Changed the signitures of the following to use interfaces:
GetPlacementBlockTypeMeta
OnPlaced
OnPlacedByPlayer
OnDestroyed
OnNeighbourChanged
NeighbourChanged
OnUse
CanBeAt
Check
2014-01-31 15:17:41 -08:00
andrew 9a9b51a513 Basic command block implementation 2014-01-18 15:16:47 +02:00
madmaxoft de4ac55398 Disabled excessive entity-related logging in Debug mode. 2014-01-16 20:31:06 +01:00
Tycho Bickerstaff 75abce905d fixed bad merge 2013-12-22 16:33:40 +00:00
Tycho Bickerstaff a295e0c342 merged in changes 2013-12-22 16:22:25 +00:00
Tycho Bickerstaff 15a980a616 merged in warnings changes 2013-12-22 16:11:34 +00:00
STRWarrior e9d1352f6e Implented BroadcastParticleEffect 2013-12-22 14:45:25 +01:00
Tycho Bickerstaff 94ca07cfbf Merge branch 'master' of github.com:mc-server/MCServer 2013-12-22 13:19:27 +00:00
Tycho Bickerstaff b3046a09e5 Chunk is now warnings clean 2013-12-21 15:58:21 +00:00
madmaxoft f5e6124ee0 Fixed the rest of constructor reorders. 2013-12-20 19:10:15 +01:00