Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 22-08-2003, 07:52   #1 (permalink)
Neuer User
 
Registriert seit: Aug 2003
Ort: Berlin
Beiträge: 95
HILFE !!! Tastatursteuerung mit der "a, b, c,..."-Taste steuern.

Hallo FlashFreunde,

Ich habe ein Problem wie fast alle hier.

Ich habe mir die FLA mit der Autosteuerung von Flashstart.de herruntergeladen. Ich habe das script jetzt erstmal so geändert das wenn man die ENTER-Taste drückt die Tür aufgeht jetzt wollte ich noch das Licht mit der "L-Taste" an & ausmachen.

Ich habe aber noch kein befehl gefunden der das ohne probleme macht, geht das vielleicht mit getAscii... ?

Hier ist das script:

// Auto Klasse
function Auto() { };

Auto.prototype.drehung = function (clip) {
with(clip) {
_y -= (Math.cos(Math.PI/180 * _rotation))*w;
_x += (Math.sin(Math.PI/180 * _rotation))*w;
}
}

Auto.prototype.carcontrol = function (clip,faktorN,faktorP,fG,rG) {
with(clip) {
if (Key.isDown(Key.LEFT) && Key.isDown(Key.UP)) {
_rotation -= faktorN;
}
if (Key.isDown(Key.RIGHT) && Key.isDown(Key.UP)) {
_rotation += faktorP;
}
if (Key.isDown(Key.LEFT) && w > .1 && (!Key.isDown(Key.UP)) && (!Key.isDown(Key.DOWN))) {
_rotation -= faktorN;
}
if (Key.isDown(Key.RIGHT) && w > .1 && (!Key.isDown(Key.UP)) && (!Key.isDown(Key.DOWN))) {
_rotation += faktorP;
}
if (Key.isDown(Key.LEFT) && Key.isDown(Key.DOWN)) {
_rotation += faktorP;
}
if (Key.isDown(Key.RIGHT) && Key.isDown(Key.DOWN)) {
_rotation -= faktorN;
}
if (Key.isDown(Key.UP)) {
this.drehung(clip);
}
if (Key.isDown(Key.DOWN)) {
this.drehung(clip);
}
if (Key.isDown(Key.UP)&& !(Key.isDown(Key.DOWN)) && w > -rG && w < fG) {
w += .05;
}
if (Key.isDown(Key.DOWN) && !(Key.isDown(Key.UP)) && w > -rG && w < fG) {
w -= .05;
}
if ((w > .1) && (!Key.isDown(Key.UP) )&& (!Key.isDown(Key.DOWN) )) {
this.drehung(clip);
w -= .03;
}
if ((w < -0.1) && (!Key.isDown(Key.UP) )&& (!Key.isDown(Key.DOWN) )) {
this.drehung(clip);
w += .03;
}
if ((w < .1) && (!Key.isDown(Key.UP) ) && (!Key.isDown(Key.DOWN)) && w >= 0 ) {
w = 0;
}
if ((w > -.1) && (!Key.isDown(Key.UP) ) && (!Key.isDown(Key.DOWN)) && w <= 0 || Key.isDown(Key.UP) && (Key.isDown(Key.DOWN))) {
w = 0;

################################
# Hier wird gesagt das er bei der leertaste den werfer anmachen soll aber er soll es bei der "L-Taste machen.
################################
}
(Key.isToggled(Key.SPACE)) ? werfer.gotoAndStop(2) : werfer.gotoAndStop(1);
(Key.isDown(Key.DOWN)) ? licht.gotoAndStop(2) : licht.gotoAndStop(1);
}

}

meinAuto = new Auto();

mc_Auto.onEnterFrame = function () {
meinAuto.carcontrol(mc_Auto,2.5,2.5,3,2);
updateAfterEvent();
}
__________________
Flash ist die Zukunft.

Geändert von KersONE (22-08-2003 um 11:10 Uhr)
KersONE ist offline   Mit Zitat antworten
Alt 22-08-2003, 08:07   #2 (permalink)
Banned
 
Registriert seit: Jun 2001
Ort: hanfheide (eher Wunschort)
Beiträge: 500
jupp das geht mit Key.getAscii();

"l" = 108
"L" = 76

Geändert von fagju (22-08-2003 um 08:09 Uhr)
fagju ist offline   Mit Zitat antworten
Alt 22-08-2003, 08:32   #3 (permalink)
Neuer User
 
Registriert seit: Aug 2003
Ort: Berlin
Beiträge: 95
Ja stimmt schon aber, wie lautet der direkte befehl ?

Key.isToggled(Key.getAscii(108))) ? werfer.gotoAndStop(2) : werfer.gotoAndStop(1);

????

