-
-
Notifications
You must be signed in to change notification settings - Fork 93
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Techno attachment logic #352
Draft
Metadorius
wants to merge
107
commits into
develop
Choose a base branch
from
feature/techno-attachment
base: develop
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+2,575
−88
Draft
Changes from 92 commits
Commits
Show all changes
107 commits
Select commit
Hold shift + click to select a range
cf33e39
WIP Techno Attachment logic
Metadorius 774bfa5
Restrict commandability of attached technos
Metadorius b64eb0b
Implement InheritsCommands pt. 1
Metadorius 01dd1cd
Fix command inheritance crashing in waypoint mode
Metadorius 58c7c0a
Filter movement commands
Metadorius facba8c
Proper implementation of command inheritance
Metadorius 9d6ca0d
Merge branch 'develop' into feature/techno-attachment
Metadorius 2754e67
Merge branch 'develop' into feature/techno-attachment
Metadorius d736a5e
Merge branch 'develop' into feature/techno-attachment
Metadorius ac910db
Init docs
Metadorius 43b679f
Stop command handling
Metadorius 2ebec58
Merge branch 'develop'
Metadorius 645820a
Fix YRpp
Metadorius c703dff
Another pass at techno attachment
Metadorius 580d9c8
Fix scatter hook incompatibility with Ares; handle IsLocomotor
Metadorius 1796b3f
Merge branch 'develop' into feature/techno-attachment
Metadorius cec6eab
Fixed stuff
Metadorius 39158ba
Add sanity check
Metadorius db9f830
Fix re(tard)factoring
Metadorius 81f52da
Merge branch 'develop' into feature/techno-attachment
Metadorius 7ddae7e
Add failsafe check
Metadorius 5b44a9f
Add ShipLoco support
Metadorius 7e74eb4
Attempt to fix lag
Metadorius b85f751
Update YRpp
Metadorius f240be5
BROKEN attempt at rendering from parent's origin
Metadorius fa93012
Fix partially
Metadorius 799ed8c
Use multiplication, adjust post draw rect calculation
Metadorius 289618e
forgot MakeIdentity
Metadorius 13b6516
it WORKS!
Metadorius 3f7501b
Move the lasertrail's type-convertion aftermath into TechnoClass_AI
chaserli 6d9a0e4
Add YSort handling, fix warnings
Starkku 1c8cc13
Fix shadow drawing, support AircraftClass drawing
Metadorius b95048e
Merge branch 'develop' into feature/techno-attachment
Metadorius 5502999
Fit to develop changes
Metadorius 61e29be
Fix debug attach task not working
Metadorius 786f279
Merge branch 'develop' into feature/techno-attachment
Metadorius 8ae84db
Revert random ass edit of LaserTrail stuff
Metadorius 5616076
Shut up EditorConfig
Metadorius 60c8321
Handle TunnelLoco
Metadorius c83d293
Calculate physical location the same way as visual
Metadorius 81495a6
Fix wrong transform being used for location
Metadorius 94d5b67
Fix wrong selectable coords
Metadorius 1ced9ca
Revert to the original function
Metadorius c9abb2f
use AttachChild in CreateChild
Metadorius 4bc4470
Fix a potential problem with cell passability hook causing unbreaking…
Starkku c412bfd
I am stupid
Metadorius d38ca17
Add voxel visual offset code
Metadorius 3cc53f9
Disable prototype jitterless drawing
Metadorius 0e56afe
Merge develop
Metadorius a03299b
Fix stop command crash with Kratos
Metadorius 0be061c
Merge branch 'develop' into feature/techno-attachment
Metadorius d5e31a7
Implement custom attachment locomotion
Metadorius dce5b85
Disable layer checking that prevented picking up objects that changed…
Metadorius 2493840
Handle layer changes in loco
Metadorius d94c3c4
Make InheritDestruction actually kill the object, not vanish
Metadorius 88ecf1f
Adjust enabled tags & fix docs
Metadorius 6f7d8c4
Fix Kill call signature
Metadorius f58077f
Merge remote-tracking branch 'origin/develop' into feature/techno-att…
Metadorius c6d05fe
Mention loco in the doc
Metadorius 81c5bc4
Fix destruction crashing bugs
Metadorius 48702a3
Tentative fix for waypoint mode command inheritance
Starkku bd185a0
Fix turret drawing & shadow height
Metadorius efce95c
Revert to draw shadows as for individual units
Metadorius 42411aa
Merge remote-tracking branch 'origin/develop' into feature/techno-att…
Metadorius 2436e2a
Handle airborne attachments
Metadorius fc749fe
Fix AttachmentLoco destruction crash
Metadorius e9dbd24
Improve death handling for children, fix Crashable=yes death issues
Metadorius a063723
Minor fix for crashable units which don't have correct source set
Metadorius 7178452
Allow negative DirType in parsing
Metadorius e33bb19
Implement RotationAdjust
Metadorius 2a402fe
Improve syncing
Metadorius e80572a
WIP OccupiesCell impl. + built techno shouldn't occupy bib with child…
Metadorius c2cb8a4
OccupiesCell pt. 2
Metadorius c885934
Finished initial OccupiesCell implementation
Metadorius 40e0022
Merge remote-tracking branch 'origin/develop' into feature/techno-att…
Metadorius 28fc477
Merge remote-tracking branch 'origin/develop' into feature/techno-att…
Metadorius fa16ca2
Clean up a bit, add InheritLayerStatus and custom layer calculation, …
Metadorius f8d096b
Merge branch 'develop' into feature/techno-attachment
Metadorius 10d929f
Fixed waypointing with InheritCommands, temp. disable actions override
Metadorius 64711e7
Merge remote-tracking branch 'origin/develop' into feature/techno-att…
Metadorius 33327f7
que?
Metadorius 3b1a8e7
Merge remote-tracking branch 'origin/develop' into feature/techno-att…
Metadorius 451a083
Attempt to fix crashes
Metadorius 8f224e5
Implement RespawnTimer and TransparentToMouse, re-enable RespawnAtCre…
Metadorius a4c9bb6
Merge remote-tracking branch 'origin/develop' into feature/techno-att…
Metadorius 6a793b4
Added missed doc edit for TransparentToMouse
Metadorius c02f8f9
Try to fix AircraftTracker crash one more time
Metadorius 85e3ea9
Fix TransparentToMouse undesired behavior
Metadorius eb4439b
(hope)Fully fix pathfinding
Metadorius 57483ae
Remove experimental/commented out stuff
Metadorius 2391209
Minor cleanups
Metadorius 014b4df
Merge remote-tracking branch 'origin/develop' into feature/techno-att…
Metadorius ff5e9c9
Sensors for attachment loco
Metadorius 2a3d473
(Hacky?) sight for attachment loco
Metadorius 00b221c
Handle CellClass::Incoming properly
Metadorius 39d46d4
Merge remote-tracking branch 'origin/develop' into feature/techno-att…
Metadorius 85025e9
Fix *Layer tags type
Metadorius 1def3aa
Implement building upgrades support
Metadorius a3b084a
Fix AreRelatives
Metadorius 6f25f1d
Fix passenger loading for multiple technos on cell
Metadorius 76f7bcd
Merge remote-tracking branch 'origin/develop' into feature/techno-att…
Metadorius 64e3fbe
Post-merge fix
Metadorius d903654
Merge remote-tracking branch 'origin/develop' into feature/techno-att…
Metadorius fd7197a
Post-merge fix
Metadorius 250b4c3
Fix transports not working properly when there's multiple technos on …
Metadorius 22299b2
Merge branch 'develop' into feature/techno-attachment
Metadorius 6448ac3
InheritCommands.DeployCommand & StopCommand as separate key
Metadorius File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As you can see this tag is not on the attachment but on the techno that the attachment is strapped upon. The reason for this is because AttachmentType is meant to be defining the kind of linkage mod makers would want (for example, a virtual unit, a physical unit, maybe a mount on a hovercraft w/e) and then attach stuff to it.
What I wonder about is where do you draw the line between "instance-specific" tags and type-specific? Like if you see above there's
RespawnAtCreation
andRespawnDelay
which are on the AttachmentType and I wonder if they really should be there considering they work with TechnoType defined here. I also wonder about tags likePassengerAsAttachment
orAmmoAsAttachment
etc.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
From the perspective of this semantic distinction that you've made where AttachmentType controls how the attachment and parent link together and any controls regarding what get attached are on the parent's type,
RespawnAtCreation
andRespawnDelay
are technically type-agnostic and would still fall under controlling the link itself (in essence it is how it gets restored if severed). However it falls under things that people would likely want to adjust per parent type even in cases where a lot of the other properties are reused.DestructionWeapon
etc. would likely fall under that same umbrella.If you want to stick with the semantic distinction you've made, then they stay on the attachment type. If you are willing to relent and consider modder usability, you'll allow defining or overriding atleast the previously mentioned things on the parent's type.