Nou jah, poging 2 dan maar:
De reden waarom het fout gaat is omdat je ergens bovenaan hebt:
Code:
if (speed >= 10.0)
{
speed = 10.0f;
}
Wat je moet doen is een andere volgorde hanteren, en tevens je variabelen wat handiger benoemen en er meer van moet gebruiken (of constanten maar de maximumsnelheid kan variabel zijn) en je moet explicieter zijn in wat je wil volgens mij staat hierboven alleen keys.up gedefinieerd en daarna alle andere dingen. In een ietwat vreemde volgorde.
En leer ook de [code] tags gebruiken voor duidelijkheid, dat vind je op heel veel verschillende platformen terug, sommige websites hebben zelfs syntax highlighting.
Ik ga er even vanuit dat de snelheid een integer is:
Code:
int intVarMaxSpeed = 10
int intVarSpeed = 0
int intVarSpeedStep = 1
if Keys.Up
{
if (intVarSpeed + intVarSpeedStep => intVarMaxSpeed)
{
intVarSpeed = intVarMaxSpeed;
}
else
{
intVarSpeed = intVarSpeed + intVarSpeedStep;
}
}
if Keys.Down
{
if (intVarSpeed + intVarSpeed <= 0) //minimumsnelheid mag niet onder 0 uitkomen
{
intVarSpeed = 0;
}
else
{
intVarSpeed = intVarSpeed - intVarSpeedStep;
}
}
Is dat duidelijk zo?