| Revision: | 1.1.1.1 (vendor branch) |
| Committed: | Sun Feb 5 00:02:08 2006 UTC (20 years, 7 months ago) by root |
| Content type: | text/x-python |
| Branch: | UPSTREAM, MAIN |
| CVS Tags: | post_fixaltar, last_stable, post_fixaltar2, rel-2_82, rel-2_81, rel-2_80, pre_coinconvert, UPSTREAM_2006_03_15, rel-3_0, rel-2_6, rel-2_7, rel-2_4, rel-2_5, rel-2_2, rel-2_0, rel-2_1, rel-2_72, rel-2_73, rel-2_71, rel-2_76, rel-2_77, rel-2_74, rel-2_75, rel-2_54, rel-2_55, rel-2_56, rel-2_79, UPSTREAM_2006_02_01, rel-2_53, pre_material_cfarch_normalize_run, rel-2_32, pre_fixconverter, post_coinconvert, pre_fixaltar2, pre_map_rename, UPSTREAM_2006_02_22, rel-2_90, rel-2_92, rel-2_93, rel-2_78, post_fixconverter, pre_fixaltar, rel-2_61, rel-2_43, rel-2_42, rel-2_41, HEAD |
| Changes since 1.1: | +0 -0 lines |
| Log Message: | Initial Import |
| # | User | Rev | Content |
|---|---|---|---|
| 1 | root | 1.1 | #CFItemBroker.py |
| 2 | #An often used bit of code to add or remove a number of objects | ||
| 3 | #Useful for removing items (like in payment or as part of | ||
| 4 | #an inventory check) This is also useful for setting the number | ||
| 5 | #of a newly created item(s) as it will check for existing item(s) and add | ||
| 6 | #the appropriate number of new items avoiding such silliness as the | ||
| 7 | #number of the existing items being reset. | ||
| 8 | #This will not check for the existence of an item as that would better | ||
| 9 | #be done in the calling script so you can be flexible. | ||
| 10 | # | ||
| 11 | #ToddMitchell | ||
| 12 | |||
| 13 | import Crossfire | ||
| 14 | |||
| 15 | class Item: | ||
| 16 | |||
| 17 | def __init__(self, object): | ||
| 18 | self.object = object | ||
| 19 | self.numberof = self.object.Quantity | ||
| 20 | |||
| 21 | def add(self, number): | ||
| 22 | tmp = (self.numberof + number)-1 | ||
| 23 | self.object.Quantity=tmp | ||
| 24 | return 1 | ||
| 25 | |||
| 26 | def subtract(self, number): | ||
| 27 | remainder = self.numberof - number | ||
| 28 | if remainder >= number: | ||
| 29 | self.object.Quantity=remainder | ||
| 30 | return 1 | ||
| 31 | elif remainder == 0: | ||
| 32 | self.object.Remove() | ||
| 33 | return 1 | ||
| 34 | else: | ||
| 35 | return 0 |