débutant, ne blâmez pas :), je suis actuellement le codage d'un jeu simple « pingpong » en C#, juste pour pratiquer un peu parce que c'est ma deuxième semaine d'apprendre cette langue. J'ai essayé de faire KeyEvents maintenant faire « picsSchlägerRechts » déplacer vers le haut et vers le bas, Wich a bien fonctionné, mais je ne parviens pas à faire une « restriction » pour elle de ne pas sortir de mon panneau. des idées?(C#) ne parvenez pas à imposer des restrictions pour déplacer l'objet
private static bool conditionUP ;
private static bool conditionDown ;
private void frmPingPong_KeyDown(object sender, KeyEventArgs e)
{
{
if (!(picSchlägerRechts.Location.Y == 0 && picSchlägerRechts.Location.Y == 249)) {
conditionDown = true;
conditionUP = true;
}
if (e.KeyCode == Keys.W && conditionUP == true)
{
picSchlägerRechts.Location = new Point(picSchlägerRechts.Location.X, picSchlägerRechts.Location.Y - ms);
if (picSchlägerRechts.Location.Y == 0)
{
conditionUP = false;
}
}
if(e.KeyCode == Keys.S && conditionDown == true)
{
picSchlägerRechts.Location = new Point(picSchlägerRechts.Location.X, picSchlägerRechts.Location.Y + ms);
if (picSchlägerRechts.Location.Y == 298)
{
conditionDown = false;
}
}
ce qui est 'ms'? au lieu de faire == utiliser quelque chose comme '<= 0' and '> = 249' –
désolé, a oublié d'inclure cela, il est juste ma variable pour la movementspeed. –
si votre movementSpeed est réglé sur une variable qui Ignore 0 il ne sera jamais frappé votre condition de '== 0' utiliser juste' <= 0' à la place et peut-être logique même mettre que si l'emplacement moins la vitesse de déplacement est inférieur à 0 il suffit de le mettre à 0 à la place. –