Animation nur 1x abspielen
-
Hallo Community,
ich hab gerade irgendwie ein Blackout.Ich versuche schon eine halbe Stunde eine Schussanimation nur 1x abzuspielen,und es funktioniert einfach nicht.
Es soll beim Mausklick die Animationssequenc (enum WEAPON_SHOOT) ,was die variablen framebegin und frameend definiert , als animationssequenc gesetzt werden und dan eben nur 1x abgespielt werden.Die Frame Variable wird mit fmodf und der Zeit seit dem Computerstart und den variablen framebegin und frameend erstellt.
So hab ich das gerade:
.... if(Mausklick) weapon->shoot = true .... if(weapon->shoot) { weapon->sequenc = weapon->WEAPON_SHOOT; weapon->frame = 123; if(weapon->frame > 141) { weapon->shoottimer = 0; weapon->shoot = false; } } else { weapon->sequenc = weapon->WEAPON_IDLE; } und das WEAPON_SHOOT definiert so: case Weapon::WEAPON_SHOOT: weapon->framebegin = 123; weapon->frameend = 142; break;
Könnt ihr mir irgendwie helfen?
Vielen Dank
-
Mausklick ist bestimmt noch aktiv nachdem deine animation fertig ist und setzt dann shoot wieder auf true
-
Ne ist ne MouseHit Funktion,gibt also nur einen Impuls.
-
So hatr jetzt geklappt.Das weapon->frame = 123 sollte ja nur ganz am Anfang sein,da diese Befehle alle in einer Schleife stehen.Jetzt hab ich aber das Problem ,dass der manchmal die Animation nicht mit Frame 123 anfängt,sondern mit 135 oder sowas.
Wie kann ich das lösen.Mach das ja gerade mit fmodf();
Danke