summaryrefslogtreecommitdiffstats
path: root/crawl-ref
diff options
context:
space:
mode:
authorRobert Vollmert <rvollmert@gmx.net>2009-11-27 16:53:38 +0100
committerRobert Vollmert <rvollmert@gmx.net>2009-11-27 16:53:49 +0100
commitb2ab02a8348c2ea560a72a62a773c0a0d6820734 (patch)
tree74b68986945c666a269c7b8cc582081e795633e5 /crawl-ref
parentdf9015848b407ce1d802759739706b4804b906b9 (diff)
downloadcrawl-ref-b2ab02a8348c2ea560a72a62a773c0a0d6820734.tar.gz
crawl-ref-b2ab02a8348c2ea560a72a62a773c0a0d6820734.zip
Move trap_def from externs.h to trap_def.h.
Diffstat (limited to 'crawl-ref')
-rw-r--r--crawl-ref/source/env.h1
-rw-r--r--crawl-ref/source/externs.h41
-rw-r--r--crawl-ref/source/trap_def.h30
-rw-r--r--crawl-ref/source/traps.cc2
-rw-r--r--crawl-ref/source/traps.h1
5 files changed, 39 insertions, 36 deletions
diff --git a/crawl-ref/source/env.h b/crawl-ref/source/env.h
index a104a85e96..1f3c02f142 100644
--- a/crawl-ref/source/env.h
+++ b/crawl-ref/source/env.h
@@ -4,6 +4,7 @@
#include "map_knowledge.h"
#include "monster.h"
#include "show.h"
+#include "trap_def.h"
struct crawl_environment
{
diff --git a/crawl-ref/source/externs.h b/crawl-ref/source/externs.h
index ac43447fe8..979e7f81a7 100644
--- a/crawl-ref/source/externs.h
+++ b/crawl-ref/source/externs.h
@@ -82,6 +82,12 @@ class melee_attack;
struct coord_def;
class level_id;
class player_quiver;
+class map_marker;
+class actor;
+class player;
+class monster;
+class KillMaster;
+class ghost_demon;
struct coord_def
{
@@ -552,14 +558,8 @@ public:
PlaceInfo operator - (const PlaceInfo &other) const;
};
-
typedef std::vector<delay_queue_item> delay_queue_type;
-class KillMaster;
-
-
-
-
class monster_spells : public FixedVector<spell_type, NUM_MONSTER_SPELL_SLOTS>
{
public:
@@ -569,35 +569,6 @@ public:
void clear() { init(SPELL_NO_SPELL); }
};
-class ghost_demon;
-class actor;
-
-struct trap_def
-{
- coord_def pos;
- trap_type type;
- int ammo_qty;
-
- dungeon_feature_type category() const;
- std::string name(description_level_type desc = DESC_PLAIN) const;
- bool is_known(const actor* act = 0) const;
- void trigger(actor& triggerer, bool flat_footed = false);
- void disarm();
- void destroy();
- void hide();
- void reveal();
- void prepare_ammo();
- bool type_has_ammo() const;
- bool active() const;
-
-private:
- void message_trap_entry();
- void shoot_ammo(actor& act, bool was_known);
- item_def generate_trap_item();
- int shot_damage(actor& act);
-};
-
-class map_marker;
class reader;
class writer;
class map_markers
diff --git a/crawl-ref/source/trap_def.h b/crawl-ref/source/trap_def.h
new file mode 100644
index 0000000000..90c2cc4372
--- /dev/null
+++ b/crawl-ref/source/trap_def.h
@@ -0,0 +1,30 @@
+#ifndef TRAP_DEF_H
+#define TRAP_DEF_H
+
+struct trap_def
+{
+ coord_def pos;
+ trap_type type;
+ int ammo_qty;
+
+ dungeon_feature_type category() const;
+ std::string name(description_level_type desc = DESC_PLAIN) const;
+ bool is_known(const actor* act = 0) const;
+ void trigger(actor& triggerer, bool flat_footed = false);
+ void disarm();
+ void destroy();
+ void hide();
+ void reveal();
+ void prepare_ammo();
+ bool type_has_ammo() const;
+ bool active() const;
+
+private:
+ void message_trap_entry();
+ void shoot_ammo(actor& act, bool was_known);
+ item_def generate_trap_item();
+ int shot_damage(actor& act);
+};
+
+#endif
+
diff --git a/crawl-ref/source/traps.cc b/crawl-ref/source/traps.cc
index eb509420a3..6ec12832cd 100644
--- a/crawl-ref/source/traps.cc
+++ b/crawl-ref/source/traps.cc
@@ -6,8 +6,8 @@
#include "AppHdr.h"
-#include "externs.h"
#include "traps.h"
+#include "trap_def.h"
#include <algorithm>
diff --git a/crawl-ref/source/traps.h b/crawl-ref/source/traps.h
index 1fe167040f..7d761e85d2 100644
--- a/crawl-ref/source/traps.h
+++ b/crawl-ref/source/traps.h
@@ -12,6 +12,7 @@
struct bolt;
class monsters;
+struct trap_def;
void disarm_trap(const coord_def& where);
void remove_net_from( monsters *mon );