random bei Pong

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

  • random bei Pong

    ich versuche seit neuestem GML zu lernen, doch das erste problem ließ nicht allzu lange auf sich warten:

    wenn der ball mit dem linken shooter kollidiert soll der in einer random function von 1° - 180° abspringen. beim rehcten shooter dann von 180°-360°. ( also, beim linken shooter soll der nach rechts absprinegn und beim rehcten shooter nach links, sorry falls das die falschen gradzahlen sind)
    bei einer kollision mit der wand soll der ball jedoch halbwegs realistisch abspringen (physikalisch wäre das: einfallswinkel = ausfallswinkel ;D )

    Ich hab auch noch das angefangene spiel angehangen das ihr euch das besser vorstellen könnt ^^ ( falls ihr das korriegiter und noch zeit habt könnt ihr auch noch diese //kommentare schreiben, thx)

    PongInGML
    :) :( ;) :P 8) :D ;( :rolleyes: :huh: :S X( 8| ?( :| :thumbdown: :thumbsup: :thumbup: 8o :pinch: :sleeping: :wacko: :whistling: :evil: ^^ :heul: :para:
  • zu den gadzahlen:
    von links nach rechst ist 0° follglich ist der einfallswinkel des rechtsn spielers 270°-360°; 0°-90°. wobei 90 und 270 schon blöd währen, da der ball dan ja nie zum anderen zurükkommen könnte.

    beim abprallen würde ich immer das icon nehmen, das ist eines der wenigen die ich benutze. ansonsten könntest sowas machen:

    GML-Quellcode

    1. vspeed *= -1;
    das würde den vspeed umdrehen, was einfallswinkel = ausfallswinkel bedeutenwürde.
    :) Nobody is perfect (-:

    "Dummköpfe sind Denkerköpfen weit überlegen. Zahlenmäßig." Ernst Ferstl
  • Ball Object ->
    Collision Event (mit Schläger links Object) ->

    GML-Quellcode

    1. motion_set(random(180),speed)


    Ball Object ->
    Collision Event (mit Schläger rechts Object) ->

    GML-Quellcode

    1. motion_set(random(180) + 180,speed)


    Das müsste jetzt eigentlich klappen.

    €dit:

    Huch, das wäre bei Schläger oben oder unten. So müsste es richtig sein:

    Ball Object ->
    Collision Event (mit Schläger links Object) ->

    GML-Quellcode

    1. motion_set(random(180) + 90,speed)


    Ball Object ->
    Collision Event (mit Schläger rechts Object) ->

    GML-Quellcode

    1. motion_set(random(180) + 270,speed)
    Dieser Beitrag ist Spam.
    | |
    | |
    \. ./
    \/

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von F.S. ()

  • ah danke es funktioniert...

    nur was muss ich genau ändern wenn ich nicht mehr will, dass der ball fast senkrecht abprallt und dann eine lange zeit zwischen den wänden bounced bis er an der anderen seite ankommt... also nur noch von 0-70 und von 110 -180 °;
    dann noch von 180 -250 und von 290-360°.

    also das der sonen kleinen sprung praktisch da macht aber der sich trotzdem eines der beiden funktionen aussucht.......

    (ich weiß, ich bin schwierig...)

    [Edit:] Bottleneck hat mir über ICQ geantwortet:

    mach das jeweils noch dazu:
    if(floor(random(1))==0)
    gradzahl=random(70);
    else
    gradzahl=random(70)+110;
    Bottleneck (05:31 PM) :
    und dann schreib jeweils statt
    motion_set(random(180)...
    motion_set(random(gradzahl)...


    damit sollte mein problem gelöst sein...
    :) :( ;) :P 8) :D ;( :rolleyes: :huh: :S X( 8| ?( :| :thumbdown: :thumbsup: :thumbup: 8o :pinch: :sleeping: :wacko: :whistling: :evil: ^^ :heul: :para:

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Das Tier ()

  • Benutzer online 1

    1 Besucher