using System; using UnityEngine; // ReSharper disable InconsistentNaming // ReSharper disable CheckNamespace /// /// Specifies the game controller associated with a player. /// public enum PlayerIndex { Any, One, Two, Three, Four, Five, Six, Seven, Eight } /// /// Describes a single button of a gamepad using the common XBox layout. /// public enum CButton { A, B, X, Y, Back, Start, LB, RB, LS, RS, } /// /// Describes a single button of a gamepad using the playstation layout. /// public enum PSButton { Cross, Circle, Square, Triangle, Select, Start, L1, R1, //L2 and R2 are mapped by LT and RT L3, R3 } /// /// Describes a single axis of a gamepad. The dpad is also considered an axis. /// public enum CAxis { LX, LY, RX, RY, LT, RT, DX, DY } /// /// Flag mapping used to define all supported platforms. /// [Flags] public enum CPlatform { Windows = 1 << 0, Linux = 1 << 1, OSX = 1 << 2, WSA = 1 << 3, Android = 1 << 4, IOS = 1 << 5, [Obsolete] WP8 = 1 << 6, Wii = 1 << 7, [Obsolete] XBox360 = 1 << 8, XBoxOne = 1 << 9, [Obsolete] PS3 = 1 << 10, PS4 = 1 << 11, PSP2 = 1 << 12, WebGL = 1 << 13 } /// /// Enumeration of all sticks of a gamepad. Used to get a consisting of the corresponding x and y values of a given axis. /// public enum CStick { Left, Right, DPad } /// /// Describes the different behaviours of . /// public enum AnyBehaviour { /// /// Use the same mapping uses, but listen on any gamepad for that mapping. /// UseMappingOne, /// /// Always use whenever is used. /// UseControllerOne, /// /// Go over all players and use first match. /// Slightly slower than the other two behaviours, but it is the most accurate. /// CheckAll }