1
0
Commit Graph

383 Commits

Author SHA1 Message Date
madmaxoft
c6f78d516b Redstone: Fixed a crash with repeaters on a chunk border. 2014-09-25 18:36:11 +02:00
Tycho
6e7c0e33b5 Added first test to show the object can be created 2014-09-17 18:40:10 +01:00
Tycho
26a4845a99 IncrementalRedstoneSimulator now has no dependencies on cChunk 2014-09-16 20:29:31 +01:00
Tycho
b87585977f Don't include IncrementalRedsonteSimulator.inc when in SELF_TEST mode 2014-09-11 17:57:34 +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
Masy98
5f2e850b0f Added blocks to the fire simulator 2014-09-11 15:48:26 +02:00
Masy98
074dcbf950 Added iron trapdoor, fence gates and doors to the redstone simulator 2014-09-10 21:07:37 +02:00
Mattes D
d0551e2e0a VanillaFluidSimulator: Fixed an invalid Y-coord query.
This was causing a spam of console messages, along with possible server crash, when liquids passed below the world: http://forum.mc-server.org/showthread.php?tid=1508&pid=15632#pid15632
2014-08-29 14:58:41 +03: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
madmaxoft
7bfb0b05d0 CheckBasicStyle: multi-level indent change. 2014-08-04 13:20:29 +02:00
Howaner
bfe11024ac Added missing HOOK_BLOCK_SPREAD call. 2014-08-01 19:37:08 +02:00
archshift
4191be7ddb Removed redundant semicolons and re-added warning 2014-07-24 11:21:37 -07: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
madmaxoft
00c524519e Fixed style: spaces after commas. 2014-07-19 14:53:41 +02:00
archshift
725d1fd1e2 Subdirs: Only add_library if not using MSVC 2014-07-18 17:41:43 -07:00
archshift
0859ee3995 Simulator/CMakeLists.txt: Replaced glob with list of files 2014-07-18 17:41:43 -07:00
madmaxoft
2df5e26d3b Fixed spaces before commas. 2014-07-18 09:57:34 +02:00
madmaxoft
c03161f75d Fixed tabs used for alignment. 2014-07-17 23:16:55 +02:00
madmaxoft
d0cc9aedb3 More trailing whitespace fixes. 2014-07-17 23:16:54 +02:00
madmaxoft
5e198c6730 Basic style fixes. 2014-07-17 22:50:58 +02: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
Tiger Wang
9194438fb5 Fixed another redstone simulator crash 2014-07-16 22:21:00 +01:00
Tiger Wang
82fe5c05f0 Fixed redstone simulator crash
* Fixes #1176
* Fixed #1186
2014-07-14 23:03:30 +01:00
Howaner
d529971e27 Changed BroadcastSoundEffect function to take floating pos. 2014-07-13 02:08:02 +02: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
Tiger Wang
416c160fb5 Suggestions 2014-07-11 19:40:33 +01:00
Tiger Wang
6a33fa84ae Suggestions 2014-07-11 12:43:24 +01:00
Tiger Wang
df65e8b7bb Improved LinkedPowering speed
* Additionally fixed wires powering other wires through blocks
2014-07-11 12:06:16 +01:00
Tiger Wang
756c45d07b Fixed compilation and pressure plates 2014-07-07 21:12:25 +01: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
Tiger Wang
ec2f576de6 Fixed c1deda5d8f
I keep on breaking stuff :P
2014-07-04 12:44:03 +01:00
Tiger Wang
61cb08b546 Implemented tripwire(s) (hooks)
* Fixes #944
2014-06-28 20:44:34 +01:00
Tiger Wang
69befa9851 Fixed bad water/redstone simulator communication
* Fixes #713
2014-06-27 23:16:37 +01:00
Mattes D
fe95dfa758 Merge pull request #1105 from Howaner/Blocks
Added door and fence gate sounds.
2014-06-22 20:56:24 +02:00
Howaner
bebfb230da Changed 0xFFFFFFFB to ~0x04 2014-06-22 17:29:02 +02:00
Tiger Wang
c13cffcd30 Merge branch 'master' of https://github.com/mc-server/MCServer 2014-06-22 15:05:02 +01:00
Tiger Wang
3ec8b33b76 Fixed another daylight sensor bug
Additionally fixed unpowering across chunks.
2014-06-22 15:04:23 +01:00
worktycho
3c0452ebef Fixed missing break
Fixes CID 68409
2014-06-22 14:17:07 +01:00
worktycho
119ba562d5 Fixed invalid iterator
Fixes CID 60408
2014-06-22 14:15:41 +01:00
archshift
e8143de01b Nullify deleted pointers. 2014-06-19 01:49:56 -07:00
Alexander Harkness
35a4aa419c Merge pull request #1096 from mc-server/redstonerefactor
Moved delayed repeaters to be handled in a seperate pass
2014-06-18 21:22:53 +01:00
Howaner
2da7768298 Merge branch 'master' into Blocks 2014-06-17 19:50:26 +02:00
Howaner
bcf798f260 Fix fence gate sound (Redstone simulator). 2014-06-17 19:47:32 +02:00
Howaner
a10b716ba2 Fix fence gate redstone simulator. 2014-06-17 00:22:57 +02:00
Tycho
74cd730589 FIxed second weird enum 2014-06-16 18:06:09 +01:00
Tycho
6fa99a211e Refactored reversing logic into seperate function 2014-06-16 17:55:58 +01:00
Tycho
3a7c0c8ce9 Fixed tigers weird enums 2014-06-16 15:29:49 +01:00
Tycho
d5c84b5fe6 Merge branch 'master' into redstonerefactor
Conflicts:
	src/Simulator/IncrementalRedstoneSimulator.cpp
2014-06-16 15:22:02 +01:00
Tycho
ee50790398 Merge branch 'master' of github.com:mc-server/MCServer 2014-06-16 15:12:50 +01:00
Tycho
aa3537112d Moved repeater handling to seperate pass 2014-06-16 15:07:41 +01:00
Tiger Wang
c1deda5d8f Fixed a repeater issue
* Repeaters now properly continuously update their powering
* Minor cosmetic improvements
2014-06-14 10:47:10 +01:00
Tiger Wang
1bce1ac432 Fixed two redstone bugs
* Fixed chunk border powering
* Fixed quick place-replace powering
2014-06-12 17:13:52 +01:00
madmaxoft
dcc71a3b7b Merge remote-tracking branch 'howaner/Redstone' 2014-06-09 21:20:26 +02:00
Mattes D
af4a21ea06 Fixed deadlock when moving players to other worlds.
Fixes #1039, fixes #851
2014-06-08 21:58:30 +02:00
Tiger Wang
d5649df326 Further improvements on redstone speed
Based on suggestions of @worktycho
* Repeaters now walk their data structure only when needed
* Fixed a bug with cChunkData returning an incorrect value for whether a
meta had changed
2014-06-07 10:39:36 +01:00
Tiger Wang
5f56773dde Further reduced redstone idle CPU consumption
* Repeaters and wires are no longer unnecessarily ticked
* Fixed #1063, likely addressed #1062
* Fixed bugs regarding duplicate values
2014-06-06 20:36: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
Mattes D
c11488ccd7 Merge pull request #1011 from SphinxC0re/SomeWarningFixes
Fixed some warnings
2014-06-04 18:02:45 +02:00
Julian Laubstein
8604dedfdf Update IncrementalRedstoneSimulator.cpp 2014-06-04 10:20:20 +02:00
Tiger Wang
5fc7592cba Merge remote-tracking branch 'origin/pistonfixes'
Conflicts:
	src/Chunk.cpp
2014-06-02 19:49:14 +01:00
Howaner
b4ba220934 Add SetOpen() and IsOpen() to BlockDoor.h and fix door redstone bug. 2014-05-29 19:21:56 +02:00
Tiger Wang
ae4371a733 Fixed piston power checking 2014-05-29 11:56:22 +01:00
Tiger Wang
ee929793f0 Hopefully fixed piston duplication issues
* Fixes #879
* Fixes #714
2014-05-25 13:46:34 +01:00
Julian Laubstein
6687848a7e Fixed warnings in IncrementalRedstoneSimulator 2014-05-19 14:49:18 +02:00
Julian Laubstein
e9abf9a498 Rolled some changes back 2014-05-19 13:02:02 +02:00
Julian Laubstein
cfbb256360 Fixed some warnings 2014-05-19 10:37:43 +02:00
Tycho
d478e3cfb1 Merge branch 'master' into chunksparsing/structs
Conflicts:
	src/Chunk.h
