638 Commits

Author SHA1 Message Date
yankejustin
1ba64128bb Dispose of old textures
If there were previously-stored fonts, dispose of them before creating
new fonts.
2015-08-07 14:11:33 -04:00
yankejustin
cf5d54b9da Optimize ray intersection calculation
Check to make sure the direction is not 0 only once. Also, check to make
sure it is 0 first so we don't unnecessarily calculate if the position
is greater-than or less-than another without purpose.
2015-08-07 13:58:58 -04:00
yankejustin
105b0f57d0 Reduced string concatenation
Reduce the amount of string concatenation when converting an ItemStack
to a string.
2015-08-07 13:49:15 -04:00
Drew DeVault
483cc7b763 Finish grass growth implementation 2015-07-16 05:54:35 -06:00
Drew DeVault
f927f86d43 Raise PathComplete event from IMobEntity
...when the current path is completed
2015-07-15 20:25:01 -06:00
Drew DeVault
19e52bda45 Implement flint & steel behavior
Ref #12
2015-07-14 15:38:06 -06:00
Drew DeVault
a38b20b1c5 Merge pull request #187 from zevipa/master
Changed the /trash command so you can now easily clear your hotbar and/or your entire inventory.
2015-07-08 10:28:57 -06:00
Skyler Riske
394d3eca92 Added options to clear hotbar and entire inventory to the /trash command. 2015-07-07 16:52:22 -07:00
Drew DeVault
1f0c1a6481 Fix error with chunk height map updates
Ref #185
2015-07-07 14:54:08 -06:00
Drew DeVault
f7bd7a109d Optimize event scheduling when loading chunks 2015-07-07 00:49:54 -06:00
Drew DeVault
a476e04e32 Reduce time spent on chunk loading
Not sure why this is so slow. Will find out at some point.
2015-07-07 00:32:10 -06:00
Drew DeVault
d27882cdec Add grass growth 2015-07-06 21:07:40 -06:00
Drew DeVault
940b2217c1 Add mechanism for scheduling updates on chunk load 2015-07-06 20:41:25 -06:00
Drew DeVault
312c2edf3d Merge pull request #184 from Dizigma/master
Stopped players from placing blocks on their heads
2015-07-06 20:18:15 -06:00
Dizigma
6a8cd691a6 Increased range for entities to solve this, instead of checking the client bounding box 2015-07-06 19:57:08 -06:00
Drew DeVault
ec079f4dfa Fix some issues with physics simulation 2015-07-06 19:47:29 -06:00
Drew DeVault
75f8f8fc32 Make World.FindBlockPosition thread safe 2015-07-06 19:47:20 -06:00
Drew DeVault
ed7a14b871 Rewrite physics engine
This time it sucks slightly less
2015-07-06 19:30:51 -06:00
Dizigma
5c1512d527 Stopped players from placing blocks on their heads 2015-07-06 18:31:13 -06:00
Drew DeVault
6f8ef4e15a Update README.md 2015-07-05 10:25:06 -06:00
Drew DeVault
18eb5e34d5 Fix build error 2015-07-04 17:28:17 -06:00
Drew DeVault
8f2f3ff2b0 Switch travis builds to debug config 2015-07-04 16:56:24 -06:00
Drew DeVault
e127cadbd9 Do not consider signs above self as obstructions
...to chests
2015-07-04 16:37:29 -06:00
Drew DeVault
afb15bf218 Allow chest blocks to open into signs 2015-07-04 15:52:08 -06:00
Drew DeVault
87b621e166 Finish lighting optimizations (for now)
We can now consistently light a chunk with sub-10ms lighting steps.
2015-07-04 15:00:54 -06:00
Drew DeVault
d00c4ad9f5 Cache chunks during lighting operations 2015-07-04 11:30:43 -06:00
Drew DeVault
896a775330 Enable optimizations in Release mode 2015-07-04 09:13:33 -06:00
Drew DeVault
03517f97d1 Minor optimization to lighting's world interface 2015-07-04 09:11:06 -06:00
Drew DeVault
f7ffe718a7 Initial pass on lighting optimizations 2015-07-04 08:41:27 -06:00
Drew DeVault
8966367ebf Lay foundation for natural mob spawning 2015-07-03 11:26:41 -06:00
Drew DeVault
44e01d0fe7 Disable lighting by default via config.yaml 2015-07-03 10:54:55 -06:00
Drew DeVault
ff0ee58b37 Refactor A* implementation leading up to JPS 2015-07-03 10:54:55 -06:00
Drew DeVault
ebadeed59d Merge pull request #182 from Gbear605/master
Add Mac OSX Support
2015-07-03 10:54:31 -06:00
Garrison Taylor
326f8a57dc Add Mac PostBuildEvent for the MonoGame dll to Windows build.. 2015-07-03 12:46:30 -04:00
Garrison Taylor
eca8b898de Add Mac PostBuildEvent for the MonoGame dll 2015-07-03 12:42:15 -04:00
Garrison Taylor
dbded3785a Add Mac support 2015-07-03 01:53:55 -04:00
Garrison Taylor
00193f075d Add Mac support 2015-07-03 01:53:16 -04:00
Drew DeVault
7578d5980a Add mob wandering AI 2015-07-02 22:46:20 -06:00
Drew DeVault
a236da0076 Remove debug code for mobs 2015-07-02 22:12:21 -06:00
Drew DeVault
e00cc2fe60 Add initial support for mobs 2015-07-02 22:08:41 -06:00
Drew DeVault
b7ba71e095 Add more complex pathfinding unit tests 2015-07-02 18:04:15 -06:00
Drew DeVault
2edd199fca Enable diagonal paths in A* implementation
The way this works is like so, where 'o' is the voxel we're trying to
leave, '_' is a possible exit, 'x' is an obstacle, and * is the exit.

    __*
    _o_
    ___

    xx*
    _o_
    ___

    xxx
    _o*
    ___

    xx_
    _ox
    __*

Basically, if both the north and east paths are available, AND the
northeast path is available, we use the northeast path.
2015-07-02 17:52:55 -06:00
Drew DeVault
b56a53dc81 Further refinements to A* 2015-07-02 17:22:57 -06:00
Drew DeVault
f2ab1c0598 Implement A* pathfinding and relevant tests 2015-07-02 17:05:44 -06:00
Drew DeVault
fc6f88a87b Keep scheduled events sorted
This lets us break out of the update loop early when we run out of
expired events.
2015-07-02 12:17:50 -06:00
Drew DeVault
8b1930eeac Switch to DateTime.UtcNow for everything 2015-07-02 12:14:55 -06:00
Drew DeVault
bda2e11885 Prevent players from spawning underground
Fixes #76
2015-07-01 16:12:59 -06:00
Drew DeVault
bbc405f902 Prevent blocks from being placed inside entities
Fixes #78
2015-07-01 15:59:23 -06:00
Drew DeVault
59740846b7 Add bounding box for torches (null) 2015-07-01 15:53:14 -06:00
Drew DeVault
ed32e479d7 Implement remaining orientable blocks 2015-07-01 15:36:52 -06:00