Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 23-03-2004, 13:20   #1 (permalink)
Flasher
 
Benutzerbild von Scanis
 
Registriert seit: Oct 2002
Ort: Berlin
Beiträge: 601
lineare geschwindigkeit

Hallo Leute

Also folgendes Problemchen kann ich nicht lösen was vermutlich leichter ist als ich denke.

ich hab eine SpielfigurMC (Link) und eine GegnerMC. (this)

Gegner soll sich auf die Spielfigur zubewegen. Klappt auch ohne probleme.

ActionScript:
  1. onClipEvent (enterFrame) {
  2.  
  3.    
  4. if (this.hitTest( _root.link) ){
  5.  
  6.    
  7.         tarX = _parent.link._x
  8.         tarY = _parent.link._y
  9.         curX = this._x;
  10.         Xdiff = tarX - curX
  11.         this._x = tarX - Xdiff/1.03;
  12.        
  13.         curY = this._y;
  14.         Ydiff = tarY - curY;
  15.         this._y = tarY - Ydiff/1.03;
  16.  
  17.  
  18.  
  19. }
  20.  
  21. }

Nur leider ist der script den ich hier benutze mit

Xdiff / X

und

Ydiff / X

was natürlich automatisch eine abnahme der geschwindigkeit bedeutet je näher der gegner der Spielfigur kommt.

wie kann ich die geschwindigkeit gleichbleibend machen?

Thx Scanis
Scanis ist offline   Mit Zitat antworten
Alt 23-03-2004, 13:36   #2 (permalink)
Neuer User
 
Registriert seit: Jan 2002
Beiträge: 1.244
hi,

geht es nicht einfach mit:

this._x += 1; oder this._x -= 1;
__________________
Mfg aus Brandenburg.

harego

Spiel

Zur Page
harego ist offline   Mit Zitat antworten
Alt 23-03-2004, 14:14   #3 (permalink)
Flasher
 
Benutzerbild von Scanis
 
Registriert seit: Oct 2002
Ort: Berlin
Beiträge: 601
ne ich glaub nich, des muss doch nen bezug zu der differenz zwischen link und dem gegner haben..oder denk ich da falsch?
Scanis ist offline   Mit Zitat antworten
Alt 23-03-2004, 14:35   #4 (permalink)
Neuer User
 
Registriert seit: Jan 2002
Beiträge: 1.244
Hast recht, wäre auch zu einfach!


Vielleicht mal die FLA zu posten ?
__________________
Mfg aus Brandenburg.

harego

Spiel

Zur Page
harego ist offline   Mit Zitat antworten
Alt 23-03-2004, 20:31   #5 (permalink)
Flasher
 
Benutzerbild von Scanis
 
Registriert seit: Oct 2002
Ort: Berlin
Beiträge: 601
jo, mach ich...aber dann muss ich die erstmal n bissel abspecken....die iss 10 mb groß.. mach ich morgen da ich jetzt nochma weg muss.

Thx Scanis
Scanis ist offline   Mit Zitat antworten
Alt 24-03-2004, 00:43   #6 (permalink)
God made me funky..
 
Registriert seit: Apr 2003
Ort: Bremen
Beiträge: 1.067
Wie jetzt??

Eine lineare Geschwindigkeit bleibt doch gleich, egal ob du nun 100 oder 1px vom Gegner weg bist. Ist wie mit Opa im Auto der vergisst zu Bremsen obwohl die Wand nur 10 m weit weg ist. Wenn er 50 fährt, kachelt er da auch mit 50 rein.
__________________
Kunst ist in erster Linie eine Frage der Form und nicht des Inhalts
Paul Rand
e2e4 ist offline   Mit Zitat antworten
Alt 24-03-2004, 07:09   #7 (permalink)
der mit der Axt
 
Benutzerbild von ANTICHRIST
 
Registriert seit: Mar 2003
Ort: Mighty Mighty Ruhrpott
Beiträge: 449
Re: lineare geschwindigkeit

ActionScript:
  1. onClipEvent (load) {
  2.         Faktor = 30;
  3.         tarX = _parent.link._x;
  4.         tarY = _parent.link._y;
  5.         Xdiff = tarX -  this._x;
  6.         Ydiff = tarY -  this._Y;
  7.         MoveX = Xdiff/Faktor
  8.         MoveY= Ydiff/Faktor
  9. }
  10. onClipEvent (enterFrame) {
  11.  
  12.    
  13. if (this.hitTest( _root.link) ){
  14.         this._x += MoveX
  15.         this._y += MoveY
  16. }
  17.  
  18. }


Wäre eine Möglichkeit.... Vorrausgesetzt, der Clip auf den sich da was zubewegt bewegt sich nicht.... Oder hab ich da was flasch, ähm falsch verstanden.....
ANTICHRIST ist offline   Mit Zitat antworten
Alt 24-03-2004, 13:00   #8 (permalink)
Flasher
 
Benutzerbild von Scanis
 
Registriert seit: Oct 2002
Ort: Berlin
Beiträge: 601
ne, des script funktioniert leider nicht

zumindest nicht so wie es soll. der gegner haut nun vom link ab statt auf den zuzurennen. (Egal ob ich + oder - nehme bei den koords)

hmm, mit linear meine ich einfach nur das die geschwindigkeit mkit der der gegner auf den link zurennt konstant bleibt und nicht langsamer wird je näher der an den link herankommt.

und ich schaffe es nicht den script in eine kleinere fla zu packen weils dann nicht mehr so recht funktionieren will.

aber ich kann versuchen es zu erklären:

Link ist ein objekt das immer an der selben _x und _y position bleibt. beim drücken der tasten hoch, runter. links und rechts bewegst sich der hintergrund so das es so aussieht als würde sich der link bewegen.

nun sollen da die gegner den link angreifen wenn der in deren sichradius gelaufen ist. und das mit dem script oben.

gleichzeitig wird der gegner aber auch von den tasten hoch, runter. links und rechts gesteuert, damit er synkron mit der map läuft und nicht wie der link immer auf derselben position bleibt. so würde der ja auch wie der link immer an derselben stelle bleiben.

das funktioniert jetzt (endlich) auch richtig, aber wie gesagt ist es schei*** wenn der gegner immer langsamer wird. welcher gegner würde denn sowas machen? *g*


danke für eure hilfe
Greetz Scanis
Scanis 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 19:30 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele