I created simplifed fork of your game (I haven't playtested it yet). It has no narrative elements, it's just a fight between solo player and a beast with 4 body parts (I named them "paws"). The player has 3 weapons. HP of the Player is 6. The players wins if they are alive, but the beast is dead. The player loses if the player dies. The player dies if all their weapons are destroyed and/or their HP equal or less than zero. The beast dies if each of their paws is destroyed. If both the player and the beast die, then it's considered that the game was lost. A weapon/paw is considered to be destroyed when its HP is equal or less than zero.
Before the battle between the player and the beast begins each weapon and paw gets separately and randomly assigned HP from 1 to 6 (including 1 and 6). Then the player can choose a weapon to use and a paw to attack. If both the player and the beast survive the attack, then the player again makes choices about what weapon to use and what paw to attack. It's repeated until the player either wins or loses.
During attack we reduce the paw's HP by number equal to the weapon's HP and then check if it's true that the weapon's HP (i.e. value of the attacking weapon) and the paw's HP (i.e. value of the attacked paw) are either both odd or both even. If it's true, then we reduce the weapon's HP by 1. If it's false, then the player is given a choice: we either reduce the weapon's HP by 2 or protect the weapon, but reduce the player's HP by 1. Also, if the weapon gets destroyed, then we reduce the player's HP by number equal to the paw's post-attack HP (exception: if the paw's post-attack HP is negative, then we treat it as if it were zero, in order to avoid healing the player).