Update of /cvsroot/openrpg/openrpg1/orpg/dieroller
In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv722/orpg/dieroller
Modified Files:
Tag: BRANCH-1-7-3
wod.py
Log Message:
Index: wod.py
===================================================================
RCS file: /cvsroot/openrpg/openrpg1/orpg/dieroller/wod.py,v
retrieving revision 1.13
retrieving revision 1.13.2.1
diff -C2 -d -r1.13 -r1.13.2.1
*** wod.py 6 May 2007 16:42:55 -0000 1.13
--- wod.py 9 May 2007 19:55:50 -0000 1.13.2.1
***************
*** 1 ****
! __all__ = ['dice', 'rollers', 'die', 'd20', 'std', 'hackmaster', 'hero', 'shadowrun', 'sr4', 'srex', 'utils', 'wod', 'wodex', 'utils']
--- 1,87 ----
! ## a vs die roller as used by WOD games
! #!/usr/bin/env python
! # Copyright (C) 2000-2001 The OpenRPG Project
! #
! # ope...@li...
! #
! # This program is free software; you can redistribute it and/or modify
! # it under the terms of the GNU General Public License as published by
! # the Free Software Foundation; either version 2 of the License, or
! # (at your option) any later version.
! #
! # This program is distributed in the hope that it will be useful,
! # but WITHOUT ANY WARRANTY; without even the implied warranty of
! # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
! # GNU General Public License for more details.
! #
! # You should have received a copy of the GNU General Public License
! # along with this program; if not, write to the Free Software
! # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
! # --
! #
! # File: wod.py
! # Author: OpenRPG Dev Team
! # Maintainer:
! # Version:
! # $Id$
! #
! # Description: WOD die roller
! #
! # Targetthr is the Threshhold target
! # for compatibility with Mage die rolls.
! # Threshhold addition by robert t childers
! from die import *
!
! __version__ = "$Id$"
!
!
! class wod(std):
! def __init__(self,source=[],target=0,targetthr=0):
! std.__init__(self,source)
! self.target = target
! self.targetthr = targetthr
!
! def vs(self,target):
! self.target = target
! return self
!
! def thr(self,targetthr):
! self.targetthr = targetthr
! return self
!
! def sum(self):
! rolls = []
! s = 0
! s1 = self.targetthr
! botch = 0
! for a in self.data:
! rolls.extend(a.gethistory())
! for r in rolls:
! if r >= self.target or r == 10:
! s += 1
! if s1 >0:
! s1 -= 1
! s -= 1
! else:
! botch = 1
! elif r == 1:
! s -= 1
! if botch == 1 and s < 0:
! s = 0
! return s
!
! def __str__(self):
! if len(self.data) > 0:
! myStr = "[" + str(self.data[0])
! for a in self.data[1:]:
! myStr += ","
! myStr += str(a)
! if self.sum() < 0:
! myStr += "] vs " +str(self.target)+" result of a botch"
! elif self.sum() == 0:
! myStr += "] vs " +str(self.target)+" result of a failure"
! else:
! myStr += "] vs " +str(self.target)+" result of (" + str(self.sum()) + ")"
!
!
! return myStr
|