Mathematischer Fehler ?

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Mathematischer Fehler ?

    Okay also ich glaube irgendwas habe ich hier falsch berechnet. Im Prinzip möchte ich, dass wenn der Spieler zu nahe am Gegner ist, sich die variable attentionBar des Gegners füllt. Je näher der Spieler dabei am Gegner steht, desto schneller soll sich die attentionBar füllen.

    Step Event des Gegners:

    GML-Quellcode

    1. // ShortCuts
    2. distanceP = distance_to_object(oPlayer)
    3. distanceP2 = 10+distanceP/10
    4. if (instance_exists(oPlayer))
    5. {
    6. if (distance_to_object(oPlayer) < sight) // sight = 300
    7. {
    8. if (attentionBar < attentionBarMax) // attentionBar = 0; attentionBarMax = 32
    9. {
    10. attentionBar += sqrt(distanceP2)/50;
    11. }
    12. }
    13. }
    Alles anzeigen


    Da die Entfernung vom Spieler zum Gegner zwischen 300 und einem Pixel liegen kann, möchte ich, dass mit 10+distanceP/10 die Variation der Zahlen nicht zu groß ausfällt.

    NUN ZU MEINEM PROBLEM:

    Eigentlich soll sich je näher der Spieler am Gegner steht die attentionBar füllen. Allerdings füllt sie sich umso langsamer je näher ich dem Gegner komme. Wie behebe ich das Problem am besten? Liegt es an der Wurzel? Habt ihr bessere Lösungsvorschläge?

    Vielen Dank im Vorraus :D
    Es gibt 10 Arten von Menschen: Diejenigen, die Binärcode verstehen und die, die es nicht tun ^^