568 lines
12 KiB
C
568 lines
12 KiB
C
#pragma once
|
|
|
|
enum SocketFrom_e
|
|
{
|
|
SF_GameGate,
|
|
};
|
|
|
|
enum InnerMesssage_e
|
|
{
|
|
IM_ClientSocketDisconnect = 100,
|
|
IM_ExecGM,
|
|
IM_GGListenerError
|
|
};
|
|
|
|
//网络处理对象
|
|
enum NetHandler_e
|
|
{
|
|
HID_Player,
|
|
HID_PlayerMgr,
|
|
HID_Room,
|
|
HID_RoomMgr,
|
|
HID_MatchMgr,
|
|
HID_MatchTeam,
|
|
HID_GGListener,
|
|
};
|
|
|
|
enum VirtualItemId_e
|
|
{
|
|
VID_Item_Gold = 50001,
|
|
VID_Item_Exp = 50002,
|
|
VID_Soul_Stone = 50018,
|
|
VID_Pickaxe = 50019
|
|
};
|
|
|
|
enum DoorState_e
|
|
{
|
|
DoorStateClose = 0,
|
|
DoorStateOpen = 1
|
|
};
|
|
|
|
enum GasMode_e
|
|
{
|
|
GasInactive = 0,
|
|
GasWaiting = 1,
|
|
GasMoving = 2,
|
|
GasJump = 3
|
|
};
|
|
|
|
enum ActionType_e
|
|
{
|
|
AT_None = 0,
|
|
AT_Reload = 1,
|
|
AT_UseItem = 2,
|
|
AT_Relive = 3,
|
|
AT_Rescue = 4
|
|
};
|
|
|
|
enum RoomType_e
|
|
{
|
|
RT_NewBrid = 0,
|
|
RT_MidBrid = 1,
|
|
RT_OldBrid1 = 2,
|
|
RT_OldBrid2 = 3,
|
|
RT_OldBrid3 = 4,
|
|
RT_Max
|
|
};
|
|
|
|
enum InventorySlot_e
|
|
{
|
|
IS_9MM = 0,
|
|
IS_556MM = 1,
|
|
IS_762MM = 2,
|
|
IS_12GAUGE = 3,
|
|
IS_RPG = 4,
|
|
IS_FRAG = 5,
|
|
IS_SMOKE = 6,
|
|
IS_HEALTHKIT = 7, //医疗包
|
|
IS_PAIN_KILLER = 8, //止痛药
|
|
IS_SHEN_BAO = 9, //肾上腺速
|
|
IS_ICE = 10, //冰
|
|
|
|
IS_1XSCOPE = 12,
|
|
IS_2XSCOPE = 13,
|
|
IS_4XSCOPE = 14,
|
|
IS_8XSCOPE = 15,
|
|
IS_15XSCOPE = 16,
|
|
|
|
IS_MINE = 17, //地雷
|
|
IS_MOLOTOR_COCKTAIL = 18, //燃烧瓶
|
|
IS_TRAP = 19, //陷井
|
|
IS_POSION_GAS_BOMB = 20, //毒气弹
|
|
|
|
IS_C4 = 21, //c4
|
|
IS_SHIELD_WALL = 22, //盾墙
|
|
IS_SINGAL_GUN = 23, //信号枪
|
|
IS_OIL_BUCKET = 24, //汽油桶
|
|
|
|
IS_MAX = 30,
|
|
IS_END
|
|
};
|
|
|
|
enum SkillType_e
|
|
{
|
|
kActiveSkill = 1,
|
|
kPassiveSkill = 2
|
|
};
|
|
|
|
enum BuffTriggerType_e
|
|
{
|
|
kBTT_UseSkill = 1, //技能释放时触发
|
|
kBTT_Kill = 2, //击杀敌方后触发
|
|
kBTT_SkillHit = 3, //技能命中触发
|
|
kBTT_OtherBuff = 4,//其他buff触发
|
|
kBTT_UseItem = 6, //使用道具触发
|
|
kBTT_SeriesShot = 7 //连射时触发
|
|
};
|
|
|
|
enum BuffTargetType_e
|
|
{
|
|
kBuffTargetNone = 0, //无
|
|
kBuffTargetSelf = 1, //自己
|
|
kBuffTargetFriendly = 2, //友军
|
|
kBuffTargetEnemy = 3, //敌军
|
|
};
|
|
|
|
enum SkillFunc_e
|
|
{
|
|
kSkill_FuncNone = 0,
|
|
kSkill_TurnOver = 1,
|
|
kSkill_JumpTo = 2,
|
|
kSkill_Shot = 3,
|
|
kSkill_Pull = 4,
|
|
kSkill_HoldShield = 5,
|
|
kSkill_ForthBackJump = 6,
|
|
kSkill_FlyHook = 7,
|
|
kSkill_FuncEnd
|
|
};
|
|
|
|
enum HumanAttrType_e
|
|
{
|
|
kHAT_Begin = 0,
|
|
kHAT_Hp = 1,
|
|
kHAT_HPRecover = 2,
|
|
kHAT_Atk = 3,
|
|
kHAT_Def = 4,
|
|
kHAT_Speed = 5,
|
|
kHAT_ShotRange = 6,
|
|
kHAT_ShotSpeed = 7,
|
|
kHAT_ReloadSpeed = 8,
|
|
kHAT_FireRate = 9,
|
|
kHAT_Volume = 10,
|
|
kHAT_MaxHp = 11,
|
|
kHAT_ShotView = 12,
|
|
kHAT_ReloadTime = 14,
|
|
|
|
kHAT_WeaponDmg = 20,
|
|
kHAT_WeaponShotSpeed = 21,
|
|
kHAT_WeaponReloadTime = 22,
|
|
kHAT_WeaponExplosionRange = 23,
|
|
kHAT_WeaponExplosionContinueTime = 24,
|
|
kHAT_PoisoningReduction = 25,
|
|
kHAT_RescueTime = 26,
|
|
kHAT_DrugTime = 27,
|
|
kHAT_DrugEfficacy = 28,
|
|
kHAT_CarOil = 29,
|
|
kHAT_WeaponExplosionDealyTime = 30,
|
|
kHAT_RecoverHpAdd = 31,
|
|
kHAT_SkillTime = 32,
|
|
kHAT_WeaponThrowRange = 33,
|
|
kHAT_LUCKY = 34,
|
|
kHAT_HP_RATE = 39,
|
|
kHAT_ATK_RATE = 40,
|
|
kHAT_DEF_RATE = 41,
|
|
kHAT_CRIT = 42,
|
|
kHAT_CRIT_DAMAGE_RATE = 43,
|
|
kHAT_DODGE = 44,
|
|
kHAT_DODGE_DAMAGE_RATE = 45,
|
|
kHAT_End
|
|
};
|
|
|
|
enum SkillTarget_e
|
|
{
|
|
kST_All = 0,
|
|
|
|
kST_Self = 1,
|
|
kST_FriendlyIncludeSelf = 2,
|
|
kST_FriendlyExcludeSelf = 3,
|
|
|
|
kST_EnemySingle = 6,
|
|
kST_EnemyGroup = 7,
|
|
kST_EnemyAndObject = 8,
|
|
kST_EnemyAndSelf = 9,
|
|
kST_SingleEnemyAndSelf = 10,
|
|
kST_SpecDir = 11
|
|
};
|
|
|
|
enum BuffSelectTarget_e
|
|
{
|
|
kBST_All = 0,
|
|
|
|
kBST_Self = 1,
|
|
kBST_FriendlyIncludeSelf = 2,
|
|
kBST_FriendlyExcludeSelf = 3,
|
|
|
|
kBST_Enemy = 5,
|
|
kBST_EnemyAndSelf = 6,
|
|
};
|
|
|
|
enum VirtualWeapon_e
|
|
{
|
|
VW_Gas = 9000000,
|
|
VW_Explosion = 9000001,
|
|
VW_Weapon = 9000002,
|
|
};
|
|
|
|
enum VirtualPlayer_e
|
|
{
|
|
VP_Gas = 9000000,
|
|
VP_Buff = 9000001,
|
|
VP_Explosion = 9000002,
|
|
VP_Water = 9000003,
|
|
};
|
|
|
|
enum EquipType_e
|
|
{
|
|
EQUIP_TYPE_WEAPON = 1,
|
|
EQUIP_TYPE_BULLET = 2,
|
|
EQUIP_TYPE_THROW = 3,
|
|
EQUIP_TYPE_PROTECTION = 4,
|
|
EQUIP_TYPE_BAG = 7,
|
|
EQUIP_TYPE_OLDSKIN = 8,
|
|
EQUIP_TYPE_CAR = 9,
|
|
EQUIP_TYPE_SKIN = 10,
|
|
EQUIP_TYPE_CAMOUFLAGE = 11,
|
|
EQUIP_TYPE_SPOILS = 12,
|
|
EQUIP_TYPE_SINGAL_EMITTER = 13,
|
|
EQUIP_TYPE_GIFT_PACKAGE = 14,
|
|
EQUIP_TYPE_GEMSTONE = 15,
|
|
EQUIP_TYPE_End
|
|
};
|
|
|
|
enum GunSubEquipType_e
|
|
{
|
|
GUN_SUB_EQUIP_TYPE_FLY_HOOk = 14,
|
|
GUN_SUB_EQUIP_TYPE_End
|
|
};
|
|
|
|
enum ThrowSubEquipType_e
|
|
{
|
|
THROW_EQUIP_TYPE_ADD_BUFF = 3,
|
|
THROW_SUB_EQUIP_TYPE_End
|
|
};
|
|
|
|
enum EntitySubType_e
|
|
{
|
|
EST_None = 0,
|
|
EST_Player = 1,
|
|
EST_Android = 2,
|
|
EST_PermanentObstacle = 3,
|
|
EST_RoomObstacle = 4
|
|
};
|
|
|
|
enum PropertyType_e
|
|
{
|
|
kPropHp = 1,
|
|
kPropMaxHp = 2,
|
|
kPropVolume = 3,
|
|
kPropSkillLeftTime_ = 4,
|
|
kPropSkillCd = 5,
|
|
kPropTankBulletNum = 6,
|
|
kPropTankOil = 7,
|
|
kPropBulletNum = 8,
|
|
kPropItem = 9,
|
|
kPropWeaponAmmo = 10,
|
|
kPropCar = 11,
|
|
|
|
kPropZombieId = 23,
|
|
kPropSkillLeftTime = 24,
|
|
kPropSkillCurrTimes = 25,
|
|
kPropSkillMaxTimes = 26,
|
|
kPropCarOil = 27,
|
|
kPropFollowTarget = 30,
|
|
kPropDive = 31,
|
|
|
|
kPropSkillExp = 32,
|
|
kPropShieldHp = 33,
|
|
|
|
kPropBeHook = 34,
|
|
kPropSkillMinor = 35,
|
|
kPropReviveCion = 36,
|
|
kPropCritDmg = 37,
|
|
kPropParachute = 38,
|
|
kPropFlyEffect = 39,
|
|
kPropEnergyShield = 40,
|
|
|
|
kPropGemstone = 41,
|
|
};
|
|
|
|
enum SkinSlot_e
|
|
{
|
|
kSkinSlot_CLOTH = 1,
|
|
kSkinSlot_HAT = 2,
|
|
};
|
|
|
|
enum ObjectFlags_e
|
|
{
|
|
kOfWriteCache = 0,
|
|
kOfReadCache = 1,
|
|
};
|
|
|
|
enum RoomMode_e
|
|
{
|
|
kChiJiMode = 0,
|
|
kDestoryMode = 1,
|
|
kSurvivalMode = 2,
|
|
kRoomModeEnd
|
|
};
|
|
|
|
enum AIMode_e
|
|
{
|
|
kChiJiAiMode = 0,
|
|
kHumanAiMode = 1,
|
|
};
|
|
|
|
enum PostBuffAction_e
|
|
{
|
|
kRemoveBuffByIdAction = 1,
|
|
kRemoveBuffByEffectAction = 2,
|
|
kAddBuffAction = 3
|
|
};
|
|
|
|
enum ObstacleType_e
|
|
{
|
|
kObstacleSelfExplosion = 1,
|
|
kObstacleMine = 2,
|
|
kObstacleTrap = 3,
|
|
kObstaclePosionGas = 4,
|
|
kObstacleSpring = 5,
|
|
kObstacleHideHouse = 6,
|
|
kObstacleGully = 7,
|
|
kObstacleAirDropBox = 8,
|
|
kObstacleOilBucket = 9,
|
|
kObstacleKeepRangeBuff = 10,
|
|
kObstacleShield = 11,
|
|
kObstacleStrengthenWall = 12,
|
|
kObstacleMedicalStation = 13,
|
|
};
|
|
|
|
enum BulletHit_e
|
|
{
|
|
kBulletHitPass = 1,
|
|
kBulletHitAnyDmg = 2,
|
|
kBulletHitOnlySpecDmg = 3,
|
|
kBulletHitEatDmg = 4,
|
|
};
|
|
|
|
enum CollisionHit_e
|
|
{
|
|
kCollisionHitPass = 1,
|
|
kCollisionHitBlock = 2,
|
|
kCollisionHitDeadAndDrop = 3,
|
|
kCollisionHitSpecEvent = 4,
|
|
};
|
|
|
|
enum ExplosionHit_e
|
|
{
|
|
kExplosionHitPass = 1,
|
|
kExplosionHitAnyDmg = 2,
|
|
kExplosionHitOnlySpecDmg = 3,
|
|
kExplosionHitEatDmg = 4,
|
|
};
|
|
|
|
enum CondAddBuff_e
|
|
{
|
|
kCondBuffUpdateWeaponId = 1,
|
|
kCondBuffUpdateWeaponSlot = 2,
|
|
kCondBuffUpdateWeaponType = 3,
|
|
kCondBuffShotWeaponId = 4,
|
|
kCondBuffShotWeaponSlot = 5,
|
|
kCondBuffShotWeaponType = 6,
|
|
kCondBuffKillTarget = 7,
|
|
kCondBuffDid = 8,
|
|
kCondBuffUpdateBuffId = 9,
|
|
kCondBuffUpdateBuffEffect = 10,
|
|
kCondBuffHp = 11,
|
|
kCondBuffDown = 12,
|
|
kCondBuffReceiveDmg = 13,
|
|
kCondBuffUseSkill = 14,
|
|
kCondBuffEatDrug = 15,
|
|
kCondBuffEnd
|
|
};
|
|
|
|
enum WeaponOpt_e
|
|
{
|
|
kWeaponOptTakeon = 0,
|
|
kWeaponOptTakeoff = 1,
|
|
kWeaponOptKeep = 2,
|
|
kWeaponOptEnd
|
|
};
|
|
|
|
enum BuffOpt_e
|
|
{
|
|
kBuffOptActive = 0,
|
|
kBuffOptDeactive = 1,
|
|
kBuffOptKeep = 2,
|
|
kBuffOptEnd
|
|
};
|
|
|
|
enum HpOpt_e
|
|
{
|
|
kHpOptLeAbs = 0,
|
|
kHpOptLeRate = 1,
|
|
kHpOptGeAbs = 2,
|
|
kHpOptGeRate = 3,
|
|
kHpOptEnd
|
|
};
|
|
|
|
enum RichTextElementType
|
|
{
|
|
kTextElement = 1,
|
|
kImageElement = 2
|
|
};
|
|
|
|
enum KillTextFieldIdx
|
|
{
|
|
kFieldIdxMasterName = 1000,
|
|
kFieldIdxKillerName,
|
|
kFieldIdxDeadName,
|
|
kFieldIdxWeaponName,
|
|
kFieldIdxWeaponTextIcon,
|
|
};
|
|
|
|
enum BulletConsumeType_e
|
|
{
|
|
kBulletConsumeOne = 0,
|
|
kBulletConsumeMulti = 1,
|
|
};
|
|
|
|
enum SamplePolyFlags
|
|
{
|
|
SAMPLE_POLYFLAGS_WALK = 0x01, // Ability to walk (ground, grass, road)
|
|
SAMPLE_POLYFLAGS_SWIM = 0x02, // Ability to swim (water).
|
|
SAMPLE_POLYFLAGS_DOOR = 0x04, // Ability to move through doors.
|
|
SAMPLE_POLYFLAGS_JUMP = 0x08, // Ability to jump.
|
|
SAMPLE_POLYFLAGS_DISABLED = 0x10, // Disabled polygon
|
|
SAMPLE_POLYFLAGS_ALL = 0xffff // All abilities.
|
|
};
|
|
|
|
A8_DECLARE_ENUM(MagicType_e,
|
|
MAGIC_NONE = 0,
|
|
MAGIC_20101_HL, //20101 狐狸-爱心香风
|
|
MAGIC_20701_BAO, //20701 豹-瞬间移动回血
|
|
MAGIC_20801_LONG, //20801 龙-火力压制
|
|
MAGIC_20901_XIONG, //20901 熊野蛮冲撞
|
|
MAGIC_21001_NIU, //21001 牛-立盾防御
|
|
MAGIC_20201_HX, //20201 浣熊-火箭浣熊
|
|
MAGIC_20401_MAO, //20401 猫-飞勾
|
|
MAGIC_20601_DJS, //20601 独角兽-威力翻倍
|
|
MAGIC_20301_XL, //20301 小鹿-医疗站
|
|
MAGIC_20501_TZ, //20501 兔子-隐身
|
|
|
|
MAGIC_30101_HL, //30101 狐狸-自然恢复
|
|
MAGIC_30201_HX, //30201 浣熊-受伤加速
|
|
MAGIC_30301_XL, //30301 小鹿-击杀回血
|
|
MAGIC_30401_MAO, //30401 猫-死亡自曝
|
|
MAGIC_30501_TZ, //30501 兔子-隐身恢复
|
|
MAGIC_30601_DJS, //30601 独角兽-免疫眩晕
|
|
MAGIC_30701_BAO, //30701 豹-钩爪拉动减伤
|
|
MAGIC_30801_LONG, //30801 龙-救援防护
|
|
MAGIC_30901_XIONG, //30901 熊-复活
|
|
MAGIC_31001_NIU, //31001 牛-此面向敌
|
|
MAGIC_END
|
|
);
|
|
|
|
enum PolyExtDataFlag_e
|
|
{
|
|
kWater1ExtFlag = 1, //能打出水坑
|
|
kWater2ExtFlag = 2, //打不出水坑
|
|
kWater3ExtFlag = 3, //游泳不能射击
|
|
};
|
|
|
|
A8_DECLARE_ENUM(TimerUserEvent_e,
|
|
kCheckShotHoldStateTimerEvent = 100,
|
|
kShenBaoAddTimeTimerEvent,
|
|
kActiveDjsSkillTimerEvent,
|
|
kDeactiveDjsSkillTimerEvent
|
|
);
|
|
|
|
A8_DECLARE_CLASS_ENUM(GraspBuffTrigger_e, int,
|
|
kHit = 1,
|
|
kKill = 2,
|
|
kTakeOn = 3,
|
|
kCond = 4,
|
|
kHitAndEnd = 5,
|
|
kEnd
|
|
);
|
|
|
|
A8_DECLARE_CLASS_ENUM(GraspBuffTriggerCond_e, int,
|
|
kImprint = 1,
|
|
kEnd
|
|
);
|
|
|
|
A8_DECLARE_ENUM(WorldObjectType_e,
|
|
kLootType = 1,
|
|
kBoxType = 2,
|
|
kCarType = 3
|
|
);
|
|
|
|
const char* const PROJ_NAME_FMT = "game%d_gameserver";
|
|
const char* const PROJ_ROOT_FMT = "/data/logs/%s";
|
|
|
|
const int SERVER_FRAME_RATE = 20;
|
|
const int SYNC_FRAME_RATE = 10;
|
|
const float FRAME_RATE_MS = 1000.0f / SERVER_FRAME_RATE;
|
|
const int NEXT_FRAME_TIMER = 2;
|
|
|
|
const int MAX_WEAPON_NUM = 14;
|
|
const int MAX_SKIN_LV = 9;
|
|
|
|
const int GUN_SLOT0 = 0;
|
|
const int GUN_SLOT1 = 1;
|
|
const int GUN_SLOT2 = 2;
|
|
|
|
const int FRAG_SLOT = 3;
|
|
const int SMOKE_SLOT = 4;
|
|
|
|
const int SPEC1_IS_BEGIN = IS_FRAG;
|
|
const int SPEC1_IS_END = IS_SMOKE;
|
|
const int SPEC2_IS_BEGIN = IS_MINE;
|
|
const int SPEC2_IS_END = IS_POSION_GAS_BOMB;
|
|
|
|
const int SPEC3_IS_BEGIN = IS_C4;
|
|
const int SPEC3_IS_END = IS_OIL_BUCKET;
|
|
|
|
const int SPEC1_SLOT_BEGIN = 3; //手雷 烟雾弹
|
|
const int SPEC2_SLOT_BEGIN = 5; //地雷 燃烧瓶 陷井 毒气弹
|
|
const int SPEC3_SLOT_BEGIN = 9; //c4 盾墙 信号抢 汽油桶
|
|
|
|
const int FIGHTING_MODE_BULLET_NUM = 10000 * 10000;
|
|
|
|
const int MAX_NODE_ID = 8;
|
|
const int MAX_INSTANCE_ID = 500;
|
|
|
|
const int MAX_TEAM_NUM = 4;
|
|
|
|
const int MAX_SYS_HTTP_NUM = 2;
|
|
const int MAX_USER_HTTP_NUM = 8;
|
|
const int MAX_ALL_HTTP_NUM = MAX_SYS_HTTP_NUM + MAX_USER_HTTP_NUM;
|
|
|
|
const int FIXED_OBJECT_MAXID = 20140;
|
|
|
|
const int MAX_ROOM_IDX = 1000;
|
|
|
|
const int VIEW_RANGE = 512;
|
|
|
|
const int MAX_AI_LEVEL = 8;
|
|
|
|
const int HUNLUAN_BUFFID = 6001;
|
|
|
|
const int ANDROID_AI_ID_START = 10001;
|
|
|
|
const int MAX_SKILL_LV = 15;
|
|
|
|
const int kReviveTimeAdd = 12;
|
|
const int kSkinNum = 4;
|
|
|
|
const int MAX_WEAPON_LV = 15;
|