private void Update() { if (isPlayerOverSwitch && !isSwitchedOn) { if (Input.GetKeyDown(KeyCode.F)) { PlayerBatteryManager playerBatteryManager = GameObject.FindGameObjectWithTag("Player").GetComponent <PlayerBatteryManager>(); if (playerBatteryManager.hasBattery()) { // remove a battery from the user's inventory playerBatteryManager.useBattery(); // open the door door.GetComponent <IDoorState>().openDoor(); // update door sprite (if necessary) door.GetComponent <IDoorState>().updateSprite(true); // update door switch sprite gameObject.GetComponent <SpriteRenderer>().sprite = Resources.Load <Sprite>(switchOnSprite); isSwitchedOn = true; } } } }
private void OnTriggerEnter2D(Collider2D collision) { if (collision.gameObject.CompareTag("Player")) { // add a battery to the user's inventory PlayerBatteryManager playerBatteryManager = collision.gameObject.GetComponent <PlayerBatteryManager>(); playerBatteryManager.addBatteryToInventory(); // display the text overlay for the battery GameObject textOverlay = GameObject.FindGameObjectWithTag("TextOverlayObject"); textOverlay.GetComponent <ModuleTextOverlay>().setText("Battery Obtained (F to use)"); // now delete this game object from the screen Destroy(this.gameObject); } }