DragonNest/GameCommon/PropHeader.h
Cussrro 47f7895977 Revert "修复编码问题"
This reverts commit 9e69c01767.
2024-12-21 10:04:04 +08:00

259 lines
5.6 KiB
C

#pragma once
#pragma pack(push, 4)
// 프랍 타입 열거
enum PropTypeEnum {
PTE_Static = 0,
PTE_Action = 1,
PTE_Trap = 3,
PTE_Light = 4,
PTE_Operation = 5,
PTE_Chest = 6,
PTE_Broken = 2,
PTE_ProjectileShooter = 7,
PTE_SkillUser = 8,
PTE_Npc = 9,
PTE_BrokenDamage = 10,
PTE_HitMoveDamageBroken = 11,
PTE_Buff = 12,
PTE_BuffBroken = 13,
PTE_Camera = 14,
PTE_ShooterBroken = 15,
PTE_EnvironmentProp = 16,
PTE_MultiDurabilityBrokenProp = 17,
PTE_KeepOperation = 18,
PTE_OperationDamage = 19,
PTE_HitStateEffect = 20,
};
// 프랍 타입별 스트럭쳐
struct StaticStruct : public TBoostMemoryPool< StaticStruct > {
char cReserved1[1024];
};
struct ActionStruct : public TBoostMemoryPool< ActionStruct > {
char cReserved1[1024];
};
struct TrapStruct : public TBoostMemoryPool< TrapStruct > {
int nMonsterTableID;
int ActivateType;
BOOL MonsterWeight;
char cReserved1[1012];
};
struct LightStruct : public TBoostMemoryPool< LightStruct > {
int nType;
EtVector4 *vDiffuse;
EtVector4 *vSpecular;
EtVector3 *vPosition;
EtVector3 *vDirection;
float fRange;
float fFalloff;
float fTheta;
float fPhi;
BOOL bCastShadow;
char cReserved1[984];
};
struct OperationStruct : public TBoostMemoryPool< OperationStruct > {
int nIconType;
char cReserved1[1020];
};
struct ChestStruct : public TBoostMemoryPool< ChestStruct > {
int nNeedKeyID;
int nItemDropGroupTableID;
BOOL bRemoveKeyItem;
int nNumNeedItem;
int nLevelLimitOne;
char *strLevelBoundDescription;
char *strLevelBoundRewardItemDropGroupID;
BOOL bEnableOwnership;
char cReserved1[992];
};
struct BrokenStruct : public TBoostMemoryPool< BrokenStruct > {
int nDurability;
int nItemDropGroupTableID;
char cReserved1[1016];
};
struct ProjectileShooterStruct : public TBoostMemoryPool< ProjectileShooterStruct > {
int nMonsterTableID;
int nSkillTableID;
int nSkillLevel;
BOOL MonsterWeight;
char cReserved1[1008];
};
struct SkillUserStruct : public TBoostMemoryPool< SkillUserStruct > {
int SkillTableID;
int SkillLevel;
float fRadius;
int UseType;
char cReserved1[1008];
};
struct NpcStruct : public TBoostMemoryPool< NpcStruct > {
int nNpcID;
char cReserved1[1020];
};
struct BrokenDamageStruct : public TBoostMemoryPool< BrokenDamageStruct > {
int nMonsterTableID;
int nItemDropGroupTableID;
int nDurability;
char cReserved1[4];
int nSkillTableID;
int nSkillLevel;
int SkillApplyType;
BOOL MonsterWeight;
char cReserved2[992];
};
struct HitMoveDamageBrokenStruct : public TBoostMemoryPool< HitMoveDamageBrokenStruct > {
int nMonsterTableID;
int nItemDropGroupTableID;
int nDurability;
int MovingAxis;
float fDefaultAxisMovingSpeed;
float fMaxAxisMoveDistance;
BOOL MonsterWeight;
char cReserved1[996];
};
struct BuffStruct : public TBoostMemoryPool< BuffStruct > {
int nMonsterTableID;
int nSkillTableID;
int nSkillLevel;
float fCheckRange;
int nTeam;
char *TargetActorID;
char cReserved1[1000];
};
struct BuffBrokenStruct : public TBoostMemoryPool< BuffBrokenStruct > {
int nMonsterTableID;
int nDurability;
int nItemDropGroupTableID;
int nSkillTableID;
int nSkillLevel;
float fCheckRange;
int nTeam;
char cReserved1[996];
};
struct CameraStruct : public TBoostMemoryPool< CameraStruct > {
char cReserved1[1024];
};
struct ShooterBrokenStruct : public TBoostMemoryPool< ShooterBrokenStruct > {
int nDurability;
int nItemDropGroupTableID;
int nMonsterTableID;
int nSkillTableID;
int nSkillLevel;
BOOL MonsterWeight;
char cReserved1[1000];
};
struct EnvironmentPropStruct : public TBoostMemoryPool< EnvironmentPropStruct > {
float fRange;
char *OnRangeInActionName;
char *OnRangeOutActionName;
char cReserved1[1012];
};
struct MultiDurabilityBrokenPropStruct : public TBoostMemoryPool< MultiDurabilityBrokenPropStruct > {
int nMainDurability;
int nItemDropGroupTableID;
int nMonsterTableID;
int nSubDurability_One;
char *szActionName_SubDurabilityOne;
int nSubDurability_Two;
char *szActionName_SubDurabilityTwo;
int nSubDurability_Three;
char *szActionName_SubDurabilityThree;
int nSubDurability_Four;
char *szActionName_SubDurabilityFour;
int nSkillTableID;
int nSkillLevel;
char cReserved1[972];
};
struct KeepOperationStruct : public TBoostMemoryPool< KeepOperationStruct > {
int nIconType;
char cReserved1[1020];
};
struct OperationDamageStruct : public TBoostMemoryPool< OperationDamageStruct > {
int nIconType;
int nMonsterTableID;
BOOL MonsterWeight;
char cReserved1[1012];
};
struct HitStateEffectStruct : public TBoostMemoryPool< HitStateEffectStruct > {
int SkillTableID;
int SkillLevel;
int MonsterTableID;
BOOL MonsterWeight;
char cReserved1[1008];
};
static int GetPropSignalDataUsingCount(int signalIdx) {
switch(signalIdx) {
case 0: return 0;
case 1: return 0;
case 2: return 2;
case 3: return 3;
case 4: return 10;
case 5: return 1;
case 6: return 8;
case 7: return 4;
case 8: return 4;
case 9: return 1;
case 10: return 8;
case 11: return 7;
case 12: return 6;
case 13: return 7;
case 14: return 0;
case 15: return 6;
case 16: return 3;
case 17: return 13;
case 18: return 1;
case 19: return 3;
case 20: return 4;
}
return 256;
};
static int GetPropSignalDataUsingCount64(int signalIdx) {
switch(signalIdx) {
case 0: return 0;
case 1: return 0;
case 2: return 2;
case 3: return 3;
case 4: return 14;
case 5: return 1;
case 6: return 10;
case 7: return 4;
case 8: return 4;
case 9: return 1;
case 10: return 8;
case 11: return 7;
case 12: return 7;
case 13: return 7;
case 14: return 0;
case 15: return 6;
case 16: return 5;
case 17: return 17;
case 18: return 1;
case 19: return 3;
case 20: return 4;
}
return 256;
};
#pragma pack(pop)