25#ifndef PEGASUS_CHASE_H
26#define PEGASUS_CHASE_H
28#include "pegasus/hotspot.h"
29#include "pegasus/interaction.h"
30#include "pegasus/notification.h"
31#include "pegasus/neighborhood/neighborhood.h"
37static const NotificationFlags kChaseEnteredBranchZone = 1;
38static const NotificationFlags kChaseExitedBranchZone = kChaseEnteredBranchZone << 1;
39static const NotificationFlags kChaseFinished = kChaseExitedBranchZone << 1;
43static const TimeValue kDecisionTime = 600 * 2;
50 virtual void handleInput(
const Input &,
const Hotspot *);
54 virtual void openInteraction();
55 virtual void initInteraction() {}
56 virtual void closeInteraction();
58 virtual void receiveNotification(
Notification *,
const NotificationFlags);
60 virtual void setUpBranch() {}
61 virtual void branchLeft() {}
62 virtual void branchRight() {}
63 virtual void dontBranch() {}
65 virtual void showControlsHint();
66 virtual void hideControlsHint();
76 bool _directionNeeded;
77 TurnDirection _turnDirection;
Definition: interaction.h:37
Definition: neighborhood.h:111
Definition: notification.h:53
Definition: notification.h:103
Definition: notification.h:83
Definition: surface.h:125