LogicParrot
d344e574de
Spiders now friendly at daylight, new cChunk functions
2016-01-21 08:21:29 +02:00
Tiger Wang
5b62c4c314
Reorganised the redstone simulator
...
-> Many thanks to @worktycho for the idea, and @Haxi52 for the implementation plan!
* Uses classes and inheritance now
* Speed should be improved
2015-12-18 13:17:38 +00:00
Gargaj
f9008a4860
allow use failures to propagate from the entity/block to the player
2015-12-13 13:27:38 +01:00
Dave Tucker
83870f9fc0
Add enum for Sound and Particle Effects
...
Fixes #2603
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
2015-11-24 13:21:40 +00:00
Lukas Pioch
9749c3aac9
Implemented brewing
2015-11-03 18:00:55 +01:00
tycho
a0519a487a
Fixed wrong assumtion regarding RemoveClient
...
Remove client can be called with a client that is not present in the chunk
2015-09-19 19:34:20 +01:00
tycho
dd168b0e8b
Removed a significant performance issue.
...
Iterating through the list of clients in chunks was taking up a significant
amount of time with larger numbers of clients due to processor stalls.
Changing the data structure to a vector fixed the issue.
2015-09-18 16:27:32 +01:00
Tiger Wang
dd4b415051
Reinstate "Chunk queue collapsing"
...
This reinstates commit f36acb6835
and reverts commit adfbc42c02
.
2015-06-10 15:16:05 +01:00
worktycho
adfbc42c02
Revert "Chunk queue collapsing"
2015-06-07 20:45:47 +01:00
tycho
19c95ee564
Moved Chunk Broadcasts over to the regular queue
2015-06-05 22:31:21 +01:00
Mattes D
846d16315a
CheckBasicStyle: checks spaces around * and &.
2015-05-09 12:58:55 +02:00
tycho
448df85e56
Added support for additional data in the ParticleEffect Packet
...
Also started refactoring how broadcasts are handled
2015-05-07 03:47:46 +01:00
Mattes D
c3c29577a5
Fixed signedness warnings in Protocol.
2015-03-21 16:11:57 +01:00
Mattes D
cc069ccb2a
Changed cEntity::m_UniqueID to UInt32.
2015-03-21 15:18:17 +01:00
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
Tiger Wang
a26541a7c3
En masse NULL -> nullptr replace
2014-10-22 20:12:49 -07:00
Julian Laubstein
3082f0d046
Fixed error with non-const function
2014-10-19 15:11:53 +02:00
Tiger Wang
2874bf73be
Merge pull request #1502 from mc-server/furnaces
...
Improved furnaces
2014-10-18 21:33:55 +01:00
Mattes D
eeb580a74e
Functions in cPluginManager get references instead of pointers.
2014-10-15 19:09:09 +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
4f8818748e
Add data accessor.
2014-09-27 14:46:50 +01: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
Tycho
26a4845a99
IncrementalRedstoneSimulator now has no dependencies on cChunk
2014-09-16 20:29:31 +01: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
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
a2bee74a13
cChunk: Fixed the Coords param.
2014-08-29 23:21:58 +03: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
madmaxoft
008c1cdaf4
CheckBasicStyle checks the src folder as well.
2014-08-14 01:03:30 +02: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
archshift
4191be7ddb
Removed redundant semicolons and re-added warning
2014-07-24 11:21:37 -07:00
madmaxoft
c0b62ef139
Added a queue for setting chunk data.
...
Fixes #1196 .
2014-07-24 18:32:05 +02:00
madmaxoft
93d29555e5
Style: Normalized to no spaces before closing parenthesis.
2014-07-21 17:40:43 +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
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
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
Tycho
ee50790398
Merge branch 'master' of github.com:mc-server/MCServer
2014-06-16 15:12:50 +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
5fc7592cba
Merge remote-tracking branch 'origin/pistonfixes'
...
Conflicts:
src/Chunk.cpp
2014-06-02 19:49:14 +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
bd880603a5
Changed cChunkData::SetMeta to return a bool indicating whether the value changed
2014-05-21 20:18:09 +01:00
Tycho
024027db89
Renamed cChunkBuffer to cChunkData
2014-05-21 19:58:48 +01:00
Tycho
7ca33bd832
Fixed stupid error
2014-05-10 17:56:59 +01:00
Tycho
cb6200345c
Fixed bug in setting metas
2014-05-10 15:19:06 +01: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
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
jfhumann
5bed1c09bc
Fixed clang compilation errors. Apparently gcc and MSVC do not care about the order of initializer lists, but clang does.
2014-04-18 22:47:59 +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
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
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
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
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
Tiger Wang
6eeeb2aa01
Sizeable speed improvements to redstone
...
+ Moved all simulator data into individual chunks
* Cleaned up parameters for functions and some code
* Fixed repeaters powering off faster than they power on
The main issue before was that, although the redstone simulator stored
blocks to be simulated in individual cChunks, other data, such as
powered lists, and etcetera, were global regardless of which chunk was
being simulated. Therefore, with worlds with lots of redstone, each tick
saw the ticking of chunks, which themselves iterated through the entire
dataset needlessly, creating LOTS of lag. Should be better now :)
2014-02-15 15:51:49 +00:00
madmaxoft
ea71bfa9b6
Initial ChunkStay code.
2014-02-08 21:55:21 +01:00
STRWarrior
3a897844a0
Renamed cRedstoneManager to cRedstoneSimulator and renamed cRedstoneSimulator to cIncrementalRedstoneSimulator (Might change later).
2014-02-07 22:59:08 +01: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
ee15d4e08e
Fixed compilation in VC2008.
...
Also removed an unused inline header file (yuck).
2013-12-30 17:41:59 +01:00
STRWarrior
e9d1352f6e
Implented BroadcastParticleEffect
2013-12-22 14:45:25 +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
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
c70c2fa42f
Changed cBlockHandler->OnUpdate() to use cChunk directly.
2013-11-30 15:58:27 +01: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