APPLY-SPELL-EFFECT!

Name

APPLY-SPELL-EFFECT! -- generic function

Description

Applies a spell-effect of type TYPE from SOURCE on TARGET at coords (X,Y) for DAMAGE damage. The state-object may be used to pass info back to calling function. The methods should return NIL or the state-object (with possibly updated state.

Methods

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) TYPE SOURCE TARGET &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) TYPE SOURCE (TARGET PLAYER) &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]
Calls 

(SETF ITEMS.CUR-SIZE), AOBJ.CONTAINS, ASK-FOR-REDRAW!, GET-CREATURE-INVENTORY, ITEMS.CUR-SIZE, ITEMS.OBJS and SHRINK-ARRAY!

Location 

variants/vanilla/effects.lisp

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) TYPE SOURCE (TARGET ACTIVE-OBJECT) &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]
Calls 

%DESTROY-FLOOR-OBJ and OBJ-DAMAGED-BY-ELEMENT?

Location 

variants/vanilla/effects.lisp

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) (TYPE (EQL '<FIRE>)) SOURCE (TARGET ACTIVE-OBJECT) &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]
Calls 

%DESTROY-FLOOR-OBJ and OBJ-DAMAGED-BY-ELEMENT?

Location 

variants/vanilla/effects.lisp

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) (TYPE (EQL '<WEAK-LIGHT>)) SOURCE (TARGET FLOOR-TYPE) &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]
Calls 

ASK-FOR-UPDATE!, BIT-FLAG-ADD!, CAVE-FLAGS, NON-NEGATIVE-INTEGER? and PLAYER-HAS-LOS-BOLD?

Location 

variants/vanilla/effects.lisp

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) (TYPE (EQL '<LIGHT>)) SOURCE (TARGET FLOOR-TYPE) &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]
Calls 

ASK-FOR-UPDATE!, BIT-FLAG-ADD!, CAVE-FLAGS, NON-NEGATIVE-INTEGER? and PLAYER-HAS-LOS-BOLD?

Location 

variants/vanilla/effects.lisp

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) (TYPE (EQL '<WEAK-DARKNESS>)) SOURCE (TARGET FLOOR-TYPE) &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]
Calls 

ASK-FOR-UPDATE!, BIT-FLAG-REMOVE!, CAVE-FLAGS, NON-NEGATIVE-INTEGER? and PLAYER-HAS-LOS-BOLD?

Location 

variants/vanilla/effects.lisp

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) (TYPE (EQL '<DARKNESS>)) SOURCE (TARGET FLOOR-TYPE) &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]
Calls 

ASK-FOR-UPDATE!, BIT-FLAG-REMOVE!, CAVE-FLAGS, NON-NEGATIVE-INTEGER? and PLAYER-HAS-LOS-BOLD?

Location 

variants/vanilla/effects.lisp

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) (TYPE (EQL '<FIRE>)) SOURCE (TARGET ACTIVE-MONSTER) &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]
Calls 
Location 

variants/vanilla/effects.lisp

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) (TYPE (EQL '<WEAK-LIGHT>)) SOURCE (TARGET ACTIVE-MONSTER) &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]
Calls 
Location 

variants/vanilla/effects.lisp

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) (TYPE (EQL '<WEAK-DARKNESS>)) SOURCE (TARGET ACTIVE-MONSTER) &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]
Calls 
Location 

variants/vanilla/effects.lisp

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) (TYPE (EQL '<EROSION>)) SOURCE (TARGET ACTIVE-MONSTER) &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]
Calls 
Location 

variants/vanilla/effects.lisp

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) (TYPE (EQL '<LIGHT>)) SOURCE (TARGET ACTIVE-MONSTER) &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]
Calls 
Location 

variants/vanilla/effects.lisp

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) (TYPE (EQL '<DARKNESS>)) SOURCE (TARGET ACTIVE-MONSTER) &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]
Calls 
Location 

variants/vanilla/effects.lisp

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) (TYPE (EQL '<EROSION>)) SOURCE (TARGET FLOOR-TYPE) &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]
Calls 

ASK-FOR-UPDATE!, BIT-FLAG-SET?, CAVE-DECOR, FLOOR.FLAGS, FLOORIFY-COORD!, FORMAT-MESSAGE!, IS-DOOR? and PLAYER-CAN-SEE-BOLD?

Location 

variants/vanilla/effects.lisp

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) (TYPE (EQL '<POLYMORPH>)) SOURCE (TARGET ACTIVE-MONSTER) &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]
Calls 
Location 

variants/vanilla/effects.lisp

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) (TYPE (EQL '<HEAL-MONSTER>)) SOURCE (TARGET ACTIVE-MONSTER) &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]
Calls 

(SETF MEFF.DAMAGE), (SETF MEFF.NOTE), (SETF MEFF.OBVIOUS), HEAL-CREATURE! and MEFF.SEEN

Location 

variants/vanilla/effects.lisp

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) (TYPE (EQL '<HASTE>)) SOURCE (TARGET ACTIVE-MONSTER) &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]
Calls 

(SETF MEFF.DAMAGE), (SETF MEFF.NOTE), (SETF MEFF.OBVIOUS), HASTE-CREATURE!, MEFF.SEEN and RANDINT

Location 

variants/vanilla/effects.lisp

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) (TYPE (EQL '<SLOW>)) SOURCE (TARGET ACTIVE-MONSTER) &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]
Calls 

(SETF MEFF.DAMAGE), (SETF MEFF.NOTE), (SETF MEFF.OBVIOUS), GET-POWER-LVL, IS-UNIQUE-MONSTER?, MEFF.SEEN, RANDINT and SLOW-CREATURE!

Location 

variants/vanilla/effects.lisp

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) (TYPE (EQL '<SLEEP>)) SOURCE (TARGET ACTIVE-MONSTER) &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]
Calls 
Location 

variants/vanilla/effects.lisp

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) (TYPE (EQL '<DESTROY-TRAPS/DOORS>)) SOURCE (TARGET DECOR) &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]
Calls 

ASK-FOR-UPDATE!, BIT-FLAG-SET?, CAVE-FLOOR, FLOOR.FLAGS, FLOORIFY-COORD!, IS-DOOR?, IS-TRAP?, PLAYER-CAN-SEE-BOLD? and PRINT-MESSAGE!

Location 

variants/vanilla/effects.lisp

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) (TYPE (EQL '<DESTROY-TRAPS>)) SOURCE (TARGET DECOR) &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]
Calls 
Location 

variants/vanilla/effects.lisp

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) (TYPE (EQL '<TELEPORT>)) SOURCE (TARGET ACTIVE-MONSTER) &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]
Calls 

(SETF MEFF.DAMAGE), (SETF MEFF.NOTE), (SETF MEFF.OBVIOUS), MEFF.SEEN and TELEPORT-CREATURE!

Location 

variants/vanilla/effects.lisp

APPLY-SPELL-EFFECT!
 (APPLY-SPELL-EFFECT! (VARIANT VANILLA-VARIANT) (TYPE (EQL '<DISPEL-EVIL>)) SOURCE (TARGET ACTIVE-MONSTER) &KEY X Y (DAMAGE 0) (STATE-OBJECT NIL)) [method]
Calls 

(SETF MEFF.DAMAGE), (SETF MEFF.DYING-NOTE), (SETF MEFF.NOTE), (SETF MEFF.OBVIOUS), ADD-MONSTER-KNOWLEDGE-FLAG!, IS-EVIL? and MEFF.SEEN

Location 

variants/vanilla/effects.lisp

This documentation was generated Autumn 2003 from the original sources by Albert v.0.4.9.