-
Notifications
You must be signed in to change notification settings - Fork 211
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
Weldbot #1703
Weldbot #1703
Conversation
Content.Server/NPC/HTN/PrimitiveTasks/Operators/Specific/PickNearbyWeldableOperator.cs
Outdated
Show resolved
Hide resolved
Content.Server/NPC/HTN/PrimitiveTasks/Operators/Specific/PickNearbyWeldableOperator.cs
Outdated
Show resolved
Hide resolved
Content.Server/NPC/HTN/PrimitiveTasks/Operators/Specific/PickNearbyWeldableOperator.cs
Outdated
Show resolved
Hide resolved
Content.Server/NPC/HTN/PrimitiveTasks/Operators/Specific/PickNearbyWeldableOperator.cs
Outdated
Show resolved
Hide resolved
Content.Server/NPC/HTN/PrimitiveTasks/Operators/Specific/PickNearbyWeldableOperator.cs
Outdated
Show resolved
Hide resolved
Co-authored-by: Remuchi <72476615+Remuchi@users.noreply.github.com> Signed-off-by: Timfa <timfalken@hotmail.com>
Co-authored-by: Remuchi <72476615+Remuchi@users.noreply.github.com> Signed-off-by: Timfa <timfalken@hotmail.com>
if (!blackboard.TryGetValue<float>(RangeKey, out var range, _entManager)) | ||
return (false, null); | ||
|
||
if (!_entManager.TryGetComponent<WeldbotComponent>(owner, out var weldbot)) | ||
return (false, null); |
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.
combine
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.
Combined in 23a809c
if (!_entManager.TryGetComponent<TagComponent>(target, out var tagComponent) || !_tagSystem.HasTag(tagComponent, tagPrototype)) | ||
continue; | ||
|
||
// Only go towards a target if the bot can actually help them or if the weldbot is emagged | ||
if (!emagged && damage.DamagePerGroup["Brute"].Value == 0) | ||
continue; |
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.
combine
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.
Combined in 23a809c
Content.Server/NPC/HTN/PrimitiveTasks/Operators/Specific/PickNearbyWeldableOperator.cs
Show resolved
Hide resolved
if (!_entMan.TryGetComponent<TagComponent>(target, out var tagComponent) || !_tagSystem.HasTag(tagComponent, tagPrototype)) | ||
return HTNOperatorStatus.Failed; | ||
|
||
if (!_entMan.TryGetComponent<WeldbotComponent>(owner, out var botComp)) | ||
return HTNOperatorStatus.Failed; | ||
|
||
if (!_entMan.TryGetComponent<DamageableComponent>(target, out var damage)) | ||
return HTNOperatorStatus.Failed; | ||
|
||
if (!_interaction.InRangeUnobstructed(owner, target)) | ||
return HTNOperatorStatus.Failed; |
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.
combine
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.
Combined in 23a809c
Description
The Weldbot is a medibot for IPC's, Borgs and other Silicon bots. It'll behave pretty much as a medibot would, except it welds.
Upon destruction, it will spill fuel on the ground. Nasty stuff.
Media
Note: The weldbot was slow in this video, and healed only 5 units of damage. It will heal 50 now, but I don't have an up-to-date video.
https://github.com/user-attachments/assets/11c2343b-3e7e-4536-8238-4ee28d51c045
Changelog
🆑 Timfa