| |||||||
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: May 2010
Beiträge: 1
| kleines racing-game: problem mit kollisionen
Hallo! Genauso neu wie ich in diesem forum bin, bin ich auch in flash: Als Einsteiger wollte ich ein kleines racing-game mit actionscript2 programmieren. an und für sich, läuft alles ganz gut, leider hab ich schwere probleme die fahrbahn bzw. banden abzugrenzen. via kollision habe ich 4 punkte definiert, welche um das auto verteilt sind. diese prüfe ich ab. wenn eine kollision ist, will ich das auto abbremsen und gleichzeitig wieder richtung fahrbahn lenken. bei mir kommt es aber immer wieder vor dass das auto stecken bleibt, sich willkürlich im kreis dreht oder direkt hinter der bande verschwindet. außerdem ist mir aufgefallen dass das auto im rückwärtsgang "ruckelt"? kann mir jedoch nich erklären warum. hat jemand vl einen effizienten weg, diese kollisionen besser abzugrenzen bzw. allgemein tipps? bin noch nicht wirklich vertraut mit actionscript. hier der code: Code: var v = 0; // autogeschwindigkeit
var vx = 0; // autogeschwindigkeit x-anteil
var vy = 0; // autogeschwindigkeit y-anteil
var vmax = 20; // maximale geschwindigkeit des autos
var vmin = -2;
var beschleunigung = 0.8;
var vvermindert = 0.9; // geschwindigkeitsabnahme bei loslassen der UP-taste
var vbremse = 3; // geschwingigkeitsabnahme bei bremsung
var lenkung = 10; //gradwert mit diesen sich das auto dreht wenn links oder rechts gesteuert wird
_root.onEnterFrame = function() {
// bschleunigung wenn UP-Taste betätigt wird
if(Key.isDown(Key.UP) && (v < vmax)) {
v += beschleunigung;
//trace(v+" +");
}
// bremsung wenn DOWN-Taste betätigt wird
if (Key.isDown(Key.DOWN) && (v > vmin)) {
v -= vbremse;
//trace(v+" -");
}
if (v > 0.4 || v < 0) v = v*vvermindert; // ausrollen des autos wenn nicht beschleunigt wird
else v = 0;
// lenkung links
if (Key.isDown(Key.LEFT) && (v > 0.4)) {
car_mc._rotation -= lenkung; // wird wird der winkel gleich dem auto zugewiesen und das auto dementsprechnd gedreht
//trace(lenkung+" links");
}
// lenkung rechts
if (Key.isDown(Key.RIGHT) && (v > 0.4)) {
car_mc._rotation += lenkung;
//trace(lenkung+" rechts");
}
// zerlegen der geschwindigkeit in komponenten
vx = Math.sin(car_mc._rotation * (Math.PI / 180)) * v;
vy = Math.cos(car_mc._rotation * (Math.PI / 180)) * v * -1;
//trace(vx+" "+vy);
// zuweisen an die x und y werte des autos car_mc
car_mc._x += vx;
car_mc._y += vy;
// definieren der kollisionspunkte des autos car_mc:
linksx = car_mc._x - 20;
rechtsx = car_mc._x + 20;
rechtsy = linksy = car_mc._y;
vornex = hintenx = car_mc._x;
vorney = car_mc._y - 25;
hinteny = car_mc._y + 25;
// aktionen setzen wenn eine kollision zwischen rennstrecke und auto stattfindet
if (_root.rennstrecke_mc.hitTest(linksx, linksy, true)) {
car_mc._rotation += 5; // drehung des autos richtung fahrbahn
v *= 0,85; // verminderung des geschwindkeit
trace("kollision LINKS "+linksx+" "+linksy);
}
if (_root.rennstrecke_mc.hitTest(rechtsx, rechtsy, true)) {
car_mc._rotation -= 5; // drehung des autos richtung fahrbahn
v *= 0,85; // verminderung des geschwindkeit
trace("kollision RECHTS "+rechtsx+" "+rechtsy);
}
if (_root.rennstrecke_mc.hitTest(vornex, vorney, true)) {
car_mc._rotation -= 2; // drehung des autos richtung fahrbahn
v = -2; // verminderung des geschwindkeit
trace("kollision VORNE "+vornex+" "+vorney);
}
if (_root.rennstrecke_mc.hitTest(hintenx, hinteny, true)) {
car_mc._rotation += 2; // drehung des autos richtung fahrbahn
v = 0; // verminderung des geschwindkeit
trace("kollision HINTEN "+hintenx+" "+hinteny);
}
} bin für jeden tipp dankbar. wer ganz toll wenn sich jemand kurz zeit nehmen würde und kurz drüberliest. ![]() grüße flo edit: hab noch die fla hochgeladen. Geändert von flow89 (19-05-2010 um 21:40 Uhr) Grund: anhang hinzugefügt |
| | |
![]() |
| Lesezeichen |
| Stichworte |
| car, game, kollison, racing |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| racing game - hintergrund bewegen | option | ActionScript 2 | 0 | 11-09-2009 01:53 |
| racing game - stecken kollision | webholics.de | ActionScript 2 | 4 | 27-07-2006 20:23 |
| Nettes Racing Game in Pseudo 3D Optik | Flashbob | 3D | 11 | 23-06-2006 17:59 |
| racing game engine problem | der_oki | Flash 4 und Flash 5 | 4 | 02-03-2004 09:07 |
| Game „Breakout“ Kollisionen usw....... | Scrawer | ActionScript 1 | 12 | 26-02-2002 09:23 |