1
0
Commit Graph

716 Commits

Author SHA1 Message Date
Tycho
16375f6aad Merge branch 'master' into GeneratingBenchmark
this merge is necessary,
2014-01-20 09:21:47 -08:00
Tycho
9bb61e6e2e Seperated BlockArea From World
If anyone can come up with a better name for the interface I'll change it, It contians to methods which do compleatly unrelated things
2014-01-20 09:17:24 -08:00
andrew
ff2302ebd5 Scoreboard serialization 2014-01-20 16:45:40 +02:00
andrew
7728f4bcbe Scoreboard deserialization 2014-01-20 16:10:39 +02:00
madmaxoft
41618bf242 Changed the cWorld::ScheduleTask() signature.
Now it takes the delay in ticks as an argument, and a cTask descendant as the task to run. Lua API has been updated similarly.
2014-01-19 23:49:19 +01:00
madmaxoft
4a01879911 cLuaState can now check function params. 2014-01-19 23:45:26 +01:00
Mattes D
865016abe2 Merge pull request #569 from worktycho/EnchantmentsFix
Enchantments fix
2014-01-19 13:50:50 -08:00
Mattes D
fde8b0be60 Merge pull request #565 from mc-server/commandblockfixes
Command block fixes
2014-01-19 13:47:52 -08:00
Tycho
bd4278aca1 Added Inifile and OSSupport Linking 2014-01-19 12:51:23 -08:00
Tiger Wang
e4c3d799ff Removed unneeded paramters 2014-01-19 19:42:25 +00:00
Tiger Wang
83cbe8c139 Begin implementing ascending rails 2014-01-19 19:31:17 +00:00
Tiger Wang
3700ad8546 Added one more direction into collision checks
* Added direction XM_XP
* Improved performance, thanks STR and xoft
2014-01-19 18:42:05 +00:00
madmaxoft
3c0e8c8da0 Rewritten SocketThreads for proper shutdown scenario.
This fixes #560 and #390.
2014-01-19 19:31:43 +01:00
Tiger Wang
9a580146e4 Minecart improvements and fixes
* Fixed curved rails
* Fixed detector rails in certain situations
* Fixed powered rails and others passing bad meta to SnapToRail()
2014-01-19 18:27:06 +00:00
Tiger Wang
fc622ce194 Fixed weird meta with curved rails 2014-01-19 18:24:56 +00:00
Tycho
f13a14d2cf Switched EnchantmentSerilizer to namespace 2014-01-19 08:52:45 -08:00
Mattes D
6976735a53 Merge pull request #551 from worktycho/schedular
Implemented xoft's suggestion for a saturating counter in the scheduler
2014-01-19 07:46:34 -08:00
Tycho
e14ddff1c0 Spilt Writing of Enchantments to seperate class
Created a new class cEnchantmentSerializer to serilize Enchantments to NBT.
This breaks a dependecy chain between cChunkGenerator and cWorld.
cEnchantmentSerializer is seperate from NBTWriter as it needs to access private members of cEnchantments
so having it seperate reduces the spread of the frein modifier
2014-01-19 07:38:59 -08:00
madmaxoft
dc70d04cdd SocketThreads: Removed unused code. 2014-01-19 16:15:56 +01:00
Tiger Wang
8467f5dfae Added more rail functionality 2014-01-19 14:52:45 +00:00
andrew
f321b5d224 Scoreboard improvements 2014-01-19 16:02:37 +02:00
Tiger Wang
82b2290b74 Merge remote-tracking branch 'origin/master' into minecartimprovements 2014-01-19 13:55:22 +00:00
Tiger Wang
1af89a8b50 Changed SendBlockEntity format slightly
* Writing NBT is now in Protocol, not BlockEntity files
* Fixed a last output bug
2014-01-19 13:25:35 +00:00
andrew
2b94361059 Basic scoreboard implementation 2014-01-19 14:20:57 +02:00
Mattes D
972585363d Merge pull request #559 from mc-server/SpawnMobParticles
Removed the particles when a mob spawns.
2014-01-18 23:23:53 -08:00
Tiger Wang
a85b2897e0 Implemented MC|Brand response 2014-01-19 01:06:19 +00:00
Tiger Wang
f8c8dcc7f3 Improved command blocks
* Their command and previous output are displayed on the client
* They have a BlockHandler implementation, so you can't place blocks on
them anymore
+ As a side effect, implemented UpdateBlockEntity
2014-01-19 00:54:38 +00:00
STRWarrior
24df625fbd Exported cFloater to the Lua API. 2014-01-19 00:04:46 +01:00
STRWarrior
7153bc0578 Fixed compiler error. 2014-01-18 23:42:48 +01:00
Tiger Wang
ddd03a050b Minecart collision and general improvements
+ Implemented collision on one type of rail
* Improved curved rails somewhat
* Fixed a crash bug
2014-01-18 20:58:26 +00:00
Mattes D
36b9d42819 Merge pull request #557 from xdot/master
Command blocks
2014-01-18 11:39:42 -08:00
andrew
a037172465 Command block fixes 2014-01-18 21:27:54 +02:00
madmaxoft
fab726282c HTTP connections aren't kept alive unless explicitly enabled.
Only the client can decide that the connection can be kept alive, we must close the socket if the client doesn't indicate keepalive support.
This will provide a fix for #390 when #560 is fixed; until then the issue remains, just it's no longer HTTPServer's fault.
2014-01-18 20:20:56 +01:00
Tycho
d93a4362b4 Fixed iterators bug 2014-01-18 10:57:25 -08:00
STRWarrior
1cced1664f Removed the particles when a mob spawns. 2014-01-18 19:41:31 +01:00
andrew
992053b32a Merge branch 'master' of https://github.com/mc-server/MCServer 2014-01-18 20:38:02 +02:00
andrew
02c9aa2b1e Parse the MC|AdvCdm plugin message 2014-01-18 19:58:46 +02:00
madmaxoft
e68521deac Alpha-sorted the finishers. 2014-01-18 17:03:43 +01:00
madmaxoft
896f1a26ec Merged branch 'NetherFinish'. 2014-01-18 17:03:31 +01:00
andrew
1ad6469a18 Command blocks: Execute() 2014-01-18 16:59:33 +02:00
Tycho
160a27cced switched to using m_WorldAge rather than m_TickID 2014-01-18 06:15:33 -08:00
andrew
be5299350a Command block (de)serialization 2014-01-18 15:40:47 +02:00
STRWarrior
188cb1f6bc Fixed errors. 2014-01-18 14:17:26 +01:00
andrew
9a9b51a513 Basic command block implementation 2014-01-18 15:16:47 +02:00
STRWarrior
ca27f87272 Renamed cFinishGenNetherSprinkleFoliage to cFinishGenNetherClumpFoliage. Fixed typo's 2014-01-18 14:16:07 +01:00
STRWarrior
dd7c02bba9 Some tweaks.
Everything generates more often.
Fire can only spawn on ForeverBurning blocks.
2014-01-18 13:45:41 +01:00
STRWarrior
087d650aed Fixed bug where only brown mushrooms would spawn. 2014-01-18 00:37:21 +01:00
STRWarrior
9f17c9799b It now actualy works. 2014-01-18 00:27:13 +01:00
Mattes D
9aca5b4b99 Merge pull request #552 from worktycho/c++11
Changed std to c++11 in clang to fix va_copy issues
2014-01-17 13:59:58 -08:00
STRWarrior
7c787de261 First attempt at creating a clumb version NetherFinisher. 2014-01-17 22:58:01 +01:00
Tycho
a54cbba0fd Added user setting compression factor 2014-01-17 11:01:14 -08:00
Tycho
287144839e Increased tick count to long 2014-01-17 10:23:40 -08:00
Tycho
80f2f21f4c Changed std to c++11 in clang to fix va_copy issues 2014-01-17 10:10:31 -08:00
Tycho
ce030bc7c9 Implemented xsofts suggestion for a saturating counter in the scheduler 2014-01-17 10:07:33 -08:00
Mattes D
79c1f6f438 Merge pull request #534 from mc-server/SpawnMinecart
Added cWorld::SpawnMinecart.
2014-01-17 02:27:56 -08:00
madmaxoft
2354ac2783 Fixed SIGABRT_COMPAT on other architectures. 2014-01-17 11:13:35 +01:00
madmaxoft
aec5200893 Removed internal cEntity::GetRot() usage. 2014-01-17 11:11:17 +01:00
madmaxoft
ed1d336614 Merge remote-tracking branch 'origin/customnames' 2014-01-17 10:44:23 +01:00
madmaxoft
3a1c0f2aef Protocol 1.7: More output on unknown packets / protocol states. 2014-01-17 10:12:27 +01:00
Tiger Wang
7ecf50c309 Fixed block break packet number 2014-01-16 22:42:47 +00:00
Tiger Wang
d675173b80 Changed newline character because of issues 2014-01-16 22:30:57 +00:00
Tiger Wang
952c53eb4e Removed CustomCopy() 2014-01-16 21:41:55 +00:00
Tiger Wang
590a8c45c5 Really did what xoft wanted 2014-01-16 21:41:08 +00:00
Tiger Wang
d3bc92c65d Fixed #535 2014-01-16 21:51:30 +01:00
madmaxoft
4da8818291 Fixed SIGPIPE on cSocket::Send(). 2014-01-16 21:08:17 +01:00
Tiger Wang
7eb3cabd19 Fixed #535 2014-01-16 19:55:21 +00:00
madmaxoft
a085319455 Protocol 1.7: Unknown packets are dumped to log in Debug mode. 2014-01-16 20:39:59 +01:00
madmaxoft
de4ac55398 Disabled excessive entity-related logging in Debug mode. 2014-01-16 20:31:06 +01:00
madmaxoft
c44ce84497 Fixed whitespace in previous commit. 2014-01-16 20:30:25 +01:00
Tiger Wang
74645fdfaa Removed obsoleted functions 2014-01-16 19:00:49 +00:00
madmaxoft
343136a2ae Finished exporting cWorld:ScheduleTask() to Lua API. 2014-01-16 19:56:08 +01:00
Tiger Wang
5d03e49c13 Possibly did what xoft wanted 2014-01-16 18:44:11 +00:00
Tiger Wang
3373daca26 Merge remote-tracking branch 'origin/master' into customnames 2014-01-16 18:37:46 +00:00
madmaxoft
dab37db562 CMake: Fixed output paths for all MSVC versions. 2014-01-16 18:33:28 +01:00
STRWarrior
ca835a0565 Changed GetContent function. 2014-01-16 16:54:22 +01:00
madmaxoft
e29749b35e Added packet diagnostics to 1.7 protocol.
When the packet is mis-interpreted, a log message is output about the packet type and lengths.
2014-01-16 15:26:58 +01:00
madmaxoft
6f739359e3 Yet another attempt at VarArgs. 2014-01-16 09:01:12 +01:00
madmaxoft
ba49a32c3a Another VarArgs fix.
This time using va_copy() on platforms that have it and simple assignment on platforms that don't.
2014-01-16 08:34:10 +01:00
Tiger Wang
f3baf31563 OBSOLETE'd obsolete functions 2014-01-15 22:38:15 +00:00
Tiger Wang
fcafd5a2e0 Implemented custom names and lore
+ Added custom names and lore
+ Added saving and loading
+ Added writing and parsing of NBT
2014-01-15 22:38:03 +00:00
Tiger Wang
3c31f2d8d8 Implemented Ctrl-Q drop stack
Also fixed an issue with TossItems not respecting count.
2014-01-15 22:36:19 +00:00
madmaxoft
dd6c5779ec Using a 2nd argument instead of va_copy().
This seems to be the only reasonable C++03-only solution.
2014-01-15 18:28:51 +01:00
madmaxoft
3fd19df9fd Fixed varargs modification.
Ref.: #541.
2014-01-15 17:46:29 +01:00
STRWarrior
72dcd70f22 Furnace minecarts now stop being active after a while. 2014-01-15 14:38:54 +01:00
STRWarrior
bdfe31f917 First implementation for furnace minecarts. 2014-01-15 14:03:09 +01:00
Mattes D
eb89de4c88 Merge pull request #542 from worktycho/schedular
added cWorld::ScheduleTask Function
2014-01-15 02:45:25 -08:00
Mattes D
457e93f1ed Merge pull request #538 from mc-server/minecarts
Minecarts
2014-01-15 02:42:24 -08:00
Tycho
292ccdc09e added cWorld::ScheduleTask Function
ScheduleTask schedules a SceduledTask object to be run x ticks in the future.
In is exported to lua, fixes #150
2014-01-14 12:17:03 -08:00
Tiger Wang
e3b839b69f Yes newline at end of file :D 2014-01-14 18:16:13 +00:00
madmaxoft
b263d55a2d CMake: Added postfix for profiled exe 2014-01-14 09:32:43 +01:00
Tiger Wang
a66e154b90 Final improvements to Minecarts
* Fixed curved rails being a little broken
+ Implemented detector rails
+ Implemented block collisions on rails
* Fixed snapping to rail
- Removed minecart physics conditions in Entity.cpp as minecarts use
their own simulator when on rails

