Announcements and discussion regarding any projects related to Cyan Worlds' Plasma Engine including (but not limited to) CyanWorlds.com Engine, Drizzle, OfflineKI, PyPRP, and libHSPlasma.
You could comment out the entire function "IRemoveOtherGuildShirt" (replace it by "pass"), but then of course the old guild shirt will not be removed from the closet. That weird code is doing nothing but scanning your closet for other guild shirts and removing them, and it seems the way they used in MOUL does not work in POTS. There might be other ways, I don't know.
I prefer e-mails to "diafero arcor de" (after adding the at and the dot) over PMs.
"Many people's horizon is a circle with a radius of zero. They call it their point of view."
def IRemoveOtherGuildShirt(self): playerCNode = ptVault().getAvatarClosetFolder() print ('xTakableClothing: getAvatarClosetFolder Type = ' + str(playerCNode.getType())) print ('xTakableClothing: getAvatarClosetFolder Child Node Count = ' + str(playerCNode.getChildNodeCount())) if (playerCNode.getChildNodeCount() > 0): playerCNodeList = playerCNode.getChildNodeRefList() for folderChild in playerCNodeList: PtDebugPrint(('xTakableClothing: looking at child node ' + str(folderChild)), level=kDebugDumpLevel) childNode = folderChild.getChild() if (childNode != type(None)): print 'xTakableClothing: Child Node Node ID' SDLNode = childNode.upcastToSDLNode() if (type(SDLNode) != type(None)): rec = SDLNode.getStateDataRecord() print ('xTakableClothing: getStateDataRecord().getName(): ' + str(rec.getName())) SDLVarList = rec.getVarList() for var in SDLVarList: varnode = rec.findVar(var) if varnode: if (varnode.getType() == 4): print 'xTakableClothing: Let\'s see if player have another guild shirt. Deleting Old Guild Shirt.' try: playerCNode.removeNode(childNode) print 'xTakableClothing: Delete was a success.' except: print 'xTakableClothing: Player don\'t have any guild shirt yet.' return
I don't have any problem in Kirel now, it works fine. The logs says "Delete was a success". But the shirts are still present in my closet. Is that because of the file for avatar custom or a problem with my xTakableClothing ? Ah, I'll never get it working...
That "buggy line" is actually there to identify the clothing item which has to be removed. Edit: What you are doing should remove all clothing. But to make that final I think you need to save the vaultnode after editing it: playerCNode.save()
I don't think that you can remove a single clothing item from the closet through Python in Uru:CC. ptAvatar has an addWardrobeClothingItem attribute but there is nothing that does the opposite, simply because it was not needed.
In MOUL Cyan apparently added that getKey attribute to ptSimpleStateVariable to work around this limitation. It seems they are now editing the clothing SDL directly, which IMO is not how this should be done (another item on the long list of lame MOUL workarounds). Why they didn't just add a removeWardrobeClothingItem attribute to ptAvatar instead is beyond me.
"It is in self-limitation that a master first shows himself." - Goethe
D'Lanor wrote:What you are doing should remove all clothing. I don't think that you can remove a single clothing item from the closet through Python in Uru:CC. In MOUL Cyan apparently added that getKey attribute to ptSimpleStateVariable to work around this limitation.
I don't really understand... do you mean by taking a guild shirt it would remove everything from the closet ? Anyway, at least it works fine now. I'll see if there are any side effects.
Sirius wrote:I don't really understand... do you mean by taking a guild shirt it would remove everything from the closet ? Anyway, at least it works fine now. I'll see if there are any side effects.
Not everything, just the reward clothing you have collected: Yeesha and Zandi shirts, tie-dye, backpack etc.
"It is in self-limitation that a master first shows himself." - Goethe