Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 21-09-2004, 20:28   #1 (permalink)
*hello new world
 
Benutzerbild von nalin
 
Registriert seit: Jan 2004
Ort: sauerland
Beiträge: 1.788
KI_näher liegendes objekt finden

hallo zusammen!

versuche mich gerade an einer kleinen künstlichen intelligenz programmierung.
das ganze ist aufgebaut wie eine art "kicker".
der "torwart" ist schon fertig, hab aber noch 2 probleme:

1 problem:
habe für jede einzelne figur vorgesehen einen hitTest zu schreiben, da es aber 10 figuren sind, scheint es mir doch eine bessere lösung dafür zu geben.
bitte um tipps, vorschläge etc. wie ich das am besten bewerkstellige!

2 problem:
wie bekomme ich es hin das wenn zwei figuren (oder mehr) an einer stange sind, die figur zum ball geht die näher dran ist?!

hoffe ihr könnt mir helfen!

gruß nalin
Angehängte Dateien
Dateityp: zip kicker.zip (6,6 KB, 3x aufgerufen)
nalin ist offline   Mit Zitat antworten
Alt 21-09-2004, 20:52   #2 (permalink)
Flash & TYPO3
 
Registriert seit: Oct 2003
Ort: Bayern
Beiträge: 2.700
Zitat:
2 problem:
wie bekomme ich es hin das wenn zwei figuren (oder mehr) an einer stange sind, die figur zum ball geht die näher dran ist?!
Abstände berechnen und schaun, welche Zahl größer ist
Musst dich immer an's mathematische x-y-Koordinatensystem und an die Formel a² + b² = c² halten. dann sollte nichts schief gehen!
__________________
Mediendesign-Student
johanness ist offline   Mit Zitat antworten
Alt 21-09-2004, 21:06   #3 (permalink)
*hello new world
 
Benutzerbild von nalin
 
Registriert seit: Jan 2004
Ort: sauerland
Beiträge: 1.788
dank dir!

bleibt aber immer noch problem 1 !

nalin
nalin ist offline   Mit Zitat antworten
Alt 21-09-2004, 21:28   #4 (permalink)
aka stauby
 
Benutzerbild von webdust
 
Registriert seit: Mar 2004
Ort: Würzburg
Beiträge: 705
Meinst du jetzt eine ganz andere Lösung als HitTest, oder wie du den Hittest möglichst einfach gestalten kannst? Bei letzterem würde ich den halt einfach eine for-Schleife benutzen, damit ersparst du die auf jeden Fall viel Schreibarbeit.

Auf der anderen Seite kannst du auch, wenn du eh immer abfragst, welche Figur am nächsten ist, nur den HitTest mit dieser Figur machen.
__________________
"The things you own end up owning you."
webdust ist offline   Mit Zitat antworten
Alt 21-09-2004, 21:57   #5 (permalink)
*hello new world
 
Benutzerbild von nalin
 
Registriert seit: Jan 2004
Ort: sauerland
Beiträge: 1.788
Zitat:
Auf der anderen Seite kannst du auch, wenn du eh immer abfragst, welche Figur am nächsten ist, nur den HitTest mit dieser Figur machen.
bräuchte ich dann nur einen hitTest für alle figuren? oder 10 die je nach abfrag status true oder false sind?!

es geht mir im prinzip darum in meinem script nicht 10 mal den gleichen hitTest nur mit anderen instanznamen zu haben.
PHP-Code:
if (ball.hitTest(_root.g1)) {
    
yspeed *= -1;
    
yspeed += -.5;
    
xspeed = (ball._x-_root.g1._x)/2;

nalin ist offline   Mit Zitat antworten
Alt 21-09-2004, 22:01   #6 (permalink)
aka stauby
 
Benutzerbild von webdust
 
Registriert seit: Mar 2004
Ort: Würzburg
Beiträge: 705
Das geht dann einfach so.

ActionScript:
  1. for(i=0;i<=10;i++) {
  2.  if (ball.hitTest(_root["g"+i])) {
  3.     yspeed *= -1;
  4.     yspeed += -.5;
  5.     xspeed = (ball._x-_root["g"+i]._x)/2;
  6. }

Oder reden wir aneinander vorbei?!
__________________
"The things you own end up owning you."
webdust ist offline   Mit Zitat antworten
Alt 21-09-2004, 22:14   #7 (permalink)
*hello new world
 
Benutzerbild von nalin
 
Registriert seit: Jan 2004
Ort: sauerland
Beiträge: 1.788
ich glaube schon!
ich hab ja 10 quadrate mit unterschiedlichen instanznamen.ich müsste dann für jedes einzelne quadrat den code schreiben und immer den instanznamen ändern.
funktioniert ja auch-scheint mir nur super umständlich und unsauber!

was bewirkt der code den du gepostet hast?versteh das leider nicht genau.
nalin ist offline   Mit Zitat antworten
Alt 21-09-2004, 22:17   #8 (permalink)
flachzange
 
Benutzerbild von elias
 
Registriert seit: Jun 2003
Ort: berlin
Beiträge: 3.932
mit:

_root["g"+i]

baust du dynamisch einen instanznamen zusammen, im beispiel also von
g0 - g10.
__________________
elias ist offline   Mit Zitat antworten
Alt 21-09-2004, 22:18   #9 (permalink)
aka stauby
 
Benutzerbild von webdust
 
Registriert seit: Mar 2004
Ort: Würzburg
Beiträge: 705
Genau, dass der Hittest für die Instanznamen g1, g2, ... g10 durchgeführt wird.
__________________
"The things you own end up owning you."
webdust ist offline   Mit Zitat antworten
Alt 21-09-2004, 22:21   #10 (permalink)
*hello new world
 
Benutzerbild von nalin
 
Registriert seit: Jan 2004
Ort: sauerland
Beiträge: 1.788
ich denke das ist es!

also ich kann damit spieler g0 bis spieler g10 auf einmal ansprechen?!

edit: war wohl ne bisschen zu langsam

ok danke euch!

gruß nalin

Geändert von nalin (21-09-2004 um 22:23 Uhr)
nalin ist offline   Mit Zitat antworten
Alt 21-09-2004, 22:35   #11 (permalink)
*hello new world
 
Benutzerbild von nalin
 
Registriert seit: Jan 2004
Ort: sauerland
Beiträge: 1.788
habs gerade getestet-funktioniert perfekt!

danke nochmal an euch!

grüße nalin
nalin 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 18:26 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele