* Note that the chest itself is never destroyed.
* </pre>
*/
-static void chest_trap(int y, int x, s16b o_idx)
+static void chest_trap(POSITION y, POSITION x, KIND_OBJECT_IDX o_idx)
{
int i, trap;
extern bool fire_ball(int typ, int dir, HIT_POINT dam, int rad);
extern bool fire_rocket(int typ, int dir, HIT_POINT dam, int rad);
extern bool fire_ball_hide(int typ, int dir, HIT_POINT dam, int rad);
-extern bool fire_meteor(int who, int typ, int x, int y, HIT_POINT dam, int rad);
+extern bool fire_meteor(MONSTER_IDX who, EFFECT_ID typ, POSITION x, POSITION y, HIT_POINT dam, POSITION rad);
extern bool fire_bolt(int typ, int dir, HIT_POINT dam);
extern bool fire_blast(int typ, int dir, int dd, int ds, int num, int dev);
extern void call_chaos(void);
typedef byte BLOW_METHOD; /*!< モンスターの打撃手段ID */
typedef byte BLOW_EFFECT; /*!< モンスターの打撃効果ID */
+typedef int EFFECT_ID; /*!< 効果属性ID */
+
/*** Pointers to all the basic types defined above ***/
/* (prevents problems with multi-level quests) */
wr_s16b((s16b)q_ptr->level);
- wr_byte(q_ptr->complev);
+ wr_byte((byte_hack)q_ptr->complev);
wr_u32b(q_ptr->comptime);
/* Save quest status if quest is running */
wr_s16b(q_ptr->type);
wr_s16b(q_ptr->r_idx);
wr_s16b(q_ptr->k_idx);
- wr_byte(q_ptr->flags);
- wr_byte(q_ptr->dungeon);
+ wr_byte((byte_hack)q_ptr->flags);
+ wr_byte((byte_hack)q_ptr->dungeon);
}
}
* Option to hurt the player.
* </pre>
*/
-bool fire_meteor(int who, int typ, int y, int x, HIT_POINT dam, int rad)
+bool fire_meteor(MONSTER_IDX who, EFFECT_ID typ, POSITION y, POSITION x, HIT_POINT dam, POSITION rad)
{
int flg = PROJECT_STOP | PROJECT_GRID | PROJECT_ITEM | PROJECT_KILL;