public MosquitoAIBehaviour GetMosquito(ChromaColor color, Vector3 position) { //Get a mosquito from pool MosquitoAIBehaviour mosquito = mosquitoPool.GetObject(position); if (mosquito != null) { mosquito.color = color; mosquito.SetMaterials(new[] { GetMaterial(mosquitoMats, color), GetMaterial(mosquitoLightSpotMats, color) }); return(mosquito); } return(null); }
public override void InitialSetup(GameObject e) { base.InitialSetup(e); mosquito = entityGO.GetComponent <MosquitoAIBehaviour>(); shotSpawnPoint = entityGO.transform.FindDeepChild("ShotSpawnPoint"); spawningState = new MosquitoSpawningAIState(this); patrolingState = new MosquitoPatrolingAIState(this); attackingPlayerState = new MosquitoAttackingPlayerAIState(this); attractedToBarrelState = new MosquitoAttractedToBarrelAIState(this); dyingState = new MosquitoDyingAIState(this); ResetValues(); }
//Mosquito methods public MosquitoAIBehaviour GetMosquito(bool random, Vector3 position) { if (random) { return(GetMosquito(ChromaColorInfo.Random, position)); } //Get a mosquito from pool MosquitoAIBehaviour mosquito = mosquitoPool.GetObject(position); if (mosquito != null) { mosquito.color = currentColor; mosquito.SetMaterials(new[] { currentMosquitoMat }); return(mosquito); } return(null); }