public void RemoveStallObjectFromTrade(ExchangeSpace playerSpace) { if (playerSpace.stallObjectHeld != null) { stallObjectsSelected.Remove(playerSpace.stallObjectHeld); playerSpace.stallObjectHeld = null; playerSpace.objectImage.color = Color.clear; if (stallObjectsSelected.Count == 1 && playerSpace == playerSpaces[0]) { StallObject stallObjectToMove = null; for (int i = 0; i < playerSpaces.Count; i++) { if (playerSpaces[i].stallObjectHeld != null) { stallObjectToMove = playerSpaces[i].stallObjectHeld; stallObjectsSelected.Remove(playerSpaces[i].stallObjectHeld); playerSpaces[i].stallObjectHeld = null; playerSpaces[i].objectImage.color = Color.clear; } } AddObjectToTrade(stallObjectToMove, null); } } }
public void RemoveCharaObjectFromTrade(ExchangeSpace charaSpace) { if (charaSpace.charaObjectHeld != null) { charaObjectsSelected.Remove(charaSpace.charaObjectHeld); charaSpace.charaObjectHeld = null; charaSpace.objectImage.color = Color.clear; if (charaObjectsSelected.Count == 1 && charaSpace == characterSpaces[0]) { CharaObject charaObjectToMove = null; for (int i = 0; i < characterSpaces.Count; i++) { if (characterSpaces[i].charaObjectHeld != null) { charaObjectToMove = characterSpaces[i].charaObjectHeld; charaObjectsSelected.Remove(characterSpaces[i].charaObjectHeld); characterSpaces[i].charaObjectHeld = null; characterSpaces[i].objectImage.color = Color.clear; } } AddObjectToTrade(null, charaObjectToMove); } } }
public void OpenRadialMenu(StallObject stallObject, CharacterHandler characterHandler, ExchangeSpace exchangeSpace) { currentExchangeSpace = exchangeSpace; rectTransform.position = exchangeSpace.rectTransform.position; appearAnim.GetReferences(); StartCoroutine(appearAnim.anim.PlayBackward(appearAnim, true)); currentStallObject = stallObject; objectIllustration.sprite = stallObject.linkedObject.illustration; objectNameText.text = stallObject.linkedObject.objectName; characterTargeted = characterHandler; currentPotentialObject = characterTargeted.GetPotentialFromStallObject(currentStallObject); isOpened = true; categoryRadialOptions[0].radialOption.icon.sprite = stallObject.linkedObject.features[0].categoryProperties.icon; categoryRadialOptions[0].radialOption.icon.color = stallObject.linkedObject.features[0].categoryProperties.color; categoryRadialOptions[0].feature = stallObject.linkedObject.features[0]; categoryRadialOptions[0].knownFeature = currentPotentialObject.GetKnownFeatureFromFeature(categoryRadialOptions[0].feature); categoryRadialOptions[0].radialOption.time.text = stallObject.linkedObject.features[0].categoryProperties.argumentRememberTime.ToString() + " s."; if (stallObject.linkedObject.categories.Count > 1) { categoryRadialOptions[1].radialOption.gameObject.SetActive(true); categoryRadialOptions[1].radialOption.icon.sprite = stallObject.linkedObject.features[1].categoryProperties.icon; categoryRadialOptions[1].radialOption.icon.color = stallObject.linkedObject.features[1].categoryProperties.color; categoryRadialOptions[1].feature = stallObject.linkedObject.features[1]; categoryRadialOptions[1].knownFeature = currentPotentialObject.GetKnownFeatureFromFeature(categoryRadialOptions[1].feature); categoryRadialOptions[1].radialOption.time.text = stallObject.linkedObject.features[1].categoryProperties.argumentRememberTime.ToString() + " s."; } else { categoryRadialOptions[1].radialOption.icon.color = Color.clear; categoryRadialOptions[1].radialOption.gameObject.SetActive(false); } for (int i = 0; i < featureRadialOptions.Count; i++) { if (i + 2 < stallObject.linkedObject.features.Count) { featureRadialOptions[i].radialOption.gameObject.SetActive(true); featureRadialOptions[i].radialOption.info.text = stallObject.linkedObject.features[i + 2].argumentTitle; featureRadialOptions[i].radialOption.time.text = stallObject.linkedObject.features[i + 2].rememberTime.ToString() + " s."; featureRadialOptions[i].feature = stallObject.linkedObject.features[i + 2]; featureRadialOptions[i].knownFeature = currentPotentialObject.GetKnownFeatureFromFeature(featureRadialOptions[i].feature); } else { featureRadialOptions[i].radialOption.gameObject.SetActive(false); } } }