2016-09-06 4 views
0
//obj 1 has that: 
if (place_meeting(x,y, obj_nomatter)){ 
global.points -= 1; 
moveawayfromobj_nomatter(); 
// obj 1 rotates. 
} 

Das Problem ist, dass die Punkte manchmal eins oder sieben fallen. Irgendwelche Ideen für Algorithmen? Vielen Dank!Spiel maker studio place_meeting

+0

Ihre Frage ist vage und es fehlt Kontext. Bitte überarbeiten Sie es so, dass es für uns klar ist, was Sie tun möchten, welches Ergebnis Sie erwarten ... und was Sie stattdessen bekommen – user919426

+1

Um die Antwort, die Sie von Ihren Fragen bekommen, zu verbessern, sollten Sie Dinge wie das Posten eines [minimal, vollständig und verifizierbares Beispiel] (http://stackoverflow.com/help/mcve), [Syntaxhervorhebung] (http://meta.stackexchange.com/questions/184108/what-is-syntax-highlighting-and-how-does (it-work), indem Sie Ihre Frage im Titel deutlich machen, [erforderliche Tags hinzufügen] (http://stackoverflow.com/help/tagging) ... und [weiter zu den FAQ] (http: // stackoverflow .com/help/how-to-ask) für weitere Informationen – user919426

Antwort

0

Sie verwenden, dass in dem Schritt Ereignis so nennt es die Aktion ein oder sieben Mal, wenn Sie noch für sieben Stufen kollidieren

Ein Verfahren ist ein Timer oder eine Variable

so zu verwenden: Dies ist die Methode, die Variable

var ones = false; 
if(!ones) { 
    if(place_meeting(x,y,obj_nomatter)) { 
    global.points -= 1; 
    ones = true; 
    } 
} 

dies die Methode

step event: 
if(place_meeting(x,y,obj_nomatter)) {alarm[0] = room_speed;} 
//to use the room_speed, 30 for default (a second) 

alarm[0]: 
global.points -= 1; 

//with this method if you collide more than room_speed global.points keeps going down 
012 unter Verwendung der Zeitgeber
+0

Oh mein Gott, wie habe ich diese Methode vergessen !! Vielen Dank!!! – Raphael