diff --git a/toontown/catalog/GiftAvatar.py b/toontown/catalog/GiftAvatar.py new file mode 100644 index 00000000..a9771ca5 --- /dev/null +++ b/toontown/catalog/GiftAvatar.py @@ -0,0 +1,86 @@ +from toontown.toon import ToonDNA +import CatalogItem, CatalogItemList +import base64, json + +def createFromJson(jsonData): + return createFromFields(json.loads(jsonData)) + +def createFromFields(fields): + avatar = GiftAvatar() + + for key, value in fields.iteritems(): + getattr(avatar, key)(value) + + return avatar + +class GiftAvatar: + + def getStyle(self): + return self.style + + def getHat(self): + return self.hat + + def getGlasses(self): + return self.glasses + + def getBackpack(self): + return self.backpack + + def getShoes(self): + return self.shoes + + def getGiftScheduleBlob(self): + return self.onGiftOrder.getBlob(store=CatalogItem.Customization | CatalogItem.DeliveryDate) + + def setDNAString(self, dnaString): + self.style = ToonDNA.ToonDNA() + self.style.makeFromNetString(base64.b64decode(dnaString)) + + def setMailboxContents(self, contents): + self.mailboxContents = CatalogItemList.CatalogItemList(base64.b64decode(contents), store=CatalogItem.Customization) + + def setGiftSchedule(self, onOrder): + self.onGiftOrder = CatalogItemList.CatalogItemList(base64.b64decode(onOrder), store=CatalogItem.Customization | CatalogItem.DeliveryDate) + + def setDeliverySchedule(self, onOrder): + self.onOrder = CatalogItemList.CatalogItemList(base64.b64decode(onOrder), store=CatalogItem.Customization | CatalogItem.DeliveryDate) + + def setHat(self, hat): + self.hat = hat + + def setGlasses(self, glasses): + self.glasses = glasses + + def setBackpack(self, backpack): + self.backpack = backpack + + def setShoes(self, shoes): + self.shoes = shoes + + def setHatList(self, list): + self.hatList = list[0] + + def setGlassesList(self, list): + self.glassesList = list[0] + + def setBackpackList(self, list): + self.backpackList = list[0] + + def setShoesList(self, list): + self.shoesList = list[0] + + def setCustomMessages(self, customMessages): + self.customMessages = customMessages[0] + + def setClothesTopsList(self, clothesList): + self.clothesTopsList = clothesList[0] + + def setClothesBottomsList(self, clothesList): + self.clothesBottomsList = clothesList[0] + + def setEmoteAccess(self, emoteAccess): + self.emoteAccess = emoteAccess[0] + + def setPetTrickPhrases(self, tricks): + self.petTrickPhrases = tricks[0] \ No newline at end of file