2014-05-10 05:05:44 -07:00
Mattes D
fb58ef55be Fixed MSVC 64-bit build warnings. 2014-05-09 18:32:03 +02:00
Tiger Wang
e5b42b9f16 Fixed wires powering wires diagonally below them 2014-05-06 23:05:14 +01:00
Howaner
7fe6e40bf7 Add clicks, exp subtraction, item check, ... 2014-05-05 17:34:29 +02:00
Tiger Wang
bde40af406 Fixed formatting 2014-05-05 15:43:45 +01:00
Tiger Wang
a94546a047 Fixed 027efe09ea 2014-05-04 14:42:12 +01: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
Tiger Wang
027efe09ea Fixed lever and button powering direction 2014-05-04 14:00:59 +01:00
Tiger Wang
bcd8f727b4 Fixed pressure plate oversights
* Fixed stone pressure plates not checking for the correct distance for
players
* Fixed pressure plates in general not link powering the blocks beneath
them
2014-05-04 00:39:03 +01:00
madmaxoft
4377a5c31e Fixed vanilla fluid simulator.
Fixes #919.
2014-05-03 19:23:59 +02:00
Tycho
ec407dd27d Merge branch 'master' into chunksparsing/structs
Conflicts:
	src/Chunk.cpp
2014-05-03 06:07:56 -07:00
madmaxoft
58224863c0 Fixed vanilla fluid simulator.
Fixes #919.
2014-05-02 22:07:30 +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
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
archshift
e47dab84f3 Cmake generated projects for IDEs include headers in project files. 2014-04-25 09:56:15 -07:00
jfhumann
67344a3782 Merge remote-tracking branch 'origin/master' into fixes
Conflicts:
	src/Authenticator.cpp
	src/ClientHandle.cpp
	src/Entities/Minecart.cpp
	src/Protocol/Protocol17x.cpp
2014-04-18 21:44:58 +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
madmaxoft
193dcca1e3 Removed unsupported C++11 features. 2014-04-18 09:36:11 +02:00
Tiger Wang
18c3b18a3f Compile fix? 2014-04-17 13:02:20 +01:00
Tiger Wang
2151ee997c Implemented weighted pressure plates 2014-04-17 12:11:31 +01:00
Tiger Wang
82b3d543e7 Rewrote redstone powering to use power levels 2014-04-15 13:15:56 +01:00
Tiger Wang
c3fcc5b132 cRedstoneSimulator.cpp style improvements 2014-04-08 18:49:53 +01:00
wiseoldman95
6a0c122dfb Uppercased Z
Minor, no code changed.
2014-04-08 17:59:42 +03:00
wiseoldman95
fb90afd651 Comments: Inverted Z axis.
-Comments fix, No code has been changed.
-Inverted the Z axis in the comments and changed all dependent comments accordingly.
-Added NORTH/SOUTH/EAST/WEST in addition to LEFT/RIGHT/UP/DOWN.
2014-04-08 17:55:03 +03:00
wiseoldman95
506f5def04 Added comments regarding latching and orientation
No real code was changed.
2014-04-08 17:14:23 +03:00
Alexander Harkness
4d32f41b8b Fixed the thing properly. 2014-04-08 14:48:24 +01:00
Alexander Harkness
8d251601cf Merge pull request #862 from mc-server/redstonefix
Fixed #859
2014-04-08 07:37:26 +01:00
wiseoldman95
dab01b27c6 Fixed IsOn 2014-04-07 21:04:06 +03:00
wiseoldman95
011123726b Removed stray IsLocked 2014-04-07 20:26:23 +03:00
wiseoldman95
45eb539a17 Removed unneeded spacings 2014-04-07 20:00:38 +03:00
wiseoldman95
4f8f686292 Slight cleanup
It is more efficient and readable if we do nothing unless we're not locked.
2014-04-07 19:55:17 +03:00
Alexander Harkness
57a474ba01 Fixed some more minor issues with the redstone simulator. 2014-04-07 17:37:53 +01:00
Alexander Harkness
5374730753 Improved the speed a little more. 2014-04-07 17:28:16 +01:00
Alexander Harkness
634c4d6770 Fixed the redstone simulator. 2014-04-07 17:12:06 +01:00
Tiger Wang
440b74af6c Fixed #859 2014-04-07 12:02:41 +01:00
Alexander Harkness
4082adbbad Fix some of the comments in the PR tycho just did. 2014-04-07 11:35:37 +01:00
Tycho
f5cb81eb1b Added support for redstone latching
fixes #856
2014-04-06 11:09:33 -07:00
worktycho
5260146f3c Merge pull request #838 from mc-server/lilypads
Lilypads
2014-03-30 15:17:35 +01:00
Tiger Wang
283a66bcae Some fixes to lilypads
* Fixed placement on lava
* Fixed placement on side of blocks
* Fixed placement through blocks
+ Added washing-away of pads
+ Added ice as a block that fully occupies its voxel
2014-03-28 22:51:30 +00:00
madmaxoft
1802234b4a Fixed compilation after last PR merge. 2014-03-28 16:44:12 +01:00
Howaner
9c46112486 Change SpreadSource prefix to ss 2014-03-27 23:20:28 +01:00
Howaner
3774b1be64 Add SpreadSource 2014-03-27 23:20:28 +01:00
Howaner
c4a8336e84 Add HOOK_BLOCK_SPREAD 2014-03-27 23:20:28 +01:00
Tiger Wang
b8fe024f9d Merge branch 'master' into awesometnt
Conflicts:
	src/ChunkMap.cpp
