try
{
char *temp;
+ temp = strtok(datastr, "~"); // Type
mytype = WEAPON;
// Grab the item's id
temp = strtok(NULL, "~");
mymodifiers[x] = stringtoint(temp);
}
-
- // If we got here, we were successful
+ // If we got here, we're successful
return true;
}
catch (char *str)
bool armor::setData(char *datastr)
{
- char *temp;
-
- mytype = ARMOR;
-
try
{
+ char *temp;
+ strtok(datastr, "~"); // Type
+
+ mytype = ARMOR;
// Grab the item's id
- temp = strtok("~", NULL);
+ temp = strtok(NULL, "~");
id = stringtoint(temp);
-
+
// Grab the item's name
- temp = strtok("~", NULL);
+ temp = strtok(NULL, "~");
myname = temp;
// Grab the item's price
- temp = strtok("~", NULL);
+ temp = strtok(NULL, "~");
myprice = stringtoint(temp);
// Grab the item's uses
- temp = strtok("~", NULL);
+ temp = strtok(NULL, "~");
myuses = stringtoint(temp);
// Grab the item's modifiers
- for (int x = 0; x < 5; x++)
+ for (int x = 0; x < 4; x++)
{
- temp = strtok("~", NULL);
+ temp = strtok(NULL, "~");
mymodifiers[x] = stringtoint(temp);
}
+ // If we got here, we were successful
+ return true;
}
catch(char *str)
{
return false;
}
- // If we got here, we were successful
- return true;
}
bool armor::use(Player *p)
return false;
else
{
- p->strength += mymodifiers[0];
- p->defense += mymodifiers[1];
- p->maxhp += mymodifiers[2];
- p->hp += mymodifiers[3];
- p->forest_fights += mymodifiers[4];
- p->player_fights += mymodifiers[5];
- p->gold += mymodifiers[6];
- p->bank += mymodifiers[7];
+ p->strength += myranges[0].random();
+ p->defense += myranges[1].random();
+ p->maxhp += myranges[2].random();
+ p->hp += myranges[3].random();
+ p->forest_fights += myranges[4].random();
+ p->player_fights += myranges[5].random();
+ p->gold += myranges[6].random();
+ p->bank += myranges[7].random();
}
if (myuses > 0)
try
{
char *temp;
-
+
+ temp = strtok(datastr, "~"); // Type
+
mytype = ARMOR;
// Grab the item's id
- temp = strtok("~", NULL);
+ temp = strtok(NULL, "~");
id = stringtoint(temp);
// Grab the item's name
- temp = strtok("~", NULL);
+ temp = strtok(NULL, "~");
myname = temp;
// Grab the item's price
- temp = strtok("~", NULL);
+ temp = strtok(NULL, "~");
myprice = stringtoint(temp);
// Grab the item's uses
- temp = strtok("~", NULL);
+ temp = strtok(NULL, "~");
myuses = stringtoint(temp);
// Grab the item's modifiers
- for (int x = 0; x < 5; x++)
+ for (int x = 0; x < 8; x++)
{
- temp = strtok("~", NULL);
- mymodifiers[x] = stringtoint(temp);
+ temp = strtok(NULL, "~");
+ myranges[x].low = stringtoint(temp);
+ temp = strtok(NULL, "~");
+ myranges[x].high = stringtoint(temp);
}
}
catch(char *str)
myitem = NULL;
}
-itemContainer::itemContainer(item *i)
-{
+itemContainer::itemContainer(item *i){
myuses = i->uses();
myitem = i;
}
{
return (*myitem == *right.myitem);
}
+
+void itemContainer::setUses(int uses)
+{
+ myuses = uses;
+}