Commit Graph

9833 Commits

Author SHA1 Message Date
James Melkonian
485b057d60 Prettier town houses 2021-09-17 15:49:14 -07:00
James Melkonian
42fdf0818d Gable primitive and dungeon lava rooms 2021-09-17 15:45:26 -07:00
Imbris
bc4455afe4 Merge branch 'anomaluridae/cleanup-interactable' into 'master'
Seperation of targets vs interactables. Cleaner cursor interactions.

See merge request veloren/veloren!2754
2021-09-17 19:25:08 +00:00
Joshua Barretto
80f341f2b1 Merge branch 'juliancoffee/remove_level' into 'master'
Rename level in EntityInfo to health_scaling and small cleaning

See merge request veloren/veloren!2850
2021-09-17 17:38:10 +00:00
anomaluridae
d0bd1ddb24 remove unneeded mut, provide default_select_pos to secondry key event handler, and use the is_filled() over the is_opaque() to be reader friendly 2021-09-17 10:34:20 -07:00
anomaluridae
82f3c3c3e8 is_solid() detects both solid rock and sprites (e.g. mineable ore). when in build mode, would like to be able to still mine if user cursor is over a mineable ore. so need to properly cast the build ray to use opaque (not fillable) blocks to get the proper position, vs the mineable block which may be nearer 2021-09-17 10:34:20 -07:00
anomaluridae
aa86c86cb6 choose nearest target, from a specific subset of targets, for scene highlighting vs interactable vs game primary/secondary key input 2021-09-17 10:34:20 -07:00
anomaluridae
6362df4ffc keep MAX_TARGET_RANGE within voxygen 2021-09-17 10:34:20 -07:00
anomaluridae
b4d12b7995 intentional use of terrain targeting and select_pos as passed to the event handler. select_pos is None when not needed. 2021-09-17 10:34:20 -07:00
anomaluridae
42d5836cfa properly use the target vs pickup range, in choosing the interactable. when finding the target_entity, use the proper limited dist range (cast_dist) with the proper upper bounds. 2021-09-17 10:34:20 -07:00
anomaluridae
5c66f73bb4 make the ContollerInputs.select_pos be explicitly the breakable blacks for mining 2021-09-17 10:34:20 -07:00
anomaluridae
c5d66192fc add comment for future direction of Interactables. 2021-09-17 10:34:20 -07:00
anomaluridae
c20dbe17dd build positions for place versus remove block are cleaner (less likely to fail) when apply the +0.01 modifier versus -0.01 modifier selectively. this is equivalent to current master, and is simply more explicit now 2021-09-17 10:34:20 -07:00
anomaluridae
f60bd80cc2 changes per MR feedback. simplier Option handling with zip, filter, and fewr unwraps. use kind keyword (not typed). if lets when possible. additional syntax cleanup 2021-09-17 10:34:20 -07:00
anomaluridae
8b83b48b9b make Target generic, over the specific typed targets 2021-09-17 10:34:20 -07:00
anomaluridae
ba4af5ee8e undo macro use for DRY on client event handler, and handle edge detection in mining so that we don't get Empty interactables. 2021-09-17 10:34:20 -07:00
anomaluridae
309447dced MR review updates. Added back the 0.01 modifiers, update naming and comments, keep interactable construction in the interactables mod, remove unneeded curry, syntax updates. only cast for mining and build if enabled. 2021-09-17 10:34:20 -07:00
anomaluridae
84f19b408f build is working. to add and remove blocks. 2021-09-17 10:34:20 -07:00
anomaluridae
48cc5d3b08 make Target into a typed struct. delineate the clear difference in Target versus Interactable. comments and naming cleanup, for more explicitness. 2021-09-17 10:34:20 -07:00
anomaluridae
51f38df169 clippy is a thing 2021-09-17 10:34:20 -07:00
anomaluridae
f20b5f0b49 make scene interaction be targeted exactly on mining blocks (removing abnormal Empty labels), and don't reset position to None in the middle of mining. 2021-09-17 10:34:20 -07:00
anomaluridae
ff91da8b52 make the concepts of targets (under cursor), separate from interactable. interactable is what is (1) indicated visually in gui as able to interact, or (2) is an entity, or (3) is a block capable of Interaction. whereas a target is what occurs under the cursor, regardless of other state and input (such as different InputKind). targets are determined first, then other factors are cosidered to determine interactable. 2021-09-17 10:34:20 -07:00
anomaluridae
582f578e61 breakout interactable into seperate file 2021-09-17 10:32:06 -07:00
juliancoffee
91dd03b745 Clean entity assets for a small bit
- Move loot_tables/creature/witch to loot_tables/spots/witch
- Move skillset/spots/general_max and skillset/spots/sceptre_max to
  skillset/preset/max/{general,sceptre}
- Remove tabs from dwarf_grave_robber entity config file
2021-09-17 20:12:42 +03:00
juliancoffee
f810af4eec Rename EntityInfo level field to health_scaling 2021-09-17 20:12:42 +03:00
Joshua Barretto
9cc70e6d22 Merge branch 'juliancoffee/capsule_prism' into 'master'
New CapsulePrism collider

