diff options
author | Eugenio Favalli <elvenprogrammer@gmail.com> | 2004-09-30 14:07:33 +0000 |
---|---|---|
committer | Eugenio Favalli <elvenprogrammer@gmail.com> | 2004-09-30 14:07:33 +0000 |
commit | 5bb46ab6358834d13f483628eb5ddd43b4c985bc (patch) | |
tree | 4bfdaf98b3afe8d98d6014fd40939c1090fcdd86 /src/gui/shop.cpp | |
parent | 2355936b926cb16a5e3e582fce43a9f9a237e78e (diff) | |
download | mana-5bb46ab6358834d13f483628eb5ddd43b4c985bc.tar.gz mana-5bb46ab6358834d13f483628eb5ddd43b4c985bc.tar.bz2 mana-5bb46ab6358834d13f483628eb5ddd43b4c985bc.tar.xz mana-5bb46ab6358834d13f483628eb5ddd43b4c985bc.zip |
*** empty log message ***
Diffstat (limited to 'src/gui/shop.cpp')
-rw-r--r-- | src/gui/shop.cpp | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/src/gui/shop.cpp b/src/gui/shop.cpp new file mode 100644 index 00000000..84fe279e --- /dev/null +++ b/src/gui/shop.cpp @@ -0,0 +1,88 @@ +/** + + The Mana World + Copyright 2004 The Mana World Development Team + + This file is part of The Mana World. + + The Mana World is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + any later version. + + The Mana World is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with The Mana World; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + By ElvenProgrammer aka Eugenio Favalli (umperio@users.sourceforge.net) + +*/ + +#include "shop.h" + +#include <allegro.h> + +int n_items; +ITEM_SHOP *shop = NULL; + +char *item_db[] = { "Candy", "Medical Herb", "Chocolate" }; + +char *shop_list(int index, int *list_size) { + if(index<0) { + *list_size = n_items; + return NULL; + } else { + int iterator = 0; + ITEM_SHOP *item_shop = shop; + while(iterator<index) { + item_shop = item_shop->next; + iterator++; + } + return item_shop->name; + } +} + +void add_item(short id, int price) { + ITEM_SHOP *item_shop = (ITEM_SHOP *)malloc(sizeof(ITEM_SHOP)); + if(id-501>=0 && id-501<=2) + sprintf(item_shop->name, "%s %i gp", item_db[id-501], price); + else + sprintf(item_shop->name, "Unknown item %i gp", price); + item_shop->price = price; + item_shop->id = id; + item_shop->next = NULL; + if(shop==NULL) + shop = item_shop; + else { + ITEM_SHOP *temp = shop; + while(temp->next) + temp = temp->next; + temp->next = item_shop; + } +} + +void close_shop() { + ITEM_SHOP *temp, *next; + temp = shop; + while(temp) { + next = temp->next; + free(temp); + temp = next; + } + shop = NULL; +} + +short get_item_id(int index) { + int iterator = 0; + ITEM_SHOP *item_shop = shop; + while(iterator<index) { + item_shop = item_shop->next; + iterator++; + } + return item_shop->id; +} |