Commit Graph

495 Commits

Author SHA1 Message Date
ice_iix 103a58f92a Remove unnecessary #[macro_use] on console 2018-11-04 12:53:03 -08:00
ice_iix 411e4f69a6 Remove unnecessary 'extern crate's in Rust 2018 edition, import macros
https://rust-lang-nursery.github.io/edition-guide/print.html#no-more-extern-crate
https://rust-lang-nursery.github.io/edition-guide/rust-2018/macros/macro-changes.html
https://github.com/iceiix/steven/pull/13#issuecomment-435702507
2018-11-04 12:39:23 -08:00
ice_iix a40cd43a2e Update to use crate:: for current crate, for Rust 2018 edition
From `cargo fix --edition`, see https://rust-lang-nursery.github.io/edition-guide/print.html#the-crate-keyword-refers-to-the-current-crate
2018-11-04 12:06:00 -08:00
ice_iix db02f9e790 Update try!() to new ? syntax for Rust 2018 edition
Not automatically updated, see https://users.rust-lang.org/t/why-does-cargo-fix-replace-try-with-r-try-instead-of/21972/3
There are other tools to replace it, btu this is what I used:
find src -name '*.rs' -exec perl -MRegexp::Common -0777 -pe'$bp=$RE{balanced}{-parens=>"()"}; s/try\!($bp)/substr($1, 1, length($1) - 2) . "?"/ges' -i {} \;
2018-11-04 11:48:51 -08:00
ice_iix fc18e9836f Remove anonymous trait parameters, name _ for Rust 2018
https://rust-lang-nursery.github.io/edition-guide/rust-2018/trait-system/no-anon-params.html
2018-11-04 11:48:34 -08:00
ice_iix f6a56f5b86 Use non-colliding variable name dynamic_texture instead of dyn (now a keyword) 2018-11-04 11:31:28 -08:00
iceiix 1589a29685
Remove use of OpenSSL for RSA PKCS1 encryption (#12). Closes #2
* Add handwritten RSA PKCS1 encryption using num-bigint and simple_asn1

* Add more logging to compare OpenSSL with/without side-by-side

* Log message and ciphertext in hex

* Print N and e as hexadecimal integers

* Fix bad encryption caused by zeros in PKCS1 padding

PS field in https://tools.ietf.org/html/rfc8017#section-7.2.1
Must be nonzero

* Use rand fill instead of rand_bytes

* Remove OpenSSL!

* Update CI scripts and docs to not install OpenSSL

* Remove copying OpenSSL DLLs (libeay and ssleay) in AppVeyor script

* Change rsa_public_encrypt_pkcs1 to return a Result<Vec<u8>, String>

* Add error checking, returning Err<String> on failure; RFC comments

* Add the required message representative range checking

* Use expect() instead of unwrap() on from_der

* Map the ASN.1 error to a String to return it from rsa_public_encrypt_pkcs1() instead of panicking

* Move RSA to a new crate, rsa_public_encrypt_pkcs1

https://github.com/iceiix/rsa_public_encrypt_pkcs1

* Update to rsa_public_encrypt_pkcs1 with simple_asn 0.1.0

https://github.com/iceiix/rsa_public_encrypt_pkcs1/issues/1

* Update to published version of rsa_public_encrypt_pkcs1, 0.1.0

* Remove unnecessarily added blank line

* Remove libssl-dev from .travis.yml
2018-11-04 09:40:51 -08:00
iceiix 90aaeaf16a
Support beta Rust release. Closes #8 (#11)
* Remove seemingly unneeded const on MetadataKey<T> new

* Change biome temperature/moisture to integer, x100 to remove floating-point so can use within stable 'const fn'

* Remove unstable const_fn feature, now using stable const fn: see https://www.reddit.com/r/rust/comments/9msqfn/const_fn_soon_on_stable_rust/

* Test on Rust beta (awaiting 1.31 release for stable)

* Update readme for beta Rust support
2018-11-02 16:57:23 -07:00
iceiix 6d88ce23ec Switch to RustCrypto for Cfb8 symmetric crypto, instead of OpenSSL (#10) (#2)
* Encrypt with both RustCrypto cfb8 and OpenSSL

* Switch to RustCrypto for decrypting

* Show encryption for both RustCrypto and OpenSSL, for comparison...

* Correct off-by-one error in encryption, cfb8 doesn't need extra byte

* Remove OpenSSL for symmetric crypto

* Update Cargo.lock
2018-11-01 20:46:21 -07:00
ice_iix c36d0706ac Remove obsolete comment 2018-10-29 17:10:08 -07:00
ice_iix 56a1cb2b76 Fix logging with set_boxed_logger, add std feature to dep
https://github.com/rust-lang-nursery/log/issues/303
2018-10-28 19:45:57 -07:00
ice_iix 51a5e3ed5c Update to rust-openssl 0.10.15 (from 0.7.8)
Major API change, the last of the outdated dependencies
Closes https://github.com/iceiix/steven/issues/4

Note: would still like to replace the last usages of the OpenSSL crate
https://github.com/iceiix/steven/issues/2 but it is needed for CFB8
until a replacement is available (maybe https://github.com/RustCrypto/stream-ciphers/issues/4)
2018-10-27 19:56:34 -07:00
ice_iix 80c740c1c5 Update to cgmath 0.16.1, collision 0.18.0
https://github.com/iceiix/steven/issues/4
2018-10-27 18:11:26 -07:00
iceiix b17f296ab4
Replace hyper with reqwest (#7)
An old version of hyper was used before (0.8.0), in the process of updating to hyper 0.12.11, found this higher-level replacement/wrapper, reqwest 0.9.4 which is simpler to use than the latest hyper and serves the purpose of a simple HTTP client well

* Begin updating to hyper 0.12.11

https://github.com/iceiix/steven/issues/4#issuecomment-425759778

* Use type variables for hyper::Client

* Fix setting header syntax, Content-Type: application/json, 17->13

* Parse strings into URLs with url.parse::<hyper::Uri>().unwrap()

b20971cb4e/examples/client.rs (L25)

* Use hyper::Request::post() then client.request() since client.post() removed

* wait() on the ResponseFuture to get the Result

* try! to unwrap the Result

* status() is now a method

* Concatenate body chunks unwrap into bytes, then parse JSON from byte slice, instead of from_reader which didn't compile

* Replace send() with wait() on ResponseFuture

* Parse HeaderValue to u64

* Slices implement std::io::Read trait

* Read into_bytes() instead of read_to_end()

* Disable boxed logger for now to workaround 'expected function, found macro'

* Remove unnecessary mutability, warnings

* Hack to parse twice to avoid double move

* Use hyper-rustls pure Rust implementation for TLS for HTTPS in hyper

* Start converting to reqwest: add Protocol::Error and reqwest::Error conversion

* Use reqwest, replacing hyper, in protocol

* Convert resources to use reqwest instead of hyper

* Convert skin download to reqwest, instead of hyper

* Remove hyper

* Revert unnecessary variable name change req/body to reduce diff

* Revert unnecessary whitespace change to reduce diff, align indentation on .

* Fix authenticating to server, wrong method and join URL

* Update Cargo.lock
2018-10-27 17:03:34 -07:00
iceiix de6cd2044e
Update to serde_json 1.0 (#6)
* Replace find() with get()

* Update for renamed as_string->as_str and as_boolean->as_bool

https://github.com/serde-rs/json/releases/tag/v0.8.0
Value::as_string() has been renamed to as_str() and Value::as_boolean() has been renamed to as_bool() to improve consistency
https://github.com/serde-rs/json/issues/126

* No serde_json::Value::I64/U64/F64 anymore, only Number

* Update from lookup() to pointer(), using JSON pointer syntax

https://github.com/iceiix/steven/pull/6#issuecomment-432472123

* Remove unused and removed ObjectBuilder import

* Use into_iter().collect() to convert BTreeMap to serde_json::Map

* Change parse_rules to accept serde_json::Map instead of BTreeMap

* Remove unused serde_json macro_use

* Update Cargo.lock
2018-10-23 18:47:21 -07:00
ice_iix edbed5e319 Check glGetError() in rendering loop
For investigating https://github.com/iceiix/steven/issues/5
No errors seen
2018-10-07 13:53:50 -07:00
ice_iix ed5d48f136 Clamp NUM_SAMPLES glTexImage2DMultisample at GL_MAX_SAMPLES, since not all systems support >1 see https://github.com/iceiix/steven/issues/5#issuecomment-427669426 2018-10-07 10:08:24 -07:00
iceiix cceb1768b1 Panic on incomplete framebuffer so can see where it was called with RUST_BACKTRACE=1 2018-10-07 09:43:00 -07:00
ice_iix 7731117e4f Check framebuffer statuses before rendering and unbinding
No errors, so not the cause of https://github.com/iceiix/steven/issues/5
2018-10-07 08:00:07 -07:00
ice_iix 84c682b177 Check framebuffer status later not immediately after binding
No errors https://github.com/iceiix/steven/issues/5
2018-10-06 13:58:16 -07:00
ice_iix 3a32710b17 Check framebuffer status after each bind
For https://github.com/iceiix/steven/issues/5
GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT
2018-10-06 13:28:19 -07:00
ice_iix 7503b90667 Use the RustCrypto sha-1 crate instead of sha1
For https://github.com/iceiix/steven/issues/2#issuecomment-425769562
2018-10-03 18:28:05 -07:00
ice_iix d2b59fbd10 Update to rand 0.5.5 for https://github.com/iceiix/steven/issues/4
Useful guide: https://github.com/rust-random/rand/blob/master/UPDATING.md
2018-09-30 19:05:20 -07:00
ice_iix c688836a16 Use hex module for hex decoding, removing deprecated rustc-serialize for https://github.com/iceiix/steven/issues/4 2018-09-30 18:14:36 -07:00
ice_iix e988c64376 Use base64 crate for base64 instead of deprecated rustc-serialize, for https://github.com/iceiix/steven/issues/4 2018-09-30 17:58:40 -07:00
ice_iix fe99910550 Update to image 0.20.0 2018-09-30 17:21:05 -07:00
ice_iix 43f6565fa5 Update to log 0.4.5
https://github.com/iceiix/steven/issues/4
2018-09-30 16:36:00 -07:00
ice_iix fd2c51eac4 Update to flate2 1.0.2
https://github.com/iceiix/steven/issues/4
2018-09-30 16:19:24 -07:00
ice_iix 562ab9dbc4 Remove unused username field in Server. Closes https://github.com/iceiix/steven/issues/1 2018-09-30 00:25:07 -07:00
ice_iix d6fa1d0a0b Fix warning: unnecessary parentheses around function argument, new in nightly-2018-02-15 2018-09-29 23:28:38 -07:00
ice_iix 6eaf1688f4 Remove time crate in favor of std::time, removing last usage in main
Combined with these changes, which also convert to std::time:
47aeb83da2 logo text
2f861f815a light updates
9677f8ae9c server ping
2018-09-29 23:11:47 -07:00
ice_iix 9677f8ae9c Use std::time for server ping, getting closer to eliminating use of 'time' crate, https://github.com/iceiix/steven/issues/3 2018-09-29 22:57:55 -07:00
ice_iix 2f861f815a Use std::time for 5ms light updates instead of time crate
More progress on https://github.com/iceiix/steven/issues/3
2018-09-29 22:36:55 -07:00
ice_iix 163556fbf1 Use sha1 module for hashing instead of openssl, part of https://github.com/iceiix/steven/issues/2 2018-09-29 22:23:48 -07:00
ice_iix 47aeb83da2 Use std::time instead of time crate for logo text, progress on https://github.com/iceiix/steven/issues/3 2018-09-29 20:01:13 -07:00
ice_iix fbd71ea8ce Fix warning: variable does not need to be mutable, in nightly-2017-08-31
https://github.com/iceiix/steven/issues/3
2018-09-29 18:42:13 -07:00
ice_iix d704edaf81 Comment out dead code to avoid warning, for https://github.com/iceiix/steven/issues/1 2018-09-29 17:53:01 -07:00
ice_iix 84cbc3d00e Fix illegal use of floating point in pattern, https://github.com/iceiix/steven/issues/1 https://github.com/rust-lang/rust/issues/41620 2018-09-29 17:50:02 -07:00
ice_iix fa8f7bb9b9 Increase sample count to 2 to fix/workaround rendering issue #74 https://github.com/Thinkofname/steven/issues/74 2018-09-29 17:31:16 -07:00
iceiix b399b74adb Update to rust-sdl2 0.31.0 2018-09-29 13:56:52 -07:00
iceiix 743aaac4cd Enable SDL hint to workaround SDL_SetRelativeMouseMode broken on Linux
Fixes https://github.com/Thinkofname/steven/issues/73
See https://bugzilla.libsdl.org/show_bug.cgi?id=2150
2018-09-29 13:39:20 -07:00
Matthew Collins 2e99712cc8 Update rust-sdl to fix a bug (Fixes #69) 2017-05-14 10:04:34 +01:00
satoshinm 2f950a749c Fix use of deprecated Rc:would_unwrap 2017-05-14 09:58:34 +01:00
Techcable 1e8c3582ed Update to Minecraft 1.11 (Fixes #63) 2016-12-09 14:32:02 +00:00
llogiq 5e0c041a71 Fixed another batch of clippy warnings
Those are mostly readability-related. Also did a cargo update.
2016-09-15 15:15:52 +01:00
Techcable 555b646696 Update to minecraft 1.10.2 2016-07-10 12:23:59 +01:00
Kyle Wood 8d95965d40 Enable paste in textboxes 2016-04-26 00:50:16 +01:00
Thinkofname 6e33c3cc36 Fix the text boxes in the server edit screen not being focusable 2016-04-26 00:31:47 +01:00
Thinkofname 2e3d9a0a4b Fix skins reverting to default on reload 2016-04-25 13:45:13 +01:00
Thinkofname 61829c055a Fix a crash caused by trying to load a skin whilst missing vanilla resources 2016-04-25 13:31:24 +01:00
Thinkofname 4436736dce Download vanilla assets (sounds/locales) and load as a pack 2016-04-25 13:21:30 +01:00
Thinkofname 3b7d2cb8ee Fix default textures being replaced with the missing texture on reload 2016-04-25 12:05:57 +01:00
Thinkofname f23c16bff2 Update client url and add an in-game progress bar for the download (Fixes #22) 2016-04-24 23:22:10 +01:00
Thinkofname f8be801eac Improve biome color handling 2016-04-24 20:09:24 +01:00
Thinkofname 88d43c615a Move the disconnected message to the foreground 2016-04-24 14:05:21 +01:00
Thinkofname a7caa50b6f Rewrite the UI system (Closes #12) 2016-04-24 12:29:25 +01:00
Thinkofname b0c54a3561 Don't leak the block targeting model when disconnecting from a server 2016-04-22 00:01:38 +01:00
Thinkofname 5f725a843b Teleport entities when they are far from their target position 2016-04-21 23:24:01 +01:00
Thinkofname 287867dbcd Add a collidable flag to Material 2016-04-21 21:47:39 +01:00
Thinkofname 3038596b27 Simplify chunk loading 2016-04-21 21:20:28 +01:00
Thinkofname 9c816c7ea1 Implement interaction with blocks 2016-04-21 20:25:58 +01:00
Thinkofname 98422678a3 Add block targeting 2016-04-21 19:53:47 +01:00
Thinkofname d719e117ad Work around a block mapping bug 2016-04-21 13:38:49 +01:00
Thinkofname df37ec283d Handle errors when fetching skins better 2016-04-21 13:09:20 +01:00
Thinkofname feb7ea1630 Fix a crash caused by duplicate block mappings 2016-04-21 12:55:42 +01:00
Thinkofname 50ded118f3 Remove a leftover comment 2016-04-21 11:43:42 +01:00
Thinkofname edf6f34a0b Separate the console and console vars. Removes the need to lock on the console to read vars 2016-04-21 11:40:50 +01:00
Thinkofname 380a844272 Implement a background for the option menus 2016-04-21 11:00:05 +01:00
Thinkofname ebc11224e7 Fix the player's body glitching when moving 2016-04-20 22:16:40 +01:00
Thinkofname 23e779c0d7 Make BlockSnapshots use BlockStorage 2016-04-20 21:52:04 +01:00
Thinkofname 94bfc1493b Make the storage system used for chunk sections reusable 2016-04-20 21:52:04 +01:00
Thinkofname b25b565b8a Default vsync to disabled 2016-04-16 21:57:38 +01:00
Thinkofname 380f549454 Fix a large number of warnings 2016-04-16 21:44:05 +01:00
Thinkofname cc481d55bb Fix multiple skin rendering issues (Fixes #43) 2016-04-16 21:44:05 +01:00
TheUnnamedDude f349d516f2 Implement frame limit and configurable vsync (Fixes #29) 2016-04-10 22:05:05 +01:00
Thinkofname 75fb828a89 Simplify model rendering 2016-04-09 21:49:39 +01:00
Thinkofname a7c586b2e9 Optimize the types used for blocks.
Reduces the size of a block from 16 bytes -> 8 bytes on my 64 bit machine.
2016-04-09 13:48:42 +01:00
Thinkofname bb82798ab8 Disable ticking completely when disconnected from a server 2016-04-09 11:43:44 +01:00
Thinkofname a644f3ac8f Handle unused uniforms and attributes better 2016-04-09 11:08:17 +01:00
Thinkofname d5a6eb36db Fix an attribute being larger than needed 2016-04-09 10:46:00 +01:00
TheUnnamedDude 4c590f8184 Add a options/pause menu (Closes #4) 2016-04-09 09:56:55 +01:00
Thinkofname 2acfa47491 Reduce the distance the camera lags behind the player's actual position 2016-04-09 01:11:33 +01:00
Thinkofname e35a122305 Rework movement to improve compatibility with servers using NoCheatPlus (Fixes #35) 2016-04-09 00:40:35 +01:00
Thinkofname 1df78ad1c9 Fix handling of pitch for teleports/moves 2016-04-08 22:33:35 +01:00
Thinkofname 0e23e1d86f Fix entities not correctly being removed on switching servers 2016-04-08 21:39:00 +01:00
Thinkofname 1f91a10678 Fix teleports having the look direction inverted 2016-04-08 21:35:08 +01:00
Thinkofname bfbd4fe05a Clean up the protocol implementation to use generics instead of trait objects 2016-04-08 18:46:07 +01:00
Thinkofname fc82b62a04 Send a MC|Brand plugin message when joining servers 2016-04-08 18:30:05 +01:00
Thinkofname d8bdf94da2 Improve checks to see if an entity is moving 2016-04-08 17:58:00 +01:00
Scetch 1781d74ca0 Fix models to reflect Direction index changes. 2016-04-08 12:55:30 -04:00
Scetch 64ec2e4d3b Cleaning up blocks a little bit. 2016-04-08 11:30:41 -04:00
Thinkofname accf01e1fb Fix the skin processing thread crashing on shutdown 2016-04-08 11:48:26 +01:00
Thinkofname 6cfef5af2d Fix clicking causing the camera to flick 2016-04-08 11:44:23 +01:00
Thinkofname 3e8de93759 Make light effect entities 2016-04-08 11:08:21 +01:00
Thinkofname 027134f4c6 Better handling for unused blocks found during chunk load (Fixes #34) 2016-04-08 01:48:45 +01:00
Thinkofname d8b90b74bc Support being kicked from servers 2016-04-08 01:41:26 +01:00
Thinkofname 51ec66ec5c Don't clean up air blocks from the block map on chunk load (Fixes #34) 2016-04-08 01:18:08 +01:00
Thinkofname a0ae0465b0 Don't over resize chunk sections 2016-04-08 01:01:28 +01:00
Thinkofname ff83cd7367 Remove dead code from the last commit 2016-04-08 00:21:57 +01:00
Thinkofname 456411c816 Fix model rescaling 2016-04-07 23:55:18 +01:00
Thinkofname 548c98edf8 Add basic nameplates to players 2016-04-07 21:30:20 +01:00
Thinkofname ea23219993 Remove debug logging from skin fetching 2016-04-07 20:44:21 +01:00
Thinkofname 698c0d9dda Support old style skins 2016-04-07 20:44:21 +01:00
Thinkofname 93f1d44171 Fix a crash with dynamic textures 2016-04-07 20:44:21 +01:00
Thinkofname e157daecaf Implement player entities 2016-04-07 20:44:21 +01:00
Thinkofname 8c513a9eb5 Don't remove the skin url when recreating player models 2016-04-07 16:33:08 +01:00
Thinkofname 56bddaed27 Cache downloaded skins 2016-04-07 16:12:33 +01:00
Thinkofname 8469b32061 Initial skin support 2016-04-07 15:55:03 +01:00
Thinkofname 0bbb10918e Store the client's UUID and username when logging in 2016-04-06 22:50:31 +01:00
Thinkofname c21a740077 Fix texture seams (Fixes #23) 2016-04-05 22:40:35 +01:00
Thinkofname c73b9d48b2 Fix sign's texture and positioning 2016-04-05 22:36:29 +01:00
Thinkofname 2a21429685 Restore the original lighting when updating a chunk 2016-04-05 21:41:39 +01:00
Thinkofname a94b206241 Remove unused feature tag 2016-04-05 20:05:58 +01:00
Thinkofname f8e2d0333e Drop steven_openssl in favor of using the openssl crate (Closes #31) 2016-04-05 19:36:59 +01:00
Thinkofname 40170953eb Track player list information 2016-04-05 18:50:53 +01:00
Thinkofname be05214b70 Remove commented out clippy settings 2016-04-05 14:58:19 +01:00
Thinkofname 715b0cb1ee Use drawable_size instead of size for rendering 2016-04-05 12:43:57 +01:00
Thinkofname c2bd5e10c5 Fix the formatting of StatusResponse's example 2016-04-04 23:58:40 +01:00
Thinkofname ddaf7781ed Allow documentation on packets to be actually be considered documentation by rustdoc 2016-04-04 23:50:27 +01:00
Thinkofname 830f1e55a6 Support legacy color codes on signs 2016-04-04 23:08:01 +01:00
Thinkofname c117f28b2a Block entity support, implement signs 2016-04-04 22:08:24 +01:00
Thinkofname 3fb58a1b2c Smooth biome colors + biome bug fixes 2016-04-04 15:05:24 +01:00
Thinkofname 17cfa26532 Remove unused block entries from chunks sent by the server 2016-04-04 13:24:33 +01:00
Thinkofname 1544543c6a Optimize chunk loading 2016-04-04 12:37:21 +01:00
Thinkofname 8094fbbd0a Fix chunks being culled at the edge of the screen when they shouldn't 2016-04-03 23:00:00 +01:00
Thinkofname 10b32c03c5 Add trees to the main menu 2016-04-03 21:45:09 +01:00
Thinkofname d2e1eba8f9 Make the main menu look nicer 2016-04-03 21:17:02 +01:00
Thinkofname ed4399a3e6 Default sky light to 15 when out of bounds 2016-04-03 21:03:56 +01:00
Thinkofname 98ecd348c6 Replace usages of x,y,z for block positions with Position 2016-04-03 20:53:40 +01:00
Thinkofname 92d773bd72 Move blocks into its own crate to speed up compile times 2016-04-03 18:26:52 +01:00
Scetch 051f836fde Remove unused Display impl. 2016-04-03 11:16:51 -04:00
Scetch dc9e70bd72 Implement lighting for various blocks. 2016-04-03 10:59:44 -04:00
Thinkofname 222c095d8c Fix bounds check on chunk functions 2016-04-03 15:42:54 +01:00
Thinkofname 74c507ec7e Initial implementation of light updates 2016-04-03 15:08:36 +01:00
Thinkofname e7cef1eea7 Simplify material handling to reduce duplicates 2016-04-03 12:58:53 +01:00
Thinkofname 58ffe250e2 Support connecting to offline mode servers 2016-04-03 11:20:31 +01:00
Thinkofname d2c5d0641c Fix collisions for slabs 2016-04-03 01:55:10 +01:00
llogiq 0b8cc33c17 Fixed various clippy warnings 2016-04-03 01:26:31 +01:00
Thinkofname 6f708d35f2 Remove unused 'use' 2016-04-03 00:44:45 +01:00
Thinkofname 9c30d8f971 Handle systems for the ecs in a safe way (Fixes #26) 2016-04-02 23:51:51 +01:00
Thinkofname daeb8e5a2b Don't default the heightmap to 120 2016-04-02 22:08:36 +01:00
Thinkofname b975a01f30 Remove some unsafe code from the ui system 2016-04-02 20:08:21 +01:00
Scetch 4efa8c936c Fix some simple collisions. 2016-04-02 12:05:15 -04:00
Thinkofname a3a0c02213 Fix a bit::Map overflow on 32 bit machines 2016-04-02 16:24:50 +01:00
Thinkofname 0cad9508aa Allow adding and editing servers 2016-04-02 00:46:39 +01:00
Thinkofname 4978f41a28 Fix light_level and sky_offset being swapped for clouds 2016-04-01 22:09:15 +01:00
Scetch 62f33ac712 Don't silently fail. 2016-04-01 17:07:52 -04:00
Scetch b696ade883 Slab collision. 2016-04-01 17:02:05 -04:00
Thinkofname 2ad817c540 Flag surrounding sections as dirty when setting a block 2016-04-01 21:17:21 +01:00
Thinkofname c01c224fd9 Fix off by one with clouds 2016-04-01 20:57:36 +01:00
Thinkofname 0d9073420c Add fancy clouds 2016-04-01 20:01:10 +01:00
Scetch c59aca6cd8 Holy collisions batman. 2016-04-01 14:56:08 -04:00
Scetch c8026743cf Fix most connectables, mycelium, and pumpkin/melon stem tints. 2016-04-01 12:45:08 -04:00
Thinkofname c9c44e9309 Fix a few spotted mistakes in blocks 2016-04-01 11:23:23 +01:00
Thinkofname 34c4d5d54d Fix redstone wire 2016-04-01 11:17:27 +01:00
Scetch 96d4184933 Some more progress. Updated TODO list. I'm sorry. 2016-04-01 01:04:08 -04:00
Thinkofname a76f5aeeb0 Don't do collisions until the chunk the player is in has loaded 2016-04-01 00:34:22 +01:00
Thinkofname b161e3004c Fix leaves2's culling 2016-03-31 20:51:59 +01:00
Thinkofname e2fa041607 Support Minecraft 1.9.2 2016-03-31 20:51:58 +01:00
Scetch 643737c00f Fix portal, hay bale and purpur pillar. 2016-03-31 13:18:52 -04:00
Thinkofname 7f70fd7dfe Fix double flowers data value
Apparently the unused bits do get used sometimes
2016-03-31 15:39:22 +01:00
Thinkofname 646381968b Handle block updates from the server 2016-03-31 15:26:07 +01:00
Thinkofname 480b7afd3b Multipart model support 2016-03-31 14:59:40 +01:00
Scetch 35d9a2aefa 99 broken blocks in the world, 99 brocken blocks. Track one down, patch it around, 100 broken blocks in the world. 2016-03-30 09:37:04 -04:00
Thinkofname bb1f10dd1b Fix animated textures playing too fast 2016-03-30 00:53:43 +01:00
Thinkofname 4fde9161fe Fix texture rotation issues 2016-03-30 00:36:07 +01:00
Thinkofname ec50947617 Fix trapdoors 2016-03-29 21:04:35 +01:00
Thinkofname 357c695a3a Fix some lock ordering issues 2016-03-29 20:54:08 +01:00
Scetch d621528bb8 A few more block fixes. 2016-03-29 11:14:58 -04:00
Thinkofname 81dd2adc42 Model loading changes and a few more block fixes 2016-03-29 14:52:07 +01:00
Thinkofname af33935f47 Implement update_state for doors + fixes for various blocks 2016-03-29 13:44:46 +01:00
Scetch 1a50332150 Implement block data for a lot of blocks. 2016-03-29 00:46:00 +01:00
Thinkofname a05e4e1296 Only trim_left the hash string 2016-03-28 22:10:33 +01:00
Thinkofname 93bcd1e083 Rework the dynamic texture system to be less stupid 2016-03-28 19:06:10 +01:00
Thinkofname ed5fb8c93d Initial work on player models 2016-03-28 14:15:21 +01:00
Thinkofname 7fbbdf7686 Minor optimization 2016-03-28 00:50:30 +01:00
Thinkofname fc0a0e3090 Don't cull the chunk section the player is standing in 2016-03-28 00:18:55 +01:00
Thinkofname 6ef08d73b1 Fix lighting bugs with stairs 2016-03-27 23:57:35 +01:00
Thinkofname 2b26f841d0 Implement models and a sun/moon 2016-03-27 23:31:57 +01:00
Thinkofname 93c58aad89 Remove unsafe Proxy system 2016-03-27 17:45:12 +01:00
Thinkofname e36a0f4579 Various bug fixes for entity handling. TODO: Smite this system from orbit, it sucks 2016-03-27 17:08:38 +01:00
Thinkofname 347244c65c Clean up lifetimes in the ecs 2016-03-27 14:42:02 +01:00
Thinkofname 6a692ba37d Allow for tracking for component removals and additions 2016-03-27 14:25:34 +01:00
Thinkofname 26bca302aa Minor tweaks 2016-03-27 13:27:31 +01:00
Thinkofname 80f2121bf7 Initial entity work, moved self handling to an entity 2016-03-26 22:21:47 +00:00
Thinkofname 7f1e859a87 Implement more blocks 2016-03-26 18:48:10 +00:00
Thinkofname 79afc46577 More formatting fixes 2016-03-26 17:17:39 +00:00
Thinkofname e379b78de1 Fix formatting mistake 2016-03-26 16:46:16 +00:00
Thinkofname c70f9548c6 Follow some of clippy's suggestions 2016-03-26 14:24:26 +00:00
Thinkofname c25dba3c8b Fix some warnings 2016-03-26 13:28:14 +00:00
Thinkofname 25a743703c Implement stairs 2016-03-26 13:21:19 +00:00
Thinkofname 0855424e52 Move Direction and BlockVertex into better locations 2016-03-26 11:46:37 +00:00
Thinkofname fdfdfa71e2 Add a way to do state updates for blocks 2016-03-26 11:40:53 +00:00
Thinkofname e43b86e750 Fix a typo in Farmland's model name 2016-03-26 10:19:50 +00:00
Thinkofname 75eb62c975 Collisions and normal style movement 2016-03-26 10:19:16 +00:00
Thinkofname be49342dbc Don't use recursion for the flood fill 2016-03-25 21:23:27 +00:00
Thinkofname d5274c0b5b Add a workaround for leaves' culling changes 2016-03-25 21:15:13 +00:00
Thinkofname ba29de40ae Update to 1.9.0 2016-03-25 20:56:45 +00:00
Thinkofname 69139b2933 Add most blocks without full implementation 2016-03-25 17:30:29 +00:00
Thinkofname 63da7e5452 Fix a mistake with log's data value 2016-03-25 14:26:55 +00:00
Thinkofname c8a2914cc2 Fix a crash in certain biomes 2016-03-25 14:17:54 +00:00
Thinkofname c77f05ed93 Daylight cycle and make the sky color match vanilla 2016-03-25 13:47:31 +00:00
Thinkofname 9f04c09a8f Switch from glutin to sdl2 2016-03-25 13:15:35 +00:00
Thinkofname 3738c5a0c0 Liquid rendering 2016-03-25 09:47:39 +00:00
Thinkofname d7bc0b2b0f Transparent renderering 2016-03-25 01:17:03 +00:00
Thinkofname 93abbcc7cb Reload textures earlier 2016-03-25 00:25:34 +00:00
Thinkofname 04fe88321f Fix crash when starting without vanilla resources 2016-03-25 00:18:46 +00:00
Thinkofname de673f1ee1 Implement better chunk culling 2016-03-24 23:27:22 +00:00
Thinkofname 7692c54cf7 More layout changes to chunk rendering 2016-03-24 21:47:11 +00:00
Thinkofname 70ccd5cd3d Tidy up chunk rendering 2016-03-24 21:13:24 +00:00
Thinkofname 99a500b4dd Implement biome colors 2016-03-24 19:39:14 +00:00
Thinkofname f8b8c5eea4 Initial work on implementing biomes 2016-03-24 19:20:26 +00:00
Thinkofname e149a7eca5 Tidy up block defining 2016-03-24 18:37:51 +00:00
Thinkofname 302466a518 Finish rotation handling for models 2016-03-24 18:27:43 +00:00
Thinkofname 480bfcba5e Add a few more blocks 2016-03-24 18:09:28 +00:00
Thinkofname 12b1dd6445 Initial block model support 2016-03-24 15:39:57 +00:00
Thinkofname 73646421d3 Use read_exact instead of take & read_to_end 2016-03-23 23:28:33 +00:00
Thinkofname db22690dd1 Fix a bug in twos_compliment's implementation 2016-03-23 22:58:09 +00:00
Thinkofname baeb6b94aa Rework block system 2016-03-23 21:10:40 +00:00
Thinkofname 2969dfe799 Failed attempt at working with the block system 2016-03-23 18:36:52 +00:00
Thinkofdeath 9660d775cd Don't hardcode my username into the login process
Whoops
2016-03-22 22:06:29 +00:00
Thinkofname 49a749534c Don't use the default hasher 2016-03-22 19:49:11 +00:00
Thinkofname 11a4fcb33d Minor changes 2016-03-22 14:42:10 +00:00
Thinkofname 169f068f75 Add frustum culling 2016-03-22 11:47:02 +00:00
Thinkofname 47297146cf Fix a mistake with aspect calculation 2016-03-22 11:27:57 +00:00
Thinkofname 229fafbd9c Pool chunk builder buffers 2016-03-21 23:36:43 +00:00
Thinkofname f021ae69d9 Use 8 threads instead of 4 for chunk building 2016-03-21 23:25:27 +00:00
Thinkofname e6477bd186 Spectator style movement + chunk unloading 2016-03-21 22:34:57 +00:00
Thinkofname 8d141b1310 Implement block shading 2016-03-21 19:53:00 +00:00
Thinkofname 43c4c35d7a Hide the cursor when focused 2016-03-21 18:59:15 +00:00
Thinkofname 7364dc41c3 Initial implementation of camera controls 2016-03-21 17:51:25 +00:00
Thinkofname 217ec33413 Render chunks nearest to the player first 2016-03-21 16:51:19 +00:00
Thinkofname 99caa01032 Implement basic culling 2016-03-21 16:36:50 +00:00
Thinkofname ce1c286801 Implement chunk loading 2016-03-21 14:05:13 +00:00
Thinkofname 8476f992e1 Don't always spin the camera 2016-03-21 12:56:38 +00:00
Thinkofname 8b8bc3c853 Remove old test code 2016-03-21 10:55:50 +00:00
Thinkofname 1fc161c53c Allow connecting to servers 2016-03-21 10:55:31 +00:00
Thinkofname 9550bd5a27 Fix empty line spam on startup 2016-03-21 00:18:26 +00:00
Thinkofname 34e171ea39 Remove old debug messages 2016-03-21 00:15:57 +00:00
Thinkofname 19b4238dca Filter hyper and mime from logs 2016-03-21 00:15:41 +00:00
Thinkofname ae2703418b Fully implement the login screen (Closes #6) 2016-03-20 23:43:31 +00:00
Thinkofname b418625a48 Work on login screen, added ui buttons and textboxes (plus tab fixes) 2016-03-20 20:17:21 +00:00
Thinkofname 4524cb31e2 Fix panics on shutdown (Fixes #15) 2016-03-20 12:21:10 +00:00
Thinkofname fd4df88c32 Initial work on connecting to servers 2016-03-20 12:04:02 +00:00
Thinkofname 189c063f67 First attempt at block handling rework 2016-03-20 00:29:35 +00:00
Thinkofname edee182bf9 Use BufferSubData instead of MapBuffer 2016-03-19 20:35:31 +00:00
Thinkofname 65370ccfe0 Remove a debug message 2016-03-19 19:07:01 +00:00
Thinkofname 6bee18b68c Initial rendering implementation 2016-03-19 18:09:10 +00:00
Thinkofname ad81ef8f17 Basic chunk building (not rendering) 2016-03-19 16:32:13 +00:00
Thinkofname 5f17aead7e Base implementation for worlds/blocks 2016-03-18 22:24:30 +00:00
Thinkofname 7f10580b67 Prep for chunk rendering 2016-03-18 17:16:03 +00:00
Thinkofname 72712e4d42 Transparent rendering work 2016-03-18 15:19:50 +00:00
Thinkofname 99b157f2dc Correctly mark 15w39c as the supported version 2016-03-18 11:46:37 +00:00
Thinkofname 57fcd3d957 Automatically allocate packet ids (Fixes #13) 2016-03-18 11:39:03 +00:00
Thinkofname 7776690446 Initial implementation for systems 2016-03-18 10:32:48 +00:00
Thinkofname f1e31886a3 Allow searching for entities within the manager 2016-03-18 10:25:09 +00:00
Thinkofdeath c2166b5582 Implementation of components for the entity component system 2016-03-17 22:18:25 +00:00
Thinkofdeath 0143678ab6 steven -> Steven 2016-03-16 19:11:50 +00:00
Thinkofdeath 70b6738d87 Update copyright 2016-03-16 18:25:35 +00:00
Thinkofdeath eb9b61f023 More clean up 2016-03-16 18:22:03 +00:00
Thinkofdeath 86fa3d4006 Move resources into a subcrate 2016-03-16 18:15:13 +00:00
Thinkofdeath f1b940fdd1 Clean up 2016-03-16 18:01:33 +00:00
Thinkofdeath 479ba4f03e Get into a runnable state 2016-03-16 17:53:04 +00:00
Thinkofdeath e9631f044d Add last state before I stopped 2016-03-16 17:33:06 +00:00
Thinkofdeath 3704b9eeb8 Reformat using rustfmt 2015-10-07 19:36:59 +01:00
Thinkofdeath ffc9ac0e47 Fix fonts becoming corrupted when textures are reloaded 2015-10-07 00:14:02 +01:00
Thinkofdeath 26b0af7fb7 Fix the console on linux 2015-10-07 00:10:59 +01:00
Thinkofdeath b9abf4b9a6 Clean up shader creation 2015-10-06 23:49:52 +01:00
Thinkofdeath 526aaffec3 Fix logging the file name on windows 2015-10-06 23:06:18 +01:00
Scetch 7bca6e55cf Fix scrolling. 2015-10-01 16:50:37 -04:00
Scetch 670f1eb8e7 Switch from GLFW to Glutin 2015-10-01 20:54:35 +01:00
Thinkofdeath 82c3235de1 Fix stackoverflow issue 2015-10-01 15:40:29 +01:00
Thinkofdeath 4a3fc19713 Add basic cvar saving and loading 2015-09-29 23:24:58 +01:00
Thinkofdeath 12a88b07b9 Base console implementation 2015-09-29 22:33:24 +01:00
Thinkofdeath 302af6393d Tidy up 2015-09-29 20:09:36 +01:00
Thinkofdeath bdfc002e99 Clean up 2015-09-28 23:37:14 +01:00
Thinkofdeath db1c687c53 Split up the ui system using include!
Not the nicest system but it works
2015-09-27 22:18:49 +01:00
Thinkofdeath a7e9ea0e5f Use tuple structs for gl 2015-09-27 19:50:29 +01:00
Thinkofdeath 8a2c24796c Minor changes 2015-09-27 19:38:58 +01:00
Thinkofdeath fcacd91e3a Clean up 2015-09-25 15:20:55 +01:00
Thinkofdeath 0d3ff98ad5 Implement the refresh button 2015-09-25 14:48:35 +01:00
Thinkofdeath 3bcfc6aa4c Kinda functional server list 2015-09-25 14:00:49 +01:00
Thinkofdeath 93edfa3828 Base of server list 2015-09-23 20:16:25 +01:00
Thinkofdeath 876e88ec95 Basic logo impl 2015-09-21 21:11:30 +01:00
Thinkofdeath 64d0768fb4 Basic logo work 2015-09-21 13:08:06 +01:00
Thinkofdeath 81b62d9ce4 Add internal resources 2015-09-19 19:08:28 +01:00
Thinkofdeath 1ab2683a53 Base of ui system 2015-09-18 22:02:08 +01:00
Thinkofdeath 72e27968eb Add license 2015-09-17 16:23:07 +01:00
Thinkofdeath 5aef272d43 Base of ui complete 2015-09-17 16:04:25 +01:00
Thinkofdeath ab2336ffca Complete protocol implementation 2015-09-12 20:31:26 +01:00
Thinkofdeath e392dafd82 Tabs to spaces 2015-09-10 11:58:42 +01:00
Thinkofdeath 6f6d3c96ca Main part of the protocol complete 2015-09-10 11:49:41 +01:00
Thinkofdeath c015ae9e55 Clean up protocol encoding/decoding 2015-09-08 12:57:24 +01:00
Thinkofdeath 7d0d890b6f Improve the bit map 2015-09-07 21:52:36 +01:00
Thinkofdeath 412bbba1ee Initial commit 2015-09-07 21:11:00 +01:00