private void Start() { game = GetComponent <Player>().game; canShoot = true; game.AddMouseEvent(InputEventType.Continious, 0, shoot); game.AddSimpleInputEvent(InputEventType.OnBegin, KeyCode.R, reload); //Bullet Factory Bullet.Factory = () => { return(Instantiate( bulletPrefab, Vector3.zero, Quaternion.identity, game.BulletParent.transform)); }; //Bullet Pool game.PlayerBulletPool = new Pool <GameObject>( 50, Bullet.Factory, Bullet.InitializeBullet, Bullet.DeactivateBullet, true); //Método de reemplazo para Destroy() Bullet.OnDeactivate = game.PlayerBulletPool.ReturnObjectToPool; game.UpdateBullets(bulletCount, maxBullets); }
private void Awake() { game = new GameModelManager(); game.BulletParent = GameObject.Find("Bullets"); game.InitializeEnemyBulletPool(60, EnemyBulletPrefab, EnemyBullet.InitializeBullet, EnemyBullet.DeactivateBullet, true); _vignetteEffectMax = myProfile.vignette.settings.intensity; rb = GetComponent <Rigidbody>(); Cursor.visible = false; Cursor.lockState = CursorLockMode.Locked; }
//Tiempo de juego. //Recuento de oleadas. //Lista de Spawners.(?). //Lista de enemigos. (?). //public static List<Player> Player; //PlayerSerializable. public GameModelManager() { if (instance == null) { instance = this; } _gameView = UnityEngine.Object.FindObjectOfType <GameManagerView>(); _controller = UnityEngine.Object.FindObjectOfType <GameController>(); _scenes = UnityEngine.Object.FindObjectOfType <SceneManagement>(); UpdatePoints(); BulletParent = UnityEngine.GameObject.Find("Bullets"); }