= 'A' && character <= 'Z')
character += 'a' - 'A';
else if (character == '\\')
character = (byte)'/';
key += character;
key += (key << 10); //lint !e701
key ^= (key >> 6); //lint !e702
}
key += (key << 3); //lint !e701
key ^= (key >> 11); //lint !e702
key += (key << 15); //lint !e701
// The original swat code did several tests at this point to make
// sure that the resulting value was representable as a valid
// floating-point number (not a negative zero, or a NaN or Inf)
// and also reserved a nonzero value to indicate a bad key.
// We don't do this here for generality but the caller could
// obviously add such checks again in higher-level code.
return key;}]]>
#ifndef PICKUP_IDS_H
#define PICKUP_IDS_H
namespace PickupIds
{
enum PickupType
{
_TYPE,
NUM_PICKUP_TYPES
};
enum PickupHash
{
PICKUP_INVALID_ID = 0,
_ID = u,
};
extern PickupHash PickupHashes[NUM_PICKUP_TYPES];
extern char* PickupNames[NUM_PICKUP_TYPES];
}
#endif // PICKUP_IDS_H