friends: Handle adding friends who are offline
This commit is contained in:
parent
e88f77d08a
commit
5c9adca456
|
|
@ -326,8 +326,25 @@ class FriendManagerAI(DistributedObjectGlobalAI):
|
||||||
avatarAFriendsList.append(avatarANewFriend)
|
avatarAFriendsList.append(avatarANewFriend)
|
||||||
avatarA.d_setFriendsList(avatarAFriendsList)
|
avatarA.d_setFriendsList(avatarAFriendsList)
|
||||||
else:
|
else:
|
||||||
# TODO
|
def handleAvatarA(dclass, fields):
|
||||||
pass
|
if dclass != self.air.dclassesByName['DistributedToonAI']:
|
||||||
|
return
|
||||||
|
|
||||||
|
avatarAFriendsList = fields['setFriendsList'][0]
|
||||||
|
if len(avatarAFriendsList) >= OTPGlobals.MaxFriends:
|
||||||
|
self.makeFriendsReply(0, context)
|
||||||
|
return
|
||||||
|
|
||||||
|
avatarANewFriend = (avatarBId, flags)
|
||||||
|
if avatarANewFriend in avatarAFriendsList:
|
||||||
|
self.makeFriendsReply(0, context)
|
||||||
|
return
|
||||||
|
|
||||||
|
avatarAFriendsList.append(avatarANewFriend)
|
||||||
|
self.air.dbInterface.updateObject(self.air.dbId, avatarAId, self.air.dclassesByName['DistributedToonAI'],
|
||||||
|
{'setFriendsList': [avatarAFriendsList]})
|
||||||
|
|
||||||
|
self.air.dbInterface.queryObject(self.air.dbId, avatarAId, handleAvatarA)
|
||||||
|
|
||||||
if avatarB:
|
if avatarB:
|
||||||
avatarBFriendsList = avatarB.getFriendsList()
|
avatarBFriendsList = avatarB.getFriendsList()
|
||||||
|
|
@ -343,8 +360,25 @@ class FriendManagerAI(DistributedObjectGlobalAI):
|
||||||
avatarBFriendsList.append(avatarBNewFriend)
|
avatarBFriendsList.append(avatarBNewFriend)
|
||||||
avatarB.d_setFriendsList(avatarBFriendsList)
|
avatarB.d_setFriendsList(avatarBFriendsList)
|
||||||
else:
|
else:
|
||||||
# TODO
|
def handleAvatarB(dclass, fields):
|
||||||
pass
|
if dclass != self.air.dclassesByName['DistributedToonAI']:
|
||||||
|
return
|
||||||
|
|
||||||
|
avatarBFriendsList = fields['setFriendsList'][0]
|
||||||
|
if len(avatarBFriendsList) >= OTPGlobals.MaxFriends:
|
||||||
|
self.makeFriendsReply(0, context)
|
||||||
|
return
|
||||||
|
|
||||||
|
avatarBNewFriend = (avatarAId, flags)
|
||||||
|
if avatarBNewFriend in avatarBFriendsList:
|
||||||
|
self.makeFriendsReply(0, context)
|
||||||
|
return
|
||||||
|
|
||||||
|
avatarBFriendsList.append(avatarBNewFriend)
|
||||||
|
self.air.dbInterface.updateObject(self.air.dbId, avatarBId, self.air.dclassesByName['DistributedToonAI'],
|
||||||
|
{'setFriendsList': [avatarBFriendsList]})
|
||||||
|
|
||||||
|
self.air.dbInterface.queryObject(self.air.dbId, avatarBId, handleAvatarB)
|
||||||
|
|
||||||
self.makeFriendsReply(1, context)
|
self.makeFriendsReply(1, context)
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue