00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef NPCTIME_H
00022 #define NPCTIME_H 1
00023
00024 #include "tqueue.h"
00025
00026 class Game_window;
00027 class Actor;
00028 class Npc_hunger_timer;
00029 class Npc_poison_timer;
00030 class Npc_sleep_timer;
00031 class Npc_invisibility_timer;
00032 class Npc_protection_timer;
00033 class Npc_flag_timer;
00034
00035
00036
00037
00038 class Npc_timer_list
00039 {
00040 Actor *npc;
00041 Npc_hunger_timer *hunger;
00042 Npc_poison_timer *poison;
00043 Npc_sleep_timer *sleep;
00044 Npc_invisibility_timer *invisibility;
00045 Npc_protection_timer *protection;
00046 Npc_flag_timer *might, *curse, *paralyze;
00047 public:
00048 friend class Npc_hunger_timer;
00049 friend class Npc_poison_timer;
00050 friend class Npc_sleep_timer;
00051 friend class Npc_invisibility_timer;
00052 friend class Npc_protection_timer;
00053 friend class Npc_flag_timer;
00054 Npc_timer_list(Actor *n) : npc(n), hunger(0), poison(0), sleep(0),
00055 invisibility(0), protection(0), might(0), curse(0),
00056 paralyze(0)
00057 { }
00058 ~Npc_timer_list();
00059 void start_hunger();
00060 void start_poison();
00061 void start_sleep();
00062 void start_invisibility();
00063 void start_protection();
00064 void start_might();
00065 void start_curse();
00066 void start_paralyze();
00067 };
00068
00069 #endif