Fixes #148 and #217; partially implemented #215.

This is Cave Johnson, and we're done here.
2014-01-13 22:37:09 +00:00
madmaxoft
5407cec41c Removed shutdown() from socket closing.
It's not there for Windows and everything seems fine, the client doesn't shutdown either, so why should we be polite.
Fixes #537.
2014-01-13 20:54:58 +01:00
madmaxoft
ada54b79d7 Added handshake processing to protocol 1.7.
This fixes #495
2014-01-13 20:32:15 +01:00
madmaxoft
7e59296157 Generating the bindings outputs a message at the end. 2014-01-13 19:57:19 +01:00
madmaxoft
332c1c59eb cCreeper is no longer available in API.
Has been replaced by cMonster.
2014-01-13 17:25:16 +01:00
madmaxoft
0a3fae7c35 CMake: Removed leftover debugging output. 2014-01-13 17:22:01 +01:00
madmaxoft
89e641071e CMake: Added resources to windows projects. 2014-01-13 17:15:34 +01:00
madmaxoft
b9eb38a17f Added a generic .user file for MSVC.
This brings in the default debugging settings for the MSVC project, when generated by CMake.
2014-01-13 16:49:49 +01:00
Tiger Wang
edefa27a48 Detaching improvements
* Players now search for an area around themselves to teleport to when
detaching from something
2014-01-12 23:23:36 +00:00
Tiger Wang
1d81db6446 Fixed wire, rail, and pressure plate unpowering 2014-01-12 23:19:08 +00:00
STRWarrior
c7d556afaf Fixed server crash. 2014-01-12 18:15:54 +01:00
STRWarrior
f11427e8cd Renamed cEmptyMinecart to cRideableMinecart 2014-01-12 18:04:41 +01:00
madmaxoft
118b7a121b Moved the win resources into a separate subfolder.
This will allow us to use them in CMake builds.
2014-01-12 17:57:29 +01:00
madmaxoft
2ca06cc213 CMake generates Bindings when not existant (win) 2014-01-12 17:20:29 +01:00
STRWarrior
c5603ce064 EmptyMinecarts should be able to get a block inside of them. 2014-01-12 15:27:50 +01:00
Tiger Wang
e114008559 Fixed settings plugin generation after IniFile 2014-01-12 14:03:50 +00:00
STRWarrior
6ff375273b Added cWorld::SpawnMinecart. 2014-01-12 14:33:32 +01:00
Tiger Wang
ec6c510bd4 Multiple enhancements and fixes to minecarts
+ They are destroyed instantly by creative mode
* Physics is much improved
+ Basic implementation of powered rails
2014-01-12 13:28:37 +00:00
Alexander Harkness
273db55bdf Merge pull request #529 from mc-server/derpstonerefactor
Major refactoring of redstone
2014-01-12 04:38:41 -08:00
madmaxoft
328b2db252 Disabled a useless MSVC warning in Bindings.cpp. 2014-01-12 08:43:13 +01:00
Mattes D
751c53ecc6 Merge pull request #532 from mc-server/LuaStateErrorHandler
Lua state error handler
2014-01-11 23:33:29 -08:00
madmaxoft
023ba17688 Lua errors display stack trace.
Fixes #418.
2014-01-11 23:10:40 +01:00
madmaxoft
b2b7e45757 Removed internal methods from public cLuaState interface.
PushFunction(), CallFunction() and GetReturn() are not to be called independently, but rather only by using the Call() templated overrides.
Push() needs to be left in the public part, it is used for pushing results in the ManualBindings.

