Esempio n. 1
0
def test_adding_all_armor_types():
    guard = ActorBuilder().build()
    guard.dexterity.value = 13
    guard.natural_armor.value = 2 # got really thick skin
    guard.add_component(ChainMail())
    guard.add_component(LightSteelShield())
    assert guard.armor_class.value == 19
Esempio n. 2
0
def test_only_armor_low_touch_armor_class():
    guard = ActorBuilder().build()
    guard.add_component(ChainMail())
    
    assert guard.armor_class.value == 15
    assert guard.touch.value == 10
    
    guard.dexterity.value = 14
    assert guard.armor_class.value == 17
    assert guard.touch.value == 12
Esempio n. 3
0
def test_wiring_skills():
    tumble = Tumble(6)
    balance = Balance(0)
    
    character = ActorBuilder().build()
    character.add_component(balance)
    character.strength.value = 8
    character.dexterity.value = 14
    character.add_component(Jump(0))
    character.add_component(tumble)
    
    assert tumble.bonus.value == 8
    assert balance.value == 4
Esempio n. 4
0
def test_adding_a_weapon():
    guard = ActorBuilder().build()
    guard.strength.value = 16
    guard.dexterity.value = 13
    
    sword = Longsword()
    dagger = Dagger()
    guard.add_component(sword)
    guard.add_component(dagger)
    guard.add_component(WeaponFocus(sword))
    
    assert sword.melee.attack.value == 4
    assert sword.melee.damage.default == d8
    assert sword.melee.damage.value == d8+3
    
    assert dagger.melee.attack.value == 3
    assert dagger.ranged.attack.value == 1
    assert dagger.ranged.damage.value == d4 
Esempio n. 5
0
def test_adding_chainmail():
    guard = ActorBuilder().build()
    guard.dexterity.value = 12
    guard.add_component(ChainMail())
    assert guard.armor_class.value == 16
Esempio n. 6
0
def test_adding_shield():
    guard = ActorBuilder().build()
    guard.add_component(LightSteelShield())
    assert guard.armor_class.value == 11