/* assim garante que mesmo que o player aperte o mouse * que nem um louco, o tempo entre os tiros será respeitado */ private void fire() { try{ if (Input.GetButton("Fire1")) { playerFireManager.Fire(); } if (Input.GetKeyDown(KeyCode.G)) { GL.Clear(true, true, Color.black); } if (Input.GetKeyDown(KeyCode.Space)) { if (PlayerGlobalStatus.changeWeapon()) { playerFireManager.ManageAmmoVector(); uiManagement.UpdateWeaponIcon(); } } if (Input.GetKeyDown(KeyCode.E)) { //playerItensManager.TrowBombIfExists(); playerItensManager.ChangeItem(); } if (Input.GetKeyDown(KeyCode.R)) { playerItensManager.UseItem(); } }catch (System.Exception e) { Debug.Log(e); } }
/* essa funcao chamará o playerFireManager! passo fundamental e uma vez * mais, um exemplo de onde um delegate e evento seria util... */ private void AddWeaponAndManageAmmoVector(GameObject playerDefaultLaser) { PlayerGlobalStatus.AddPlayerItem(playerDefaultLaser); playerFireManager.ManageAmmoVector(); }