geht nicht.
__________________
Flash ist die Zukunft.
KersONE ist offline   Mit Zitat antworten
Alt 22-08-2003, 09:27   #4 (permalink)
Banned
 
Registriert seit: Jun 2001
Ort: hanfheide (eher Wunschort)
Beiträge: 500
deinMovieClip.onKeyDown = function(){
if(Key.getAscii() == 108 || Key.getAscii() == 76){
//machlichtanabbaplötzlich!!!
}
}
fagju ist offline   Mit Zitat antworten
Alt 22-08-2003, 10:00   #5 (permalink)
Neuer User
 
Registriert seit: Aug 2003
Ort: Berlin
Beiträge: 95
OK jetzt bin ich schon ein stückchen weiter....

ich hab es jetzt so gelöst

ActionScript:
  1. (Key.getAscii() == 108 || Key.getAscii() == 76) ? werfer.gotoAndStop(2) : werfer.gotoAndStop(1);

jetzt ist es aber so wenn ich "L" drücke dann geht das Licht an aber wenn ich eine andere taste drücke dann geht das Licht wieder aus. Wie kann ich das vermeiden?

Danke schonmal für deine Hilfe.
__________________
Flash ist die Zukunft.

Geändert von KersONE (22-08-2003 um 10:04 Uhr)
KersONE ist offline   Mit Zitat antworten
Alt 23-08-2003, 08:15   #6 (permalink)
Banned
 
Registriert seit: Jun 2001
Ort: hanfheide (eher Wunschort)
Beiträge: 500
tu mal dies script auf irgend ein mc

ActionScript:
  1. onClipEvent(keyDown){
  2.     if(Key.getCode() == 76){
  3.         if(liacht == "aus"){
  4.             //mach Licht an
  5.             liacht = "an";
  6.         }else{
  7.             //mach Licht aus
  8.             liacht = "aus";
  9.         }
  10.     }
  11. }

und in ersten keyframe
ActionScript:
  1. _global.liacht = "aus"
fagju ist offline   Mit Zitat antworten
Alt 23-08-2003, 08:28   #7 (permalink)
Revived @ Sunday
 
Benutzerbild von MacEvil
 
Registriert seit: Apr 2003
Ort: Nowhereland
Beiträge: 3.244
Hey,das Skript kommt doch von flashstar.de ...
MacEvil ist offline   Mit Zitat antworten
Alt 23-08-2003, 16:48   #8 (permalink)
hobbyflasher
 
Registriert seit: Aug 2003
Ort: Arnsberg
Beiträge: 57
wenn überhaupt irgendwie Tastenabfrage vorkommt würde ich als erstes mal mir eine kleine switch konstruktion aufbauen.
zb.
onClipEvent(KeyDown){
switch(Key.getCode()){


und dann unter default: trace(Key.getCode()); break;

erspart ne menge rumgesuche in irgendwelchen Ascii Tabellen und hat sich bei mir als praktisch erwiesen.
!lim0chk ist offline   Mit Zitat antworten
Alt 23-08-2003, 16:49   #9 (permalink)
Revived @ Sunday
 
Benutzerbild von MacEvil
 
Registriert seit: Apr 2003
Ort: Nowhereland
Beiträge: 3.244
Da Schaut man lieber schnell im Handbuch hinten nach - geht schneller
MacEvil ist offline   Mit Zitat antworten
Alt 23-08-2003, 16:52   #10 (permalink)
hobbyflasher
 
Registriert seit: Aug 2003
Ort: Arnsberg
Beiträge: 57
aber das switch da ist trotzdem cool, ist wesentlich übersichtlicher als irgendwelche if befehle (nur bei mehr als einer tastenabfrage, is ja logisch)
!lim0chk ist offline   Mit Zitat antworten
Alt 23-08-2003, 17:05   #11 (permalink)
Revived @ Sunday
 
Benutzerbild von MacEvil
 
Registriert seit: Apr 2003
Ort: Nowhereland
Beiträge: 3.244
Jeden Tierchen sein Pläsierchen
MacEvil ist offline   Mit Zitat antworten
Alt 25-08-2003, 10:30   #12 (permalink)
Neuer User
 
Registriert seit: Aug 2003
Ort: Berlin
Beiträge: 95
Yo Leute, danke an euch das ihr mir Helft.

Aber ich bin totaler ActionScript Newbie (leider) mit Flash kenn ich mich selber gut aus aber die Clip steuerung ???.......


Wär nett von euch wenn einer mir mal so das nen bisschen erklären könnte mit den Clips.

Schließlich habe ich es immer noch nicht mit den Licht hinbekommen


MfG. Kers
__________________
Flash ist die Zukunft.
KersONE ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 09:44 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele