[HELP] Selecting and storing a defined letter on keypress
Hey,
I've followed tonypa's tile based game tutorial up until where I have just the walls with a dude moving around inside.
I would like to know how to define an area of the 'maze' so that when the character is in that area, if they press a key, a pre-defined letter attached to that area is stored in a text box at the bottom of the game.
It's kind of like a wordsearch, so each defined area must be able to have a different letter attached to it.
The user would guide the character around, to a certain area, press a key to store that area's letter, move to their next chosen area, press a key to store that area's letter along with the previous letter...etc...etc...
Hope you understand what I mean and thanks for any help
PS. Don't know if this makes any difference to this part of the coding, but once the letters have been stored in the text box, I would like to be able to click on a submit button and check the series of letters from the text box against a list of words stored somewhere. Then if they match any of the listed words they'll be shown a message like "well done". I'm really not so good at explaining...
Last edited by cm_assassin; 03-07-2006 at 06:44 AM.
maybe you could make some invisible movie clips that check if you're hitting them and pressing the key to add the desired letter. Something like this:
code:
onClipEvent (load) {
_visible = false;
myKey = 32; //in this case it is spacebar, but you can change it
letterToStore = "A";
}
onClipEvent (enterFrame) {
if (this.hitTest(_root.player) && Key.isDown(myKey)) {
this.pressingKey ++;
} else {
this.pressingKey = 0;
}
//this is for the letter to be added only once
if (this.pressingKey == 1) {
_root.storedLetters.text += this.letterToStore;
}
}
Hope it helps
This is MC. His _parents sent him to stop() by the super market to buy some _root beer if he wanted to gotoAndPlay() with his friends at the park later.
I'm pretty new to Flash in this way, so let me get this straight.
1. I create an invisible movie clip and place it where I want on my game, and create the textbox (in your example storedLetters.text?).
2. Would I put this code on each of the invisible movie clips, and change the 'letterToStore' to suit?
3. About the last bit of your code, does that mean that if a user presses the key 74 times on the same area of the game, it will only be added once to the text box?
Also, where can I find the number of each key? You put 34 as spacebar, so I'm guessing each key has a different number. Would be a handy thing to know
1. Yes, make movie clips and place them as the areas you mentioned, they are made invisible by the "_visible = false;" line. The textbox should have the instance name (in the properties window) "storedLetters" in the example, you can change it as you want. The ".text" part is refering to the text that object has.
2. Yeah, just as you said.
3. Nope, it means that as the code runs once each frame, if that "if" statement weren't there it would add a letter each frame as long as you have the key pressed, this way it only adds the letter once when you press the key, but if you press it more times it would add it again. If you'd like to make it as you said, please tell me.
Yes, every key has a number. You can know it through "Key.getCode()", but here's a file that could be useful for you to know the key's codes.
Hope it helps.
This is MC. His _parents sent him to stop() by the super market to buy some _root beer if he wanted to gotoAndPlay() with his friends at the park later.
Thanks for the continued help and that file.. I'll have a look at it tomorrow, it's late here
I understand it all now thanks, and yes I would like to make it so that the user can only add the letter to the textbox once if you could please.
Also, on keypress, could I also make that invisible movie clip visible?
Reason for this is I have a maze made out of letters which the character is guided through, and when they think they've found a letter they want.. they place the guy on it and press a key so it's added to the text box. I'd like to make it so that they don't go off somewhere else and return to the same letter and try to add it again and again thinking they've not done it before. If I could make the movie clip visible again they'd then see some indication that they've been there before...so won't try to add it again.
I've just come to realise that I'm unable to create the invisible movie clips as my map is created using a two dimensional array with '1' as a non-walkable square and '0' as a walkable square, etc.
So where could I put those invisible movie clips? Or how could I re-design the game to work differently?
As I'm a newb...I wouldn't know where to start with that advice, lol.
Basically, I've followed TonyPa's tile based game tutorial up until the 'scrolling' section. So I have a map which a character can move around with the arrow keys, and the map scrolls with the character. I'd like to specify areas of the map that when the character is placed on, the user can press a key and store a letter that it specific to that area of the map (if possible).