Graal Forums  

Go Back   Graal Forums > Development Forums > NPC Scripting
FAQ Members List Calendar Today's Posts

 
 
Thread Tools Search this Thread Display Modes
Prev Previous Post   Next Post Next
  #1  
Old 09-05-2005, 07:50 PM
ChibiChibiLuc ChibiChibiLuc is offline
Cookie Monster. :3
Join Date: Jan 2005
Location: Nova Scotia, Canada
Posts: 111
ChibiChibiLuc is on a distinguished road
Send a message via AIM to ChibiChibiLuc Send a message via MSN to ChibiChibiLuc
KeyPressed/KeyDown2 checks

I'm having a problem with KeyPressed and KeyDown2. It only exists in v3/4, not v2, so it might belong in the Bugs section.

When the 's' key is caught with KeyPressed, a system sends a trigger to another NPC. However, I only want it to send the trigger once, not multiple times.
Originally, I set a flag that says the key was pressed, then use a timeout to check for when the player lets go of the key. When the player lets go of the key, it unsets the flag.

This doesn't work. While I'm holding down the 's' key, it continually calls the KeyPressed function, but KeyDown2 returns it as not being pressed.

NPC Code:
function onKeyPressed(code,key) {
if (key == "s" && this.holding == false) {
findweapon("Blah").trigger("DoSomething",NULL);
this.holding = true;
setTimer(.05);
}
}

function onTimeout() {
if (this.holding == true) {
if (!keydown2(getkeycode("s"),false)) this.holding = false;
setTimer(.05);
}
}




EDIT: My bad, I was using keycode() instead of getkeycode(). Changing it to getkeycode() made it work properly. This might have something to do with the hammer bug on GK?

Last edited by ChibiChibiLuc; 09-05-2005 at 08:52 PM..
Reply With Quote
 


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 02:57 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2026, vBulletin Solutions Inc.
Copyright (C) 1998-2019 Toonslab All Rights Reserved.