| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Dec 2009
Beiträge: 6
| AS2 Problem bei Flashgame - hittest funktioniert nicht wie es soll
Hallo, ich habe ein Problem bei einem Hittest. Und zwar habe ich einen kleinen Helden "hero" , der durch ein Level läuft und mit den Pfeiltasten gesteuert wird. Wenn er gegen eine Wand läuft, soll er blockiert werden, sprich nicht durch die Wände laufen können. Allerdings klappt das nicht ganz so wie ich will. Wenn man die Pfeiltasten langsam drückt dann klappt es, dann wird er wieder zurückgesetzt auf die vorherige Position, bleibt man aber auf den Pfeiltasten, kann er einfach durchlaufen. Hier mal mein Actionscript, habe es in den Movieclip hero gesetzt. Hoffe jemand kann mir weiterhelfen. Code: onClipEvent (load) {
movement = 10;
radius = 6;
_x = 42;
_y = 376;
}
onClipEvent (enterFrame) {
if (Key.isDown(Key.LEFT)) {
_x -= movement;
}
if (Key.isDown(Key.RIGHT)) {
_x += movement;
}
if (Key.isDown(Key.UP)) {
_y -= movement;
}
if (Key.isDown(Key.DOWN)) {
_y += movement;
}
if (_root.wall.hitTest(_x, _y+radius, true)) {
_y -= radius;
}
if (_root.wall.hitTest(_x, _y-radius, true)) {
_y += radius;
}
if(_root.wall.hitTest(_x-radius, _y, true)) {
_x += radius;
}
if (_root.wall.hitTest(_x+radius, _y, true)) {
_x -= radius;
}
} |
| | |
| | #2 (permalink) |
| whatever Registriert seit: May 2008
Beiträge: 415
|
hittest ist nicht für solche kollisionsabfragen gedacht weil es nur eine kollision erfassen kann wenn sie stattfindet, bewegt sich dein held zb. schneller als die wand dick ist, ist es reiner zufall ob die hittest anschlägt oder nicht. außerdem prüfst du nur einen pixel, du kannst hittest auch einfach ein anderen mc angeben, dann wird ein bounding boxes test durchgeführt was bei dir evtl. schon reicht. sonst ist eine genauere abfrage zb. mit einem linien-schnittest nötig. das zurücksetzen der spielfigur bei erfolgreichen hittest ist auch auch keine optimale lösung, außerdem setzt du es um radius zurück und nicht um movement was eine differenz von 4 pixeln zur folge hat. |
| | |
![]() |
| Lesezeichen |
| Stichworte |
| game, hit test, hittest, spiel |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| hitTest funktioniert nicht!! ;-( | Novanic | ActionScript 1 | 3 | 17-03-2005 15:09 |
| »Hittest« macht nicht was es soll? | akigolf | ActionScript 1 | 13 | 29-12-2004 22:42 |
| hittest soll nicht sofort eintreten | schmidi | Flash MX | 3 | 08-11-2004 10:11 |
| hittest funktioniert nicht | dance | Flash 4 und Flash 5 | 0 | 03-06-2002 11:34 |