private void PickupCurrentShown() { if (currentState == pickerState.holding) { currentItem.onDeEquip(currentItemOldParent); currentItemOldParent = null; currentState = 0; currentItem = null; if (pickList.Count == 0) { return; } } if (pickList.Count != 0) { var selectedItem = pickList.First.Value.onPickup(this.gameObject); currentItemOldParent = selectedItem.transform.parent; selectedItem.transform.SetParent(weaponPoint, false); selectedItem.transform.localPosition = Vector3.zero; onAnyPickup.Raise(selectedItem); currentItem = selectedItem.GetComponent <DefaultUsable>(); currentState = pickerState.holding; selectedItem.transform.eulerAngles = Vector3.zero; } }
private void ThrowWeapon() { if (currentState == pickerState.holding) { currentItem.gameObject.transform.SetParent(currentItemOldParent, true); currentItem.onThrow(weaponPoint); currentItemOldParent = null; onAnyThrow.Raise(currentItem.throwGO); currentState = 0; } }