Exemplo n.º 1
0
        static private void LoadInv(StreamReader sr)
        {
            int         id      = int.Parse(sr.ReadLine());
            int         counter = int.Parse(sr.ReadLine());
            List <bool> amountNegativeOrPositive = new List <bool>();
            List <Item> items = new List <Item>();

            for (int i = 0; i < counter; i++)
            {
                string   protoData = sr.ReadLine();
                string[] data      = protoData.Split(';');
                int      itemID    = int.Parse(data[0]);
                int      amount    = int.Parse(data[1]);
                items.Add(ItemCreator.CreateItem(itemID, amount));
                if (data[2] == "-")
                {
                    amountNegativeOrPositive.Add(false);
                }
                else
                {
                    amountNegativeOrPositive.Add(true);
                }
            }
            inventoryList.Add(new InventoryTemplate(id, amountNegativeOrPositive, items));
        }
        static private Inventory LoadCityMerchant(string name)
        {
            string       path    = Path.Combine("./Data/City_Data/", name + ".txt");
            StreamReader sr      = new StreamReader(path);
            Inventory    temp    = new Inventory(int.Parse(sr.ReadLine()));
            int          counter = int.Parse(sr.ReadLine());

            for (int i = 0; i < counter; i++)
            {
                string   data  = sr.ReadLine();
                string[] data2 = data.Split(';');

                int placeCounter = 0;
                int tempNr       = 0;
                foreach (string item in itemList)
                {
                    if (item == data2[0])
                    {
                        tempNr = placeCounter;
                    }
                    placeCounter++;
                }

                Item newItem = ItemCreator.CreateItem(tempNr, int.Parse(data2[1]));
                temp.AddItem(newItem);
            }

            return(temp);
        }
Exemplo n.º 3
0
        void AddStacks(int itemID, int amount)
        {
            if (amount > 0) // Egentligen onödig men ökar maintainability
            {
                int amountOfStacks = HowManyStacks(amount);
                while (amountOfStacks > 0)
                {
                    int tmp = StackLimit - amount;
                    if (tmp > 0)
                    {
                        itemList.Add(ItemCreator.CreateItem(itemID, amount));

                        --amountOfStacks;
                    }
                    else if (tmp == 0)
                    {
                        itemList.Add(ItemCreator.CreateItem(itemID, StackLimit));
                        --amountOfStacks;
                    }
                    else
                    {
                        itemList.Add(ItemCreator.CreateItem(itemID, StackLimit));
                        amount -= 50;
                        --amountOfStacks;
                    }
                }
            }
        }
Exemplo n.º 4
0
        //skum jag vet men fixade problem med referenser som pekar på samma objekt i minnet
        public Inventory(Inventory inv)
        {
            money    = inv.Money;
            itemList = new List <Item>();
            foreach (Item item in inv.ItemList)
            {
                itemList.Add(ItemCreator.CreateItem(item.ID, item.Amount));
            }

            Initialize();
        }
Exemplo n.º 5
0
 static private void DebugFunctions()
 {
     if (test)
     {
         if (KMReader.prevKeyState.IsKeyUp(Keys.A) && KMReader.keyState.IsKeyDown(Keys.A))
         {
             inventory.AddItem(ItemCreator.CreateItem(0, 20));
         }
         if (KMReader.prevKeyState.IsKeyUp(Keys.B) && KMReader.keyState.IsKeyDown(Keys.B))
         {
             inventory.AddItem(ItemCreator.CreateItem(1, 30));
         }
         if (KMReader.prevKeyState.IsKeyUp(Keys.C) && KMReader.keyState.IsKeyDown(Keys.C))
         {
             inventory.AddItem(ItemCreator.CreateItem(2, 10));
         }
     }
 }
Exemplo n.º 6
0
        protected override void LoadContent()
        {
            spriteBatch = new SpriteBatch(GraphicsDevice);

            TextureManager.LoadContent(Content);
            ItemCreator.LoadItemData();
            SoundManager.LoadSounds(Content);
            SoundManager.PlayMusic();
            SoundManager.PlayPauseMusic();
            AchievementManager.CreateAchievements();
            Player.Init();
            MainMenuManager.Init();
            OptionsMenu.Init();
            CityManager.Initialize();
            TravelMenu.Init();
            WorldEventManager.Init();
            EventLog.Init();
            WorldMapMenu.LoadCities();
            EncounterManager.Initialize();
            CityInfoMenu.Init();
            CharCreationMenu.Init();
            SkillManager.Init();

            ModifierManager.LoadCityAndCategoryLists();
            ModifierManager.LoadItemModifiers();
            Calendar.PrepareCalendar();

            cityMenu = new CityMenu();
            playerInventoryModule = new PlayerInventoryModule();

            previousGameState2 = GameState.Debug;
            previousGameState  = GameState.Debug;
            gameState          = GameState.MainMenu;

            options   = false;
            activeInv = new Inventory(100);
            random    = new Random();

            CityControlList = new List <string>();
            CityControlList.Add("Carrot Town");
            CityControlList.Add("Cloudspire");
        }
Exemplo n.º 7
0
        static private void ReadPlayerData(StreamReader streamReader, Inventory tempInv)
        {
            Player.Location = streamReader.ReadLine();


            for (int i = 0; i < WorldMapMenu.nrCities; i++)
            {
                string temp = streamReader.ReadLine();
                if (temp == "true")
                {
                    Player.VisitedCities[i] = true;
                }
                else if (temp == "false")
                {
                    Player.VisitedCities[i] = false;
                }
            }

            int[] tempLevels = new int[3];
            for (int i = 0; i < 3; i++)
            {
                tempLevels[i] = int.Parse(streamReader.ReadLine());
            }
            Player.SkillLevels = tempLevels;

            CharCreationMenu.ConfirmedAvatar = int.Parse(streamReader.ReadLine());
            tempInv.Money = int.Parse(streamReader.ReadLine());
            int counter = int.Parse(streamReader.ReadLine());

            for (int i = 0; i < counter; i++)
            {
                string   tempData = streamReader.ReadLine();
                string[] data2    = tempData.Split(';');
                Item     newItem  = ItemCreator.CreateItem(int.Parse(data2[0]), int.Parse(data2[1]));
                tempInv.AddItem(newItem);
            }
            Player.Inventory = tempInv;
        }