Prev: 44347 Up: Map Next: 44548
44380: Report Opponent Score
Used by the routine at Animation_OpponentThrowing.
ReportOpponentScore 44380 LD HL,44405 HL=44405.
44383 LD A,(HL) A=*HL.
44384 PUSH AF Stash AF on the stack.
44385 LD (HL),32 Write 32 to *HL.
44387 CALL PrintString_Loop Call PrintString_Loop.
44390 DEFB 16,5 INK: CYAN.
44392 DEFB 17,0 PAPER: BLACK.
44394 DEFB 18,1 FLASH: ON.
44396 DEFB 22,23,16 PRINT AT: 23, 16.
44399 DEFM "GOT" got
44402 DEFB 22,23,26 PRINT AT: 23, 26.
44405 DEFM " " "   ".
44408 DEFB 255 Terminator.
44409 POP AF Restore AF from the stack.
44410 LD C,20 C=20.
44412 LD B,23 B=23.
44414 CALL ReportOpponentScore_Type Call ReportOpponentScore_Type.
44417 RET Return.
Now report the "type" of scoring.
ReportOpponentScore_Type 44418 CP 83 Jump to Report_Single if A is equal to 83.
44420 JR Z,Report_Single
44422 CP 68 Jump to Report_Double if A is equal to 68.
44424 JR Z,Report_Double
44426 CP 84 Jump to Report_Treble if A is equal to 84.
44428 JR Z,Report_Treble
44430 CP 77 Jump to Report_MissedBoard if A is equal to 77.
44432 JR Z,Report_MissedBoard
44434 CP 66 Jump to Report_Bullseye if A is equal to 66.
44436 JR Z,Report_Bullseye
44438 RET Return.
Report score is a "SINGLE".
Report_Single 44439 LD A,B Write BC to *Report_Single_PrintAt+1/ 2 (co-ordinates).
44440 LD (44451),A
44443 LD A,C
44444 LD (44452),A
44447 CALL PrintString_Loop Call PrintString_Loop.
Report_Single_PrintAt 44450 DEFB 22,22,0 PRINT AT: 22, 0.
44453 DEFM "SINGLE" single
44459 DEFB 255 Terminator.
44460 RET Return.
Report score is a "DOUBLE".
Report_Double 44461 LD A,B Write BC to *Report_Double_PrintAt+1/ 2 (co-ordinates).
44462 LD (44473),A
44465 LD A,C
44466 LD (44474),A
44469 CALL PrintString_Loop Call PrintString_Loop.
Report_Double_PrintAt 44472 DEFB 22,22,0 PRINT AT: 22, 0.
44475 DEFM "DOUBLE" double
44481 DEFB 255 Terminator.
44482 RET Return.
Report score is a "TREBLE".
Report_Treble 44483 LD A,B Write BC to *Report_Treble_PrintAt+1/ 2 (co-ordinates).
44484 LD (44495),A
44487 LD A,C
44488 LD (44496),A
44491 CALL PrintString_Loop Call PrintString_Loop.
Report_Treble_PrintAt 44494 DEFB 22,22,0 PRINT AT: 22, 0.
44497 DEFM "TREBLE" treble
44503 DEFB 255 Terminator.
44504 RET Return.
Report score is a "MISSED BOARD".
Report_MissedBoard 44505 CALL PrintString_Loop Call PrintString_Loop.
Report_MissedBoard_PrintAt 44508 DEFB 22,23,16 PRINT AT: 23, 16.
44511 DEFM " MISSED BOARD" missed-board
44524 DEFB 255 Terminator.
44525 RET Return.
Report score is a "BULL".
Report_Bullseye 44526 LD A,B Write BC to *Report_Bullseye_PrintAt+1/ 2 (co-ordinates).
44527 LD (44538),A
44530 LD A,C
44531 LD (44539),A
44534 CALL PrintString_Loop Call PrintString_Loop.
Report_Bullseye_PrintAt 44537 DEFB 22,22,0 PRINT AT: 22, 0.
44540 DEFM "BULL " bull
44546 DEFB 255 Terminator.
44547 RET Return.
Prev: 44347 Up: Map Next: 44548