summaryrefslogtreecommitdiff
path: root/FortniteEvents.py
blob: 5be03f2dcc6ceadd5e7df070eb1b2c3c81e1068b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import fortnitepy
import typing

class IncomingFriendRequest:
    async def on_event(request: typing.Union[fortnitepy.friend.IncomingPendingFriend, fortnitepy.friend.OutgoingPendingFriend]):
        if isinstance(request, fortnitepy.friend.IncomingPendingFriend):
            incoming_request = typing.cast(fortnitepy.friend.IncomingPendingFriend, request)
            print('Accepting friend request from {}'.format(incoming_request.display_name))
            await incoming_request.accept()

class PresenceObserver:
    async def update(self, display_name: str, playing: bool) -> None:
        pass

class FriendPresence:
    async def on_event(before, after: fortnitepy.Presence, observers):
        if before is not None and after is not None:
            if before.playing != after.playing:
                print('FriendPresence changed for user {}, before {}, after {}'.format(after.friend.display_name, before.playing, after.playing))
                for observer in observers:
                    if isinstance(observer, PresenceObserver):
                        await observer.update(after.friend.display_name, after.playing)