;;; Arachnus_Standing ;;; 080245CC (T) push r14 080245CE (T) bl 801196Ch ; Execute subroutine Enemy_CheckAnimationLoopNextFrame 080245D2 (T) cmp r0,0h ;\ 080245D4 (T) beq 802460Ch ;} If returned 0 (more animation): return 080245D6 (T) ldr r2,=EnemyOrientation ;\ 080245D8 (T) ldrh r1,[r2] ;| 080245DA (T) mov r0,40h ;| 080245DC (T) and r0,r1 ;} If EnemyOrientation has 40h (facing right): 080245DE (T) cmp r0,0h ;| 080245E0 (T) beq 80245F8h ;/ 080245E2 (T) ldr r1,=SamusData ;\ 080245E4 (T) ldrh r0,[r2,4h] ;| 080245E6 (T) mov r3,1h ;| 080245E8 (T) ldrh r1,[r1,16h] ;} If EnemyXPosition > XPosition: 080245EA (T) cmp r0,r1 ;| 080245EC (T) bls 8024606h ;| 080245EE (T) b 8024604h ;/ 080245F0 dd 0030006BCh,003001244h 080245F8 (T) ldr r1,=SamusData ;\ Else (EnemyOrientation hasn't 40h): 080245FA (T) ldrh r0,[r2,4h] ;| 080245FC (T) mov r3,1h ;| 080245FE (T) ldrh r1,[r1,16h] ;} If EnemyXPosition < XPosition: 08024600 (T) cmp r0,r1 ;| 08024602 (T) bcs 8024606h ;/ 08024604 (T) mov r3,3h ; r3 = 3 (turn around) 08024606 (T) mov r0,r2 ;\ Else: r3 = 1 (thinking) 08024608 (T) add r0,24h ;} EnemyPose = r3 0802460A (T) strb r3,[r0] ;/ 0802460C (T) pop r0 0802460E (T) bx r0 08024610 dd 003001244h