public void OnStartInteract(Transform player) { playerSelection.ClearPrompt(); // If door has never been opened, it can only be opened from one side if (onlyOpensOnOneSide && doorState == 0) { if (Vector3.Dot(playerSelection.cameraTransform.forward, transform.right) < 0f) { playerSelection.PushMessage("Does not open from this side."); return; } } if (locked) { if (playerSelection.TryRemoveItem(keyItem)) { playerSelection.PushMessage("Unlocked."); locked = false; } } if (!locked) { interacting = true; if (blockMouselook) { player.GetComponent <Player>().OnStartInteract(); } } else { if (keyItem) { playerSelection.PushMessage("Locked, " + keyItem.name + " Required."); } else { playerSelection.PushMessage("Locked."); } } }
public void OnStartInteract(Transform player) { playerSelection.ClearPrompt(); if (playerSelection.TryAddItem(item)) { playerSelection.PushMessage("Picked up " + item.name); Destroy(gameObject); } }
void Interaction() { // Object states foreach (var item in toEnable) { item.SetActive(true); } foreach (var item in toDisable) { item.SetActive(false); } if (triggerMethod) { triggerMethod.SendMessage("TriggerMethod", SendMessageOptions.DontRequireReceiver); } // UI Pushes if (pushObjective != "") { playerSelection.PushObjective(pushObjective); } if (pushSubtitle != "") { playerSelection.PushSubtitle(pushSubtitle); } if (pushMessage != "") { playerSelection.PushMessage(pushMessage); } if (pushPrompt != "") { playerSelection.PushPrompt(pushPrompt); } // Audio if (sound) { playerSelection.PushAudio(sound, soundVolume); } // Ending if (doOnce) { done = true; } }