void Start() { findTarget = GetComponent <FindTarget>(); shootTarget = GetComponent <ShootTarget>(); List <GameObject> nearbyEnemies = EnemySpawner.nearbyEnemies; findTarget.NearbyEnemies = nearbyEnemies; shootTarget.NearbyEnemies = nearbyEnemies; }
void Update() { if (GlobalVariables.inputArrayChanged) { target = FindTarget.findTarget(); if (GlobalVariables.launchPermission) { SpawnObject(); } } }
void Start() { movement = GetComponent <Movement>(); searchBehavior = GetComponent <FindTarget>(); gm = GameObject.Find("GlobalManager").GetComponent <GlobalManager>(); ds = GameObject.Find("PlayerCanvas").GetComponent <DialogueSystem>(); player = GameObject.FindGameObjectWithTag("Player"); currentState = npcState.Idle; isBusy = false; nameTitle = Instantiate(nameTitle, transform.position + Vector3.up, Quaternion.identity) as GameObject; nameTitle.GetComponent <TextMesh>().text = gameObject.name; }
public void SetTarget(FindTarget findTarget) { string selectLookIn; switch (findTarget) { case FindTarget.CurrentDocument: selectLookIn = Labels.CurrentDocument; break; case FindTarget.AllOpenDocuments: selectLookIn = Labels.AllOpenDocuments; break; default: selectLookIn = Labels.EntireProject; break; } _form._lookIn.SelectedItem = selectLookIn; }
protected override void OnUpdate() { NativeArray <Translation> AllEnemiPos = EnemiQuery.ToComponentDataArray <Translation>(Allocator.TempJob); NativeArray <Translation> AllUnitPos = UnitQuery.ToComponentDataArray <Translation>(Allocator.TempJob); var job = new FindTarget() { U_positions = AllUnitPos, entityCommandBuffer = endSimulationEntityCommandBufferSystem.CreateCommandBuffer().ToConcurrent(), //E_positions = AllEnemiPos }; JobHandle dependency = job.Schedule(EnemiQuery); endSimulationEntityCommandBufferSystem.AddJobHandleForProducer(dependency); dependency.Complete(); for (int i = 0; i < AllUnitPos.Length; i++) { for (int j = 0; j < AllEnemiPos.Length; j++) { // if (Time.DeltaTime > nextShootTime) // { if (math.distance(AllEnemiPos[j].Value, AllUnitPos[i].Value) < 18f) { CustomEntity.SpawnEntityAtPosition(typeof(Projectiles), AllEnemiPos[j].Value); //float fireRate = .03f; //nextShootTime = Time.DeltaTime + fireRate; } // } } } var job2 = new FindCible() { U_positions = AllUnitPos, entityCommandBuffer = E_endSimulationEntityCommandBufferSystem.CreateCommandBuffer().ToConcurrent(), }; JobHandle dependency2 = job2.Schedule(ProjectileQuery); E_endSimulationEntityCommandBufferSystem.AddJobHandleForProducer(dependency2); dependency2.Complete(); AllUnitPos.Dispose(dependency2); AllEnemiPos.Dispose(); }
public void ChangeFind(FindTarget target, UnityAction <Vector3?> origin = null) { findForOrigin = origin; if (findType != null) { StopCoroutine(findType); } switch (target) { case FindTarget.Select: findType = StandartFind(); break; case FindTarget.Point: findType = PointFind(); break; default: break; } StartCoroutine(findType); }
public void SetTarget(FindTarget findTarget) { }
private void Start() { findTarget = GetComponent <FindTarget>(); }
// Use this for initialization void Start() { ft = GetComponentInParent <FindTarget>(); scStatus = GetComponentInParent <Status>(); }
void Start() { ship = GetComponent <ShipAI> (); findScript = GetComponent <FindTarget>(); }
protected override void OnUpdate() { Entities.WithNone <SpawnEntityState>().ForEach((Entity entity, ref SpawnFleet spawnFleet, ref WeaponStats weaponStats) => { SharedFleetGrouping sharedFleetGrouping; if (!m_SharedFleetGroupingMap.TryGetValue(spawnFleet.FleetID, out sharedFleetGrouping)) { sharedFleetGrouping = new SharedFleetGrouping() { ID = spawnFleet.FleetID }; m_SharedFleetGroupingMap.Add(spawnFleet.FleetID, sharedFleetGrouping); } var ship = new Ship() { ID = spawnFleet.ShipID, FleetID = spawnFleet.FleetID }; var deploy = new InitialDeploy() { FleetID = spawnFleet.FleetID }; var translation = new Translation() { Value = new float3(100, 0, 100) }; var rotation = new Rotation() { Value = quaternion.identity }; var moveSpeed = default(Velocity); var rotateSpeed = default(AngularVelocity); var localToWorld = new LocalToWorld(); var findTarget = new FindTarget() { FoundEntity = Entity.Null }; var movementStats = new MovementStats() { TopSpeed = spawnFleet.TopSpeed, Acceleration = spawnFleet.Acceleration, Deceleration = spawnFleet.Deceleration, RotationSpeed = spawnFleet.RotationSpeed, ThrustTolerance = spawnFleet.ThrustTolerance, MaxSpeedToTurn = spawnFleet.MaxSpeedToTurn, DoesSwarm = spawnFleet.DoesSwarm }; var newWeaponStats = weaponStats; // This might not be needed, can maybe add component directly if added by value. //var swarmCombatMovement = default(SwarmMovement); //var rangedCombatMovement = new RangedMovement() //{ // // Grab stats from weapon data and square them for later calculations. // MinRangeSq = weaponStats.MinRange * weaponStats.MinRange, // MaxRangeSq = weaponStats.MaxRange * weaponStats.MaxRange, // OptimalRangeSq = weaponStats.OptimalRange * weaponStats.OptimalRange //}; if (spawnFleet.ShipCount > 0) { var shipEntities = new NativeArray <Entity>(spawnFleet.ShipCount * spawnFleet.SquadSize, Allocator.Temp); var ent = EntityManager.CreateEntity(); { // do this once only. EntityManager.AddComponent <Ship>(ent); EntityManager.AddComponent <MovementStats>(ent); EntityManager.AddComponent <LocalToWorld>(ent); EntityManager.AddComponent <Translation>(ent); EntityManager.AddComponent <Rotation>(ent); EntityManager.AddComponent <Velocity>(ent); EntityManager.AddComponent <AngularVelocity>(ent); EntityManager.AddComponent <FindTarget>(ent); EntityManager.AddComponent <InitialDeploy>(ent); EntityManager.AddComponent <WeaponStats>(ent); EntityManager.AddSharedComponentData(ent, sharedFleetGrouping); EntityManager.SetComponentData(ent, ship); EntityManager.SetComponentData(ent, movementStats); EntityManager.SetComponentData(ent, localToWorld); EntityManager.SetComponentData(ent, translation); EntityManager.SetComponentData(ent, rotation); EntityManager.SetComponentData(ent, moveSpeed); EntityManager.SetComponentData(ent, rotateSpeed); EntityManager.SetComponentData(ent, deploy); EntityManager.SetComponentData(ent, findTarget); EntityManager.SetComponentData(ent, weaponStats); } // apply the above to all spawned entities. EntityManager.Instantiate(ent, shipEntities); EntityManager.DestroyEntity(ent); var index = 0; for (var i = 0; i < spawnFleet.ShipCount; i++) { SharedSquadGrouping sharedSquadGrouping = new SharedSquadGrouping(); if (spawnFleet.SquadSize > 1) { sharedSquadGrouping.ID = GetHashCode(); } for (var j = 0; j < spawnFleet.SquadSize; j++) { ship.InstanceID = index; //if (spawnFleet.DoesSwarm) //{ // PostUpdateCommands.AddComponent(shipEntities[index], swarmCombatMovement); //} //else //{ // PostUpdateCommands.AddComponent(shipEntities[index], rangedCombatMovement); //} if (spawnFleet.SquadSize > 1) { PostUpdateCommands.AddSharedComponent(shipEntities[index], sharedSquadGrouping); } index++; } } shipEntities.Dispose(); } PostUpdateCommands.AddComponent(entity, default(SpawnEntityState)); PostUpdateCommands.DestroyEntity(entity); }); }