Source:NetHack 3.1.0/artifact.h
Revision as of 06:01, 4 March 2008 by Kernigh bot (talk | contribs) (NetHack 3.1.0/artifact.h moved to Source:NetHack 3.1.0/artifact.h: Robot: moved page)
Below is the full text to artifact.h from the source code of NetHack 3.1.0. To link to a particular line, write [[NetHack 3.1.0/artifact.h#line123]], for example.
Warning! This is the source code from an old release. For the latest release, see Source code
The NetHack General Public License applies to screenshots, source code and other content from NetHack.
This content was modified from the original NetHack source code distribution (by splitting up NetHack content between wiki pages, and possibly further editing). See the page history for a list of who changed it, and on what dates.
1. /* SCCS Id: @(#)artifact.h 3.1 92/11/01 */ 2. /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ 3. /* NetHack may be freely redistributed. See license for details. */ 4. 5. #ifndef ARTIFACT_H 6. #define ARTIFACT_H 7. 8. #define SPFX_NONE 0x0000000 /* no special effects, just a bonus */ 9. #define SPFX_NOGEN 0x0000001 /* item is special, bequeathed by gods */ 10. #define SPFX_RESTR 0x0000002 /* item is restricted - can't be named */ 11. #define SPFX_INTEL 0x0000004 /* item is self-willed - intelligent */ 12. #define SPFX_SPEEK 0x0000008 /* item can speak */ 13. #define SPFX_SEEK 0x0000010 /* item helps you search for things */ 14. #define SPFX_WARN 0x0000020 /* item warns you of danger */ 15. #define SPFX_ATTK 0x0000040 /* item has a special attack (attk) */ 16. #define SPFX_DEFN 0x0000080 /* item has a special defence (defn) */ 17. #define SPFX_DRLI 0x0000100 /* drains a level from monsters */ 18. #define SPFX_SEARCH 0x0000200 /* helps searching */ 19. #define SPFX_BEHEAD 0x0000400 /* beheads monsters */ 20. #define SPFX_HALRES 0x0000800 /* blocks hallucinations */ 21. #define SPFX_ESP 0x0001000 /* ESP (like amulet of ESP) */ 22. #define SPFX_STLTH 0x0002000 /* Stealth */ 23. #define SPFX_REGEN 0x0004000 /* Regeneration */ 24. #define SPFX_EREGEN 0x0008000 /* Energy Regeneration */ 25. #define SPFX_HSPDAM 0x0010000 /* 1/2 spell damage (on player) in combat */ 26. #define SPFX_HPHDAM 0x0020000 /* 1/2 physical damage (on player) in combat */ 27. #define SPFX_TCTRL 0x0040000 /* Teleportation Control */ 28. #define SPFX_LUCK 0x0080000 /* Increase Luck (like Luckstone) */ 29. #define SPFX_DMONS 0x0100000 /* attack bonus on one monster type */ 30. #define SPFX_DCLAS 0x0200000 /* attack bonus on monsters w/ symbol mtype */ 31. #define SPFX_DFLAG1 0x0400000 /* attack bonus on monsters w/ mflags1 flag */ 32. #define SPFX_DFLAG2 0x0800000 /* attack bonus on monsters w/ mflags2 flag */ 33. #define SPFX_DALIGN 0x1000000 /* attack bonus on non-aligned monsters */ 34. 35. #define SPFX_DBONUS 0x1F00000 /* attack bonus mask */ 36. 37. struct artifact { 38. unsigned otyp; 39. const char *name; 40. unsigned long spfx; /* special effect from wielding/wearing */ 41. unsigned long cspfx; /* special effect just from carrying obj */ 42. unsigned long mtype; /* monster type, symbol, or flag */ 43. struct attack attk, defn, cary; 44. uchar inv_prop; /* property obtained by invoking artifact */ 45. aligntyp alignment; /* alignment of bequeathing gods */ 46. char class; /* character class associated with */ 47. }; 48. 49. /* invoked properties with special powers */ 50. #define TAMING (LAST_PROP+1) 51. #define HEALING (LAST_PROP+2) 52. #define ENERGY_BOOST (LAST_PROP+3) 53. #define UNTRAP (LAST_PROP+4) 54. #define CHARGE_OBJ (LAST_PROP+5) 55. #define LEV_TELE (LAST_PROP+6) 56. #define CREATE_PORTAL (LAST_PROP+7) 57. 58. #endif /* ARTIFACT_H */