2014-03-18 20:49:08 +00:00
madmaxoft
89027cb675 Fixed double to float conversions. 2014-03-16 22:00:28 +01:00
andrew
b4bf13aa4f Unified Vector classes 2014-03-11 16:02:25 +02:00
Tiger Wang
e672988577 Merge remote-tracking branch 'origin/master' into awesometnt
Conflicts:
	src/Items/ItemLighter.h
	src/Simulator/IncrementalRedstoneSimulator.cpp
2014-03-10 18:59:11 +00:00
Alexander Harkness
411c4ddd79 Merge pull request #779 from mc-server/tntburnexplode
TNT explodes when consumed by fire
2014-03-10 18:57:12 +00:00
Tiger Wang
cc2d805238 Merge branch 'master' into awesometnt 2014-03-10 18:36:55 +00:00
Tiger Wang
b2733fad22 Fixed compile 2014-03-10 18:23:12 +00:00
Tiger Wang
0f412a0a02 Removed uneeded meta obtain 2014-03-09 21:48:18 +00:00
Tiger Wang
09c5542123 Merge pull request #768 from Howaner/BlockEntitys
Add TNT load/save
2014-03-09 21:44:32 +00:00
Tiger Wang
ff186f9735 TNT explodes when consumed by fire
Fixed FS#406
2014-03-09 01:23:55 +00:00
Tycho
307fad0f25 Fixed issues with int vs size_t and a few other warnings 2014-03-08 08:33:38 -08:00
Howaner
527f358510 Merge branch 'master' into BlockEntitys 2014-03-08 12:29:45 +01:00
Howaner
b37966fd21 Change TNT Fuse to ticks 2014-03-08 12:24:33 +01:00
andrew
d86fc1af06 Added some comments 2014-03-07 20:49:40 +02:00
andrew
8808523942 Fixed water/lava interaction 2014-03-07 15:42:03 +02:00
madmaxoft
3e80e63665 Merge remote-tracking branch 'xdot/master' 2014-03-06 13:24:28 +01:00
Tiger Wang
53231bebd6 Added extra awesomeness to TNT
+ TNT now has a chance of flinging FallingBlock entities around
* Improved TNT damage
* Improved TNT spawning visuals
* Possible fix for 'SetSwimState failure' messages in debug
2014-03-05 22:12:48 +00:00
andrew
1ea17c0a75 Implemented vanilla-like fluid simulator 2014-03-05 15:54:38 +02:00
Mattes D
71ae689eb7 Merge pull request #746 from Howaner/Slabs
Add Trapdoor Functions to cWorld and fix Trapdoor Redstone Bugs
2014-03-03 20:52:08 +01:00
Mattes D
b17d04737d Merge pull request #738 from xdot/master
Refactored global block property arrays
2014-03-02 16:13:43 +01:00
Howaner
e4b2502896 Add Trapdoor Functions to cWorld and fix Trapdoor Redstone Bugs 2014-03-02 16:01:37 +01:00
andrew
d73cdba1f6 g_BlockXXX => cBlockInfo::XXX 2014-03-01 21:34:19 +02:00
Howaner
66c8425041 Fix Double Slabs, fix Slab Meta and add more things to burnable 2014-02-28 15:26:32 +01:00
madmaxoft
ffc4691f48 Removed problematic utf8. 2014-02-20 22:17:01 +01:00
Howaner
337c4e5cd4 Bad UTF-8 o.O 2014-02-20 22:02:14 +01:00
Howaner
d47f421e2d Remove typeinfo import in IncrementalRedstoneSimulator 2014-02-20 21:00:16 +01:00
Howaner
4dd39f8cd6 Add Pressure Plate Sound 2014-02-20 19:21:04 +01:00
Howaner
69961fc4df Add Light weighted pressure plates 2014-02-20 19:07:32 +01:00
Howaner
4b7891f290 Add Hay Bale to Burnable 2014-02-20 17:56:35 +01:00
Tiger Wang
55a6306e2b Fixed a glaring bug with chunk cross-simulating
* A chunk's redstone blocks list is no longer touched if AddBlock was
being called with another chunk's coordinates
* Fixed chunk boundary checks
2014-02-16 00:45:14 +00:00
Tiger Wang
d273cc4142 Added a 'default:' for SimChunk()'s switch 2014-02-15 20:22:51 +00:00
Tiger Wang
c494d0f6f2 A fix and an improvement
* Fixed a special case with the wrong ChunkX/Z values being used to
calculate a relative position
* Simplified data structure adding and removing operations (no more
pointers!)
- Removed one character of whitespace :D
2014-02-15 19:56:45 +00: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
Howaner
70a0dcb1eb Add more Sounds to Redstone Simulator 2014-02-15 16:30:28 +01:00
Howaner
87e79de4b7 Add Fence Gate to Redstone Simulator 2014-02-15 16:30:27 +01:00
Tiger Wang
a0a44b969e Improved pressure plates
+ Two (or more) pressure plates can be triggered at the same time
* Fixed issues caused by pressure plates not being in the sources list
2014-02-11 23:13:49 +00:00
STRWarrior
3a897844a0 Renamed cRedstoneManager to cRedstoneSimulator and renamed cRedstoneSimulator to cIncrementalRedstoneSimulator (Might change later). 2014-02-07 22:59:08 +01:00
STRWarrior
09a23fa114 Fixed some end of lines 2014-02-07 22:25:15 +01:00
STRWarrior
176664810b Implemented an easy way of adding new redstone simulators.
Also added a "noop" redstone simulator that does the same as the fluid version.
2014-02-07 22:13:55 +01:00
Tycho
8ba6f73169 Fixed most of the reordering warnings 2014-02-05 09:43:49 -08:00
Tycho
8464f689ea Improved Type safety of eBlockFace
May Fix #640
2014-02-04 10:59:05 -08:00
Tycho
f8881622a4 Removed unused lookups 2014-02-03 12:31:18 -08:00
Mattes D
b090547c17 Merge pull request #602 from mc-server/improvementsandfixes
Redstone crash fix and current console line replace function
2014-02-02 22:02:25 -08:00
Tycho
b82fc394dd Changed Signiture of OnUpdate 2014-02-02 06:49:37 -08:00
Tiger Wang
b0784d1931 Split cCoord template into one and two data types 2014-02-01 21:40:02 +00: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
Tiger Wang
ed7816419d Fixed redstone simulator crash found in #570 2014-01-29 19:19:14 +00:00
andrew
9a9b51a513 Basic command block implementation 2014-01-18 15:16:47 +02:00
Tiger Wang
1d81db6446 Fixed wire, rail, and pressure plate unpowering 2014-01-12 23:19:08 +00:00
Tiger Wang
318c353ee4 Fixed rails powering 2014-01-11 21:32:42 +00:00
Tiger Wang
ff57381631 Did some stuff with the vectors 2014-01-11 14:26:18 +00:00
Tiger Wang
6b25ef4fa3 Fixed a door bug and reduced code
Doors wouldn't get powered by repeaters, and some blocks, like glass,
were viable middle blocks when they shouldn't have been.
2014-01-11 01:52:14 +00:00
Tiger Wang
d5b38402ed Fixed doors, fixes #453 2014-01-10 21:35:41 +00:00
Tiger Wang
e7fba08e6c Major refactoring of redstone
This commit is a refactoring of the redstone code, mainly the functions
handling the removal of invalid blocks from power supplier data
structures. Its aim is to improve performance and potentially reduce the
memory footprint of the data structures.

