Crossfire Server, Trunk
treasure.h File Reference
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  _change_arch
struct  treasureliststruct
struct  treasurestruct


#define DIFFLEVELS   201
#define MAXMAGIC   4


typedef struct _change_arch _change_arch
typedef struct treasurestruct treasure
typedef struct treasureliststruct treasurelist


enum  {
  GT_ENVIRONMENT = 0x0001, GT_INVISIBLE = 0x0002, GT_STARTEQUIP = 0x0004, GT_ONLY_GOOD = 0x0008,
  GT_UPDATE_INV = 0x0010, GT_MINIMAL = 0x0020

Detailed Description

Defines and variables used by the artifact generation routines.

Definition in file treasure.h.

Macro Definition Documentation



Chance an item becomes an artifact if not magic is 1 in this value.

Definition at line 10 of file treasure.h.


#define DIFFLEVELS   201

Maximum difficulty for difficulty/magic mapping.

Definition at line 16 of file treasure.h.



Highest level of rods/staves/scrolls to generate.

Definition at line 19 of file treasure.h.


#define MAXMAGIC   4

Maximum magic for difficulty/magic mapping.

Definition at line 13 of file treasure.h.

Typedef Documentation

◆ _change_arch

typedef struct _change_arch _change_arch

when a treasure got cloned from archlist, we want perhaps change some default values. All values in this structure will override the default arch. TODO: It is a bad way to implement this with a special structure. Because the real arch list is a at runtime not changed, we can grap for example here a clone of the arch, store it in the treasure list and then run the original arch parser over this clone, using the treasure list as script until an END comes. This will allow ANY changes which is possible and we use ony one parser.

is this still used somewhere in the maps/code??

◆ treasure

typedef struct treasurestruct treasure

treasure is one element in a linked list, which together consist of a complete treasure-list. Any arch can point to a treasure-list to get generated standard treasure when an archetype of that type is generated (from a generator)

◆ treasurelist

treasureliststruct represents one logical group of items to be generated together.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

Flags to generate_treasures():

document some flags.






Generated items have the FLAG_STARTEQUIP.


Don't generate bad/cursed items. Used for new player's equipment.


When object has been generated, send its information to player.


Do minimal adjustments, don't make artifacts, and so on.

Definition at line 30 of file treasure.h.