def isACrit( self, croll=None ): if croll: self.rolls.append( croll ) if len( self.rolls ) < 2: from vellum.server.dice import parse self.rolls.extend( parse( "1d20" ).sum( ) ) #This will need to be fixed for situations where the att or AC changes based on the defender or attacker return ( self.rolls[ 1 ] != 1 ) and ( ( self.rolls[ 1 ] + self.tool.ATT ) > self.object.AC or ( self.rolls[ 1 ] ) == 20 )
def roll( self ): from vellum.server.dice import parse return parse( self.ranks[ super( D20DamageRange, self ).__int__( ) ] )[ 0 ].sum( )