Visualizzazione dei risultati da 1 a 4 su 4

Discussione: key.isDown

  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2002
    Messaggi
    195

    key.isDown

    Salve ragazzi, di solito postavo nel forum JS ma ora mi serve una mano per l'ActionScript

    Vorrei sapere come posso gestire più Key.isDown contemporaneamente
    per capirci:
    se muovo un oggetto tenendo premuto un tasto e provo a far muovere un'altro oggetto premendo e tenendo premuto contemporaneamente un altro tasto ovviamente mi va in conflitto qualche cosa e il primo oggetto si ferma per permettere al secondo di cominciare a muoversi
    vorrei poterli muovere contemporaneamente
    insomma quello di cui avrei bisogno è un Key.isDown contemporaneo su due oggetti diversi e con tasti diversi nello stesso momento

    Questo è lo script che ho inserito nei due oggetti, l'unica differenza è nella seconda riga "_root["obj1"]" o "_root["obj2"]":

    onClipEvent(enterFrame){
    obj = _root["obj2"]
    myX=this._x
    movimento=15
    mioMovimento2= new Object();
    mioMovimento2.onKeyDown = function(){
    cosa = Key.getCode();
    if (cosa == 80) {
    obj.gotoAndPlay(2);
    }
    if (cosa == 79) {
    obj.gotoAndPlay(8);
    }
    if (cosa == 73) {
    obj.gotoAndPlay(14);
    }
    if(cosa == 37){
    obj._x=myX-movimento
    }
    if(cosa == 39){
    obj._x=myX+movimento
    }
    }
    mioMovimento2.onKeyUp = function(){
    obj.gotoAndStop(1);
    }
    Key.addListener(mioMovimento2);
    }

    grazie mille
    mamma mia che bestia

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2002
    Messaggi
    195

    dunque...

    ...deduco che non sia possibile

    please help me
    mamma mia che bestia

  3. #3
    Utente di HTML.it L'avatar di NAP
    Registrato dal
    Jan 2001
    Messaggi
    4,398
    Sì, è impossibile per una questione elettronica. I tasti funzionano come gli interruttori dei pulsanti in un quiz: se la chiusura del circuito avviene prioritariamente da parte di uno, allora il circuito non può essere chiuso dall'altro, qualunque sia.

    Se così non fosse, potremmo scrivere parole lunghe fino a 10 lettere premendo contemporaneamente i tasti corrispondenti... un po' come si fa con una tastiera musicale quando con una mano si mette un accordo, e con l'altra, il medesimo, ad un altro cosiddetto rivolto.

    L'unica cosa che puoi fare (immagino si tratti di un giochino), è quella di mettere un codice di animazione per l'oggetto1 che segua l'asse x o y fino ad un determinato punto dello stage, oppure in ciclo perpetuo. In tal modo, che il tasto di avvio dell'oggetto1 resti premuto o meno, non sarà influenzato dalle istruzioni che partono dall'altro.
    Nel tuo caso parliamo rispettivamente dei tasti:

    P, O, I, freccia sx, freccia su, freccia dx, freccia su.
    Non è scomodo, rispetto alla simmetria con Z, X, C ?

    Ciao,

    NAP
    A volte la diplomazia va condita con un pizzico di siluri fotonici. (K. Janeway)

  4. #4
    Anch'io ho lo stesso problema di enpenzieri...

    Sì, è impossibile per una questione elettronica.
    A questo punto deduco che la Playstation o il buon vecchio Supernintedo abbiano una tecnologia particolare per il joypad... Non c'è proprio speranza, eh?
    ...
    ...
    Però quando uso le combinazioni di tasti (tipo ctrl+alt+canc) il computer riesce a gestirle... Che si riesca a imitare questo comportamento con key.isDown() e key.getCode()? Adesso provo!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.