Commit Graph

380 Commits

Author SHA1 Message Date
AdamWhitehurst
c2ceabea0e finish movment states handle() fn logic 2019-12-22 08:08:48 -08:00
AdamWhitehurst
1ab09220b0 Rudimentary Stand State handle() move 2019-12-21 07:57:15 -08:00
Imbris
6524ea31d1 Fix flight turning 2019-12-20 22:51:35 -05:00
Imbris
934c5d6846 Various tweaks: moved radius determination to function on , comments, simplified server Destroy event code, debug assert modified components aren't removed in change tracking, etc 2019-12-20 22:51:35 -05:00
Imbris
bfaa18e010 Fix NaN in agent sys, stop pushback from turning player around, account for Scale in melee attack hit detection 2019-12-20 22:48:14 -05:00
Imbris
8f7323f41b Stop syncing health change timer updates 2019-12-20 22:48:14 -05:00
Imbris
c3ac251fa8 Stop syncing Projectile component to the client 2019-12-20 22:48:14 -05:00
Imbris
71cce03f29 Move sync code into common submodule 2019-12-20 22:37:12 -05:00
Imbris
609e0f23bf Stop global syncing of entity creation 2019-12-20 22:37:12 -05:00
Adam Whitehurst
e40eb2ba20 Finish Stand handle() (untested) 2019-12-20 08:50:54 -08:00
Adam Whitehurst
e074c7ce1d begin impl state handle traits 2019-12-20 05:30:37 -08:00
Adam Whitehurst
4ead941c82 Fix fall->climb, tweak jump and glide 2019-12-15 17:44:19 +00:00
Monty Marz
1e1990758b Fix bow-shot frequency 2019-12-12 20:13:45 +00:00
Forest Anderson
d8fc7cb667 Add advanced path finding to new 'Traveler' enemy using A* algorithm 2019-12-11 05:28:45 +00:00
Adam Whitehurst
20575e0aab Update controller 2019-12-09 14:45:10 +00:00
Adam Whitehurst
92d99af53c feat: weapon-type dependent wield and attack durations
also some controller.rs cleanup
2019-12-03 06:30:08 +00:00
Adam Whitehurst
4e574cb29a Inputs enhancements 2019-11-29 15:20:35 +00:00
S Handley
ea2e0d17de SFX system
This is an event based approach to SFX sounds. There is a specific
character sound event mapper which determines sfx to play based on
character or NPC state, as well as emitting sfx events for
non-character-triggers such as levelling up.
2019-11-23 08:26:39 +00:00
telastrus
10d6f3e8b3 jump while underwater 2019-11-21 23:56:07 -05:00
Marcel Märtens
242a0d35bd fixing character movement to no longer fail normalization then get a zero vec and then normalize again
may this can be further simplyfied
2019-10-26 22:14:11 +02:00
timokoesters
0a1e12c9ad
improvement: make debug items of type ItemKind::Tool
This way all items that can be held in a hand are tools
2019-10-24 23:55:24 +02:00
timokoesters
20248a4818
feat: store items as RON files
When a new item is created, a ron file will be used as a template
2019-10-24 23:47:26 +02:00
Imbris
a200dafd45 Fix possess bug, remove commented code, drain controller events 2019-10-24 00:00:00 -04:00
Imbris
2703c8afe1 Move serverside client to a component and communications into server ecs systems 2019-10-23 23:50:06 -04:00
Monty Marz
3e0ac48bd8 Multiple Assets and UI fixes and additions 2019-10-23 19:40:45 +00:00
Monty Marz
fdfab6a807 refactor: create_projectile doesn't take a light
It returns a builder so the caller can just do it
2019-10-17 20:59:36 +00:00
Joshua Barretto
013afafba8 Made rolling less violent when changing directions 2019-10-17 12:21:22 +01:00
Joshua Barretto
707b79f2c8 Smoother movement, Space for climbing 2019-10-14 11:22:48 +01:00
Imbris
028d010624 Make bows give experience via giving projectiles an owner field 2019-10-11 19:33:01 -04:00
Imbris
2f9d8ee2e6 Add new debug item 2019-10-11 19:32:46 -04:00
timokoesters
45f756343d
fix: blocking now ends in wielded
This makes blocking more viable because while blocking you can wait for
the enemy to attack and then quickly exit the block and attack yourself.
2019-10-08 21:19:48 +02:00
timokoesters
051a964798
fix: server side fall damage
This avoids flickering health
2019-10-08 18:55:30 +02:00
timokoesters
4e87f125a2
fix: fix level and health distribution 2019-10-08 18:12:08 +02:00
Joshua Barretto
2171e77fe5 Fixed block snapping ground clip 2019-10-08 12:21:05 +01:00
timokoesters
182b98081b
feat(bow): arrows despawn after some time 2019-10-06 19:32:46 +02:00
timokoesters
2fc4a8d9aa fix(exp): crash when gaining many levels at once 2019-10-05 17:37:10 +02:00
Piotr Korgól
09429b45d1 Make /adminify admin-only and /waypoint free 2019-10-05 17:37:10 +02:00
timokoesters
460a494e77
fix(bow): Don't remove vel and use sticky component instead 2019-10-04 21:30:13 +02:00
timokoesters
d876215012
feat(combat): melee combat damage depends on power of the weapon
Normal NPCs have a weapon of power 5 so they do 5 damage if the attack
is not blocked. Bosses and players have power 10.
2019-10-04 21:02:44 +02:00
timokoesters
ba3db852f7
feat(bow): make arrows stick to walls 2019-10-04 21:02:44 +02:00
timokoesters
fc97c27b65
feat(bow): sticky arrows 2019-10-04 21:02:43 +02:00
timokoesters
fe17b4952c
Remove warnings 2019-10-04 21:02:42 +02:00
timokoesters
ab634f1d21
Reuse combat code 2019-10-04 21:02:41 +02:00
timokoesters
2ba143a514
Make arrows deal damage 2019-10-04 21:02:41 +02:00
timokoesters
e3c02f8ac1
Allow projectiles to react to triggers 2019-10-04 21:02:40 +02:00
timokoesters
d46f1e1859
Initial bow & arrow implementation 2019-10-04 21:02:39 +02:00
Joshua Barretto
e22fe81a2f Added velorite 2019-09-26 00:15:07 +01:00
Joshua Barretto
3f2e22f039 Exponential interpolation for linear damping
With an additional approximation to allow for the same size jumps given different framerates.
2019-09-09 19:11:40 +00:00
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
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
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
jshipsey
b81cd6a8f9 combine character.action movement blocks 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
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
ba02956f05
Make boost RMB go upward again 2019-08-31 00:08:44 +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
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
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
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
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
Vechro
c6b2303890 Fix wielding jump issue 2019-08-21 20:34:21 +03:00
Vechro
c40e15f070 Fix velocity when stuck 2019-08-21 20:17:19 +03:00
Joshua Barretto
825d8bb632 Fixed water in caves, made water reflection vary with lighting 2019-08-18 10:33:18 +01:00
jshipsey
f14a182734 removed wield slowdown by popular request 2019-08-18 03:26:52 -04: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
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
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
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
Piotr Korgól
ec550620ad Add a health bonus for level ups, fix pets 2019-08-01 18:56:08 +02:00
Joshua Barretto
39fc1d6b71 Added entity pickup, changed item model 2019-08-01 09:12:00 +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
timokoesters
b695a63e98 Send different physics components individually 2019-07-30 13:35:16 +02: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
Joshua Barretto
d4821b8de8 Better fog 2019-07-21 00:32:36 +01:00
Joshua Barretto
bbd7f579d2 Fix for clipping 2019-07-09 15:07:53 +01:00
Joshua Barretto
9f6f9cb25f Fixed block snapping at lower framerates 2019-07-09 14:04:30 +01:00