Esempio n. 1
0
File: SLIDR.C Progetto: LesInk/Test
T_sliderID SliderCreate (T_word16 lx1, T_word16 ly1, T_word16 lx2)
{
	T_word16 i;
   T_word16 size;
   T_sliderStruct *p_slider;

	DebugRoutine ("SliderCreate");

	for (i=0;i<MAX_SLIDERS;i++)
	{
		if (G_sliderArray[i]==NULL)  //add a slider to list
		{
         /* found an empty slot, allocate slider struct */
         p_slider = (T_sliderStruct *)G_sliderArray[i];
         size=sizeof (T_sliderStruct);
         p_slider = (T_sliderID)MemAlloc(size);
         /* check to make sure memory was allocated */
         DebugCheck (p_slider != NULL);
         p_slider->lx1=lx1;
         p_slider->ly1=ly1;
         p_slider->lx2=lx2;
         p_slider->sliderx=lx1;
         p_slider->callback=NULL;
         p_slider->curval=0;
         p_slider->knobgraphic=GraphicCreate (p_slider->sliderx,ly1-4,"UI/3DUI/SLIDER");
         G_sliderArray[i]=p_slider;
         break;
		}
	}

	DebugCheck (i<MAX_SLIDERS);
	DebugEnd();
	return (G_sliderArray[i]);
}
Esempio n. 2
0
File: FORM.C Progetto: LesInk/Test
T_formObjectID FormAddGraphic(
        T_word16 x1,
        T_word16 y1,
        T_byte8 *picturename,
        T_word32 idnum)
{
    T_word16 i;
    T_graphicID graphicID;

    DebugRoutine("FormAddGraphic");
    DebugCheck(picturename!=NULL);

    for (i = 0; i < MAX_FORM_OBJECTS; i++) {
        /* find an empty slot */
        if (G_formObjectArray[i] == NULL ) {
            /* found one, create a new graphic */
            graphicID = GraphicCreate(x1, y1, picturename);
            /* now that a graphic has been created, make an objstruct for it */
            G_formObjectArray[i] = FormCreateObject(FORM_OBJECT_GRAPHIC,
                    (T_formObjectID)graphicID, idnum);
            /* we made a new object struct, break from the loop */
            break;
        }
    }

    /* make sure we haven't exceeded any limits */
    DebugCheck(i!=MAX_FORM_OBJECTS);
    DebugEnd();
    /* return the ID for the object created */
    return (G_formObjectArray[i]);
}
T_void GuildUIStart  (T_word32 formNum)
{
    T_word16 i;

    const T_word16 arrowCoordX[4]=   { 97,  97,  200, 200};
    const T_word16 upArrowCoordY[4]= { 28,  77,  28,  77 };
    const T_word16 dnArrowCoordY[4]= { 67,  117, 67,  117};
    const T_word16 scrollBarY[4]=    { 38,  87,  38,  87 };
    const T_word16 dispWindowX1[4]=  { 6,   6,   109, 109};
    const T_word16 dispWindowY1[4]=  { 28,  77,  28,  77 };
    const T_word16 dispWindowX2[4]=  { 95,  95,  198, 198};
    const T_word16 dispWindowY2[4]=  { 75,  125, 75,  125};

    const E_TxtboxMode dispWindowMode[4]={Txtbox_MODE_SELECTION_BOX,
                                          Txtbox_MODE_VIEW_SCROLL_FORM,
                                          Txtbox_MODE_SELECTION_BOX,
                                          Txtbox_MODE_VIEW_SCROLL_FORM};

    const E_TxtboxJustify dispWindowJustify[4]={Txtbox_JUSTIFY_LEFT,
                                                Txtbox_JUSTIFY_LEFT,
                                                Txtbox_JUSTIFY_CENTER,
                                                Txtbox_JUSTIFY_CENTER};

    DebugRoutine ("GuildUIStart");

    /* load backdrop */
    G_backgroundPic=GraphicCreate (4,3,"UI/GUILD/GLDBACK");

    for (i=GUILD_GAME_LIST;i<=GUILD_MAPS_DESC;i++)
    {
        /* set up display textboxes */
        /* scroll bars and control arrows */
        G_displayBoxes[i]=TxtboxCreate (dispWindowX1[i],
                                        dispWindowY1[i],
                                        dispWindowX2[i],
                                        dispWindowY2[i],
                                        "FontTiny",
                                        0,
                                        0,
                                        FALSE,
                                        dispWindowJustify[i],
                                        dispWindowMode[i],
                                        NULL);
        TxtboxSetData (G_displayBoxes[i]," ");


        G_upButtons[i]=ButtonCreate (arrowCoordX[i],
                                     upArrowCoordY[i],
                                     "UI/COMMON/UPARROW",
                                     FALSE,
                                     0,
                                     NULL,
                                     GuildUIUpDisplay);
        ButtonSetData (G_upButtons[i],i);

        G_dnButtons[i]=ButtonCreate (arrowCoordX[i],
                                     dnArrowCoordY[i],
                                     "UI/COMMON/DNARROW",
                                     FALSE,
                                     0,
                                     NULL,
                                     GuildUIDnDisplay);
        ButtonSetData (G_dnButtons[i],i);

        if (i%2==0)
        {
            G_scrollBars[i]=GraphicCreate (arrowCoordX[i],
                                           scrollBarY[i],
                                           "UI/GUILD/SB1");
        }
        else
        {
            G_scrollBars[i]=GraphicCreate (arrowCoordX[i],
                                           scrollBarY[i],
                                           "UI/GUILD/SB1");
        }

        TxtboxSetScrollBarObjIDs(G_displayBoxes[i],G_upButtons[i],G_dnButtons[i],G_scrollBars[i]);
    }

    /* set up control buttons */
    G_joinButton=ButtonCreate (6,
                               127,
                               "UI/GUILD/JOIN",
                               FALSE,
                               KeyDual(KEY_SCAN_CODE_J,KEY_SCAN_CODE_ALT),
                               NULL,
                               GuildUIJoinGame);

    G_createButton=ButtonCreate (109,
                                 127,
                                 "UI/GUILD/CREATE",
                                 FALSE,
                                 KeyDual(KEY_SCAN_CODE_C,KEY_SCAN_CODE_ALT),
                                 NULL,
                                 GuildUICreateGame);

    /* build map list */
    GuildUIBuildMapList();

    /* initialize game/player listings */
    G_gameList=DoubleLinkListCreate();
    G_playerList=DoubleLinkListCreate();

    /* set up control callbacks */
    TxtboxSetCallback (G_displayBoxes[GUILD_MAPS_LIST],GuildDisplayMapInfo);
    TxtboxSetCallback (G_displayBoxes[GUILD_GAME_LIST],GuildDisplayGameInfo);

    /* notify server to send a list of active games */
    GuildUIRequestGameList();

    /* update graphics */
    GraphicUpdateAllGraphics();

    /* Set up what we are out. */
    ClientSyncSetGameGroupID(*DirectTalkGetNullBlankUniqueAddress()) ;
    PeopleHereSetOurAdventure(0) ;
    PeopleHereSetOurState(PLAYER_ID_STATE_NONE) ;

    /* Ask for people to show themselves. */
    PeopleHereReset() ;

    /* add journal help page if necessary */
    if (StatsPlayerHasNotePage(30)==FALSE &&
        StatsPlayerHasNotePage(0)==TRUE)
    {
        StatsAddPlayerNotePage(30);
    }

    DebugEnd();
}
Esempio n. 4
0
T_void InnUIStart(T_word32 formNum)
{
    T_word16 i;
    T_byte8 stmp[32];
    T_word16 hotkey[4];

    DebugRoutine("InnUIStart");

    /* load backdrop */
    G_backgroundPic = GraphicCreate(4, 3, "UI/INN/INNBACK");

    hotkey[0] = KeyDual(KEY_SCAN_CODE_C,KEY_SCAN_CODE_ALT);
    hotkey[1] = KeyDual(KEY_SCAN_CODE_S,KEY_SCAN_CODE_ALT);
    hotkey[2] = KeyDual(KEY_SCAN_CODE_L,KEY_SCAN_CODE_ALT);
    hotkey[3] = KeyDual(KEY_SCAN_CODE_U,KEY_SCAN_CODE_ALT);

    for (i = 0; i < 4; i++) {
        /* place rent buttons */
        sprintf(stmp, "UI/INN/ROOMBTN%d", i + 1);

        G_rentButtons[i] = ButtonCreate(45, 24 + (i * 28), stmp,
        FALSE, hotkey[i],
        NULL, InnUIRent);

        ButtonSetData(G_rentButtons[i], i);

        /* set up rent cost displays */
        G_rentCostDisplays[i] = TxtboxCreate(45, 37 + (i * 28), 110,
                46 + (i * 28), "FontMedium", 0, 0,
                TRUE, Txtbox_JUSTIFY_CENTER, Txtbox_MODE_VIEW_NOSCROLL_FORM,
                NULL);

        /* set up current funds display */
        G_financeDisplays[i] = TxtboxCreate(164, 32 + (i * 11), 204,
                41 + (i * 11), "FontMedium", 0, 0,
                TRUE, Txtbox_JUSTIFY_CENTER, Txtbox_MODE_VIEW_NOSCROLL_FORM,
                NULL);

        sprintf(stmp, "%d", StatsGetPlayerCoins(3-i));
        TxtboxSetData(G_financeDisplays[i], stmp);

    }

    /* set rent prices */
    TxtboxSetData(G_rentCostDisplays[0], "free!");
    TxtboxSetData(G_rentCostDisplays[1], "2 gold");
    TxtboxSetData(G_rentCostDisplays[2], "1 platinum");
    TxtboxSetData(G_rentCostDisplays[3], "2 platinum");

    GraphicUpdateAllGraphics();

    /* welcome user */
    MessageAdd("^007Welcome to the inn!");

    /* add journal help page if necessary */
    if (StatsPlayerHasNotePage(31) == FALSE && StatsPlayerHasNotePage(0) == TRUE) {
        StatsAddPlayerNotePage(31);
    }

    DebugEnd();
}
Esempio n. 5
0
T_void BankUIStart  (T_word32 formNum)
{
    T_word16 i;
    T_byte8 stmp[64];
    E_statsAdventureNumber adv=ADVENTURE_NONE;
    DebugRoutine ("BankUIStart");

    /* load backdrop */
    G_backgroundPic=GraphicCreate (4,3,"UI/BANK/BANKBACK");

    for (i=0;i<4;i++)
    {
        /* load deposit/withdraw buttons */
        G_depositButtons[i]=ButtonCreate(119,
                                         32+(i*11),
                                         "UI/COMMON/LTARROW",
                                         FALSE,
                                         0,
                                         NULL,
                                         BankUIDeposit);

        ButtonSetData(G_depositButtons[i],3-i);

        G_withdrawButtons[i]=ButtonCreate(131,
                                         32+(i*11),
                                         "UI/COMMON/RTARROW",
                                         FALSE,
                                         0,
                                         NULL,
                                         BankUIWithdraw);

        ButtonSetData(G_withdrawButtons[i],3-i);

        /* create financial display fields */
        G_financeDisplays[i]=TxtboxCreate(57,
                                          31+(i*11),
                                          109,
                                          40+(i*11),
                                          "FontMedium",
                                          0,
                                          0,
                                          TRUE,
                                          Txtbox_JUSTIFY_CENTER,
                                          Txtbox_MODE_VIEW_NOSCROLL_FORM,
                                          NULL);

        sprintf (stmp,"%d",StatsGetPlayerSavedCoins(3-i));
        TxtboxSetData(G_financeDisplays[i],stmp);

        G_financeDisplays[i+4]=TxtboxCreate(148,
                                          31+(i*11),
                                          200,
                                          40+(i*11),
                                          "FontMedium",
                                          0,
                                          0,
                                          TRUE,
                                          Txtbox_JUSTIFY_CENTER,
                                          Txtbox_MODE_VIEW_NOSCROLL_FORM,
                                          NULL);

        sprintf (stmp,"%d",StatsGetPlayerCoins(3-i));
        TxtboxSetData(G_financeDisplays[i+4],stmp);

    }

    GraphicUpdateAllGraphics();

    /* set up bank inventory */
    StoreSetUpInventory(10,82,112,124,6,3);

    /* tell store what items we will buy */
    StoreAddBuyType(EQUIP_OBJECT_TYPE_RING);
    StoreAddBuyType(EQUIP_OBJECT_TYPE_AMULET);

    adv=StatsGetCompletedAdventure();

    switch (adv)
    {
        case ADVENTURE_7:
        /* Ring of Strength 2 */
        StoreAddItem (408,1);
        /* Ring of Speed 2 */
        StoreAddItem (430,1);
        /* Amulet of Quickness */
        StoreAddItem (611,1);
		/* Amulet of Hiding */
		StoreAddItem(609, 1);

        case ADVENTURE_6:
        /* Amulet of Speed */
        StoreAddItem (602,1);
        /* Amulet of Mana Regeneration */
        StoreAddItem (619,1);

        case ADVENTURE_5:
        /* Amulet of Accuracy */
        StoreAddItem (605,1);
        /* Ring of Stealth */
		StoreAddItem(438, 1);
		/* Ring of Armor 1 */
        StoreAddItem (415,1);
        /* Amulet of Spell Focus */
        StoreAddItem (600,1);

        case ADVENTURE_4:
		/* Ring of Regen 2 */
		StoreAddItem(406, 1);
		/* Ring of Speed 1 */
        StoreAddItem (429,1);
        /* Ring of Accuracy 2 */
        StoreAddItem (421,1);

        case ADVENTURE_3:
        /* Ring of Strength 1 */
        StoreAddItem (407,1);
        /* Ring of Map */
        StoreAddItem (435,1);

        case ADVENTURE_2:
        /* Ring of Accuracy 1 */
        StoreAddItem (420,1);

        case ADVENTURE_1:
		/* Amulet of Stealth */
		StoreAddItem(603, 1);
		/* Ring of Regen 1 */
		StoreAddItem(405, 1);

        case ADVENTURE_NONE:
        default:
        /* Ring of Food Conservation */
        StoreAddItem (426,1);
        /* Ring of Water Conservation */
        StoreAddItem (427,1);
        /* Ring of Water Walk */
        StoreAddItem (400,1);
        /* Ring of Traction */
        StoreAddItem (432,1);
        break;

        case ADVENTURE_UNKNOWN:
        DebugCheck(0);
        break;
    }


    /* Amulet of Falling */
///  StoreAddItem (614,1);
    /* Ring of Regen 2 */
//    StoreAddItem (406,1);
    /* Ring of Strength 3 */
//    StoreAddItem (409,1);
    /* Ring of Strength 4 */
//    StoreAddItem (410,1);
    /* Ring of Strength 5 */
//    StoreAddItem (411,1);
    /* Ring of Armor 2 */
//    StoreAddItem (416,1);
    /* Ring of Armor 3 */
//    StoreAddItem (417,1);
    /* Ring of Armor 4 */
//    StoreAddItem (418,1);
    /* Ring of Armor 5 */
//    StoreAddItem (419,1);
    /* Ring of Accuracy 3 */
//  StoreAddItem (422,1);
    /* Ring of Accuracy 4 */
//  StoreAddItem (423,1);
    /* Ring of Accuracy 5 */
//  StoreAddItem (424,1);
    /* Ring of Speed 4 */
//  StoreAddItem (428,1);
    /* Ring of Speed 3 */
//  StoreAddItem (431,1);
    /* Ring of Jumping */
//  StoreAddItem (434,1);
    /* Amulet of Regeneration */
//  StoreAddItem (601,1);
    /* Amulet of Strength */
//  StoreAddItem (604,1);
    /* Amulet of Poison Protection */
//  StoreAddItem (606,1);
    /* Amulet of Fire Protection */
//  StoreAddItem (607,1);
    /* Amulet of Lava Walk */
//  StoreAddItem (608,1);
    /* Amulet of Eternal Nourishment */
//  StoreAddItem (610,1);
    /* Amulet of Jumping */
//  StoreAddItem (612,1);
    /* Amulet of Flying */
//  StoreAddItem (613,1);
    /* Amulet of Super Armor */
//  StoreAddItem (615,1);
    /* Amulet of Acid Protection */
//  StoreAddItem (616,1);
    /* Amulet of Electricity Protection */
//  StoreAddItem (617,1);
    /* Amulet of Mana Drain Protection */
//  StoreAddItem (618,1);

    InventoryReorder(INVENTORY_STORE,TRUE);
    InventoryDrawInventoryWindow (INVENTORY_STORE);

    /* set up store control callback */
    StoreSetControlCallback (BankUIUpdateGraphics);

    /* welcome user */
    MessageAdd ("^007Welcome to the bank!");

    /* add journal help page if necessary */
    if (StatsPlayerHasNotePage(33)==FALSE &&
        StatsPlayerHasNotePage(0)==TRUE)
    {
        StatsAddPlayerNotePage(33);
    }
    else
    {
        /* force loading of inventory banner display */
        BannerOpenForm(BANNER_FORM_INVENTORY);
    }

    DebugEnd();
}
Esempio n. 6
0
/* loads 'store ui' */
T_void StoreUIStart  (T_word32 formNum)
{
    T_word16 i;
    E_statsAdventureNumber adv=ADVENTURE_NONE;
    const T_word16 firstArmor=12988;
    const T_word16 firstWeapon=12488;
    /* bronze, silver, steel, hsteel */
    const T_word16 materialOffsets[4]={0,8192,12288,16384};
    DebugRoutine ("StoreUIStart");

    /* load backdrop */
    G_backgroundPic=GraphicCreate (4,3,"UI/STORE/STORBACK");

    for (i=0;i<4;i++)
    {
        /* create financial display fields */
        G_financeDisplays[i]=TxtboxCreate(164,
                                          32+(i*11),
                                          204,
                                          41+(i*11),
                                          "FontMedium",
                                          0,
                                          0,
                                          TRUE,
                                          Txtbox_JUSTIFY_CENTER,
                                          Txtbox_MODE_VIEW_NOSCROLL_FORM,
                                          NULL);

    }

    StoreUIUpdateGraphics();
    GraphicUpdateAllGraphics();

    /* set up store inventory */
    StoreSetUpInventory(10,26,112,124,6,7);

    /* set up what items the store will buy */
    StoreAddBuyType (EQUIP_OBJECT_TYPE_WEAPON);
    StoreAddBuyType (EQUIP_OBJECT_TYPE_ARMOR);
    StoreAddBuyType (EQUIP_OBJECT_TYPE_POTION);
    StoreAddBuyType (EQUIP_OBJECT_TYPE_WAND);
    StoreAddBuyType (EQUIP_OBJECT_TYPE_SCROLL);
    StoreAddBuyType (EQUIP_OBJECT_TYPE_THING);
    StoreAddBuyType (EQUIP_OBJECT_TYPE_BOLT);
    StoreAddBuyType (EQUIP_OBJECT_TYPE_QUIVER);

    adv=StatsGetCompletedAdventure();

    switch (adv)
    {
        case ADVENTURE_7:
        /* Potion of Invisibility */
        StoreAddItem (815,1);
        /* Wand of Disintegrate */
        StoreAddItem (918,1);
        /* Mage rune 9 */
        StoreAddItem (308,1);
        /* Adiminium long sword */
        StoreAddItem (45260, 1);
        /* Adaminium dagger */
        StoreAddItem (45256, 1);
        /* Adaminium mace */
        StoreAddItem (45257, 1);

        case ADVENTURE_6:
        /* Axe of Power */
        StoreAddItem (232,1);
        /* Dagger of Piercing */
        StoreAddItem (215,1);
        /* Scroll of Health 3 */
        StoreAddItem (356,1);
        /* Scroll of Flying */
        StoreAddItem (360,1);
        /* Scroll of Invisibility */
        StoreAddItem (361,1);
        /* Potion of Healing 3 */
        StoreAddItem (802,1);
        /* Potion of Armor 5 */
        StoreAddItem (811,1);
        /* Wand of Homing Deathballs */
        StoreAddItem (905,1);
        /* Wand of Lightning Bolts */
        StoreAddItem (907,1);
        /* Mage rune 6, 8 */
        StoreAddItem (305, 1);
        StoreAddItem (307, 1);
        /* Obsidian dagger */
        StoreAddItem(37064, 1);
        /* Obsidian short sword */
        StoreAddItem(37067,1);

        case ADVENTURE_5:
        /* Long Sword of Striking */
        StoreAddItem (212,1);
        /* Potion of Flying */
        StoreAddItem (805,1);
        /* Potion of Armor 4 */
        StoreAddItem (810,1);
        /* Potion of Lava Walking */
        StoreAddItem (813,1);
        /* Potion of Translucency */
        StoreAddItem (816,1);
        /* Potion of Demon Strength */
        StoreAddItem (820,1);
        /* Wand of Homing Fireballs */
        StoreAddItem (904,1);
        /* Wand of Berserk */
        StoreAddItem (914,1);
        /* Quiver of piercing bolts */
        StoreAddItem (147,1);
        /* Mage rune 7 */
        StoreAddItem (306,1);
        /* Cleric rune 9 */
        StoreAddItem (317,1);
        /* Dagger of fire */
        StoreAddItem (214,1);
        /* Mithril staff */
        StoreAddItem(32970,1);
        /* Mithril short sword */
        StoreAddItem(32971,1);
        /* Mithril long sword */
        StoreAddItem(32972,1);
        /* Mithril heavy armor */
        StoreAddItem (33476,1);
        StoreAddItem (33477,1);
        StoreAddItem (33478,1);
        StoreAddItem (33479,1);


        case ADVENTURE_4:
        /* Dagger of Acid */
        StoreAddItem (230,1);
        /* Staff of Poison */
        StoreAddItem (219,1);
        /* Mace of Speed */
        StoreAddItem (224,1);
        /* Short Sword of Striking */
        StoreAddItem (211,1);
        /* Scroll of Health 2 */
        StoreAddItem (355,1);
        /* Potion of Regen 2 */
        StoreAddItem (804,1);
        /* Potion of Cure Poison 2 */
        StoreAddItem (807,1);
        /* Wand of Acid */
        StoreAddItem (902,1);
        /* Wand of Fireballs */
        StoreAddItem (903,1);
        /* Wand of Earthsmite */
        StoreAddItem (906,1);
        /* Wand of Slow */
        StoreAddItem (917,1);
        /* Quiver of electricity bolts */
        StoreAddItem (149,1);
        /* Hsteel long sword */
        StoreAddItem (28876, 1);
        /* Hsteel axe */
        StoreAddItem (28877, 1);
        /* Hsteel mace */
        StoreAddItem (28873, 1);
        /* Hsteel staff */
        StoreAddItem (28874, 1);
        /* Mithril light armor, hsteel heavy armor */
        StoreAddItem (33472, 1);
        StoreAddItem (33473, 1);
        StoreAddItem (33474, 1);
        StoreAddItem (33475, 1);
        StoreAddItem (29380, 1);
        StoreAddItem (29381, 1);
        StoreAddItem (29382, 1);
        StoreAddItem (29383, 1);

        case ADVENTURE_3:
        /* Axe of Accuracy */
        StoreAddItem (228,1);
        /* Staff of Speed */
        StoreAddItem (225,1);
        /* Scroll of identify all */
        StoreAddItem (351,1);
        /* Gain Strength Scroll */
        StoreAddItem (364,1);
        /* Gain Magic Scroll */
        StoreAddItem (367,1);
        /* Gain Speed Scroll */
        StoreAddItem (368,1);
        /* Potion of Holy Strength */
        StoreAddItem (819,1);
        /* Wand of Poison Missile */
        StoreAddItem (912,1);
        /* Quiver of poison bolts */
        StoreAddItem (146,1);
        /* Cleric runes 7, 8 */
        StoreAddItem (315, 1);
        StoreAddItem (316, 1);
        /* Steel mace */
        StoreAddItem(24777,1);
        /* Steel short sword */
        StoreAddItem(24779,1);
        /* Steel long sword */
        StoreAddItem(24780,1);
        /* Steel Axe */
        StoreAddItem(24781,1);
        /* Hsteel dagger */
        StoreAddItem(28872,1);
        /* steel heavy armor */
        StoreAddItem (25284, 1);
        StoreAddItem (25285, 1);
        StoreAddItem (25286, 1);
        StoreAddItem (25287, 1);
        /* Hsteel light armor */
        StoreAddItem (29376, 1);
        StoreAddItem (29377, 1);
        StoreAddItem (29378, 1);
        StoreAddItem (29379, 1);


        case ADVENTURE_2:
        /* Dagger of Speed */
        StoreAddItem (223,1);
        /* Scroll of Regeneration 1 */
        StoreAddItem (357,1);
        /* Gain Mana Scroll #2 */
        StoreAddItem (363,1);
        /* Gain Electric Attack Scroll */
        StoreAddItem (370,1);
        /* Potion of Armor 3 */
        StoreAddItem (809,1);
        /* Potion of Speed */
        StoreAddItem (814,1);
        /* Wand of Homing Darts */
        StoreAddItem (901,1);
        /* Quiver of acid bolts */
        StoreAddItem (148,1);
        /* mage runes 4, 5 */
        StoreAddItem (303,1);
        StoreAddItem (304,1);
        /* Cleric runes 4, 5, 6*/
        StoreAddItem (312,1);
        StoreAddItem (313,1);
        StoreAddItem (314,1);
        /* Silver long sword */
        StoreAddItem(20684, 1);
        /* Silver Axe */
        StoreAddItem(20685, 1);
        /* Steel dagger */
        StoreAddItem(24776, 1);
        /* Steel staff */
        StoreAddItem(24778, 1);
        /* Steel armor */
        StoreAddItem (25277, 1);
        StoreAddItem (25278, 1);
        StoreAddItem (25279, 1);
        StoreAddItem (25280, 1);
        StoreAddItem (25281, 1);
        StoreAddItem (25282, 1);
        StoreAddItem (25283, 1);


        case ADVENTURE_1:
        /* Dagger of Accuracy */
        StoreAddItem (227,1);
        /* Gain Accuracy Scroll */
        StoreAddItem (365,1);
        /* Gain Stealth Scroll */
        StoreAddItem (366,1);
        /* Gain Fire Attack Scroll */
        StoreAddItem (371,1);
        /* Potion of Healing 2 */
        StoreAddItem (801,1);
        /* Potion of Regen 1 */
        StoreAddItem (803,1);
        /* Potion of Cure Poison 1 */
        StoreAddItem (806,1);
        /* Potion of Feather Falling */
        StoreAddItem (817,1);
        /* Potion of Night Vision */
        StoreAddItem (823,1);
        /* Potion of Traction */
        StoreAddItem (824,1);
        /* Potion of Giant Strength */
        StoreAddItem (818,1);
        /* Wand of Darts */
        StoreAddItem (900,1);
        /* Wand of Confusion */
        StoreAddItem (913,1);
        /* Wand of Unlock Door */
        StoreAddItem (920,1);
        /* Quiver of fire bolts */
        StoreAddItem (145,1);
        /* mage runes 2 and 3 */
        StoreAddItem (301,1);
        StoreAddItem (302,1);
        /* Cleric rune 2 and 3 */
        StoreAddItem (310,1);
        StoreAddItem (311,1);
        /* Silver dagger */
        StoreAddItem(20680,1);
        /* Silver mace */
        StoreAddItem(20681,1);
        /* Silver short sword */
        StoreAddItem(20683,1);
        /* Silver studded leather */
        StoreAddItem (21181, 1);
        StoreAddItem (21182, 1);
        StoreAddItem (21183, 1);
        StoreAddItem (21184, 1);
        StoreAddItem (21185, 1);
        StoreAddItem (21186, 1);
        StoreAddItem (21187, 1);
        StoreAddItem (21188, 1);
        StoreAddItem (21189, 1);
        StoreAddItem (21190, 1);
        StoreAddItem (21191, 1);

        case ADVENTURE_NONE:
        default:
        /* apple */
        StoreAddItem (19,1);
        /* Berries */
        StoreAddItem (243,1);
        /* Carrot */
        StoreAddItem (244,1);
        /* Cherry */
        StoreAddItem (245,1);
        /* Water gourd */
        StoreAddItem (246,1);
        /* Chicken */
        StoreAddItem (247,1);
        /* Grape */
        StoreAddItem (248,1);
        /* Banana */
        StoreAddItem (249,1);
        /* Pineapple */
        StoreAddItem (251,1);
        /* crossbow */
        StoreAddItem (28,1);
        /* Iron Dagger */
        StoreAddItem (200,1);
        /* Iron Mace */
        StoreAddItem (201,1);
        /* Iron Staff */
        StoreAddItem (202,1);
        /* Iron Short Sword */
        StoreAddItem (203,1);
        /* Iron Long Sword */
        StoreAddItem (204,1);
        /* Iron Axe */
        StoreAddItem (205,1);
        /* Dagger of Striking */
        StoreAddItem (210,1);
        /* Scroll of identify readied */
        StoreAddItem (350,1);
        /* Scroll of Health 1 */
        StoreAddItem (354,1);
        /* Scroll of Armor */
        StoreAddItem (358,1);
        /* Gain Mana Scroll #1 */
        StoreAddItem (362,1);
        /* Potion of Healing 1 */
        StoreAddItem (800,1);
        /* Potion of Armor 1 */
        StoreAddItem (808,1);
        /* Potion of Water Walking */
        StoreAddItem (812,1);
        /* Potion of Food */
        StoreAddItem (821,1);
        /* Potion of Water */
        StoreAddItem (822,1);
        /* Wand of Earthbind */
        StoreAddItem (911,1);
        /* Wand of Pushing */
        StoreAddItem (915,1);
        /* Wand of Pulling */
        StoreAddItem (916,1);
        /* Leather Breast */
        StoreAddItem (701,1);
        /* Leather Arm */
        StoreAddItem (702,1);
        /* Leather Leg */
        StoreAddItem (703,1);
        /* Mail Helm */
        StoreAddItem (704,1);
        /* Mail Chest */
        StoreAddItem (705,1);
        /* Mail Arm */
        StoreAddItem (706,1);
        /* Mail Leg */
        StoreAddItem (707,1);
        /* Plate Helm */
        StoreAddItem (708,1);
        /* Plate Chest */
        StoreAddItem (709,1);
        /* Plate Arm */
        StoreAddItem (710,1);
        /* Plate Leg */
        StoreAddItem (711,1);
        /* Quiver of normal bolts */
        StoreAddItem (144,1);
        /* Thieving tools */
        StoreAddItem (143,1);
        /* Mage rune 1 */
        StoreAddItem (300,1);
        /* Cleric rune 1 */
        StoreAddItem (309,1);
        break;

        case ADVENTURE_UNKNOWN:
        DebugCheck(0);
        break;
    }

    /* loop weapons */
/*    for (i=1;i<(3>adv?adv:3);i++)
    {
        for (j=0;j<6;j++)
        {
            item=firstWeapon+materialOffsets[i]+j;
            StoreAddItem(item,1);
        }
    }
*/

// multiplayer?? */
    /* Wand of Lock Door */
//  StoreAddItem (919,1);
    /* Wand of Dispell Magic 2 */
//  StoreAddItem (910,1);
    /* Quiver of mana drain bolts */
//  StoreAddItem (150,1);
    /* Gain Mana Drain Attack Scroll */
//  StoreAddItem (372,1);
    /* Wand of Mana Drain */
//  StoreAddItem (908,1);



    /* Leather Cap */
//  StoreAddItem (700,1);
    /* Wand of Dispell Magic 1 */
//    StoreAddItem (909,1);
    /* Potion of Poison */
//    StoreAddItem (825,1);
    /* Potion of Fire */
//    StoreAddItem (826,1);
    /* Potion of Hurt */
//    StoreAddItem (827,1);
    /* Gain Experience Scroll */
//  StoreAddItem (214,1);
    /* Short Sword of Piercing */
//  StoreAddItem (216,1);
    /* Long Sword of Piercing */
//  StoreAddItem (217,1);
    /* Dagger of Poison */
//  StoreAddItem (220,1);
    /* Short Sword of Poison */
//  StoreAddItem (221,1);
    /* Long Sword of Speed */
//  StoreAddItem (226,1);
    /* Mace of Poison */
//  StoreAddItem (231,1);
    /* Staff of Power */
//  StoreAddItem (233,1);
    /* Mace of Electricity */
//  StoreAddItem (234,1);

    /* loop armors */
/*    for (i=1;i<(3>adv?adv:3);i++)
    {
        for (j=1;j<12;j++)
        {
            item=firstArmor+materialOffsets[i]+j;
            StoreAddItem(item,1);
        }
    } */
    /* secondary armor loop - hardened armor has no 'light' armor */
/*    if (adv >= 3)
    {
        for (j=4;j<12;j++)
        {
            item=firstArmor+materialOffsets[3]+j;
    //        printf ("adding armor item:%d\n",item);
    //        fflush (stdout);
            StoreAddItem (item,1);
    //        printf ("done\n");
    //        fflush (stdout);
        }
    }
*/
    InventoryReorder(INVENTORY_STORE,TRUE);
    InventoryDrawInventoryWindow (INVENTORY_STORE);

    /* set up store control callback */
    StoreSetControlCallback (StoreUIUpdateGraphics);

    /* welcome user */
    MessageAdd ("^007Welcome to the store!");

    /* add journal help page if necessary */
    if (StatsPlayerHasNotePage(32)==FALSE &&
        StatsPlayerHasNotePage(0)==TRUE)
    {
        StatsAddPlayerNotePage(32);
    }
    else
    {
        /* force loading of inventory banner display */
        BannerOpenForm(BANNER_FORM_INVENTORY);
    }

    DebugEnd();
}