diff options
author | dshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573> | 2006-09-18 15:08:25 +0000 |
---|---|---|
committer | dshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573> | 2006-09-18 15:08:25 +0000 |
commit | a4d4f3ecccb29c3f5fc1ce55579119106c399911 (patch) | |
tree | 5677ea04b4dfdadd961c01ba3baf7502f8d6e0d0 /stone_soup/crawl-ref/source/monplace.h | |
parent | 571501e1135989d3b9dc44e3d332562a7cf78b35 (diff) | |
download | crawl-ref-a4d4f3ecccb29c3f5fc1ce55579119106c399911.tar.gz crawl-ref-a4d4f3ecccb29c3f5fc1ce55579119106c399911.zip |
Updated stone_soup-0.1b1 tag to include fix for Poison Arrow of Doom.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/tags/stone_soup-0.1b1@49 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'stone_soup/crawl-ref/source/monplace.h')
-rw-r--r-- | stone_soup/crawl-ref/source/monplace.h | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/stone_soup/crawl-ref/source/monplace.h b/stone_soup/crawl-ref/source/monplace.h new file mode 100644 index 0000000000..ba45fe36d2 --- /dev/null +++ b/stone_soup/crawl-ref/source/monplace.h @@ -0,0 +1,83 @@ +/* + * File: monsplace.cc + * Summary: Functions used when placing monsters in the dungeon. + * Written by: Linley Henzell + * + * Change History (most recent first): + * + * <1> -/--/-- LRH Created + */ + + +#ifndef MONPLACE_H +#define MONPLACE_H + +#include "enum.h" +#include "FixVec.h" + +// last updated 13mar2001 {gdl} +/* *********************************************************************** + * called from: acr - lev-pand - monplace - dungeon + * + * Usage: + * mon_type WANDERING_MONSTER, RANDOM_MONSTER, or monster type + * behaviour standard behaviours (BEH_ENSLAVED, etc) + * target MHITYOU, MHITNOT, or monster id + * extra various things like skeleton/zombie types, colours, etc + * summoned monster is summoned? + * px placement x + * py placement y + * level_type LEVEL_DUNGEON, LEVEL_ABYSS, LEVEL_PANDEMONIUM. + * LEVEL_DUNGEON will generate appropriate power monsters + * proximity 0 = no extra restrictions on monster placement + * 1 = try to place the monster near the player + * 2 = don't place the monster near the player + * 3 = place the monster near stairs (regardless of player pos) + * *********************************************************************** */ +int mons_place( int mon_type, char behaviour, int target, bool summoned, + int px, int py, int level_type = LEVEL_DUNGEON, + int proximity = PROX_ANYWHERE, int extra = 250, + int dur = 0 ); + +// last updated 12may2000 {dlb} +/* *********************************************************************** + * called from: acr - debug - decks - effects - fight - it_use3 - item_use - + * items - monstuff - mstuff2 - religion - spell - spells - + * spells2 - spells3 - spells4 + * *********************************************************************** */ +int create_monster( int cls, int dur, int beha, int cr_x, int cr_y, + int hitting, int zsec ); + + +// last updated 12may2000 {dlb} +/* *********************************************************************** + * called from: misc - monplace - spells3 + * *********************************************************************** */ +bool empty_surrounds( int emx, int emy, unsigned char spc_wanted, + bool allow_centre, FixedVector<char, 2>& empty ); + + +// last updated 12may2000 {dlb} +/* *********************************************************************** + * called from: ability - acr - items - maps - mstuff2 - spell - spells + * *********************************************************************** */ +int summon_any_demon( char demon_class ); + + +// last update 13mar2001 {gdl} +/* *********************************************************************** + * called from: dungeon monplace + * + * This isn't really meant to be a public function. It is a low level + * monster placement function used by dungeon building routines and + * mons_place(). If you need to put a monster somewhere, use mons_place(). + * Summoned creatures can be created with create_monster(). + * *********************************************************************** */ +bool place_monster( int &id, int mon_type, int power, char behaviour, + int target, bool summoned, int px, int py, bool allow_bands, + int proximity = PROX_ANYWHERE, int extra = 250, + int dur = 0 ); + +monster_type rand_dragon( dragon_class_type type ); + +#endif // MONPLACE_H |