Hi
Ich häng jetzt schon seit längerem daran Slopes anständig einzubauen. Vor Jahren hat es mal geklappt, aber nur mit sehr vielen sehr wirren D&D Funktionen.
Ich benutze hspeed und vspeed, ich habs mir so halt angewöhnt anständige die Geschw sehen zu können.
Das Hauptprogramm ist in etwa so aufgebaut
so bei terrain steht in etwa folgendes:
überprüft wird aber nur Slopes nach oben, nach unten steht schon bei scr_states und funktioniert
Alles anzeigen
gleiches gibt es auch für links
ich glaub das Problem liegt in der TerrainCheck, denn die gibt bei Slopes immer 999 -also Wand- aus
Ich häng jetzt schon seit längerem daran Slopes anständig einzubauen. Vor Jahren hat es mal geklappt, aber nur mit sehr vielen sehr wirren D&D Funktionen.
Ich benutze hspeed und vspeed, ich habs mir so halt angewöhnt anständige die Geschw sehen zu können.
Das Hauptprogramm ist in etwa so aufgebaut
GML-Quellcode
- script_execute(scr_states) // organizes states eg onGround / inAir; checks for Ground
- script_execute(scr_moving) // sets movings based on scr_states
- script_execute(scr_control) // controls left/right, jump and attack
- script_execute(scr_terrain) // checks terrain and stops if blocked
- script_execute(scr_spriteUpdate) // updates sprites
so bei terrain steht in etwa folgendes:
überprüft wird aber nur Slopes nach oben, nach unten steht schon bei scr_states und funktioniert
GML-Quellcode
- if (hspeed > 0) // Bewegung nach rechts
- {
- if (script_execute(scr_colRectangle,obj_stair_R,2,hspeed)) // 1=oben, 2=rechts, 3=unten, 4=links ; Weite für die getestes wird
- or (script_execute(scr_colRectangle,obj_stair_R2,2,hspeed))
- or (script_execute(scr_colRectangle,obj_stair_L,2,hspeed))
- or (script_execute(scr_colRectangle,obj_block,2,hspeed))
- {
- script_execute(scr_terrainCheck)
- if (checkY = 999)
- {
- hspeed = 0
- }else{
- y = checkY
- }
- }
- }
ich glaub das Problem liegt in der TerrainCheck, denn die gibt bei Slopes immer 999 -also Wand- aus