Atrinik Server 2.5
include/material.h
Go to the documentation of this file.
00001 /************************************************************************
00002 *            Atrinik, a Multiplayer Online Role Playing Game            *
00003 *                                                                       *
00004 *    Copyright (C) 2009-2011 Alex Tokar and Atrinik Development Team    *
00005 *                                                                       *
00006 * Fork from Daimonin (Massive Multiplayer Online Role Playing Game)     *
00007 * and Crossfire (Multiplayer game for X-windows).                       *
00008 *                                                                       *
00009 * This program is free software; you can redistribute it and/or modify  *
00010 * it under the terms of the GNU General Public License as published by  *
00011 * the Free Software Foundation; either version 2 of the License, or     *
00012 * (at your option) any later version.                                   *
00013 *                                                                       *
00014 * This program is distributed in the hope that it will be useful,       *
00015 * but WITHOUT ANY WARRANTY; without even the implied warranty of        *
00016 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
00017 * GNU General Public License for more details.                          *
00018 *                                                                       *
00019 * You should have received a copy of the GNU General Public License     *
00020 * along with this program; if not, write to the Free Software           *
00021 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.             *
00022 *                                                                       *
00023 * The author can be reached at admin@atrinik.org                        *
00024 ************************************************************************/
00025 
00030 #ifndef MATERIAL_H
00031 #define MATERIAL_H
00032 
00034 #define NROFMATERIALS 13
00035 
00037 #define NROFMATERIALS_REAL 64
00038 
00045 #define M_NONE          0
00046 
00047 #define M_PAPER         1
00048 
00049 #define M_IRON          2
00050 
00051 #define M_GLASS         4
00052 
00053 #define M_LEATHER       8
00054 
00055 #define M_WOOD          16
00056 
00057 #define M_ORGANIC       32
00058 
00059 #define M_STONE         64
00060 
00061 #define M_CLOTH         128
00062 
00063 #define M_ADAMANT       256
00064 
00065 #define M_LIQUID        512
00066 
00067 #define M_SOFT_METAL    1024
00068 
00069 #define M_BONE          2048
00070 
00071 #define M_ICE           4096
00072 
00075 #define M_START_PAPER           0 * 64 + 1
00076 
00077 #define M_START_IRON            1 * 64 + 1
00078 
00079 #define M_START_GLASS           2 * 64 + 1
00080 
00081 #define M_START_LEATHER         3 * 64 + 1
00082 
00083 #define M_START_WOOD            4 * 64 + 1
00084 
00085 #define M_START_ORGANIC         5 * 64 + 1
00086 
00087 #define M_START_STONE           6 * 64 + 1
00088 
00089 #define M_START_CLOTH           7 * 64 + 1
00090 
00091 #define M_START_ADAMANT         8 * 64 + 1
00092 
00093 #define M_START_LIQUID          9 * 64 + 1
00094 
00095 #define M_START_SOFT_METAL      10 * 64 + 1
00096 
00097 #define M_START_BONE            11 * 64 + 1
00098 
00099 #define M_START_ICE             12 * 64 + 1
00100 
00102 typedef struct
00103 {
00105     char *name;
00106 } materialtype;
00107 
00109 typedef struct _material_real_struct
00110 {
00112     char name[MAX_BUF];
00113 
00115     int quality;
00116 
00118     int type;
00119 
00121     int def_race;
00122 } material_real_struct;
00123 
00124 extern materialtype materials[NROFMATERIALS];
00125 extern material_real_struct material_real[NROFMATERIALS * NROFMATERIALS_REAL + 1];
00126 
00127 #endif