Ошибка указывает, что отсутствует аргумент, соответствующий требуемому параметру 'brain' метода 'AIBrainSenses.Init'. Вероятно, это означает, что вы не передали объект brain в качестве аргумента при вызове метода Init.возникает такая ошибка
Error while compiling Meteorite: There is no argument given that corresponds to the required parameter 'brain' of 'AIBrainSenses.Init(BaseEntity, BaseAIBrain, float, float, float, float, bool, bool, bool, float, bool, bool, bool, EntityType, bool)' | Line: 705, Pos: 34
найди в коде как ее исправить
{
BaseEntity entity = GameManager.server.CreateEntity("assets/rust.ai/agents/npcplayer/humannpc/scientist/scientistnpc_full_any.prefab", position, Quaternion.identity);
entity.Spawn();
BaseNavigator navigator = entity.GetComponent<BaseNavigator>();
navigator.MaxRoamDistanceFromHome = navigator.BestMovementPointMaxDistance = navigator.BestRoamPointMaxDistance = 20f * 0.85f;
navigator.DefaultArea = "Walkable";
navigator.Agent.agentTypeID = -1372625422;
navigator.MaxWaterDepth = 0.5f;
navigator.CanUseNavMesh = true;
navigator.CanUseAStar = true;
navigator.Init(entity as BaseCombatEntity, navigator.Agent);
navigator.PlaceOnNavMesh();
var brain = entity.GetComponent<ScientistNPC>().Brain;
brain.Invoke(() =>
{
brain.ForceSetAge(0);
brain.Pet = false;
brain.UseAIDesign = true;
brain.AllowedToSleep = false;
brain._baseEntity = entity.GetComponent<HumanNPC>();
brain.HostileTargetsOnly = false;
brain.MaxGroupSize = 0;
brain.Senses.Init(owner: entity, memoryDuration: 5f, range: 30f, targetLostRange: 30f * 2f, visionCone: -1f, checkVision: true,
checkLOS: true, ignoreNonVisionSneakers: true, listenRange: 15f, hostileTargetsOnly: false, senseFriendlies: false,
ignoreSafeZonePlayers: false, senseTypes: EntityType.Player, refreshKnownLOS: true);
}, 0.1f);
Interface.Oxide.CallHook("OnMeteorEntity", entity);
}
Проверьте следующие строки кода:
brain.Senses.Init(owner: entity, memoryDuration: 5f, range: 30f, targetLostRange: 30f * 2f, visionCone: -1f, checkVision: true,
checkLOS: true, ignoreNonVisionSneakers: true, listenRange: 15f, hostileTargetsOnly: false, senseFriendlies: false,
ignoreSafeZonePlayers: false, senseTypes: EntityType.Player, refreshKnownLOS: true);
Убедитесь, что у вас есть объект brain, который вы хотите передать в этом вызове метода Init. Если у вас уже есть объект brain, вы можете передать его вместо параметра owner, например:
brain.Senses.Init(brain, memoryDuration: 5f, range: 30f, targetLostRange: 30f * 2f, visionCone: -1f, checkVision: true,
checkLOS: true, ignoreNonVisionSneakers: true, listenRange: 15f, hostileTargetsOnly: false, senseFriendlies: false,
ignoreSafeZonePlayers: false, senseTypes: EntityType.Player, refreshKnownLOS: true);
Обратите внимание, что я не знаком со всеми деталями вашего кода, поэтому могут быть и другие причины ошибки. Если приведенное выше решение не помогает, пожалуйста, предоставьте больше информации или обновите свой вопрос с полным кодом и описанием ошибки, чтобы я мог предоставить более точную помощь.