internal override void Init(MySmallShipBot bot) { base.Init(bot); m_isInvalid = false; m_target = SourceDesire.GetEnemy(); if (m_target != null) { Debug.Assert(m_target != bot); } findSmallship = new MyFindSmallshipHelper(); m_visibilityCheckTimer = 0; // force visibility test m_closingTimer = 0; m_forcedClosingTimer = 0; m_hologramTargetTimer = 0; SwitchToClosing(); PlanNextMissile(); m_timeToAlarmCheck = 2; m_playerAttackDecisionTimer = 0; MyScriptWrapper.OnEntityAttackedByBot(bot, m_target); m_canShootWithAutocanon = bot.CanShootWith(MyMwcObjectBuilder_FireKeyEnum.Primary); m_canShootWithShotGun = bot.CanShootWith(MyMwcObjectBuilder_FireKeyEnum.Secondary); m_canShootWithSniper = bot.CanShootWith(MyMwcObjectBuilder_FireKeyEnum.Third); m_canShootMissile = bot.CanShootWith(MyMwcObjectBuilder_FireKeyEnum.Fourth); m_canShootCannon = bot.CanShootWith(MyMwcObjectBuilder_FireKeyEnum.Fifth); m_canShootFlash = bot.CanShootWith(MyMwcObjectBuilder_FireKeyEnum.FlashBombFront) && MyFakes.BOT_USE_FLASH_BOMBS; m_canShootSmoke = bot.CanShootWith(MyMwcObjectBuilder_FireKeyEnum.SmokeBombFront) && MyFakes.BOT_USE_SMOKE_BOMBS; m_canShootHologram = bot.CanShootWith(MyMwcObjectBuilder_FireKeyEnum.HologramFront) && MyFakes.BOT_USE_HOLOGRAMS; m_weaponChangeTimer = 0; m_currentWeapon = SelectWeapon((bot.GetPosition() - m_target.GetPosition()).Length()); m_smokeBombTimer = MyMwcUtils.GetRandomFloat(0.5f, 3.0f); m_flashBombTimer = MyMwcUtils.GetRandomFloat(0.5f, 3.0f); m_hologramTimer = MyMwcUtils.GetRandomFloat(0.5f, 3.0f); }