28 #ifndef GAME_GAME_ENEMY_DOG_H 29 #define GAME_GAME_ENEMY_DOG_H 31 #include "hpl1/engine/engine.h" 32 #include "hpl1/penumbra-overture/GameEnemy.h" 45 virtual void OnSeePlayer(
const cVector3f &avPosition,
float afChance);
46 virtual bool OnHearNoise(
const cVector3f &avPosition,
float afVolume);
47 virtual void OnTakeHit(
float afDamage);
48 virtual void OnDeath(
float afDamage);
49 virtual void OnFlashlight(
const cVector3f &avPosition);
51 virtual void OnAnimationOver(
const tString &asAnimName) {}
53 virtual void OnDraw() {}
54 virtual void OnPostSceneDraw() {}
70 void OnUpdate(
float afTimeStep);
83 void OnUpdate(
float afTimeStep);
85 void OnSeePlayer(
const cVector3f &avPosition,
float afChance);
86 bool OnHearNoise(
const cVector3f &avPosition,
float afVolume);
87 void OnFlashlight(
const cVector3f &avPosition);
101 mbBreakingDoor =
false;
107 void OnUpdate(
float afTimeStep);
109 void OnSeePlayer(
const cVector3f &avPosition,
float afChance);
110 bool OnHearNoise(
const cVector3f &avPosition,
float afVolume);
111 void OnFlashlight(
const cVector3f &avPosition) {}
116 float mfUpdatePathCount;
118 bool mbFreePlayerPath;
120 float mfLostPlayerCount;
121 float mfMaxLostPlayerCount;
124 int mlStuckAtMaxCount;
126 int mlBreakDoorCount;
140 void OnUpdate(
float afTimeStep);
142 void OnAnimationOver(
const tString &asName);
144 void OnPostSceneDraw();
146 void OnSeePlayer(
const cVector3f &avPosition,
float afChance) {}
147 bool OnHearNoise(
const cVector3f &avPosition,
float afVolume) {
return false; }
148 void OnFlashlight(
const cVector3f &avPosition) {}
166 void OnUpdate(
float afTimeStep);
168 void OnAnimationOver(
const tString &asName);
170 void OnPostSceneDraw();
172 void OnSeePlayer(
const cVector3f &avPosition,
float afChance) {}
173 bool OnHearNoise(
const cVector3f &avPosition,
float afVolume) {
return false; }
174 void OnFlashlight(
const cVector3f &avPosition) {}
178 float mfStopMoveTimer;
194 void OnUpdate(
float afTimeStep);
196 bool OnHearNoise(
const cVector3f &avPosition,
float afVolume) {
return false; }
197 void OnSeePlayer(
const cVector3f &avPosition,
float afChance) {}
198 void OnFlashlight(
const cVector3f &avPosition) {}
204 float mfCheckBehindTime;
205 bool mbBackingFromBreakDoor;
218 void OnUpdate(
float afTimeStep);
220 void OnSeePlayer(
const cVector3f &avPosition,
float afChance) {}
221 bool OnHearNoise(
const cVector3f &avPosition,
float afVolume) {
return false; }
223 void OnFlashlight(
const cVector3f &avPosition) {}
225 void OnAnimationOver(
const tString &asName);
241 void OnUpdate(
float afTimeStep);
243 void OnSeePlayer(
const cVector3f &avPosition,
float afChance) {}
244 bool OnHearNoise(
const cVector3f &avPosition,
float afVolume) {
return false; }
245 void OnTakeHit(
float afDamage) {}
246 void OnFlashlight(
const cVector3f &avPosition) {}
248 void OnAnimationOver(
const tString &asName);
268 void OnUpdate(
float afTimeStep);
270 void OnSeePlayer(
const cVector3f &avPosition,
float afChance) {}
271 bool OnHearNoise(
const cVector3f &avPosition,
float afVolume) {
return false; }
272 void OnTakeHit(
float afDamage) {}
273 void OnFlashlight(
const cVector3f &avPosition) {}
286 void OnUpdate(
float afTimeStep);
288 void OnAnimationOver(
const tString &asName);
294 float mfIdleSoundTime;
296 int mlStuckAtMaxCount;
311 void OnUpdate(
float afTimeStep);
313 bool OnHearNoise(
const cVector3f &avPosition,
float afVolume);
315 float mfIdleSoundTime;
316 float mfHearSoundCount;
317 float mfHighestVolume;
332 void OnUpdate(
float afTimeStep);
334 float mfIdleSoundTime;
348 void OnUpdate(
float afTimeStep);
350 bool OnHearNoise(
const cVector3f &avPosition,
float afVolume);
351 void OnSeePlayer(
const cVector3f &avPosition,
float afChance);
365 void OnUpdate(
float afTimeStep);
367 void ShowPlayer(
const cVector3f &avPlayerFeetPos);
369 bool MoveToPos(
const cVector3f &avFeetPos);
374 iCollideShape *GetBreakDoorShape() {
return mpBreakDoorShape; }
376 float mfMinKnockDamage;
377 float mfCertainKnockDamage;
379 float mfLengthBodyToAss;
383 tString msIdleFoundPlayerSound;
384 float mfIdleMinSeeChance;
385 float mfIdleMinHearVolume;
387 float mfIdleSoundMinInteraval;
388 float mfIdleSoundMaxInteraval;
389 float mfIdleCallBackupChance;
394 float mfAttentionTime;
395 float mfAttentionMinDist;
399 float mfHuntForLostPlayerTime;
400 float mfHuntMinSeeChance;
401 float mfHuntMinHearVolume;
403 float mfAttackDistance;
405 float mfAttackJumpTime;
406 float mfAttackDamageTime;
408 float mfAttackDamageRange;
409 float mfAttackMinDamage;
410 float mfAttackMaxDamage;
413 float mfAttackMinMass;
414 float mfAttackMaxMass;
415 float mfAttackMinImpulse;
416 float mfAttackMaxImpulse;
417 int mlAttackStrength;
420 float mfBreakDoorSpeed;
421 float mfBreakDoorDamageTime;
423 float mfBreakDoorDamageRange;
424 float mfBreakDoorMinDamage;
425 float mfBreakDoorMaxDamage;
428 float mfBreakDoorMinMass;
429 float mfBreakDoorMaxMass;
430 float mfBreakDoorMinImpulse;
431 float mfBreakDoorMaxImpulse;
432 int mlBreakDoorStrength;
433 bool mbBreakDoorRiseAtEnd;
439 float mfFleePositionChance;
440 float mfFleePositionMaxTime;
441 float mfFleePositionMinDistance;
442 float mfFleePositionMaxDistance;
443 float mfFleeBackChance;
444 float mfFleeBackTime;
445 float mfFleeBackSpeed;
449 float mfCallBackupRange;
452 float mfEatMinSeeChance;
453 float mfEatMinHearVolume;
462 #endif // GAME_GAME_ENEMY_DOG_H
Definition: GameEnemy_Dog.h:234
Definition: GameEnemy_Dog.h:261
Definition: GameEnemy_Dog.h:211
Definition: GameEnemy_Dog.h:302
Definition: GameEnemy_Dog.h:279
Definition: GameEnemy_Dog.h:133
Definition: GameEnemy_Dog.h:159
Definition: CollideShape.h:50
Definition: GameEnemy_Dog.h:63
Definition: GameEnemy_Dog.h:41
Definition: tinyxml.h:864
Definition: GameEnemy.h:152
Definition: GameEnemy_Dog.h:325
Definition: GameEnemy_Dog.h:358
Definition: GameEnemy_Dog.h:187
Definition: GameEnemy.h:189
Definition: GameEnemy_Dog.h:76
Definition: GameEnemy_Dog.h:98
Definition: GameEnemy_Dog.h:341