def createToon(self):
        fields = {
            "ACCOUNT":
            self.accountId,
            "setDNAStrand": (str(self.choice[0]), ),
            "setName": (str(self.choice[2]), ),
            "setHealth": (100, ),
            "setMaxHealth": (100, ),
            "setMoney": (5000, ),
            "setBackpackAmmo":
            (GagGlobals.getDefaultBackpackNetString(True), ),
            "setLoadout": (GagGlobals.InitLoadout,
                           ),  # Start with cupcake and squirting flower.
            "setTrackExperience": (GagGlobals.trackExperienceToNetString(
                GagGlobals.DefaultTrackExperiences), ),
            "setAccessLevel": (AdminCommands.NoAccess, ),
            "setQuests": ("", ),
            "setQuestHistory": ([], ),
            "setTier": (13, ),
            "setFriendsList": ([], ),
            "setTutorialCompleted": (1, ),  #self.choice[3],),
            "setHoodsDiscovered": ([ZoneUtil.ToontownCentralId], ),
            "setTeleportAccess": ([], ),
            "setLastHood": (ZoneUtil.ToontownCentralId, ),
            "setDefaultShard": (0, )
        }
        self.notify.info("Creating new toon!")
        self.avList = self.accFields["AVATAR_IDS"]
        self.avList = self.avList[:6]
        self.avList += [0] * (6 - len(self.avList))

        self.air.dbInterface.createObject(
            self.air.dbId, self.air.dclassesByName['DistributedPlayerToonUD'],
            fields, self.createDone)
    def setBackpackAmmo(self, netString):
        data = self.backpack.fromNetString(netString)

        for gagId in data.keys():
            supply = data[gagId]

            if not gagId in self.getAttackMgr().AttackClasses.keys():
                # This is like an integrity check making sure that the avatar
                # only has access to attacks we want them to have access to.
                # This also is an automatic way to correct old backpack data
                # that could be lingering in our database. This integrity check
                # isn't supposed to remain in the code for a long time.
                self.b_setBackpackAmmo(
                    GagGlobals.getDefaultBackpackNetString(True))
                break

            if not self.backpack.hasGag(gagId):
                self.backpack.addGag(gagId, curSupply=supply)
            else:
                self.backpack.setSupply(gagId, supply, updateEnabled=False)