Prev: 37134 Up: Map Next: 37790
37233: Action Attack
Action_Attack 37233 CALL 37194
37236 LD A,(46825)
37239 LD HL,619
37242 CP 255
37244 JR Z,Action_Attack_0
37246 LD IX,(46858)
37250 LD L,(IX+8)
37253 LD H,(IX+9)
Action_Attack_0 37256 LD (46844),HL
37259 LD IX,(46860)
37263 LD B,(IX+5)
37266 LD A,(46825)
37269 INC A
37270 JR Z,Action_Attack_2
37272 LD IY,(46858)
37276 LD A,(IY+0)
37279 DEC A
37280 LD HL,44895 HL="you cannot kill with[0x09][0x15]"
37283 JP NZ,PrintMsg
37286 LD A,(IY+5)
37289 ADD A,B
37290 JR NC,Action_Attack_1
37292 LD A,255
Action_Attack_1 37294 LD B,A
Action_Attack_2 37295 LD A,B
37296 CALL Action_Attack_7
37299 LD B,A
37300 CALL 40260
37303 LD IX,(46856)
37307 LD A,(IX+6)
37310 CALL Action_Attack_7
37313 CP B
37314 LD HL,44880 HL="but the effort is wasted.[0x0e] defense is too strong"
37317 JP NC,PrintMsg
37320 LD C,A
37321 ADD A,16
37323 JR NC,Action_Attack_3
37325 LD A,255
Action_Attack_3 37327 CP B
37328 JR C,Action_Attack_6
37330 LD A,B
37331 SUB C
37332 RLCA
37333 LD E,A
37334 LD D,0
37336 LD IY,37414
37340 ADD IY,DE
37342 LD L,(IY+0)
37345 LD H,(IY+1)
37348 RRCA
37349 RRCA
37350 LD B,A
37351 CPL
37352 ADD A,(IX+5)
37355 JR NC,Action_Attack_4
37357 LD (IX+5),A
Action_Attack_4 37360 LD A,B
37361 RRCA
37362 CPL
37363 ADD A,(IX+6)
37366 JR NC,Action_Attack_5
37368 LD (IX+6),A
Action_Attack_5 37371 JP PrintMsg
Action_Attack_6 37374 LD HL,44602 HL="with one well place(s|d|ing|es) blow you cleave[0x0e] skull"
37377 CALL PrintMsg Call PrintMsg.
37380 SET 3,(IX+7)
37384 LD A,(46824)
37387 CALL 38783
37390 LD A,6
37392 JP DisplayExits_3
Action_Attack_7 37395 PUSH BC
37396 LD B,A
37397 LD A,10
37399 CALL CalcRandom
37402 LD C,A
37403 ADD A,B
37404 JR NC,Action_Attack_8
37406 XOR A
37407 BIT 7,C
37409 JR NZ,Action_Attack_8
37411 DEC A
Action_Attack_8 37412 POP BC
37413 RET
37414 DEFW 44860
37416 DEFW 44843
37418 DEFW 44832
37420 DEFW 44821
37422 DEFW 44809
37424 DEFW 44788
37426 DEFW 44770
37428 DEFW 44753
37430 DEFW 44730
37432 DEFW 44716
37434 DEFW 44696
37436 DEFW 44683
37438 DEFW 44666
37440 DEFW 44656
37442 DEFW 44634
37444 DEFW 44617
This entry point is used by the routine at Action_Putdown.
Action_Attack_9 37446 LD IX,(46856)
37450 LD A,(IX+0)
37453 DEC A
37454 RET
37455 CALL Action_Putdown_4
37458 LD A,(46825)
37461 CP (IX+1)
37464 JP Z,ICannotDoThat
37467 LD IY,(46858)
37471 LD A,(46823)
37474 CP 18
37476 JR Z,Action_Attack_10
37478 BIT 5,(IY+7)
37482 JR Z,Action_Attack_12
Action_Attack_10 37484 LD A,(IY+2)
37487 SUB (IX+2)
37490 JR C,Action_Attack_11
37492 PUSH AF
37493 LD A,(46825)
37496 CALL 40168
37499 LD B,A
37500 POP AF
37501 SUB B
Action_Attack_11 37502 LD HL,44570 HL="[0x09] is too full"
37505 JP C,PrintMsg
37508 JP Z,PrintMsg
37511 CALL 40260
37514 LD A,(IY+16)
37517 LD (IX+16),A
37520 LD A,(46825)
37523 LD (IX+1),A
37526 RET
Action_Attack_12 37527 LD A,5
37529 JP DisplayExits_2
37532 CALL 40260
37535 LD IX,(46856)
37539 LD A,(IX+1)
37542 CP 255
37544 JR Z,Action_Attack_13
37546 CALL LocateObject
37549 RES 2,(IX+7)
37553 LD A,1
37555 JR Action_Attack_14
This entry point is used by the routine at ActionClimbOut.
Action_Attack_13 37557 CALL 40260
37560 LD A,10
Action_Attack_14 37562 LD IX,(46860)
37566 ADD A,(IX+5)
37569 CP 128
37571 JR NC,Action_Attack_16
37573 LD (IX+5),A
37576 LD IX,(46856)
37580 LD (IX+1),255
37584 LD B,(IX+0)
Action_Attack_15 37587 LD (IX+16),0
37591 INC IX
37593 DJNZ Action_Attack_15
37595 RET
Action_Attack_16 37596 LD HL,45382 HL="[0x0c] foul gluttony has{5} killed you[0x15]"
37599 CALL PrintMsg
37602 LD A,(46826)
37605 JP 38783
37608 LD A,131
37610 JP DisplayExits_2
This entry point is used by the routines at Action_Shoot and ActionClimbOut.
Action_Attack_17 37613 LD IX,(46856)
37617 BIT 1,(IX+7)
37621 JP NZ,40822
37624 BIT 3,(IX+7)
37628 JP NZ,Action_Attack_22
37631 SUB A
37632 CP (IX+6)
37635 JP Z,40822
37638 LD B,A
37639 LD A,(46825)
37642 INC A
37643 JR Z,Action_Attack_18
37645 LD IY,(46858)
37649 LD A,(IY+5)
37652 AND A
37653 JP Z,40822
37656 PUSH IX
37658 LD IX,(46858)
37662 LD A,11
37664 CALL 39809
37667 POP IX
37669 INC A
37670 JP Z,40822
37673 LD B,(IY+5)
Action_Attack_18 37676 CALL 40260
37679 LD A,21
37681 CALL CalcRandom
37684 ADD A,B
37685 LD IY,(46860)
37689 ADD A,(IY+5)
37692 JR NC,Action_Attack_19
37694 LD A,255
Action_Attack_19 37696 SUB (IX+6)
37699 JR C,Action_Attack_20
37701 SET 3,(IX+7)
37705 LD A,(46824)
37708 CALL DisplayExits_6
37711 SRA (IX+5)
37715 LD A,(IX+4)
37718 CP 2
37720 CALL C,40272
37723 LD A,131
37725 CALL DisplayExits_3
Action_Attack_20 37728 LD A,(46825)
37731 CP 255
37733 RET Z
37734 LD IY,(46858)
37738 BIT 3,(IY+7)
37742 RET NZ
37743 LD B,(IY+6)
37746 LD A,21
37748 CALL CalcRandom
37751 ADD A,B
37752 JR NC,Action_Attack_21
37754 LD A,255
Action_Attack_21 37756 SUB (IX+6)
37759 RET C
37760 SET 3,(IY+7)
37764 LD A,(46825)
37767 CALL DisplayExits_6
37770 LD A,(IY+5)
37773 SRA A
37775 LD (IY+5),A
37778 CALL 40272
37781 PUSH IY
37783 POP IX
Action_Attack_22 37785 LD A,131
37787 JP DisplayExits_3
Prev: 37134 Up: Map Next: 37790