"""Battlefield 2 server script that prints game events to the console"""

import host
import bf2
from bf2 import g_debug


def init():
    if g_debug:
        print 'Initializing events script'

    host.registerHandler('PlayerConnect', on_player_connect, 1)
    host.registerHandler('PlayerDisconnect', on_player_disconnect, 1)
    host.registerHandler('ChatMessage', on_chat_message, 1)

    host.rcon_invoke('echo "events.py loaded"')


def on_player_connect(player):
    host.rcon_invoke('echo "Connected: %s"' % player.getName())


def on_player_disconnect(player):
    host.rcon_invoke('echo "Disconnected: %s"' % player.getName())


def on_chat_message(player_id, text, channel, flags):
    host.rcon_invoke('echo "<%s>%s: %s"' % (
        channel,
        bf2.playerManager.getPlayerByIndex(player_id).getName(),
        text
    ))
