Commit Graph

676 Commits

Author SHA1 Message Date
Joshua Barretto
933e48ac3b Merge branch 'fix-jump-height' into 'master'
Fix jump height

See merge request veloren/veloren!485
2019-09-08 15:50:08 +00:00
Timo Koesters
92c0edcb98 Merge branch 'timo-attack' into 'master'
Fix wolfs not attacking and adjust movement while attacking

See merge request veloren/veloren!484
2019-09-07 10:25:57 +00:00
timokoesters
f3593371ea
Make npcs attack in a smarter way 2019-09-07 12:16:55 +02:00
haslersn
b26043b0e6 common: Rework Chunk and Chonk implementation
Previously, voxels in sparsely populated chunks were stored in a `HashMap`.
However, during usage oftentimes block accesses are followed by subsequent
nearby voxel accesses. Therefore it's possible to provide cache friendliness,
but not with `HashMap`.

The previous merge request [!469](https://gitlab.com/veloren/veloren/merge_requests/469)
proposed to order voxels by their morton order (see https://en.wikipedia.org/wiki/Z-order_curve ).
This provided excellent cache friendliness. However, benchmarks showed that
the required indexing calculations are quite expensive. Particular results
on my _Intel(R) Core(TM) i7-7500U CPU @ 2.70 GHz_ were:

| Benchmark                                | Before this commit @ d322384bec | Morton Order @ ec8a7caf42 | This commit          |
| ---------------------------------------- | --------------------------------- | --------------------------- | -------------------- |
| `full read` (81920 voxels)               | 17.7ns per voxel                  | 8.9ns per voxel             | **3.6ns** per voxel  |
| `constrained read` (4913 voxels)         | 67.0ns per voxel                  | 40.1ns per voxel            | **14.1ns** per voxel |
| `local read` (125 voxels)                | 17.5ns per voxel                  | 14.7ns per voxel            | **3.8ns** per voxel  |
| `X-direction read` (17 voxels)           | 17.8ns per voxel                  | 25.9ns per voxel            | **4.2ns** per voxel  |
| `Y-direction read` (17 voxels)           | 18.4ns per voxel                  | 33.3ns per voxel            | **4.5ns** per voxel  |
| `Z-direction read` (17 voxels)           | 18.6ns per voxel                  | 38.2ns per voxel            | **5.4ns** per voxel  |
| `long Z-direction read` (65 voxels)      | 18.0ns per voxel                  | 37.7ns per voxel            | **5.1ns** per voxel  |
| `full write (dense)` (81920 voxels)      | 17.9ns per voxel                  | **10.3ns** per voxel        | 12.4ns per voxel     |

This commit (instead of utilizing morton order) replaces `HashMap` in the
`Chunk` implementation by the following data structure:

The volume is spatially subdivided into groups of `4*4*4` blocks. Since a
`Chunk` is of total size `32*32*16`, this implies that there are `8*8*4`
groups. (These numbers are generic in the actual code such that there are
always `256` groups. I.e. the group size is chosen depending on the desired
total size of the `Chunk`.)

There's a single vector `self.vox` which consecutively stores these groups.
Each group might or might not be contained in `self.vox`. A group that is
not contained represents that the full group consists only of `self.default`
voxels. This saves a lot of memory because oftentimes a `Chunk` consists of
either a lot of air or a lot of stone.

To track whether a group is contained in `self.vox`, there's an index buffer
`self.indices : [u8; 256]`. It contains for each group

* (a) the order in which it has been inserted into `self.vox`, if the group
    is contained in `self.vox` or
* (b) 255, otherwise. That case represents that the whole group consists
    only of `self.default` voxels.

(Note that 255 is a valid insertion order for case (a) only if `self.vox` is
full and then no other group has the index 255. Therefore there's no
ambiguity.)

Rationale:

The index buffer should be small because:

* Small size increases the probability that it will always be in cache.
* The index buffer is allocated for every `Chunk` and an almost empty `Chunk`
    shall not consume too much memory.

The number of 256 groups is particularly nice because it means that the index
buffer can consist of `u8`s. This keeps the space requirement for the index
buffer as low as 4 cache lines.
2019-09-06 18:20:15 +02:00
haslersn
d322384bec common: Add benchmark for Chonk 2019-09-06 15:44:36 +02:00
haslersn
1796c09ca1 common: Rework volume API
See the doc comments in `common/src/vol.rs` for more information on
the API itself.

The changes include:

* Consistent `Err`/`Error` naming.
  * Types are named `...Error`.
  * `enum` variants are named `...Err`.
* Rename `VolMap{2d, 3d}` -> `VolGrid{2d, 3d}`. This is in preparation
  to an upcoming change where a “map” in the game related sense will
  be added.
* Add volume iterators. There are two types of them:
  * _Position_ iterators obtained from the trait `IntoPosIterator`
    using the method
    `fn pos_iter(self, lower_bound: Vec3<i32>, upper_bound: Vec3<i32>) -> ...`
    which returns an iterator over `Vec3<i32>`.
  * _Volume_ iterators obtained from the trait `IntoVolIterator`
    using the method
    `fn vol_iter(self, lower_bound: Vec3<i32>, upper_bound: Vec3<i32>) -> ...`
    which returns an iterator over `(Vec3<i32>, &Self::Vox)`.
  Those traits will usually be implemented by references to volume
  types (i.e. `impl IntoVolIterator<'a> for &'a T` where `T` is some
  type which usually implements several volume traits, such as `Chunk`).
  * _Position_ iterators iterate over the positions valid for that
    volume.
  * _Volume_ iterators do the same but return not only the position
    but also the voxel at that position, in each iteration.
* Introduce trait `RectSizedVol` for the use case which we have with
  `Chonk`: A `Chonk` is sized only in x and y direction.
* Introduce traits `RasterableVol`, `RectRasterableVol`
  * `RasterableVol` represents a volume that is compile-time sized and has
    its lower bound at `(0, 0, 0)`. The name `RasterableVol` was chosen
    because such a volume can be used with `VolGrid3d`.
  * `RectRasterableVol` represents a volume that is compile-time sized at
    least in x and y direction and has its lower bound at `(0, 0, z)`.
    There's no requirement on he lower bound or size in z direction.
    The name `RectRasterableVol` was chosen because such a volume can be
    used with `VolGrid2d`.
2019-09-06 15:43:31 +02:00
haslersn
886d554f52 common: prepend/append multiple SubChunks in a batch 2019-09-06 15:33:36 +02:00
haslersn
963c5a7785 common: Calculate magic number in Chonk 2019-09-06 15:33:36 +02:00
haslersn
8451a06804 common: Set TerrainChunk::SIZE.z = std::i32::MAX 2019-09-06 15:33:36 +02:00
haslersn
57354fb062 common: For trait ReadVol remove get_unchecked() 2019-09-06 15:33:36 +02:00
Joshua Barretto
66c58840ef Merge branch 'scott-c/first-person-model' into 'master'
Add first person models

See merge request veloren/veloren!443
2019-09-06 13:02:03 +00:00
scott-c
bc1ccfc99b Fix first person weapon visible while not wielding 2019-09-06 18:22:26 +08:00
Andrew Pritchard
05dff792fc Deref instead of clone vel 2019-09-06 14:22:58 +08:00
Andrew Pritchard
b4c74279b7 Vec3 is apprently *not* Copy, Set near plane to 0.1 to prevent tirangle flickering 2019-09-06 13:24:42 +08:00
Andrew Pritchard
b4d5663fed Vec3 is copy 2019-09-06 12:04:20 +08:00
Andrew Pritchard
5b82808df0 Merge branch 'master' into 'fix-jump-height'
# Conflicts:
#   common/src/sys/phys.rs
2019-09-05 13:07:46 +00:00
Andrew Pritchard
d0b2f7565a Revert "Revert "Exponential interpolation for linear damping""
This reverts commit 8b9a3ae1df.
2019-09-05 18:24:38 +08:00
Andrew Pritchard
8b9a3ae1df Revert "Exponential interpolation for linear damping"
This reverts commit 94b9f50efa.
2019-09-05 18:24:22 +08:00
Andrew Pritchard
94b9f50efa Exponential interpolation for linear damping
With an additional approximation to allow for the same size jumps given different framerates.
2019-09-05 17:07:15 +08:00
Imbris
52d84248ec Remove all warnings 2019-09-04 19:03:49 -04:00
Imbris
fc9c87878e Fix some warnings, cleanup comment 2019-09-03 23:09:29 -04:00
Imbris
8a994ada8e Remove derpy eyes :( , fix undead eye indices, fmt 2019-09-03 23:06:15 -04:00
jshipsey
ca4da22c7d fixing eyes, cleanup on offsets 2019-09-03 23:06:13 -04:00
jshipsey
178657c871 tweaked hair colors, head offsets, skin colors 2019-09-03 23:06:11 -04:00
Imbris
cc331c10b6 Remove use of empty.vox 2019-09-03 23:06:09 -04:00
Imbris
074eee06e6 Add pants coloring, chest and pants sliders 2019-09-03 23:06:06 -04:00
Imbris
0ffc534df2 Add separate eye color lists for each race 2019-09-03 23:06:02 -04:00
Pfauenauge90
bdb95be5cc hair and skin colours 2019-09-03 23:05:59 -04:00
Imbris
c4999f5e9d adjust how figure head coloring is done 2019-09-03 23:05:58 -04:00
Imbris
9d086949d1 Add basic index based coloring for figures 2019-09-03 23:05:56 -04:00
Imbris
fd251c4d3a Fix sliders, remove uneeded method, fix aspect ratio in character creation 2019-09-03 23:05:54 -04:00
Imbris
7bebffb2af Add ron file for head offsets, segment unionizer 2019-09-03 23:05:52 -04:00
Imbris
ab34377309 Add basic segment combination 2019-09-03 23:05:50 -04:00
Imbris
3ccbb0f38d Convert tooltips to use ImageFrame, add autosizing 2019-09-01 15:34:20 -04:00
Monty Marz
f53904b534 More sprites, ui fixes, lianas 2019-09-01 19:04:03 +00:00
timokoesters
ecbf7cad5b Remove old code 2019-08-31 09:00:20 +02:00
jshipsey
b81cd6a8f9 combine character.action movement blocks 2019-08-30 22:51:46 -04:00
timokoesters
9a832dd56b Move std::mem::discriminant into new method 2019-08-30 22:51:46 -04:00
jshipsey
78bf7a0997 slowed movement for block/attack, cleaned up code, made foot speed velocity dependent, tweaked blocking animation 2019-08-30 22:50:53 -04:00
timokoesters
b99bac87db Make npcs roll correctly 2019-08-30 22:50:53 -04:00
timokoesters
77a48c61a1 Fix rolling for the player 2019-08-30 22:50:53 -04:00
jshipsey
f8d0b1040a readded cidle 2019-08-30 22:50:53 -04:00
jshipsey
bec942753e some stuff fixed, other stuff still broken 2019-08-30 22:50:53 -04:00
jshipsey
e6197d4c10 separate static anims for feet (run/static) 2019-08-30 22:50:53 -04:00
timokoesters
15978d216b
Rename controller main, alt to primary, secondary 2019-08-31 00:13:45 +02:00
timokoesters
a95893e43b
Remove inventory::swap and improve inventory::insert 2019-08-31 00:09:25 +02:00
timokoesters
ba02956f05
Make boost RMB go upward again 2019-08-31 00:08:44 +02:00
timokoesters
bd8e71c5aa
Rename activate_inventory_slot to use_inventory_slot 2019-08-30 22:46:45 +02:00
timokoesters
5d02d32ec6
Make inventory::get return a reference 2019-08-30 22:42:43 +02:00
timokoesters
082ccd7c46
Avoid right-ward shift 2019-08-30 22:32:47 +02:00
timokoesters
7e66fe792d
Return the item again if slot was not wrong 2019-08-30 21:03:49 +02:00
timokoesters
952ec35857
Remove warnings 2019-08-29 19:54:53 +02:00
timokoesters
512d2d9a8e
Rename Teleport to Boost 2019-08-29 19:44:30 +02:00
timokoesters
075827698f
Use RMB to boost away again 2019-08-29 19:44:30 +02:00
timokoesters
6e1c78e5d5
Add debug mode item giving speed boost in look_dir on click 2019-08-29 19:44:28 +02:00
timokoesters
155605841b
Use comp::Stats to store Equipment, make char weapon selection work 2019-08-29 19:44:28 +02:00
haslersn
9844e95e5f common: Stop abusing wild animals for bit shifts 2019-08-29 18:06:52 +02:00
yashaslokesh
be71aea20b Changed exp type from f64 to u32 and altered exp calculations and function signatures to adhere to the new types
Signed-off-by: Yashas Lokesh <yashas.lokesh@gmail.com>
2019-08-27 22:33:14 +00:00
timokoesters
b725b0e9ea
End rolling when player is in the air 2019-08-27 11:06:55 +02:00
timokoesters
74677784c0
Add attack buildup duration (Delay before hit) 2019-08-27 11:06:54 +02:00
timokoesters
72564cf8b4
Make action durations constants 2019-08-27 11:06:54 +02:00
timokoesters
869535e5a2
Rename tool strength/damage to power 2019-08-26 20:05:13 +02:00
timokoesters
a7747fe965
Simplify code 2019-08-26 13:12:45 +02:00
timokoesters
b89bfcbfc1
Remove unnecessary map 2019-08-26 13:12:44 +02:00
timokoesters
08fa6a3414
Prevent problems with no vel while rolling in the future 2019-08-26 13:12:44 +02:00
timokoesters
c278ac9927
Add todo making glide an ability/item 2019-08-26 13:12:44 +02:00
timokoesters
98f8196a16
Put combat related values into constants 2019-08-26 13:12:43 +02:00
timokoesters
05f2f168fd
Make falldamage local, don't use force update for local, cleanup 2019-08-26 13:12:43 +02:00
timokoesters
eb34e5bb27
fmt 2019-08-26 13:12:43 +02:00
timokoesters
b96557d012
Fix roll from cliff bug 2019-08-26 13:12:42 +02:00
timokoesters
a715a84ea7
Implement unstoppable rolling 2019-08-26 13:12:42 +02:00
timokoesters
01410569a4
Use look_dir when blocking 2019-08-26 13:12:41 +02:00
timokoesters
3258fa3a3c
Add basis for projectiles
But we have no controller action to spawn them yet
2019-08-26 13:12:41 +02:00
Songtronix
814e858720
Split Events in ServerEvent and LocalEvent 2019-08-26 13:12:41 +02:00
timokoesters
75368dbac1
Remove dbg 2019-08-26 13:12:40 +02:00
timokoesters
62745c4cad
Only use look_dir for ori when wielded or attacking 2019-08-26 13:12:40 +02:00
timokoesters
295969517c
Improve combat range 2019-08-26 13:12:40 +02:00
timokoesters
b826edf6e8
Make aiming 2D 2019-08-26 13:12:39 +02:00
timokoesters
0912de2a26
Make aiming more precise 2019-08-26 13:12:38 +02:00
timokoesters
e90f95bc75
Look in the direction of the camera 2019-08-26 13:12:38 +02:00
jshipsey
39bd888a7c
idle block animation 2019-08-26 13:12:38 +02:00
timokoesters
e7c61c30cc
Block when pressing right click while looking at the attacker 2019-08-26 13:12:37 +02:00
timokoesters
e42ffb362a
Remove unnecessary components 2019-08-26 13:12:37 +02:00
timokoesters
b748c1a6e5
Make gliding the error animation 2019-08-26 13:12:37 +02:00
timokoesters
0bb70d8182
Fix water 2019-08-26 13:12:36 +02:00
timokoesters
5ab03abbdd
Remove animation warnings 2019-08-26 13:12:36 +02:00
timokoesters
799c73d43a
Fix characterstate in movement.rs, not phys.rs 2019-08-26 13:12:35 +02:00
timokoesters
808467c616
Reset controller after each tick 2019-08-26 13:12:35 +02:00
timokoesters
4d6a32e00f
Allow non player entites to be removed again 2019-08-26 13:12:35 +02:00
timokoesters
90c81b4759
Reset controller after each tick 2019-08-26 13:12:34 +02:00
timokoesters
5d5ccd7b99
Move from state components to single CharaterState struct
This makes split animations easy and improves overall code quality
2019-08-26 13:12:34 +02:00
Joshua Barretto
d9854ad682 Merge branch 'zesterer/instancing' into 'master'
Instancing (block sprites)

See merge request veloren/veloren!450
2019-08-22 11:10:57 +00:00
Vechro
c6b2303890 Fix wielding jump issue 2019-08-21 20:34:21 +03:00
Monty Marz
fade04d44e Pfauenauge/plants grass 2019-08-21 17:22:05 +00:00
Vechro
c40e15f070 Fix velocity when stuck 2019-08-21 20:17:19 +03:00
Joshua Barretto
5f09ab3a4f Added multiple sprite block kind support 2019-08-20 00:31:11 +01:00
Joshua Barretto
b31cca4bb3 Added wheat and sprite rendering 2019-08-19 21:09:35 +01:00
Acrimon
a41cf1a83d Disabled unsafe using lint level. 2019-08-19 14:39:23 +02:00
Acrimon
d0f10115f4 Eliminated unsafe. 2019-08-19 14:33:31 +02:00
Monty Marz
29f6186139 hotbar changes
completely switched to. vox files

easier to see design

gradient and numbers on the health/mana bar
2019-08-18 18:07:21 +00:00
Joshua Barretto
49426565dc Renamed normal StructureBlock variant 2019-08-18 15:33:16 +01:00
Joshua Barretto
e535537106 Added default block kind to structure loading 2019-08-18 10:33:18 +01:00
Joshua Barretto
825d8bb632 Fixed water in caves, made water reflection vary with lighting 2019-08-18 10:33:18 +01:00
Vechro
b5b3b980fe Add green sludge special index 2019-08-18 10:33:18 +01:00
Vechro
944067fd43 Add water special index 2019-08-18 10:33:18 +01:00
Joshua Barretto
42237a84e4 Added translucent meshing pass, water reflections 2019-08-18 10:33:18 +01:00
jshipsey
f14a182734 removed wield slowdown by popular request 2019-08-18 03:26:52 -04:00
Piotr Korgól
586bf5faff Add adminify command to temporarily give admin perms 2019-08-17 23:35:01 +02:00
Imbris
5054f1e87d remove palette dependency 2019-08-16 00:01:20 -04:00
Imbris
be0e0e52a8 Improve colors 2019-08-15 23:59:09 -04:00
Imbris
c09eb77149 Add srgb converion in shaders 2019-08-15 23:56:14 -04:00
Imbris
43ec7b200b Handle errors in file watching 2019-08-15 23:56:13 -04:00
Imbris
cb25c45dec Move shaders, start asset reloading system 2019-08-15 23:56:12 -04:00
Acrimon
42e065d425 [Common] Switch mutexes and channels. 2019-08-16 00:19:54 +02:00
Piotr Korgól
0221de484e Give singleplayer its own server settings 2019-08-14 17:51:59 +02:00
Piotr Korgól
8ec0a06bbe Fix spawn command, properly search for admins 2019-08-14 17:30:36 +02:00
Piotr Korgól
6882170d6f Add Admins field to the settings file 2019-08-14 17:30:36 +02:00
Piotr Korgól
98c0692260 Add AdminPerms component, make some commands require it 2019-08-14 17:30:36 +02:00
Acrimon
b4a46f3e6e Finished switch to hashbrown. 2019-08-11 22:38:28 +02:00
Joshua Barretto
d5aee13c91 Merge branch 'zesterer/small-fixes' into 'master'
Added entity event system, fixed fall damage

See merge request veloren/veloren!418
2019-08-09 23:56:49 +00:00
telastrus
de2082469d auth done, no popup yet 2019-08-08 12:01:15 -04:00
telastrus
6d94d43021 still compiles 2019-08-07 23:56:02 -04:00
Joshua Barretto
5b62531da3 Added /explosion command 2019-08-07 18:17:04 +01:00
Joshua Barretto
192f5d355f Switched to EventBus system 2019-08-07 16:39:16 +01:00
Joshua Barretto
98a913195b Added entity event system, fixed fall damage 2019-08-07 10:50:49 +01:00
telastrus
e4f2c73b85 undo unnecessary pub mod
fixed comments

fixed other comment
2019-08-06 22:46:25 -04:00
telastrus
0eafd42c0f fall damage + velocity debug 2019-08-06 17:51:13 -04:00
Joshua Barretto
73a44d0fb1 Collision fixes, better camera in build mode 2019-08-06 16:00:14 +01:00
timokoesters
1227596406 Implement specifier syntax and cleanup 2019-08-06 08:31:48 +02:00
Joshua Barretto
a324f01a1d Improved orientation slerping 2019-08-04 15:51:17 +01:00
Joshua Barretto
c7d2fbc20e Made humanoids glide when chasing 2019-08-04 09:21:29 +01:00
Joshua Barretto
ee0eb8d53c Better enemy AI targetting and combat 2019-08-04 08:58:41 +01:00
Joshua Barretto
f08d8bb00a Better movement lerping 2019-08-03 22:15:23 +01:00
Joshua Barretto
8b9a92b30e Added dungeons 2019-08-03 22:15:23 +01:00
Monty Marz
d180c47edc Pfau/combat 2019-08-03 21:11:57 +00:00
Joshua Barretto
c9f1a793db Merge branch 'timo-kill-xp' into 'master'
Give xp depending on max hp and lvl of entity killed

See merge request veloren/veloren!400
2019-08-03 20:57:06 +00:00
timokoesters
7365dbe9e6 Give xp depending on max hp and lvl of entity killed 2019-08-03 21:30:01 +02:00
timokoesters
6b69b24185 Make ori more precise 2019-08-03 20:41:55 +02:00
Joshua Barretto
5fc6ab2126 Better enemy attack rate 2019-08-03 19:40:20 +01:00
timokoesters
91b8b69186 Use slerp for ori 2019-08-03 20:33:31 +02:00
Joshua Barretto
c33892e8af Made entity collisions z-dependent 2019-08-03 19:09:01 +01:00
Joshua Barretto
71bf09d3b7 Better orientation in the air 2019-08-03 18:30:48 +01:00
Joshua Barretto
e52250a193 Made orientation change with move_dir, added a small amount of knockback 2019-08-03 18:24:07 +01:00
Joshua Barretto
5e3e87f9c5 Made enemies sometimes roll 2019-08-03 13:31:40 +01:00
Joshua Barretto
51fa4f3cfc Merge branch 'animation-tweaks' into 'master'
animation and movement tweaks

See merge request veloren/veloren!389
2019-08-03 12:09:38 +00:00
Joshua Barretto
cab898a91f Made enemies actually attack 2019-08-03 13:01:54 +01:00
timokoesters
3a43150bc5 Make hostile npcs back away when too close 2019-08-03 12:53:39 +01:00
Pfauenauge90
c919b68346 changed angle of attack, changed z offset on hit 2019-08-03 12:46:07 +01:00
timokoesters
e39324a9d2 Remove knockback 2019-08-03 12:46:07 +01:00
Joshua Barretto
3063546a58 Added entity pushback 2019-08-03 12:26:05 +01:00
Joshua Barretto
e6fe07dd3d Shortened enemy sight distance 2019-08-02 21:35:03 +01:00
Joshua Barretto
8aa7af781e Fixed enemy combat 2019-08-02 20:52:46 +01:00
Joshua Barretto
23cfe50455 Better health accessors methods 2019-08-02 20:49:48 +01:00
Joshua Barretto
5e4f383952 Better enemy AI 2019-08-02 20:41:38 +01:00
Joshua Barretto
677c5781ba Added bosses, improved secret object spawn rates 2019-08-02 20:10:52 +01:00
timokoesters
55079c3d1e Fix hostile npcs new target selection 2019-08-02 20:44:56 +02:00
jshipsey
13310ab9ca improved animations and movement 2019-08-01 23:57:26 -04:00
Dominik Broński
f644b6ab89 Revert "Merge branch 'imbris/upgrade_specs' into 'master'"
This reverts merge request !375
2019-08-01 23:32:33 +00:00
Imbris
5f56657f6c Upgrade specs to 0.15 2019-08-01 18:09:13 -04:00
Piotr Korgól
ec550620ad Add a health bonus for level ups, fix pets 2019-08-01 18:56:08 +02:00
Songtronix
52ffa02467 fmt 2019-08-01 17:07:42 +02:00
Joshua Barretto
9bc006dee1 Add a few extra items to the inventory by default 2019-08-01 09:13:34 +01:00
Joshua Barretto
39fc1d6b71 Added entity pickup, changed item model 2019-08-01 09:12:00 +01:00
Joshua Barretto
331b6c8b3a Altered Item structure 2019-08-01 09:12:00 +01:00
Joshua Barretto
995090d2d4 Added item drops 2019-08-01 09:12:00 +01:00
Joshua Barretto
b3cae2f3dd Added better item manipulation 2019-08-01 09:09:26 +01:00
Joshua Barretto
fc49293874 Clickthrough on items 2019-08-01 09:09:26 +01:00
Joshua Barretto
31f8794c39 Started work on inventory manipulation 2019-08-01 09:09:26 +01:00
Joshua Barretto
123a78552a Fixed block-hopping on edges, added correct inventory slots 2019-08-01 09:09:26 +01:00
Joshua Barretto
5bb7998d5a Added inventory sync messages and InventoryUpdate component 2019-08-01 09:09:26 +01:00
Joshua Barretto
a7fc872f1c Added Default impl for Inventory 2019-08-01 09:08:59 +01:00
Joshua Barretto
fde6ec35cd Fixed Inventory::remove method 2019-08-01 09:08:59 +01:00
Acrimon
dadcf27098 Fixed missing import. 2019-07-31 11:41:29 +02:00
Acrimon
9fbf710cc9 Swapped some rarely use storages. 2019-07-31 11:41:29 +02:00
Acrimon
8be62be980 Formatted code. 2019-07-31 11:40:58 +02:00
Acrimon
03253d3cc0 Switch everything to IDVStorage (No tuning yet.) 2019-07-31 11:40:58 +02:00
timokoesters
b695a63e98 Send different physics components individually 2019-07-30 13:35:16 +02:00
timokoesters
c6034bf450 Use Last<C> to check if a physics component changed 2019-07-30 08:32:03 +02:00
Monty Marz
5cfc60da50 Small chat fixes 2019-07-29 14:40:46 +00:00
Monty Marz
33565b9480 added comment about object rotation, changed lantern spawning command, changed /tell output when you /tell yourself 2019-07-28 09:21:17 +00:00
Piotr Korgól
5c84508015 Get EXP for killing NPCs and Players, properly show EXP bar 2019-07-26 20:51:40 +02:00
Piotr Korgól
b1aace0110 Add Level and Exp component 2019-07-26 16:44:59 +02:00
tommy
95b5f4acfb Added private, broadcast, and game_state messages 2019-07-26 07:29:37 -04:00
tommy
ea0bbe7e47 Rebase fixes 2019-07-26 07:29:37 -04:00
tommy
cc6aa6f33d Adds colour to tells in chat box #194 2019-07-26 07:29:37 -04:00
Nero
53086cb3b2 Nero/light offsets 2019-07-25 20:51:20 +00:00
Pfauenauge90
7a141ad111 More objects 2019-07-24 02:50:19 +02:00
Pfauenauge90
9fd2849c6c chat warning for unknown objects 2019-07-24 02:50:19 +02:00
Pfauenauge90
85281e7e54 spawn objects by name 2019-07-24 02:50:19 +02:00
Vechro
f3c5ece983 Add tent 2019-07-24 02:50:19 +02:00
Vechro
81f66457de Add cauldron 2019-07-24 02:50:19 +02:00
Pfauenauge90
870229cd1c chests, human female head changes 2019-07-24 02:50:19 +02:00
Pfauenauge90
3559926a02 MOAR Pumpkins! 2019-07-24 02:50:19 +02:00
Pfauenauge90
495311de2d added lanterns and potions 2019-07-24 02:50:18 +02:00
Vechro
e37ca1d1f3 formatting 2019-07-24 02:50:18 +02:00
Vechro
6478c4ec69 Add campfire 2019-07-24 02:50:18 +02:00
Monty Marz
ae4c569fc9 Static entities: Per model offsets, more models 2019-07-21 23:54:31 +00:00
Joshua Barretto
5cdfb26e0d Added LightEmitter component 2019-07-21 19:22:49 +01:00
Joshua Barretto
dd84c6698b Fixed infinite NPC jumping 2019-07-21 19:22:49 +01:00
Joshua Barretto
1dc654dde7 Added object entities 2019-07-21 19:22:49 +01:00