Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #else
- # define WEP_MAXCOUNT 72
- # define WEP_FIRST2 25
- # define WEP_FIRST3 49
- .float _WS1_weapons;
- .float _WS2_weapons;
- .float _WS3_weapons;
- # define WEPSET_BIT1(a) (((a) < WEP_FIRST2) ? power2of((a) - WEP_FIRST) : 0)
- # define WEPSET_BIT2(a) (((a) >= WEP_FIRST2) ? power2of((a) - WEP_FIRST2) : 0)
- # define WEPSET_BIT3(a) (((a) >= WEP_FIRST3) ? power2of((a) - WEP_FIRST3) : 0)
- # define WEPSET_DECLARE_A(a) float _WS1_##a, _WS2_##a, _WS3_##a
- # define WEPSET_CLEAR_E(e) ((e)._WS1_weapons = (e)._WS2_weapons = (e)._WS3_weapons = 0)
- # define WEPSET_CLEAR_A(a) ((_WS1_##a) = (_WS2_##a) = (_WS3_##a) = 0)
- # define WEPSET_EMPTY_E(e) ((e)._WS1_weapons == 0 && (e)._WS2_weapons == 0 && (e)._WS3_weapons == 0)
- # define WEPSET_EMPTY_A(a) ((_WS1_##a) == 0 && (_WS2_##a) == 0 && (_WS3_##a) == 0)
- # define WEPSET_COPY_AS(a) ((_WS1_##a) = getstati(STAT_WEAPONS), (_WS2_##a) = getstati(STAT_WEAPONS2), (_WS3_##a) = getstati(STAT_WEAPONS3))
- # define WEPSET_ADDSTAT() addstat(STAT_WEAPONS, AS_INT, _WS1_weapons); addstat(STAT_WEAPONS2, AS_INT, _WS2_weapons); addstat(STAT_WEAPONS3, AS_INT, _WS3_weapons)
- # define WEPSET_WRITE_E(dest,a) WriteInt24_t(dest, (a)._WS1_weapons); WriteInt24_t(dest, (a)._WS2_weapons); WriteInt24_t(dest, (a)._WS3_weapons)
- # define WEPSET_WRITE_A(dest,a) WriteInt24_t(dest, _WS1_##a); WriteInt24_t(dest, _WS2_##a); WriteInt24_t(dest, _WS3_##a)
- # define WEPSET_WRITE_W(dest,a) WriteInt24_t(dest, WEPSET_BIT1(a)); WriteInt24_t(dest, WEPSET_BIT2(a)); WriteInt24_t(dest, WEPSET_BIT3(a))
- # define WEPSET_READ_E(a) (a)._WS1_weapons = ReadInt24_t(); (a)._WS2_weapons = ReadInt24_t(); (a)._WS3_weapons = ReadInt24_t()
- # define WEPSET_READ_A(a) (_WS1_##a) = ReadInt24_t(); (_WS2_##a) = ReadInt24_t(); (_WS3_##a) = ReadInt24_t()
- # define WEPSET_OP1_EE(a,b,mergeop,x) (((a)._WS1_weapons x (b)._WS1_weapons) mergeop ((a)._WS2_weapons x (b)._WS2_weapons) mergeop ((a)._WS3_weapons x (b)._WS3_weapons))
- # define WEPSET_OP2_EE(a,b,mergeop,x,y) (((a)._WS1_weapons x (b)._WS1_weapons y (a)._WS1_weapons) mergeop ((a)._WS2_weapons x (b)._WS2_weapons y (a)._WS2_weapons) mergeop ((a)._WS3_weapons x (b)._WS3_weapons y (a)._WS3_weapons))
- # define WEPSET_OP1_EA(a,b,mergeop,x) (((a)._WS1_weapons x _WS1_##b) mergeop ((a)._WS2_weapons x _WS2_##b) mergeop ((a)._WS3_weapons x _WS3_##b))
- # define WEPSET_OP2_EA(a,b,mergeop,x,y) (((a)._WS1_weapons x _WS1_##b y (a)._WS1_weapons) mergeop ((a)._WS2_weapons x _WS2_##b y (a)._WS2_weapons) mergeop ((a)._WS3_weapons x _WS3_##b y (a)._WS3_weapons))
- # define WEPSET_OP1_EW(a,b,mergeop,x) (((a)._WS1_weapons x WEPSET_BIT1(b)) mergeop ((a)._WS2_weapons x WEPSET_BIT2(b)) mergeop ((a)._WS3_weapons x WEPSET_BIT3(b)))
- # define WEPSET_OP2_EW(a,b,mergeop,x,y) (((a)._WS1_weapons x WEPSET_BIT1(b) y (a)._WS1_weapons) mergeop ((a)._WS2_weapons x WEPSET_BIT2(b) y (a)._WS2_weapons) mergeop ((a)._WS3_weapons x WEPSET_BIT3(b) y (a)._WS3_weapons))
- # define WEPSET_OP1_AE(a,b,mergeop,x) ((_WS1_##a x (b)._WS1_weapons) mergeop (_WS2_##a x (b)._WS2_weapons) mergeop (_WS3_##a x (b)._WS3_weapons))
- # define WEPSET_OP2_AE(a,b,mergeop,x,y) ((_WS1_##a x (b)._WS1_weapons y _WS1_##a) mergeop (_WS2_##a x (b)._WS2_weapons y _WS2_##a) mergeop (_WS3_##a x (b)._WS3_weapons y _WS3_##a))
- # define WEPSET_OP1_AA(a,b,mergeop,x) ((_WS1_##a x _WS1_##b) mergeop (_WS2_##a x _WS2_##b) mergeop (_WS3_##a x _WS3_##b))
- # define WEPSET_OP2_AA(a,b,mergeop,x,y) ((_WS1_##a x _WS1_##b y _WS1_##a) mergeop (_WS2_##a x _WS2_##b y _WS2_##a) mergeop (_WS3_##a x _WS3_##b y _WS3_##a))
- # define WEPSET_OP1_AW(a,b,mergeop,x) ((_WS1_##a x WEPSET_BIT1(b)) mergeop (_WS2_##a x WEPSET_BIT2(b)) mergeop (_WS3_##a x WEPSET_BIT3(b)))
- # define WEPSET_OP2_AW(a,b,mergeop,x,y) ((_WS1_##a x WEPSET_BIT1(b) y _WS1_##a) mergeop (_WS2_##a x WEPSET_BIT2(b) y _WS2_##a) mergeop (_WS3_##a x WEPSET_BIT3(b) y _WS3_##a))
- #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement