public LogicTrap(LogicGameObjectData data, LogicLevel level, int villageType) : base(data, level, villageType)
        {
            this.m_fadeTime = -1;
            this.m_hitTime  = -1;

            this.m_useAirMode      = new bool[8];
            this.m_draftUseAirMode = new bool[8];
            this.m_direction       = new int[8];
            this.m_draftDirection  = new int[8];

            LogicTrapData trapData = (LogicTrapData)data;

            this.AddComponent(new LogicTriggerComponent(this, trapData.GetTriggerRadius(), trapData.GetAirTrigger(), trapData.GetGroundTrigger(), trapData.GetHealerTrigger(),
                                                        trapData.GetMinTriggerHousingLimit()));
            this.AddComponent(new LogicLayoutComponent(this));

            this.m_numSpawns      = trapData.GetNumSpawns(0);
            this.m_spawnInitDelay = trapData.GetSpawnInitialDelayMS() / 64;
        }