forked from github/server
removing more hardcoded items from the source.
This commit is contained in:
parent
4a74bfdf9d
commit
aaf7443d53
|
@ -600,15 +600,6 @@ set_item(unit * u, item_t it, int value)
|
||||||
|
|
||||||
void use_birthdayamulet(region * r, unit * magician, int amount, struct order * ord);
|
void use_birthdayamulet(region * r, unit * magician, int amount, struct order * ord);
|
||||||
|
|
||||||
enum {
|
|
||||||
IS_RESOURCE,
|
|
||||||
IS_PRODUCT,
|
|
||||||
IS_MAGIC,
|
|
||||||
/* wird für ZEIGE gebraucht */
|
|
||||||
IS_ITEM,
|
|
||||||
IS_RACE
|
|
||||||
};
|
|
||||||
|
|
||||||
/* t_item::flags */
|
/* t_item::flags */
|
||||||
#define FL_ITEM_CURSED (1<<0)
|
#define FL_ITEM_CURSED (1<<0)
|
||||||
#define FL_ITEM_NOTLOST (1<<1)
|
#define FL_ITEM_NOTLOST (1<<1)
|
||||||
|
@ -647,7 +638,7 @@ typedef struct t_item {
|
||||||
const char *name[4];
|
const char *name[4];
|
||||||
/* [0]: Einzahl für eigene; [1]: Mehrzahl für eigene;
|
/* [0]: Einzahl für eigene; [1]: Mehrzahl für eigene;
|
||||||
* [2]: Einzahl für Fremde; [3]: Mehrzahl für Fremde */
|
* [2]: Einzahl für Fremde; [3]: Mehrzahl für Fremde */
|
||||||
item_t typ;
|
boolean is_resource;
|
||||||
skill_t skill;
|
skill_t skill;
|
||||||
int minskill;
|
int minskill;
|
||||||
int gewicht;
|
int gewicht;
|
||||||
|
@ -661,107 +652,94 @@ static t_item itemdata[MAXITEMS] = {
|
||||||
* benutze_funktion; */
|
* benutze_funktion; */
|
||||||
{ /* I_IRON */
|
{ /* I_IRON */
|
||||||
{"Eisen", "Eisen", "Eisen", "Eisen"},
|
{"Eisen", "Eisen", "Eisen", "Eisen"},
|
||||||
IS_RESOURCE, SK_MINING, 1, 500, 0, FL_ITEM_NOTLOST, NULL
|
true, SK_MINING, 1, 500, 0, FL_ITEM_NOTLOST, NULL
|
||||||
},
|
},
|
||||||
{ /* I_STONE */
|
{ /* I_STONE */
|
||||||
{"Stein", "Steine", "Stein", "Steine"},
|
{"Stein", "Steine", "Stein", "Steine"},
|
||||||
IS_RESOURCE, SK_QUARRYING, 1, 6000, 0, FL_ITEM_NOTLOST, NULL
|
true, SK_QUARRYING, 1, 6000, 0, FL_ITEM_NOTLOST, NULL
|
||||||
},
|
},
|
||||||
{ /* I_HORSE */
|
{ /* I_HORSE */
|
||||||
{"Pferd", "Pferde", "Pferd", "Pferde"},
|
{"Pferd", "Pferde", "Pferd", "Pferde"},
|
||||||
IS_RESOURCE, SK_HORSE_TRAINING, 1, 5000, 0, FL_ITEM_MOUNT | FL_ITEM_ANIMAL | FL_ITEM_NOTINBAG, NULL
|
true, SK_HORSE_TRAINING, 1, 5000, 0, FL_ITEM_MOUNT | FL_ITEM_ANIMAL | FL_ITEM_NOTINBAG, NULL
|
||||||
},
|
},
|
||||||
{ /* I_AMULET_OF_HEALING */
|
{ /* I_AMULET_OF_HEALING */
|
||||||
{"Amulett der Heilung", "Amulette der Heilung", "Amulett", "Amulette"},
|
{"Amulett der Heilung", "Amulette der Heilung", "Amulett", "Amulette"},
|
||||||
IS_MAGIC, NOSKILL, 0, 0, 0, 0, NULL
|
0, NOSKILL, 0, 0, 0, 0, NULL
|
||||||
},
|
},
|
||||||
{ /* I_AMULET_OF_TRUE_SEEING 22 */
|
{ /* I_AMULET_OF_TRUE_SEEING 22 */
|
||||||
{"Amulett des wahren Sehens", "Amulette des wahren Sehens", "Amulett",
|
{"Amulett des wahren Sehens", "Amulette des wahren Sehens", "Amulett",
|
||||||
"Amulette"},
|
"Amulette"},
|
||||||
IS_MAGIC, NOSKILL, 0, 0, 0, 0, NULL
|
0, NOSKILL, 0, 0, 0, 0, NULL
|
||||||
},
|
},
|
||||||
{ /* I_RING_OF_INVISIBILITY 24 */
|
{ /* I_RING_OF_INVISIBILITY 24 */
|
||||||
{"Ring der Unsichtbarkeit", "Ringe der Unsichtbarkeit", "", ""},
|
{"Ring der Unsichtbarkeit", "Ringe der Unsichtbarkeit", "", ""},
|
||||||
IS_MAGIC, NOSKILL, 0, 0, 0, 0, NULL
|
0, NOSKILL, 0, 0, 0, 0, NULL
|
||||||
},
|
},
|
||||||
{ /* I_RING_OF_POWER 25 */
|
{ /* I_RING_OF_POWER 25 */
|
||||||
{"Ring der Macht", "Ringe der Macht", "", ""},
|
{"Ring der Macht", "Ringe der Macht", "", ""},
|
||||||
IS_MAGIC, NOSKILL, 0, 0, 0, 0, NULL
|
0, NOSKILL, 0, 0, 0, 0, NULL
|
||||||
},
|
|
||||||
{ /* I_DRAGONHEAD 33 */
|
|
||||||
{"Drachenkopf", "Drachenköpfe", "Drachenkopf", "Drachenköpfe"},
|
|
||||||
IS_MAGIC, NOSKILL, 0, 500, 0, 0, NULL
|
|
||||||
},
|
},
|
||||||
{ /* I_CHASTITY_BELT 34 */
|
{ /* I_CHASTITY_BELT 34 */
|
||||||
{"Amulett der Keuschheit", "Amulette der Keuschheit",
|
{"Amulett der Keuschheit", "Amulette der Keuschheit",
|
||||||
"Amulett", "Amulette"},
|
"Amulett", "Amulette"},
|
||||||
IS_MAGIC, NOSKILL, 0, 0, 0, 0, NULL
|
0, NOSKILL, 0, 0, 0, 0, NULL
|
||||||
},
|
},
|
||||||
{ /* I_LAEN 41 */
|
{ /* I_LAEN 41 */
|
||||||
{"Laen", "Laen", "Laen", "Laen"},
|
{"Laen", "Laen", "Laen", "Laen"},
|
||||||
IS_RESOURCE, SK_MINING, 7, 200, 0, 0, NULL
|
true, SK_MINING, 7, 200, 0, 0, NULL
|
||||||
},
|
|
||||||
{ /* I_DRACHENBLUT 59 */
|
|
||||||
{"Drachenblut", "Drachenblut", "Drachenblut", "Drachenblut"},
|
|
||||||
IS_MAGIC, NOSKILL, 0, 100, 0, 0, NULL
|
|
||||||
},
|
},
|
||||||
{ /* I_FEENSTIEFEL 60 */
|
{ /* I_FEENSTIEFEL 60 */
|
||||||
{"Feenstiefel", "Feenstiefel", "Feenstiefel", "Feenstiefel"},
|
{"Feenstiefel", "Feenstiefel", "Feenstiefel", "Feenstiefel"},
|
||||||
IS_MAGIC, NOSKILL, 0, 0, 0, 0, NULL
|
0, NOSKILL, 0, 0, 0, 0, NULL
|
||||||
},
|
},
|
||||||
{ /* I_BIRTHDAYAMULET 69 */
|
{ /* I_BIRTHDAYAMULET 69 */
|
||||||
{"Katzenamulett", "Katzenamulette", "Amulett", "Amulette"},
|
{"Katzenamulett", "Katzenamulette", "Amulett", "Amulette"},
|
||||||
IS_MAGIC, NOSKILL, 0, 100, 0, 0, &use_birthdayamulet
|
0, NOSKILL, 0, 100, 0, 0, &use_birthdayamulet
|
||||||
},
|
},
|
||||||
{ /* I_PEGASUS 60 */
|
{ /* I_PEGASUS 60 */
|
||||||
{"Pegasus", "Pegasi", "Pegasus", "Pegasi" },
|
{"Pegasus", "Pegasi", "Pegasus", "Pegasi" },
|
||||||
IS_MAGIC, NOSKILL, 0, 5000, 0, FL_ITEM_ANIMAL | FL_ITEM_NOTINBAG | FL_ITEM_NOTLOST, NULL
|
0, NOSKILL, 0, 5000, 0, FL_ITEM_ANIMAL | FL_ITEM_NOTINBAG | FL_ITEM_NOTLOST, NULL
|
||||||
},
|
},
|
||||||
{ /* I_UNICORN 61 */
|
{ /* I_UNICORN 61 */
|
||||||
{"Elfenpferd", "Elfenpferde", "Elfenpferd", "Elfenpferde"},
|
{"Elfenpferd", "Elfenpferde", "Elfenpferd", "Elfenpferde"},
|
||||||
IS_MAGIC, NOSKILL, 0, 5000, 0, FL_ITEM_ANIMAL | FL_ITEM_NOTINBAG | FL_ITEM_NOTLOST, NULL
|
0, NOSKILL, 0, 5000, 0, FL_ITEM_ANIMAL | FL_ITEM_NOTINBAG | FL_ITEM_NOTLOST, NULL
|
||||||
},
|
},
|
||||||
{ /* I_DOLPHIN 62 */
|
{ /* I_DOLPHIN 62 */
|
||||||
{"Delphin", "Delphine", "Delphin", "Delphine"},
|
{"Delphin", "Delphine", "Delphin", "Delphine"},
|
||||||
IS_MAGIC, NOSKILL, 0, 5000, 0, FL_ITEM_ANIMAL | FL_ITEM_NOTINBAG | FL_ITEM_NOTLOST, NULL
|
0, NOSKILL, 0, 5000, 0, FL_ITEM_ANIMAL | FL_ITEM_NOTINBAG | FL_ITEM_NOTLOST, NULL
|
||||||
},
|
},
|
||||||
{ /* I_RING_OF_NIMBLEFINGER 64 */
|
{ /* I_RING_OF_NIMBLEFINGER 64 */
|
||||||
{"Ring der flinken Finger", "Ringe der flinken Finger", "", ""},
|
{"Ring der flinken Finger", "Ringe der flinken Finger", "", ""},
|
||||||
IS_MAGIC, NOSKILL, 0, 0, 0, 0, NULL
|
0, NOSKILL, 0, 0, 0, 0, NULL
|
||||||
},
|
},
|
||||||
{ /* I_TROLLBELT 65 */
|
{ /* I_TROLLBELT 65 */
|
||||||
{"Gürtel der Trollstärke", "Gürtel der Trollstärke", "", ""},
|
{"Gürtel der Trollstärke", "Gürtel der Trollstärke", "", ""},
|
||||||
IS_MAGIC, NOSKILL, 0, 0, 0, 0, NULL
|
0, NOSKILL, 0, 0, 0, 0, NULL
|
||||||
},
|
},
|
||||||
{ /* I_PRESSCARD 67 */
|
{ /* I_PRESSCARD 67 */
|
||||||
{"Akkredition des Xontormia-Expreß", "Akkreditionen des Xontormia-Expreß",
|
{"Akkredition des Xontormia-Expreß", "Akkreditionen des Xontormia-Expreß",
|
||||||
"Akkredition des Xontormia-Expreß", "Akkreditionen des Xontormia-Expreß"},
|
"Akkredition des Xontormia-Expreß", "Akkreditionen des Xontormia-Expreß"},
|
||||||
IS_MAGIC, NOSKILL, 0, 0, 0, FL_ITEM_CURSED, NULL
|
0, NOSKILL, 0, 0, 0, FL_ITEM_CURSED, NULL
|
||||||
},
|
},
|
||||||
{ /* I_AURAKULUM 69 */
|
{ /* I_AURAKULUM 69 */
|
||||||
{"Aurafocus", "Aurafocuse", "Amulett", "Amulette"},
|
{"Aurafocus", "Aurafocuse", "Amulett", "Amulette"},
|
||||||
IS_MAGIC, NOSKILL, 0, 100, 0, 0, NULL
|
0, NOSKILL, 0, 100, 0, 0, NULL
|
||||||
},
|
|
||||||
{ /* I_SEASERPENTHEAD 70 */
|
|
||||||
{"Seeschlangenkopf", "Seeschlangenköpfe",
|
|
||||||
"Seeschlangenkopf", "Seeschlangenköpfe"},
|
|
||||||
IS_MAGIC, NOSKILL, 0, 500, 0, 0, NULL
|
|
||||||
},
|
},
|
||||||
{ /* I_SPHERE_OF_INVISIBILITY */
|
{ /* I_SPHERE_OF_INVISIBILITY */
|
||||||
{"Sphäre der Unsichtbarkeit", "Sphären der Unsichtbarkeit", "", ""},
|
{"Sphäre der Unsichtbarkeit", "Sphären der Unsichtbarkeit", "", ""},
|
||||||
IS_MAGIC, NOSKILL, 0, 100, 0, 0, NULL
|
0, NOSKILL, 0, 100, 0, 0, NULL
|
||||||
},
|
},
|
||||||
{ /* I_BAG_OF_HOLDING */
|
{ /* I_BAG_OF_HOLDING */
|
||||||
{"Zauberbeutel", "Zauberbeutel", "Zauberbeutel", "Zauberbeutel"},
|
{"Zauberbeutel", "Zauberbeutel", "Zauberbeutel", "Zauberbeutel"},
|
||||||
IS_MAGIC, NOSKILL, 0, 100, 0, FL_ITEM_NOTINBAG|FL_ITEM_NOTLOST, NULL
|
0, NOSKILL, 0, 100, 0, FL_ITEM_NOTINBAG|FL_ITEM_NOTLOST, NULL
|
||||||
},
|
},
|
||||||
{ /* I_SACK_OF_CONSERVATION */
|
{ /* I_SACK_OF_CONSERVATION */
|
||||||
{"Magischer Kräuterbeutel", "Magische Kräuterbeutel", "", ""},
|
{"Magischer Kräuterbeutel", "Magische Kräuterbeutel", "", ""},
|
||||||
IS_MAGIC, NOSKILL, 0, 100, 0, 0, NULL
|
0, NOSKILL, 0, 100, 0, 0, NULL
|
||||||
},
|
},
|
||||||
{ /* I_TACTICCRYSTAL 71 */
|
{ /* I_TACTICCRYSTAL 71 */
|
||||||
{"Traumauge", "Traumaugen", "", ""},
|
{"Traumauge", "Traumaugen", "", ""},
|
||||||
IS_MAGIC, NOSKILL, 0, 100, 0, 0, &use_tacticcrystal
|
0, NOSKILL, 0, 100, 0, 0, &use_tacticcrystal
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -871,7 +849,6 @@ init_olditems(void)
|
||||||
const char * appearance[2];
|
const char * appearance[2];
|
||||||
int weight = itemdata[i].gewicht;
|
int weight = itemdata[i].gewicht;
|
||||||
int capacity = 0;
|
int capacity = 0;
|
||||||
attrib * a;
|
|
||||||
item_type * itype;
|
item_type * itype;
|
||||||
|
|
||||||
if (itemdata[i].flags & FL_ITEM_CURSED) iflags |= ITF_CURSED;
|
if (itemdata[i].flags & FL_ITEM_CURSED) iflags |= ITF_CURSED;
|
||||||
|
@ -920,21 +897,16 @@ init_olditems(void)
|
||||||
if (itemdata[i].flags & FL_ITEM_MOUNT) itype->capacity = HORSECAPACITY;
|
if (itemdata[i].flags & FL_ITEM_MOUNT) itype->capacity = HORSECAPACITY;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* itemdata::typ Analyse. IS_PRODUCT und IS_MAGIC sind so gut wie egal. */
|
if (itemdata[i].is_resource) {
|
||||||
switch (itemdata[i].typ) {
|
attrib * a = a_add(&rtype->attribs, a_new(&at_resourcelimit));
|
||||||
case IS_RESOURCE:
|
|
||||||
rtype->flags |= RTF_LIMITED;
|
|
||||||
a = a_add(&rtype->attribs, a_new(&at_resourcelimit));
|
|
||||||
{
|
|
||||||
resource_limit * rdata = (resource_limit*)a->data.v;
|
resource_limit * rdata = (resource_limit*)a->data.v;
|
||||||
|
rtype->flags |= RTF_LIMITED;
|
||||||
if (i==I_HORSE) {
|
if (i==I_HORSE) {
|
||||||
rdata->limit = limit_oldresource;
|
rdata->limit = limit_oldresource;
|
||||||
rdata->produce = produce_oldresource;
|
rdata->produce = produce_oldresource;
|
||||||
}
|
}
|
||||||
if (i==I_LAEN || i==I_IRON) rdata->guard |= GUARD_MINING;
|
if (i==I_LAEN || i==I_IRON) rdata->guard |= GUARD_MINING;
|
||||||
}
|
}
|
||||||
break;
|
|
||||||
}
|
|
||||||
if (itemdata[i].benutze_funktion) {
|
if (itemdata[i].benutze_funktion) {
|
||||||
itype->use = use_olditem;
|
itype->use = use_olditem;
|
||||||
}
|
}
|
||||||
|
|
|
@ -262,10 +262,8 @@ enum {
|
||||||
I_AMULET_OF_TRUE_SEEING,
|
I_AMULET_OF_TRUE_SEEING,
|
||||||
I_RING_OF_INVISIBILITY,
|
I_RING_OF_INVISIBILITY,
|
||||||
I_RING_OF_POWER,
|
I_RING_OF_POWER,
|
||||||
I_DRAGONHEAD,
|
|
||||||
I_CHASTITY_BELT, /* bleibt */
|
I_CHASTITY_BELT, /* bleibt */
|
||||||
I_LAEN,
|
I_LAEN,
|
||||||
I_DRACHENBLUT,
|
|
||||||
I_FEENSTIEFEL,
|
I_FEENSTIEFEL,
|
||||||
I_BIRTHDAYAMULET,
|
I_BIRTHDAYAMULET,
|
||||||
I_PEGASUS,
|
I_PEGASUS,
|
||||||
|
@ -275,7 +273,6 @@ enum {
|
||||||
I_TROLLBELT,
|
I_TROLLBELT,
|
||||||
I_PRESSCARD,
|
I_PRESSCARD,
|
||||||
I_AURAKULUM,
|
I_AURAKULUM,
|
||||||
I_SEASERPENTHEAD,
|
|
||||||
I_SPHERE_OF_INVISIBILITY,
|
I_SPHERE_OF_INVISIBILITY,
|
||||||
I_BAG_OF_HOLDING,
|
I_BAG_OF_HOLDING,
|
||||||
I_SACK_OF_CONSERVATION,
|
I_SACK_OF_CONSERVATION,
|
||||||
|
@ -293,10 +290,8 @@ enum {
|
||||||
R_AMULET_OF_TRUE_SEEING,
|
R_AMULET_OF_TRUE_SEEING,
|
||||||
R_RING_OF_INVISIBILITY,
|
R_RING_OF_INVISIBILITY,
|
||||||
R_RING_OF_POWER,
|
R_RING_OF_POWER,
|
||||||
R_DRAGONHEAD,
|
|
||||||
R_CHASTITY_BELT,
|
R_CHASTITY_BELT,
|
||||||
R_EOG,
|
R_EOG,
|
||||||
R_DRACHENBLUT,
|
|
||||||
R_FEENSTIEFEL,
|
R_FEENSTIEFEL,
|
||||||
R_BIRTHDAYAMULET,
|
R_BIRTHDAYAMULET,
|
||||||
R_PEGASUS,
|
R_PEGASUS,
|
||||||
|
@ -306,7 +301,6 @@ enum {
|
||||||
R_TROLLBELT,
|
R_TROLLBELT,
|
||||||
R_PRESSCARD,
|
R_PRESSCARD,
|
||||||
R_AURAKULUM,
|
R_AURAKULUM,
|
||||||
R_SEASERPENTHEAD,
|
|
||||||
R_SPHERE_OF_INVISIBILITY,
|
R_SPHERE_OF_INVISIBILITY,
|
||||||
R_BAG_OF_HOLDING,
|
R_BAG_OF_HOLDING,
|
||||||
R_SACK_OF_CONSERVATION,
|
R_SACK_OF_CONSERVATION,
|
||||||
|
|
|
@ -710,9 +710,6 @@ gm_addquest(const char * email, const char * name, short radius, unsigned int fl
|
||||||
for (i=0;i<=I_HORSE;++i) {
|
for (i=0;i<=I_HORSE;++i) {
|
||||||
a_add((attrib**)&a->data.v, make_atgmcreate(olditemtype[i]));
|
a_add((attrib**)&a->data.v, make_atgmcreate(olditemtype[i]));
|
||||||
}
|
}
|
||||||
for (i=I_LAEN;i!=I_DRACHENBLUT;++i) {
|
|
||||||
a_add((attrib**)&a->data.v, make_atgmcreate(olditemtype[i]));
|
|
||||||
}
|
|
||||||
|
|
||||||
/* one initial unit */
|
/* one initial unit */
|
||||||
u = createunit(center, f, 1, new_race[RC_TEMPLATE]);
|
u = createunit(center, f, 1, new_race[RC_TEMPLATE]);
|
||||||
|
@ -775,10 +772,6 @@ gm_addfaction(const char * email, plane * p, region * r)
|
||||||
for (i=0;i<=I_HORSE;++i) {
|
for (i=0;i<=I_HORSE;++i) {
|
||||||
a_add((attrib**)&a->data.v, make_atgmcreate(olditemtype[i]));
|
a_add((attrib**)&a->data.v, make_atgmcreate(olditemtype[i]));
|
||||||
}
|
}
|
||||||
for (i=I_LAEN;i!=I_DRACHENBLUT;++i) {
|
|
||||||
a_add((attrib**)&a->data.v, make_atgmcreate(olditemtype[i]));
|
|
||||||
}
|
|
||||||
|
|
||||||
/* one initial unit */
|
/* one initial unit */
|
||||||
u = createunit(r, f, 1, new_race[RC_TEMPLATE]);
|
u = createunit(r, f, 1, new_race[RC_TEMPLATE]);
|
||||||
u->irace = new_race[RC_GNOME];
|
u->irace = new_race[RC_GNOME];
|
||||||
|
|
|
@ -1,6 +1,18 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<resources>
|
<resources>
|
||||||
|
|
||||||
|
<resource name="seaserpenthead">
|
||||||
|
<item weight="500" score="400"/>
|
||||||
|
</resource>
|
||||||
|
|
||||||
|
<resource name="dragonblood">
|
||||||
|
<item weight="100" score="100"/>
|
||||||
|
</resource>
|
||||||
|
|
||||||
|
<resource name="dragonhead">
|
||||||
|
<item weight="500" score="300"/>
|
||||||
|
</resource>
|
||||||
|
|
||||||
<resource name="seed" limited="yes">
|
<resource name="seed" limited="yes">
|
||||||
<item weight="10" score="50">
|
<item weight="10" score="50">
|
||||||
<construction skill="herbalism" minskill="3" reqsize="1"/>
|
<construction skill="herbalism" minskill="3" reqsize="1"/>
|
||||||
|
|
Loading…
Reference in New Issue