player: Fixed attribute table in init
authorLukas Krickl <lukas@krickl.dev>
Sun, 21 Dec 2025 16:01:58 +0000 (17:01 +0100)
committerLukas Krickl <lukas@krickl.dev>
Sun, 21 Dec 2025 16:01:58 +0000 (17:01 +0100)
src/attributes.s
src/player.s
tiles/bank8000.inc
tiles/bank9000.inc

index e43e19edc2d32ecf3733d02cb02f57ad4521cf31..ac47c8181438a0e54efd9f4b25ab21c962cee577 100644 (file)
@@ -25,7 +25,7 @@ act_attr_get_str:
        ;               de: actor
        ;       returns:
        ;               a: damage value
-attr_attack_damage:
+act_attr_get_attack_damage:
        ld hl, act_weapon
        add hl, de
        ld a, [hl] ; load weapon type
@@ -36,7 +36,7 @@ attr_attack_damage:
 @unarmed:
        ; unarmed is just strength / 2
        call act_attr_get_str
-       sla a ; divide by 2
+       sra a ; divide by 2
        cp a, 0 ; damage should at least be 1!
        ret nz
        ld a, 1 ; ensure it is at least 1!
index f0b3316729e2fb8eebe357bc839369289bf11185..fffee984c3e082f042c188e0d0a044eb009dd080 100644 (file)
@@ -50,9 +50,9 @@ player_init:
        ld [player+act_mp], a
 
        ; set player attribute table
-       ld a, player_attr LO
-       ld [player+act_attr], a
        ld a, player_attr HI
+       ld [player+act_attr], a
+       ld a, player_attr LO
        ld [player+act_attr+1], a
        
        ; set default stats
@@ -75,6 +75,9 @@ player_update:
        
        ; player attack call
 player_attack:
+       ld de, player
+       call act_attr_get_attack_damage
+       
        ; TODO: implement correctly
        ; for now just remove an actor if
        ; they are near
index 62c6464b7487d77e5d24bf06ac192f148f810f23..2531d8a83d19f76d39080dcddc1fe6b15273e811 100644 (file)
 .chr 33211300
 .chr 33211300
 ; tile 68
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
+.chr 22222222
+.chr 22332211
+.chr 22303111
+.chr 22232222
+.chr 22212322
+.chr 22212322
+.chr 22212221
+.chr 22211233
 ; tile 69
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
+.chr 22222222
+.chr 11223322
+.chr 11130322
+.chr 22223222
+.chr 22321222
+.chr 22321222
+.chr 12221222
+.chr 33211222
 ; tile 70
 .chr 00000000
 .chr 00000000
 .chr 33330000
 .chr 00000000
 ; tile 84
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
+.chr 22221203
+.chr 22221100
+.chr 22222110
+.chr 22222211
+.chr 22222221
+.chr 22222222
+.chr 22222222
+.chr 22222222
 ; tile 85
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
+.chr 30112222
+.chr 00112222
+.chr 01122222
+.chr 11222222
+.chr 12222222
+.chr 22222222
+.chr 22222222
+.chr 22222222
 ; tile 86
 .chr 00000000
 .chr 00000000
index 62c6464b7487d77e5d24bf06ac192f148f810f23..2531d8a83d19f76d39080dcddc1fe6b15273e811 100644 (file)
 .chr 33211300
 .chr 33211300
 ; tile 68
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
+.chr 22222222
+.chr 22332211
+.chr 22303111
+.chr 22232222
+.chr 22212322
+.chr 22212322
+.chr 22212221
+.chr 22211233
 ; tile 69
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
+.chr 22222222
+.chr 11223322
+.chr 11130322
+.chr 22223222
+.chr 22321222
+.chr 22321222
+.chr 12221222
+.chr 33211222
 ; tile 70
 .chr 00000000
 .chr 00000000
 .chr 33330000
 .chr 00000000
 ; tile 84
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
+.chr 22221203
+.chr 22221100
+.chr 22222110
+.chr 22222211
+.chr 22222221
+.chr 22222222
+.chr 22222222
+.chr 22222222
 ; tile 85
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
-.chr 00000000
+.chr 30112222
+.chr 00112222
+.chr 01122222
+.chr 11222222
+.chr 12222222
+.chr 22222222
+.chr 22222222
+.chr 22222222
 ; tile 86
 .chr 00000000
 .chr 00000000