printing array

I am working on a game project. I am adding items to a shopping cart when the player goes to frame 6 i want it to print the items in the cart.
Currently i am using a switch in the main of frame 6. This is long tiresome code.
What i want it to do is work through a loop, if the item code matches that array i want it to print the description, item code, and price on the screen

Here is the code that i have so far......any suggestions

stop();
//displays total cost
total_txt.text = "$" + totalCost;
//creates a text field for the items in the shopping cart
_root.createTextField("cartText", _root.getNextHighestDepth(), 100, 100, 500, 500);
//defines variables for the cart text format and an item in the shopping cart
var cartTextFormat = new TextFormat();
var item:String = "";
//specifies the format of the cartText field
cartTextFormat.multiline = true;
cartTextFormat.color = 0xffffff;
cartTextFormat.font = "Segoe Script";
//displays the header in the cartText field
cartText.text = "Items In Cart\t\t\t\t\t\t\tPrices\n";
 
//loops through the cart to display the items and costs of the items in the cartText field
for(var i = 0; i < cart.length; i++){
	item = cart[i];
	switch(item){
		case "blueshirt":
			cartText.text += "Long Sleeved Blue Blouse\t\t\t\t$" + itemPrices[i] + "\n";
			break;
		case "redblackshirt":
			cartText.text += "Red & Black Ripped Shirt\t\t\t\t$" + itemPrices[i] + "\n";
			break;
		case "shoe2":
			cartText.text += "Pink Sandals\t\t\t\t\t\t\t$" + itemPrices[i] + "\n";
			break;
	}
}
//sets the format to the cartText field
cartText.setTextFormat(cartTextFormat);

Open in new window

jrb47Asked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

a_bCommented:
If you create a class called item and store those in an cart array you can override the toString method in the class to print the details of Item.


for(var i = 0; i < cart.length; i++)
{
     item = cart[i];
     sysout(item.toString());
}

I am not sure why you need to compare using the switch case.
0
jrb47Author Commented:
I am new to actionscript.....BUT I did not want to compare....how would i create the class you are mentioning.
I tried something similar but it would do nothing.


Thank you so much for the help
0
TanLiHaoCommented:
Like a_b said, you shouldn't be even using a switch statement to do this.

I personally think you should make cart an object, with properties itemNames and itemPrices in it.

However, your code seems to be working, so I don't get your problem.

You will need to give more details.
0
Big Business Goals? Which KPIs Will Help You

The most successful MSPs rely on metrics – known as key performance indicators (KPIs) – for making informed decisions that help their businesses thrive, rather than just survive. This eBook provides an overview of the most important KPIs used by top MSPs.

jrb47Author Commented:
I would like to be able to do this without the switch...
Ideally what i would like to do is be able to read through the cart, print the array, give option to remove from cart, (have it leave the screen) and adjust the price of the cart.
I have it working with putting a cart.text command on each item.

You would be interested in looking at the fla file. I think you would see more of what i mean.

0
TanLiHaoCommented:
I don't see the .fla file.

Actually this is what I think you should do.

Let cart be the array of items.
cart.ItemName be an array of items'  names, such asLong Sleeved Blue Blouse
cart.ItemPrice be an array of items' prices.

Then your code can get rid of the swtich statement. See code snippet.

Then of course for the other two parts you should be more clear on what you want.

If you would attach a .fla file with comments specifically on what you want to do, then it would be easy.

for(var i = 0; i < cart.length; i++) {
        item = cart[i];
        cartText.text += cart.itemName + "\t\t\t\t$" + cart.ItemPrice[i] + "\n";
}

Open in new window

0
jrb47Author Commented:
you cant attach an fla file on this forum
I would have to send it directly to you
I did try that piece of code you listed but it did not work......not sure why

0
TanLiHaoCommented:
It would work but there is a slight mistake with my code anyway.

It's cart.ItemName[i] not cart.ItemName.

Anyway to attach the .fla file, rename it to .txt extension and upload it here. Otherwise you can use upload elsewhere.
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Adobe Flash

From novice to tech pro — start learning today.