C Sharp – die besten Beiträge

Pygame Vampire Survivors?

Hallo ich programmiere gerade ein Spiel in Pygame das dem Spiel Vampire Survivors ähnelt ich habe aktuell das problem das Problem das wenn der spieler auf die Gegner hinzu läuft die Gegener nach hinten verschoben werden staat nach vorn weil.

Also aktuell wenn ich stehe laufen die Gegner auf mich zu.

Und wenn ich von den Gegnern weg laufe werden sie aus dem Screen geschoben.

Aber wenn ich auf sie zu laufe werden sie auch aus dem Screen geschoben.

Obwohl sie dann normal laufen sollen als ob der spieler steth hier der wichtige code:   def update(self, dt, player, screen_width, screen_height):

    if not self.collided_with_enemy and self.is_visible:

      dx = player.x - self.x

      dy = player.y - self.y

      distance = max(1, pygame.math.Vector2(dx, dy).length())

      direction = pygame.math.Vector2(-dx / distance, -dy / distance)

      player_rect = pygame.Rect(player.x, player.y, player.hitbox_width, player.hitbox_height)

      enemy_rect = pygame.Rect(self.x, self.y, self.hitbox_width, self.hitbox_height)

      if player_rect.colliderect(enemy_rect):

        player.handle_collision()

        self.speed = 0

        return

      if dx != 0 and dy != 0:

        dx = 0

        dy = 0

      speed_multiplier = self.speed * dt

      if player.is_moving:

        speed_multiplier *= 0.5

      # Anpassung der Bewegungsrichtung basierend auf dem Spielerstatus

      if player.is_moving:

        self.x -= direction.x * speed_multiplier

        self.y -= direction.y * speed_multiplier

      else:

        self.x += direction.x * speed_multiplier

        self.y += direction.y * speed_multiplier

      self.x = max(-self.hitbox_width, min(self.x, screen_width))

      self.y = max(-self.hitbox_height, min(self.y, screen_height))

      self.animation_timer += dt

      if self.animation_timer >= self.animation_speed:

        self.animation_timer = 0

        self.current_frame = (self.current_frame + 1) % self.animation_frames

      # Anpassung der Geschwindigkeit basierend auf der Bewegungsrichtung des Spielers

      player_direction = pygame.math.Vector2(player.x - self.x, player.y - self.y)

      player_distance = max(1, player_direction.length())

      player_direction = player_direction.normalize()

      dot_product = player_direction.dot(direction)

      if dot_product > 0.5:

        # Spieler bewegt sich dem Gegner entgegen

        self.speed = self.original_speed + 100

      else:

        # Spieler bewegt sich vom Gegner weg

        self.speed = self.original_speed - 100

    else:

      self.x += self.direction * self.speed * dt

      self.collided_with_enemy = False

    for enemy in enemies:

      if check_enemy_collision(player, enemy):

        break

Java, JavaScript, Minecraft, C Sharp, Programmiersprache, Python, Python 3, Unity, Pygame

Wo schlagt ihr nach, wenn ihr euch nicht auskennt beim Programmieren?

Hallo Leute, ich will nur Fragen, was ihr macht, wenn ihr nicht weiter wisst bei einem Projekt, während ihr programmiert. 

Weil ich möchte programmieren und ich möchte meiden Internet Seiten (die mit fertig geschriebenen) und YouTube Tutorials zu verwenden, während ich programmiere, da dort die Codes fertig geschrieben sind und ich sie nicht komplett abschreiben möchte, aber ich könnte mir den Code zumindest durchlesen.

Ich würde lieber im Internet die offizielle Dokumentationen der Programmiersprachen zur Hand nehmen und wenn es wirklich ein spezifisches Problem ist, könnte ich diese oben genannten Methoden verwenden, die ich normalerweise Meiden würde und wahrscheinlich auch Foren wie auf Reddit und Stack Overflow verwenden (obwohl mir Stack Overflow immer sehr unsympathisch wirkt).

Mir ist es bewusst, dass das alles Selbstverständlich ist sowas zu tun, aber in der Schule wurde uns sowas nicht so gelehrt sowas zu machen, sondern uns wurden die Zetteln/Word Dateien gegeben, mit Trockenen Erklärungen und meistens stumpfes Auswendiglernen. Die Aufgaben, die uns die Professoren geben sind recht unverständlich und trotz das wir sie Fragen stellen konnten, haben sie niemanden beim Programmieren geholfen, sowie als wollen sie uns dazu bringen das Programmieren zu hassen.

Versteht mich nicht falsch, ich finde Programmieren trotzdem interessant und will es auch erlernen, aber das was man in der Schule lernt ist nichts. Wir haben dort nie wirklich was mit GC oder Memory Allocations gehabt, sondern haben meistens oberflächlich mit VS 2019 mit C# gelernt. Die Sprache ist eigentlich recht verständlich, aber in der Schule war es eben recht schmerzhaft zu lernen.

Programmiersprachen die ich lernen möchte sind C# und Python zurzeit. In der Zukunft auch Rust, aber das würde ich später lernen.

Wie ist es bei euch so?

Danke LG

Software, App, Programm, Webseite, programmieren, C Sharp, Entwicklung, Programmiersprache, Python, Softwareentwicklung, Rust, Entwicklertools

Meistgelesene Beiträge zum Thema C Sharp