Difference Of If Key.isDown And On KeyPress?
Aug 5, 2009I was just wondering what the difference between these two is.
View 1 RepliesI was just wondering what the difference between these two is.
View 1 RepliesI'm following a simple tutorial on making a platformer, but I ran into a problem. This is the code I'm using in a player movie clip:
onClipEvent(enterFrame) {
if(this.character.hitTest(_root.bg.ground)==false) {
this._y+=_root.gravity;
[Code]....
When I press the keys, nothing happens, but if I replace the if statement with a 1 then the code executes fine.
In the actions of a movie clip,I want to use something like:
PHP Code:
if(Key.isDown(W)){
//do stuff
}
But,it does not take anything else than LEFT,RIGHT and some others.I even tried ASCII:
PHP Code:
if(Key.isDown(100))
{}
It doesn't work.Then how do we use keys like W,A,S,D?
I have several input text boxes all of which are activated by the use of the enter key. I only want the one the user is using to run its script when they press enter instead of the keylistener on all of them picking up when enter is pressed. I have tried
ActionScript Code:
listenForEnterObject = new Object();
listenForEnterObject.onKeyDown=function(){
[code]....
I want to have it to that when i press up on my keyboard, my ball will jump up, and if i keep holding it down, it will not jump again until up is released and re-pressed.How my code looks right now
Code:
if (Key.isDown(Key.UP))
{
speedy = -30;
}
my ball's instance name is fivepointstar.
I'm trying to add arrow key control to my image gallery to increment and decrement the image number, but if I go to another section and go back to the gallery, the incrementing is doubled, so that I step through the images by two's. If I repeat this, it always adds 1. Here's the code I have for the Arrow keys:
[Code]...
if (Key.isDown(Key.LEFT) && Math.abs(this["speed"+who])>0.3) {
_root["car"+who]._rotation -= _root.rotationStep2*(this["speed"+who]/_root.maxSpeed);
}
[code].....
so iv been using the Key.IsDown commands to change the yscale (of something), but i am at a loss at getting the yscale (of that something) back to the starting scale when the key is released.
View 3 RepliesI have a character with multiple animations by way of movieclips, and I'm trying to have it move using the Key.isDown function. Now, my character is moving correctly, but when the key is released, the animation keeps playing. I tried adding a stop command at the end of the walkcycle animation, but that just causes the character to stay frozen on the last frame of the cycle.
Here is the ActionScript Code:
onClipEvent(load) {
var direction = "left";
var speed = 2;
} onClipEvent(enterFrame) {
[Code] .....
I have a logic-sorta question about finding an alternative to an if/else statement that controls key.isDown detection.(NOTE: I am using senocular's KeyObject class, the utility found on his website senocular.com, that returns key.IsDown functionality to AS3)
typically in most game/character movement tutorials I see this:
Code: Select allif (key.isDown(Keyboard.RIGHT))
moveRight();
else if (key.isDown(Keyboard.LEFT))
[code]....
The problem im having with this code is the fact that theres an order it checks the keys due to the if/else statement.For example, if I was holding down the LEFT key and then simultaniously began holding down the RIGHT key, the RIGHT key's function would execute and override whatever the LEFT key's function was doing, since the RIGHT key is the first thing checked in the if/else statment.
The only work-around i can think of is making all the keys a single If statement, and a switch statement that controlls the movement. Which im having a lot of trouble getting to work at the moment...
I'm working on a game where movement is controlled with WASD, and other commands are controlled with YUIOHJKLNM<>. The problem I'm encountering occurs when pressing down certain combinations of three keys. For example, when I'm holding down J and M, the ASD keys won't work; only W will. The same applies to J and N, and K and <; W is the only key of the movement commands that will work.
There is nothing in my programming that I can see or find that is causing this error; I've performed several tests and managed to pretty much isolate the problem being something to do with the keycodes. Does actionscript 2.0 have some inherent issues with certain 3-key combinations being pressed?
How do I make it so that a key down function acts as a hard on/off switch, Instead of the momentary temporary toggle normally associated with "if Key.isdown"
Example: The "CONTROL" key is pressed, gotoAndPlay's an action, until the key is pressed again, which then gotoAndStop'S the action. Would I still use "if Key.isDown" or something else entirely.
How do i get a letter to work inside of a key.isDown action?
View 6 RepliesI'm working on a pretty neat interactive music remixing site where you remix a song, then interact with a music video to make some cool stuff happen. I saw a few related posts on here, but I've got a bit of a more specific problem. originally I had the controls set so that whenever you click the mouse on the background (which I set as one giant blank button), that it would load a movie clip and unload the previous one:
[Code]....
This has been working fine, although now I'm trying to change the overall controls to assign every key on the keyboard to load a particular movie clip at the mouse x,y when pressed AND to unload the movie clip when it is pressed again. I think I might be applying the code to the wrong portion (in a blank frame in the timeline, not as part of any button or movie clip). I had the code setup so that I wasn't getting any errors, but nothing is happening when pressing the key. I also don't have a start on how to tell if a key has already been pressed, to perform a second action when pressed again (to unload the assigned movie clip). Here's what I've got so far:
[Code]...
I'm building up an image resize gallery, and I want to navigate using the left and right arrow keys on my keyboard. I've been trying to figure this out a while now, but I can't get it working. Here's my code:
[Code]...
What I'd like it to do is find out what key was last pressed and then based on which key it was, go to a specific frame of guy_mc. So basically if the left key was the last key press I want it to go to frame "Left", if right key was the last, go to frame "Right," etc. I'm completely lost on this one and every tutorial I come across is based in AS2 which has much simpler methods than AS3.
Code:
//listen for guy_mc to see if all keys are up
guy_mc.addEventListener(Event.ENTER_FRAME, allKeys);
//if all keys are up...
[code]....
What I'm trying to do seems really simple but I can't get it. I'm trying to do something like this, but keyRelease doesn't exist I think.
on (keyRelease "<Right>") {
nextFrame();
}
I just want it to go to the next frame on the time line when the right key is RELEASED.
I've made a popup div that shows a video if you press a button. If you press Esc, the div is hidden again and the video is removed. (Using JWPlayer in Flash.)
If you click on the JWPlayer video, Flash gets the focus and JavaScript can't listen for keypresses on the document anymore. Is it possible to make JavaScript get the focus after you've interacted with the JWPlayer video player, so that you can still press the Esc button after for example pausing the video?
I'm working on the timeline and have movieclips on each frame. Each movieclip should play completely before moving to next frame. Once the movieclip is completed playing, I'd like to set up a keyboard event that allows for movie to go to next frame onKeyUp.This is the code I have but it's not working ... I'm getting jumbled results. I know this should be simple enough, but oh well.
stop();
import flash.events.KeyboardEvent;
var keyListener = new Object();
[code].....
I'm using Flash CS3 (AS2.0) at school on a mac, but when I open the file on CS4 on my pc I can't get my keypress to work.[code]I want my animation to happen when I push "t" on the keyboard.I have the whole alphabet to go through but I'm stuck since I can't even get this first one to work!Do I have to convert it to AS3 somehow since that's how it opens in CS4 (I think)?I'm new to Flash and need to figure this out for a course project!
View 1 RepliesI'm developing an application for use on a tablet PC where the user has the option to make multiple selections with a List Component. I need the ability to simulate the CTRL key being pressed since the keyboard will most likely not be available so the user can select and de-select items from the list. I will most be attaching the code to a button that will open the List component.
View 1 RepliesI had an old version of air which loaded an swf that runs an as2 swf using as3 The as2 swf included keypressing and regular as2 stuff. I just installed the new version of air and exported the AIR file again Keypresses don't seem to workhow to fix this?I thought about exporting to an older version of air but I have no idea how since the only option I have in CS5 is 2.0
View 1 RepliesI have a viewstack which implements a 'wizard' interface for doing new orders. On the last page of the wizard, there is a button, with a fake accelerator on it, by which, if they press 'o', they can start the process over again.
Below is my handler:
protected function _keyDownHandler(e:KeyboardEvent):void
{
if((e.charCode == 111)) {
[Code]....
The problem is that when the user gets back to page 1 of the wizard, the 'o' the user just typed is now entered into a datagrid filtering textbox (filter by last names starting with 'o'), which is not what is desired.
As you can see, I've made some attempts at forbidding this interaction, but it appears to be not enough, even though the model.orderNew() bit contains all the code to swap the viewstack pages around, re-setting the focus to the txtSearchFilter, etc..
It appears that e.cancelable == false, which is probably why I'm getting this behavior..but the documentation says that KEY_DOWN IS cancelable, so..
How can I keep the keypress from propagating to the form ?
ive started a game in as3 and everything has been going smooth. got my character running around. have an array set up with all different types of variables inside for different things like floor, walls, doors, etc etc. theres only a couple things i want to clean up before adding npc's. im having a problem with my jump function. basically, i have my keypress' set up in booleans and its working A OK. But the problem is when u hold the jump key the function keeps running over and over. I tried the obvious by adding the function to an if statement to just the keypress and not the boolean but it makes the function only run partially and leaves the character floating in the air until you hold the key down long enough for the character to land again. so basically i need the function the run all the way through and stop and wait for another keypress so even if you hold the jump key, the character will only jump once.
i think i may have to create something other than a boolean. or maybe a class with a timer that is called on the keypress. am i even close?
I've tried using ASCII codes but = and - don't seem to respond to this. Is there any other way to check for a keypress on these keys?
Here is my code for the function just incase it proves useful:
ActionScript Code:
function selectNum() {
selecting = true;
num = random(12)+1;
[code]....
So i know that the flash object needs to have focus in order for the key event to fire, but i am having an issue where i click a button in the flash window and the events stop firing.The button activates a box2d world and i don't know if that has anything to do with it. but as soon as i hit the start button, the key events no longer seem active until i click again.
View 3 RepliesI know this sounds really simple, but is there any way I can implement a key press to a function, I know this is wrong, but you've got an idea then:butmute.keyPress("m") = function {
View 2 RepliesI have recently made a piano in CS3 using AS2. The basic idea is that you can both click on a piano key and click on a key on your keyboard to hear the sound that particular key makes.Everything works just dandy apart from the fact that the sound doesn't seem to work at all.Below I have posted the action script (the comments are in Dutch) perhaps you'll need the FLA file as well.
Code:
stop();
//Maakt een sound object en verbind het met de piano movie clip op de stage
[code].....
I'm trying to do something like this, but keyRelease doesn't exist I think.
on (keyRelease "<Right>") {
nextFrame();
}
I just want it to go to the next frame on the time line when the right key is released.
When a key is pressed, data is sent to PHP to be stored in a MySQL database. For each key press, only one entry should be posted. it re-posts exponentially (e.g., 1st key press = one post, 2nd key press = two posts, 3rd key press = three posts; thus, totaling six posts).Initially, the event listener for key press existed alone on a single frame. When that was the case. This issue did not occur. I added an additional frame so that I could set to clear out all variables and start fresh.
so frame 4 will have :
KeyListener = new Object();
KeyListener.onKeyDown = function(){
if (Key.isDown(69)){ // if key pressed is "E"
[code]....