It works to reduce the amount of GetBlock()s triggered every tick.
Before, a GetBlock() was requested for every single item in the data
lists, as well as for every single redstone block in a chunk. Following
these changes, the AddBlock() event is utilised more effectively to only
update the lists when needed (a block is changed), as well as to insert
the block type (and update it when needed) alongside the coordinates
into the main redstone simulator chunkdata list.

In short, a single GetBlock() is now cached, with this cache being
updated when the simulator is awoken due to a block change.

At least, I *hope* that this is what it does :P
2014-01-10 20:31:05 +00:00
Tycho Bickerstaff
2e1588820d fixed warnings in World.cpp 2013-12-31 09:16:42 +01:00
Tycho Bickerstaff
d724241407 converted commneted paramater names to the unused macro 2013-12-22 13:46:55 +00:00
Tycho Bickerstaff
94ca07cfbf Merge branch 'master' of github.com:mc-server/MCServer 2013-12-22 13:19:27 +00:00
Mattes D
e0e01d0615 Merge pull request #461 from mc-server/repeaters
Repeaters, pressure plates, and others
2013-12-25 23:57:02 -08:00
Tiger Wang
d0572e73a0 Moved increment operator to back of variables 2013-12-26 00:12:06 +00:00
Tiger Wang
c6314e8935 Implemented stone and wooden pressure plates 2013-12-24 15:02:55 +00:00
Tiger Wang
76444470a4 Provides an enhancement to daylight sensors 2013-12-23 15:22:05 +00:00
Tiger Wang
11fbfb458d Daylight sensor sensing enhancement 2013-12-22 23:20:43 +00:00
Tiger Wang
48b388aa97 A fix for daylight sensors 2013-12-22 20:06:15 +00:00
Tiger Wang
acb5a36a6a Daylight sensors 2013-12-22 00:33:22 +00:00
Tiger Wang
5b2ac381b6 Fixed them again, confound it 2013-12-22 00:30:21 +00:00
Tycho Bickerstaff
5034ae29b8 Piston is now warnings clean 2013-12-21 15:08:01 +00:00
Tycho Bickerstaff
38f808ac3d ChunkSender is now warnings clean 2013-12-21 15:00:31 +00:00
Tycho Bickerstaff
779aca6051 Merge branch 'master' into cmake 2013-12-21 13:32:40 +00:00
Tiger Wang
432a28d935 Fixed repeaters delay, maybe
Also added basic daylight sensors, though because GetBlockSkylight
always is 15, it doesn't work.
2013-12-20 21:19:13 +00:00
Tycho Bickerstaff
32e6be002d Merge branch 'master' into cmake 2013-12-20 15:33:04 +00:00
madmaxoft
8610d45ef1 Fixed compiler warning when iterating over a fixed array of items (ARRAYCOUNT). 2013-12-20 16:01:34 +01:00
Tycho Bickerstaff
0e6107bfdd Merge branch 'master' into cmake 2013-12-19 16:16:35 +00:00
Tiger Wang
b083979cb2 Fixed repeaters not updating power 2013-12-19 15:57:15 +00:00
Tycho Bickerstaff
e627f2f98c Merge branch 'master' into cmake 2013-12-18 19:06:11 +00:00
Tiger Wang
13a22918e5 Fixed wire powering blocks beneath 2013-12-17 23:05:42 +00:00
Tiger Wang
09c47fabd2 Fixed bad repeater power queuing in corner case
Repeaters remain queued to power even if their original source has since
unpowered. Also functionised and cleaned up code.
2013-12-17 23:05:27 +00:00
Tiger Wang
ba4eae2d16 Implemented xoft's suggestions 2013-12-15 15:36:20 +00:00
Tiger Wang
b87055f7a5 Fixed wire repeater checking 2013-12-15 13:56:32 +00:00
Tiger Wang
bbcef6d6eb Wires now power repeaters properly 2013-12-15 13:08:08 +00:00
Tiger Wang
ceb11cb477 Fixed the hopefully final wire self-powering bug 2013-12-15 12:17:29 +00:00
Tiger Wang
765b847281 Potentially fixed debug asserts 2013-12-14 19:29:50 +00:00
Tiger Wang
7f9f6f5095 Wires no longer power if a block cuts them off
Also reduced more unneeded code.
2013-12-14 19:11:15 +00: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
5685e5ba33 Fixed compilating! 2013-12-14 12:10:05 +00:00
Tiger Wang
0aeece7fda Fixes to redstone wire and torches
+ Wires now power blocks around the block beneath
* Torches no longer power off if it is on a linked powered block
* Enhanced code, split functions, etc.
2013-12-14 02:40:54 +00:00
Tiger Wang
d94ee0fa79 Removed loads of unneeded code again 2013-12-14 01:14:09 +00:00
Tiger Wang
d110d798d2 Reduced loads of unneeded code
Merged wire powering detection code into a single function.
2013-12-14 00:43:05 +00:00