Preparation for #418.
2014-01-11 22:51:10 +01:00
Tiger Wang
318c353ee4 Fixed rails powering 2014-01-11 21:32:42 +00:00
madmaxoft
acfebab027 Removed an unused file. 2014-01-11 21:22:40 +01:00
Mattes D
498fb5b675 Merge pull request #527 from derouinw/biomessplit
Biomessplit
2014-01-11 12:20:41 -08:00
madmaxoft
2634261a28 Removed unused variables.
The Lua API calls had no side-effects, either.
2014-01-11 20:29:56 +01:00
Mattes D
5417f7bd2d Merge pull request #530 from mc-server/GeneratorDecouple
Decoupled cChunkGenerator from cWorld and cRoot.
2014-01-11 11:26:09 -08:00
Tiger Wang
ff57381631 Did some stuff with the vectors 2014-01-11 14:26:18 +00:00
andrew
05e22dccf2 Fixed glowstone drop count 2014-01-11 11:38:34 +02: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
b068b73ad9 Renamed g_TorchPlaceable...
...to g_FullyOccupiesVoxel, as recommended by @bearbin
2014-01-11 01:51:24 +00:00
Bill Derouin
af89794d76 Globals.h needs to be first include 2014-01-10 15:50:52 -06:00
Tiger Wang
d5b38402ed Fixed doors, fixes #453 2014-01-10 21:35:41 +00:00
madmaxoft
cea997426b Decoupled cChunkGenerator from cWorld and cRoot.
Now the chunk generator can be used by other projects without depending on the two hugest structures in MCS.
2014-01-10 22:22:54 +01: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
Bill Derouin
fe48f62575 Include Biome enum in ChunkDef
Can't forward declare an enum
2014-01-10 10:30:56 -06:00
Bill Derouin
ee74411024 Added newlines at ends of files 2014-01-10 10:10:24 -06:00
madmaxoft
712e6e0bb2 Fixed generator adding values to ini file. 2014-01-10 16:34:09 +01:00
STRWarrior
82a06725bd Added cFinishGenNetherSprinkleFoliage. 2014-01-10 16:31:45 +01:00
Bill Derouin
1c2004dfbb Fixed missing externals
Turns out you actually have to include the .cpp in the project file
2014-01-10 09:23:53 -06:00
Mattes D
6943a4df74 Merge pull request #520 from mc-server/SoulSand
NetherGen: Now generates SoulSand.
2014-01-10 07:14:19 -08:00
STRWarrior
36c100a53e Fixed recurring pattern. 2014-01-10 16:12:45 +01:00
Bill Derouin
cee76f1ace Move biome definition to separate files 2014-01-09 15:21:46 -06:00
madmaxoft
bb96737f45 Exported cClientHandle::SendPluginMessage() to Lua. 2014-01-09 14:25:37 +01:00
madmaxoft
f3bedb3c32 Fixed wrong packet number for PluginMessage packet. 2014-01-09 14:24:57 +01:00
STRWarrior
6c75cbc8d7 Fixed chunk borders. 2014-01-09 13:30:04 +01:00
madmaxoft
fe978f0d1e Added cClientHandle::SendPluginMessage().
It is not yet exported in the API, though.
2014-01-09 11:39:42 +01:00
madmaxoft
bd17662412 Composition generator creating moved to a separate function.
Also it forces the defaults into the INI file.
2014-01-09 10:35:51 +01:00
madmaxoft
1ef20e858f Height generator creating moved info HeiGen.cpp.
The generator also explicitly sets the default back into the INI file.
2014-01-09 10:21:26 +01:00
Mattes D
91d70b87e5 Merge pull request #517 from derouinw/master
Add missing plugin error
2014-01-08 23:51:32 -08:00
STRWarrior
d462085108 Speed-up. I got about 40 extra ch/s 2014-01-08 22:23:26 +01:00
Bill Derouin
154d6b989a A couple touchups 2014-01-08 13:45:16 -06:00
STRWarrior
5aa34cf77d WormNestCaves now remove soul sand. 2014-01-08 15:34:49 +01:00
STRWarrior
ca8421fe26 NetherGen: Now generates SoulSand. 2014-01-08 15:26:43 +01:00
madmaxoft
38d0bdf00a Fixed AppendVPrintf() handling for large strings.
This caused a failure in server favicons.
2014-01-08 14:23:15 +01:00
Tiger Wang
f578dbfc54 Graceful shutdown on SIGTERM 2014-01-07 21:23:26 +00:00
Bill Derouin
e0d94e0f06 Add missing plugin error
Previously, if a plugin was included but the folder had no lua files,
the error given was ambiguous. Now, it explicitly describes lack of lua
files.

See issue #512

P.S. This probably isn't the best way, but this is where the fix can be
made.
2014-01-07 13:47:15 -06:00
Alexander Harkness
01fcf2fecb Merge pull request #516 from mc-server/favicon
Fixed favicons
2014-01-07 09:09:57 -08:00
Tiger Wang
1d96a615b5 Fixed favicons 2014-01-07 16:53:40 +00:00