summaryrefslogtreecommitdiff
path: root/game/server/tf/bot/behavior/training/tf_bot_training.h
diff options
context:
space:
mode:
Diffstat (limited to 'game/server/tf/bot/behavior/training/tf_bot_training.h')
-rw-r--r--game/server/tf/bot/behavior/training/tf_bot_training.h54
1 files changed, 54 insertions, 0 deletions
diff --git a/game/server/tf/bot/behavior/training/tf_bot_training.h b/game/server/tf/bot/behavior/training/tf_bot_training.h
new file mode 100644
index 0000000..d8d6cde
--- /dev/null
+++ b/game/server/tf/bot/behavior/training/tf_bot_training.h
@@ -0,0 +1,54 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+////////////////////////////////////////////////////////////////////////////////////////////////////
+// tf_bot_training.h
+//
+// Misc. training actions/behaviors. To be split up into separate files when we deem them "re-usable"
+//
+// Tom Bui, April 2010
+////////////////////////////////////////////////////////////////////////////////////////////////////
+
+#ifndef TF_BOT_TRAINING_H
+#define TF_BOT_TRAINING_H
+
+////////////////////////////////////////////////////////////////////////////////////////////////////
+// Attempts to kick/despawn the bot in the Update()
+
+class CTFDespawn : public Action< CTFBot >
+{
+public:
+ virtual ActionResult< CTFBot > Update( CTFBot *me, float interval );
+ virtual const char *GetName( void ) const { return "Despawn"; };
+};
+
+
+////////////////////////////////////////////////////////////////////////////////////////////////////
+// Simple behavior for training where the bot approaches action point and tries to fire at it (and anything there)
+
+class CTFTrainingAttackSentryActionPoint : public Action< CTFBot >
+{
+public:
+ virtual ActionResult< CTFBot > Update( CTFBot *me, float interval );
+ virtual const char *GetName( void ) const { return "Despawn"; };
+
+private:
+ CountdownTimer m_repathTimer;
+ PathFollower m_path;
+};
+
+////////////////////////////////////////////////////////////////////////////////////////////////////
+// Tells a bot to go an Action Point and run any command it has
+class CTFGotoActionPoint : public Action< CTFBot >
+{
+public:
+ virtual ActionResult< CTFBot > OnStart( CTFBot *me, Action< CTFBot > *priorAction );
+ virtual ActionResult< CTFBot > Update( CTFBot *me, float interval );
+ virtual const char *GetName( void ) const { return "GotoActionPoint"; };
+
+private:
+ CountdownTimer m_stayTimer;
+ CountdownTimer m_repathTimer;
+ PathFollower m_path;
+ bool m_wasTeleported;
+};
+
+#endif // TF_BOT_TRAINING_H