doublejump

by snydej

Game:

Description:

!game_mode = $7e0100
!buttons1 = $7e0016
!buttons2 = $7e0018
!ground_stand = $7e13ef
!sprite_stand = $7e1471
!v_y = $7e007d

	lda !game_mode
	cmp #$14
	bne end
	
;Test if the player is on the ground.
	lda !ground_stand
	ora !sprite_stand
	beq jump_test

;on ground
	lda #$0
	sta !carl_initialized
	jmp end

;in air
jump_test:
;a jump test
	lda !buttons2
	bit #$80
	bne +

;b jump test
	lda !buttons1
	bit #$80
	beq end
	
; jump (if double jump is not used up)
+	lda !carl_initialized
	bne end
	lda #$1
	sta !sprite_stand
	sta !carl_initialized
	lda #$0
	sta !v_y

end:
	lda #$00
	rtl
back to listings