aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.World/GoalSelector.cpp
diff options
context:
space:
mode:
authordaoge <3523206925@qq.com>2026-03-03 03:04:10 +0800
committerGitHub <noreply@github.com>2026-03-03 03:04:10 +0800
commitb3feddfef372618c8a9d7a0abcaf18cfad866c18 (patch)
tree267761c3bb39241ba5c347bfbe2254d06686e287 /Minecraft.World/GoalSelector.cpp
parent84c31a2331f7a0ec85b9d438992e244f60e5020f (diff)
feat: TU19 (Dec 2014) Features & Content (#155)
* try to resolve merge conflict * feat: TU19 (Dec 2014) Features & Content (#32) * December 2014 files * Working release build * Fix compilation issues * Add sound to Windows64Media * Add DLC content and force Tutorial DLC * Revert "Add DLC content and force Tutorial DLC" This reverts commit 97a43994725008e35fceb984d5549df9c8cea470. * Disable broken light packing * Disable breakpoint during DLC texture map load Allows DLC loading but the DLC textures are still broken * Fix post build not working * ... * fix vs2022 build * fix cmake build --------- Co-authored-by: Loki <lokirautio@gmail.com>
Diffstat (limited to 'Minecraft.World/GoalSelector.cpp')
-rw-r--r--Minecraft.World/GoalSelector.cpp27
1 files changed, 27 insertions, 0 deletions
diff --git a/Minecraft.World/GoalSelector.cpp b/Minecraft.World/GoalSelector.cpp
index 85a37dda..3e3d99b5 100644
--- a/Minecraft.World/GoalSelector.cpp
+++ b/Minecraft.World/GoalSelector.cpp
@@ -30,6 +30,33 @@ void GoalSelector::addGoal(int prio, Goal *goal, bool canDeletePointer /*= true*
goals.push_back(new InternalGoal(prio, goal, canDeletePointer));
}
+void GoalSelector::removeGoal(Goal *toRemove)
+{
+ for(AUTO_VAR(it, goals.begin()); it != goals.end(); )
+ {
+ InternalGoal *ig = *it;
+ Goal *goal = ig->goal;
+
+ if (goal == toRemove)
+ {
+ AUTO_VAR(it2, find(usingGoals.begin(), usingGoals.end(), ig) );
+ if (it2 != usingGoals.end())
+ {
+ goal->stop();
+ usingGoals.erase(it2);
+ }
+
+ if(ig->canDeletePointer) delete ig->goal;
+ delete ig;
+ it = goals.erase(it);
+ }
+ else
+ {
+ ++it;
+ }
+ }
+}
+
void GoalSelector::tick()
{
vector<InternalGoal *> toStart;