1
0
Commit Graph

303 Commits

Author SHA1 Message Date
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
madmaxoft
812375fab1 Attempt at fixing cChunkDef::Height signedness. 2013-12-20 16:15:39 +01:00
STRWarrior
c56af9a214 This adds the cWorld::BroadcastEntityEffect and cWorld::BroadcastRemoveEntityEffect functions. 2013-12-15 10:51:46 +01:00
Tiger Wang
95be80cdb5 Implemented note block playing and fixed wire
Game of Thrones music in Minecraft, here I come!
2013-12-14 16:52:22 +00:00
Tiger Wang
99043091df Improved redstone loading performance 2013-12-13 19:01:15 +00:00
Tiger Wang
3757054d81 Fixed QueueSetBlock not sending to client changes 2013-12-13 00:06:47 +00:00
Tiger Wang
6b6905fe1c Redstone data is now loaded on chunk load 2013-12-12 23:49:10 +00:00
worktycho
c78f67dcc0 Fixed warning unchecked enum value at Chunk.cpp line 841 2013-12-09 14:05:32 +00:00
Tiger Wang
1d554677b4 Merge branch 'master' of https://github.com/mc-server/MCServer into fixesnfeatures
Conflicts:
	src/Bindings/Bindings.cpp
	src/Bindings/Bindings.h
	src/Blocks/BlockHandler.cpp
2013-12-08 14:02:45 +00:00
madmaxoft
044fd237b6 Moved bindings-related to a Bindings subfolder.
Ref.: #407
2013-12-08 12:17:54 +01:00
Tiger Wang
347e80bdd8 Added basic ender chests
Note that they just mirror chests now, so no per player inventory.
2013-12-07 00:18:58 +00:00
Tiger Wang
30ead79049 Renamed animation function
Renamed BroadcastPlayerAnimation to BroadcastEntityAnimation. Not just
players can have animations, you know.
2013-12-06 23:47:07 +00:00
Tiger Wang
b028731726 Fixed duplication glitch with QueueSetBlock
If a coordinate was queued, and then the block there was broken, it
would reappear: double items!

Also now just sets meta if previous and current blocktypes matched.
2013-12-06 22:29:15 +00:00
madmaxoft
be1cdadda7 Fixed an error in cChunk's block ticking.
Absolute coords were passed to a handler expecting relative coords.
2013-12-04 19:47:08 +01:00
madmaxoft
c70c2fa42f Changed cBlockHandler->OnUpdate() to use cChunk directly. 2013-11-30 15:58:27 +01:00
madmaxoft
2113ca3844 Fixed VC2008 compilation, normalized include paths. 2013-11-27 09:17:25 +01:00
Alexander Harkness
3b790bbf67 Fixed some of tiger's derpyness. 2013-11-27 07:27:19 +00:00
Alexander Harkness
770ef8c60b Fixed loads more of them. 2013-11-26 17:14:46 +00:00
Tiger Wang
e3db69c4ae Attempt to fix compilation 2013-11-24 18:44:22 +00:00
Alexander Harkness
c3cd436ec3 Merge remote-tracking branch 'origin/master' into foldermove2
Conflicts:
	GNUmakefile
2013-11-24 14:37:03 +00:00
Alexander Harkness
675b4aa878 Moved source to src 2013-11-24 14:19:41 +00:00