Schleifen problehm



  • Hallo Forum, ich habe da ein kleines problehm das mir große sorgen bereitet. Es ist ein kleines spiel das ich mit XNA programmiert habe, XNA ist ja C# ...

    Nunja abervorab erstmal paar teile aus dem code ...

    in der Update hbe ich erstmald en folgenden code, der wird ausgeführt ennich die rehcte masu taste drücke ...

    shot++;
                                    if (shot == 100) shot = 0;
    
                                    shotgoX[shot] = 400;
                                    shotgoY[shot] = 300;
                                    shotspeedX[shot] = 8f;
                                    shotspeedY[shot] = -0f;
                                    mouseschleifeclick = true;
    

    danach habe ich in der draw den folgenden code, , zu aller erst um die tile map aufzubauen, also den hintergrund ...

    for (int i = 0; i < map_hoehe; i++)
                    {
    
                        for (int j = 0; j < map_breite; j++)
                        {
                            test_tileposX = tile_breite * j + tile_posX;
                            test_tileposY = tile_hoehe * i + tile_posY;
    
                            if (test_tileposX >= -40)
                            {
                                if (test_tileposX <= 840)
                                {
                                    if (test_tileposY >= -40)
                                    {
                                        if (test_tileposY <= 640)
                                        {
    
                                            spriteBatch.Draw(map_textures[0], new Vector2(test_tileposX, test_tileposY), Color.White);
                                            spriteBatch.Draw(map_textures[tilemap[i, j]], new Vector2(test_tileposX, test_tileposY), Color.White);
    
                                        }
                                    }
                                }
                            }
                        }
                    }
    

    Danach folgt ine weitere for schleife, die zeigt die schüßßean, die man schießt ... ( ist ja ein kleines spiel)

    for (int k = 0; k < 100; k++)
    {
    
                        if (mousemoveclick1 == true)
                        {
    
    // wenn die die masutaste gedrückt ist ...
                            tile_posY += 8f;
                            tile_posX -= 0f;                      
                            mousemoveclick1 = false;
    }
    
     if (k < 100)
                            {
    
                                shotgoX[k] += shotspeedX[k] + shotmovespeedX[shot];
                                shotgoY[k] -= shotspeedY[k] + shotmovespeedY[shot];
    
                                this.spriteBatch.Draw(this.tree, new Vector2(shotgoX[k], shotgoY[k]), Color.White);
    
                                shotmovespeedX[k] = 0f;
                                shotmovespeedY[k] = 0f;
    
                            }
    

    Das klappt bis dahin eigentlich auch ganz wunderbar, aber dakommt ja noch das dazu: ( das steht wieder in der update:

    if (movepoint < 0.5538846 && movepoint > 0.3182957) // (6)
                            {
                                shotmovespeedX[shot] += -6f;
                                shotmovespeedY[shot] += -2f;
    
                                mousemoveclick7 = true;
    
                            }
    

    Also, wennich nu die linke maustaste drücke, dann sieht das ja so aus al obmein spieler leuft ... der spieler ist immer in der mitte des bildschirmes ...
    und ennich nun laufe, dann leuft der ja mit den schüßen mit, also er soll mi denen mithalten können, und das klappteigentlich wunderbar, bis die for schleife die gefährlcihe hundert erreicgt hat, dann fligen die ganz plötzlich die schüsse wieder so schnell, obwohlichlaufe ...

    weiß jemand wie ich das behebn kann? ich will das selbst wenn die 100 ereeicht ist die momentanig fliegenden schüßße weiterhin langsammer fliegen wenn ich laufe ...

    Falls ihr den ganzen Code haben wollt,kann ich ihn posten, aber dr ist ziehmlich lang!

    tausende dankeschönschonmal im voraus!



  • habe selten so nen beschissenen code gesehen. grausam! xD
    kauf dir lieber auch mal einen duden.


Anmelden zum Antworten