public virtual void ReactingToDraggedObjects(Transform _objectDragged) { currProp = _objectDragged.gameObject; DragObjManager.Instance.StartedToDragObject(currProp); dragObj = _objectDragged.GetComponent<DraggableInfo>(); foundDraggedPlayer = false; print("curStage: " + SceneAnimationController.Instance.currStage); if(dragObj.charactersReaction.Length > SceneAnimationController.Instance.currStage) { _characterReactions = dragObj.charactersReaction[ SceneAnimationController.Instance.currStage ].charachterReactions; for(int i = 0; i < _characterReactions.Length; i++) { _characterToAnimate = dragObj.charactersReaction[ SceneAnimationController.Instance.currStage ].charachterReactions[i].characterName; if(this.name == _characterToAnimate) { if( _characterReactions[i].reactions.Length > 0) { ReactingWithFoundedScenery(i, dragObj, currProp); foundDraggedPlayer = true; }else DidntFoundScenery(dragObj); } } if( ! foundDraggedPlayer) DidntFoundScenery(dragObj); } else DidntFoundScenery(dragObj); }
public void ReactingWithFoundedScenery(int i, DraggableInfo dragObj, GameObject _currProp) { if( CheckIfScenarioIsWithoutErrors( _characterReactions[i].reactions ) == false ) { DidntFoundScenery(dragObj); return; } WorkWithScenarios( _characterReactions[i].reactions, OnReactToDraggedObjectsEnd); SceneAnimationController.SetReactingToObjectsEnd(true); SceneAnimationController.Instance.currentSceneState = sceneState.otherAnim; dragObj.Reacting(); if(_currProp != null) { if((currProp.name != attachObjectName && foundDraggedPlayer) || dragObj.dynamic) _currProp.SetActive(false); else SceneStorage.Instance.propsOnScene.Add(_currProp); } else Debug.Log("_currProp is null, :( "); }
public void DidntFoundScenery(DraggableInfo dragObj) { Debug.LogWarning(dragObj.name + " didn't fidn any scenario for the Player"); currProp = null; dragObj.OnEndDrag(); ClickAndDragController.Instance.FinishDragProcess(); DragObjManager.Instance.ResetCurrProp(); }