Added new props blender file with some new versions of the props which use imphenzia material / texture
Updated Pen_Gate to have updated orientation for use with spline tools
Added new BP_AnimalPen actor which allows the user to set a fence mesh and then parametrically drag out the gizmo to define the size of the pen. Can optionally set which actors should be contained within this pen. Automatically set box trigger to match the size of the pen and send out event dispatchers when the gate(s) are closed if all actors are in the pen, or when an actor leaves the pen. Can have one gate per side of the pen (at any location on the side. Makes the pen size a multiple of the base mesh size. Hardcoded to use Pen_Gate as gate actor for now
Updated diorama and herding maps to use the new animal pen actor instead of hand-built pens with individual meshes, trigger box, and code in the level blueprint. Updated the level blueprint to use the new events from the animal pen actor
Updated fence mesh so that it is oriented along the x-axis for use with the spline tool
added some re-exports (and renames) of various models in gltf folder
Updated pen trigger box to have no collision
Updated pen trigger box to make sure extents when set in constructor are always positive
Updated pen trigger box to not be visible in game
Removed debug logging from pen trigger box and npc
Updated diorama and gameplay maps animal pens
Motivation and Context
Currently, fences are placed manually (which is a pain for positioning and repositioning), with the gates placed manually, and then if you want functionality to have the fences enclose a pen (area containing actors) then you have to do that manually by adding a trigger box and wiring up triggers to the actors yourself (optionally tracking state of the gates yourself). This PR adds a new actor / tool which will automatically generate fenced in areas with optional gates on each side in configurable locations which can be told to monitor if certain actors are in the fenced area or not. It emits events when they stop being in there (if they are) and when they are there (when the gates are closed).
How has this been tested?
Playing the gameplay test, herding, and diorama levels and making sure they work (esp. the diorama level since it wired up the sheep pen to various game state events - that wiring is now much simpler :) )
Updated level blueprint for handling when the sheep are herded (no longer needing to track the specific actors and monitor the trigger box and gate state since the sheep pen actor handles that all now).
new props blender file:
Types of changes
[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[x] New Art / Asset
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation Update
[x] Art / Asset Update
[x] Software change
Checklist:
[ ] My change requires a change to the documentation.
[ ] I have added / updated the documentation related to this change via either README or WIKI
Software
[ ] I have added tests to cover my changes.
[ ] I have updated the .github/workflows/build.yml file to add my new test to the automated cloud build github action.
[x] All new and existing tests passed.
[x] My code follows the code style of this project.
Description
Motivation and Context
Currently, fences are placed manually (which is a pain for positioning and repositioning), with the gates placed manually, and then if you want functionality to have the fences enclose a pen (area containing actors) then you have to do that manually by adding a trigger box and wiring up triggers to the actors yourself (optionally tracking state of the gates yourself). This PR adds a new actor / tool which will automatically generate fenced in areas with optional gates on each side in configurable locations which can be told to monitor if certain actors are in the fenced area or not. It emits events when they stop being in there (if they are) and when they are there (when the gates are closed).
How has this been tested?
Playing the gameplay test, herding, and diorama levels and making sure they work (esp. the diorama level since it wired up the sheep pen to various game state events - that wiring is now much simpler :) )
Screenshots (if appropriate):
https://github.com/Well-known-Game-Studio/wot_a_good_game/assets/213467/6ac31573-07a5-4f79-87b4-49044cd5196d
Updated level blueprint for handling when the sheep are herded (no longer needing to track the specific actors and monitor the trigger box and gate state since the sheep pen actor handles that all now).![CleanShot 2023-09-05 at 17 45 10](https://github.com/Well-known-Game-Studio/wot_a_good_game/assets/213467/91e74395-f0b8-4f26-a07b-d481658f852b)
new props blender file:![CleanShot 2023-09-05 at 17 49 42](https://github.com/Well-known-Game-Studio/wot_a_good_game/assets/213467/ba6b6283-4afb-436b-82f6-52982974dc28)
Types of changes
Checklist:
Software
.github/workflows/build.yml
file to add my new test to the automated cloud build github action.