/** * The main crafts include file. Contains everything you needed to know * about crafts and more. * @author Pinkfish * @started Fri Nov 12 17:53:57 PST 1999 */ #ifndef __CRAFTS #define __CRAFTS /** * The value the craft functions return as an error. */ #define CRAFT_ERROR 0 /** * The file to inherit to make a craft process */ #define CRAFT_INHERIT "/obj/crafts/base" /** * The location of the craft handler. */ #define CRAFT_HANDLER "/obj/crafts/craft_handler" /** * This is the definition for a required input material. */ #define CRAFT_MATERIAL_REQUIRED 1 /** * This is the definition for a 'one of' input material. The material * must be one of these 'one of' materials. */ #define CRAFT_MATERIAL_ONE_OF 2 /** * This is the definition for an optional input material */ #define CRAFT_MATERIAL_OPTIONAL 3 /** * This is the definition for a denied input material */ #define CRAFT_MATERIAL_DENIED 4 /** * The mask to get of the actual type of the material classication. */ #define CRAFT_MATERIAL_TYPE_MASK 127 /** * This means that every material must have this material. */ #define CRAFT_MATERIAL_ALL 128 /** * Worthless quality. */ #define CRAFT_QUALITY_WORTHLESS -4 /** * Awful quality. */ #define CRAFT_QUALITY_AWFUL -3 /** * Bad quality. */ #define CRAFT_QUALITY_BAD -2 /** * Poor quality. */ #define CRAFT_QUALITY_POOR -1 /** * Normal quality. */ #define CRAFT_QUALITY_NORMAL 0 /** * Fine quality. */ #define CRAFT_QUALITY_FINE 1 /** * Good quality. */ #define CRAFT_QUALITY_GOOD 2 /** * Excelent quality. */ #define CRAFT_QUALITY_EXCELLENT 3 /** * Perfect quality. */ #define CRAFT_QUALITY_PERFECT 4 /** * This is a class to handle the bonus stuff for the process. * @element result the result of the 'taskmaster' call * @element skill_bonus the actual bonus from this skill * @element quality a quality indicator * @element bonus the overall bonus over the skills */ class crafts_bonus { mapping result; mapping skill_bonus; int quality; int bonus; } #endif