Ejemplo n.º 1
0
    private void AddGamepad(int index, string gamepad_name)
    {
        if (!gamepads.ContainsKey(index))
        {
            Gamepad new_gamepad = new Gamepad();
            new_gamepad.SetGamepadName(gamepad_name);
            new_gamepad.SetGamepadIndex(index);

            gamepads.Add(index, new_gamepad);

            EventGamepadAdded ev = new EventGamepadAdded(new_gamepad);
            EventManager.Instance.SendEvent(ev);
        }
    }
Ejemplo n.º 2
0
    private void OnEvent(GameEvent ev)
    {
        switch (ev.Type())
        {
        case GameEventType.EVENT_GAMEPAD_ADDED:
        {
            EventGamepadAdded c_ev = (EventGamepadAdded)ev;

            Player pl = GetPlayerByIndex(c_ev.gamepad.GetGamepadIndex());

            if (pl != null)
            {
                pl.SetAssignedGamepad(c_ev.gamepad);
            }

            break;
        }

        case GameEventType.EVENT_GAMEPAD_REMOVED:
        {
            EventGamepadRemoved c_ev = (EventGamepadRemoved)ev;

            Player pl = GetPlayerByIndex(c_ev.gamepad.GetGamepadIndex());

            if (pl != null)
            {
                pl.SetAssignedGamepad(null);
            }

            break;
        }

        case GameEventType.EVENT_HOUSES_SPAWNED:
        {
            EventHousesSpawned c_ev = (EventHousesSpawned)ev;

            SpawnPlayersOnHousePositions(c_ev.houses);

            break;
        }

        case GameEventType.EVENT_MATCH_FINISH:
        {
            break;
        }
        }
    }