See merge request veloren/veloren!2843
2021-09-17 11:39:57 +00:00
juliancoffee
19f0cf4ee5 Set z_min to 0 for terrain collision checks
This allows us have different z_min for e2e checks
2021-09-17 13:28:34 +03:00
juliancoffee
e5d69d153b Adress review
Make sausage ascii-art have `a` line inside of stadium
2021-09-17 13:28:34 +03:00
juliancoffee
4e3fb87526 Adress review
- Rename Collider::get_radius to bounding_radius
- Check origin difference in CapsulePrism with EPSILON * 10.0 instead of
  magic 0.00001
- Add comments for closest_points, hardnened expression against NaNs
- Add comments to try_e2e_collision function, renamed to
  resolve_e2e_collision, make it return whether collision was triggered.
- Remove Collider::Box (it is Cylinder, which is subset of CapsulePrism
  with p0=p1=Vec2::zero())
2021-09-17 13:28:34 +03:00
juliancoffee
3dd6aa9dea Implement capsule2capsule collisions 2021-09-17 13:28:34 +03:00
juliancoffee
fdb4b7111a Fix bug with zero-pushback for bigger colliders 2021-09-17 13:28:34 +03:00
juliancoffee
c069a3523d Fix beam offsets
- Introduce notion of min and max radius for Body instead of old
  `radius()` function (which is renamed to `max_radius()`).
2021-09-17 13:28:34 +03:00
juliancoffee
7d97fe7ec5 Fix colliding bugs
- Make cylinder-like capsules prisms work without NaN in origin offsets.
Just return p0 as both origins instead of getting NaN by further
normalizing required because of how we rotate offsets.
- Fix pushback direction.
Make sure that pushback is calculated as our_pos - their_pos (and not
other way around).
- Fix colliding boundary detection.
Calculate center as Vec3::new(0, 0, height) and
not as `Vec3::new(0, height, 0)`.
2021-09-17 13:28:34 +03:00
juliancoffee
eeb3bec8ad Refactor implementation of e2e collision
+ Add some hopefully helpful comments
+ Extract colliding tries to separate function
+ Move to Capsule + Cylinder collider combination instead of Capsule +
  Capsule.
2021-09-17 13:28:34 +03:00
juliancoffee
44962958d8 Adress feedback
- Rewrite 2 * PI to TAU
- Some comment formatting
2021-09-17 13:28:34 +03:00
juliancoffee
d86c9f2678 Remove body::Shape enum, make npc use CapsulePrism 2021-09-17 13:28:34 +03:00
juliancoffee
6c3b61dc25 Implement CapsulePrism collisions 2021-09-17 13:28:34 +03:00
juliancoffee
7712976b86 Refactor box_voxel_collision function 2021-09-17 13:28:34 +03:00
juliancoffee
3b308a3f6f Add CapsulePrism collider variant
+ Add placeholder physics collision implementation as copy of cylinder
  Box collider.
+ Display it with debug hitboxes.
2021-09-17 13:28:34 +03:00
Samuel Keiffer
ce29e99403 Merge branch 'ubruntu/another-trade-fix' into 'master'
Another trade fix

See merge request veloren/veloren!2844
2021-09-16 22:06:30 +00:00
ubruntu
56f26dc3a8 Another trade fix 2021-09-16 22:06:30 +00:00
Imbris
a3ac3b51ce Merge branch 'capucho/iced-checkbox' into 'master'
Add checkbox rendering logic for iced

See merge request veloren/veloren!2827
2021-09-15 17:30:57 +00:00
João Capucho
80190c408d
Improve naming of checkbox images related methods 2021-09-15 15:41:31 +01:00
João Capucho
f27a7853a3
Add option for a hovered and checked background 2021-09-15 15:15:03 +01:00
Joshua Barretto
eb70e68be8 Merge branch 'sam/exp-fix' into 'master'
Fixed exp fix mistake and fixed lava, campfire, and bomb damage.

See merge request veloren/veloren!2845
2021-09-15 13:04:43 +00:00
Sam
99981338bb Fixed exp fix mistake and fixed lava, campfire, and bomb damage. 2021-09-15 08:32:44 -04:00
Monty Marz
0dfddb21b1 Merge branch 'bafon/always-show-bars-setting' into 'master'
Add setting to always show energy bars

See merge request veloren/veloren!2836
2021-09-15 12:04:44 +00:00
Bafon
b910c1dd9c Add setting to always show energy bars 2021-09-15 12:04:44 +00:00
Marcel
d13391f16e Merge branch 'bafon/map-mouse-events' into 'master'
Fix HUD map mouse events

See merge request veloren/veloren!2837
2021-09-14 22:19:31 +00:00
Samuel Keiffer
d2d6ff1f62 Merge branch 'sam/health-ui-fix' into 'master'
Fixed health ui in few places and xp scaling from health.

See merge request veloren/veloren!2842
2021-09-14 21:42:53 +00:00