ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/maps/python/CFItemBroker.py
Revision: 1.1.1.1 (vendor branch)
Committed: Sun Feb 5 00:02:08 2006 UTC (18 years, 3 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

File Contents

# Content
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