summaryrefslogtreecommitdiff
path: root/src/enums/input/inputcondition.h
blob: c7b2befe84bcd6124a16a64647d04186a9852f2a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
/*
 *  The ManaPlus Client
 *  Copyright (C) 2012-2018  The ManaPlus Developers
 *
 *  This file is part of The ManaPlus Client.
 *
 *  This program is free software; you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation; either version 2 of the License, or
 *  any later version.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

#ifndef ENUMS_INPUT_INPUTCONDITION_H
#define ENUMS_INPUT_INPUTCONDITION_H

namespace InputCondition
{
    enum Type
    {
        DEFAULT    = 1U,                      // default condition
        ENABLED    = 2U,                      // keyboard must be enabled
        NOINPUT    = 4U,                      // input items must be unfocused
        NOAWAY     = 8U,                      // player not in away mode
        NOSETUP    = 16U,                     // setup window is hidde
        VALIDSPEED = 32U,                     // valid speed
        NOMODAL    = 64U,                     // modal windows inactive
        NONPCINPUT = 128U,                    // npc input field inactive
        EMODS      = 256U,                    // game modifiers enabled
        NOTARGET   = 512U,                    // no target/untarget keys
                                             // pressed
        NOFOLLOW   = 1024U,                   // follow mode disabled
        INGAME     = 2048U,                   // game must be started
        NOBUYSELL  = 4096U,                   // no active buy or sell dialogs
        NONPCDIALOG = 8192U,                  // no active npc dialog or
                                             // dialog almost closed
        NOTALKING  = 16384U,                  // player have no opened
                                             // dialogs what prevent moving
        ALIVE      = 32768U,                  // player alive
        NOVENDING  = 65536U,                  // vending disabled
        NOROOM     = 131072U,                 // not joined room
        NOBLOCK    = 262144U,                 // no blocked move (trick dead)
        KEY_DOWN   = 524288U,                 // key press allowed
        KEY_UP     = 1048576U,                // key release allowed
        SHORTCUT   = 2U + 4 + 16 + 512 + 2048,  // flags for shortcut keys
        SHORTCUT0  = 2U + 4 + 16 + 512,       // flags for shortcut keys
        GAME       = 2U + 4 + 8 + 16 + 64 + 2048,  // main game key
        GAME2      = 2U + 8 + 16 + 64 + 2048,
        ARROWKEYS  = 2U + 4 + 8 + 16 + 64 + 2048 + 4096 +
                     16384 + 65536 + 131072 + 262144
    };
}  // namespace InputCondition

#endif  // ENUMS_INPUT_INPUTCONDITION_H