1. Aktuell funktioniert unser Image Proxy nicht mehr ordnungsgemäß, sodass keine Bilder mehr angezeigt werden. Wir kümmern uns darum!

Wir verwenden Cookies, um deinen Aufenthalt auf Animes.so möglichst angenehm gestalten zu können. Mehr erfahren

Frage Unit Collision C# Windows Forms Application

Dieses Thema im Forum "Computer & Technik" wurde erstellt von SaikaVA, 7. Jan. 2018.

  1. SaikaVA
    SaikaVA

    Otaku Novize

    Registriert seit:
    26. Nov. 2017
    Beiträge:
    28
    Zustimmungen:
    11
    Hallo vielleicht ist hier jemand der sich damit auskennt. Ich schreibe gerade an meinem Flappy Bird Abklatsch. Es funktioniert soweit. Geschrieben ist es in C# als Windows Form Application, weil ich lernen wollte die IDE zu benutzen. Mein Problem ist folgendes:

    Das Spiel wird beendet, wenn der Vogel das Objekt berührt, in diesem Fall die Pipe. Bei mir sind es aber Charaktere, genauer gesagt Bilder im PNG. Ich lasse also 2 PictureBoxen kollidieren. Weil es aber Charaktere sind und keine rechteckigen Gegenstände, kollidieren Sie miteinander ohne sich zu berühren, da die Pictureboxen ja rechteckig sind.

    Ich habe das Problem versucht zu lösen, indem ich die Bilder zurechtschneiden wollte. Musste dann leider feststellen, dass Bilder immer rechteckig sein müssen.
    https://www.animes.so/titel/objekt-...und-auch-nicht-transparent.24473/#post-478154

    Hier ist der Code mit dem ich die Kollision feststelle:
    //check for collision
    if (flappyRiko.Bounds.IntersectsWith(ground.Bounds))
    {
    EndGame();
    }

    Ich mache das alles in meiner Freizeit zum Lernen und hoffe, dass ich die Frage nicht auf Stackoverflow stellen muss :)
     
  2. so1ko
    so1ko

    ☣️ Anti-Spam-Bot & Troll vong Dienst ☢️ Seelenverkäufer Ex-Mitarbeiter

    Registriert seit:
    31. Aug. 2014
    Beiträge:
    488
    Zustimmungen:
    427
    Wenn du Flappybird kopierst, kann es ja nur rechts, oben, links oder unten kollidieren. Das heißt, du kannst dir deinen Charakter so zurechtlegen, dass diese Seiten entsprechend sichtbare Ausbuchsungen haben. Alternativ kannst du auch die Hitboxen von den Röhren kleiner stellen, sodass es erst kollidiert, wenn der Charakter etwas drin ist.
    Komplett richtig wäre es, wenn du die Hitbox deines Charaktermodells auf ihn projizierst, sodass nicht die PNG kollidiert, sondern eine eigens von dir erstellte Hülle.
     
    SaikaVA gefällt das.
  3. SaikaVA
    SaikaVA

    Otaku Novize

    Registriert seit:
    26. Nov. 2017
    Beiträge:
    28
    Zustimmungen:
    11
    Danke, deine Antwort hat mir geholfen. Ich hab auf den Pictureboxen, einfach Pictureboxen raufgelegt, ihnen die gleiche Logik gegeben und deren Visible einfach auf false gesetzt. Jetzt kollidieren nur die Hitboxen miteinander und die Bilder folgen ihnen einfach. Ich muss jetzt nur noch hinkriegen, dass das Bild des Spielcharakters über dem Kollisionsobjekt liegt beim Tod. Ist es möglich eine Picturebox immer über den anderen anzeigen zu lassen?
     

Diese Seite empfehlen