Esempio n. 1
0
    public void changeStackParent(GameObject selected, GameObject newParent)
    {
        isActive               = true;
        selectedObject         = selected;
        scriptOfSelectedObject = (ObjectScript)selected.GetComponent("ObjectScript");

        if (scriptOfSelectedObject == null)
        {
            isActive = false;
            return;
        }

        parentObject = scriptOfSelectedObject.getParent();
        if (parentObject == null)
        {
            isActive = false;
            return;
        }

        scriptOfParentObject = (ObjectScript)parentObject.GetComponent("ObjectScript");
        ObjectScript npScript = (ObjectScript)newParent.GetComponent("ObjectScript");

        if (!npScript)
        {
            return;
        }
        if (npScript.canBeStackedOn == false)
        {
            return;
        }

        scriptOfParentObject.detachChild(selected);
        parentObject         = newParent;
        scriptOfParentObject = npScript;
        ((SmoothCameraScript)GetComponent("SmoothCameraScript")).changeViewedObject(newParent);
        topDownAxisInverted = topDownAxisIsInverted();
        calculateDimensions();

        if (gridModus)
        {
            selected.transform.parent   = null;
            selected.transform.rotation = parentObject.transform.rotation;
            goToDefaultPositionGrid();
            scriptOfParentObject.addChildInGrid(selected, currColInGrid, currRowInGrid);
        }
        else
        {
            selected.transform.parent   = null;
            selected.transform.rotation = parentObject.transform.rotation;
            goToDefaultPosition();
            scriptOfSelectedObject.addChild(selected, currLeftRightOnObject, currTopDownOnObject);
        }
    }
Esempio n. 2
0
    public void Begin(GameObject moveable)
    {
        if (!isActive)
        {
            isActive               = true;
            selectedObject         = moveable;
            scriptOfSelectedObject = (ObjectScript)moveable.GetComponent("ObjectScript");
            if (gridModus)
            {
                currRowInGrid = scriptOfSelectedObject.rowInGrid;
                currColInGrid = scriptOfSelectedObject.colInGrid;
            }
            else
            {
                currLeftRightOnObject = scriptOfSelectedObject.posLeftRight;
                currTopDownOnObject   = scriptOfSelectedObject.posTopDown;
            }

            if (scriptOfSelectedObject == null)
            {
                isActive = false;
                return;
            }

            parentObject = scriptOfSelectedObject.getParent();
            if (parentObject == null)
            {
                isActive = false;
                return;
            }

            scriptOfParentObject = (ObjectScript)parentObject.GetComponent("ObjectScript");

            ((SmoothCameraScript)GetComponent("SmoothCameraScript")).changeViewedObject(parentObject);
            topDownAxisInverted = topDownAxisIsInverted();
            calculateDimensions();

            if (gridModus)
            {
                drawGrid();
            }
            else
            {
                drawNoGrid();
            }

            move();
        }
    }
Esempio n. 3
0
	public void Begin(GameObject moveable){
			isActive = true;
			selectedObject = moveable;
			scriptOfSelectedObject = (ObjectScript) moveable.GetComponent("ObjectScript");	
			if(gridModus){
				currRowInGrid = scriptOfSelectedObject.rowInGrid;
				currColInGrid = scriptOfSelectedObject.colInGrid;
			}else{
				currLeftRightOnObject = scriptOfSelectedObject.posLeftRight;
				currTopDownOnObject = scriptOfSelectedObject.posTopDown;
				//currLeftRightOnObject = moveable.position.x;
			}
			
			if(scriptOfSelectedObject == null){
				isActive = false;
				return;
			}
			
			parentObject = scriptOfSelectedObject.getParent();
			if(parentObject == null){
				isActive = false;
				return;
			}		
						
			scriptOfParentObject = 	(ObjectScript) parentObject.GetComponent("ObjectScript");	
			
			((SmoothCameraScript) GetComponent("SmoothCameraScript")).changeViewedObject(parentObject);	
			topDownAxisInverted = topDownAxisIsInverted();
			calculateDimensions();
			
			
			if(gridModus){
				drawGrid();
			}else{
				drawNoGrid();
			}			
			
			move();		
	}
Esempio n. 4
0
	public void changeStackParent(GameObject selected, GameObject newParent){
		isActive = true;
		selectedObject = selected;
		scriptOfSelectedObject = (ObjectScript) selected.GetComponent("ObjectScript");	
			
		if(scriptOfSelectedObject == null){
			isActive = false;
			return;
		}
			
		parentObject = scriptOfSelectedObject.getParent();
		if(parentObject == null){
			isActive = false;
			return;
		}		
						
		scriptOfParentObject = 	(ObjectScript) parentObject.GetComponent("ObjectScript");			
		ObjectScript npScript = (ObjectScript) newParent.GetComponent("ObjectScript");	
		if(!npScript)
			return;
		if(npScript.canBeStackedOn == false)
			return;
	
		scriptOfParentObject.detachChild(selected);
		parentObject = newParent;						
		scriptOfParentObject = 	npScript;		
		((SmoothCameraScript) GetComponent("SmoothCameraScript")).changeViewedObject(newParent);	
		topDownAxisInverted = topDownAxisIsInverted();
		calculateDimensions();
		
		if(gridModus){
			selected.transform.parent = null;
			selected.transform.rotation = parentObject.transform.rotation;
			goToDefaultPositionGrid();				
			scriptOfParentObject.addChildInGrid(selected, currColInGrid, currRowInGrid);
		}			
		else{
			selected.transform.parent = null;
			selected.transform.rotation = parentObject.transform.rotation;
			goToDefaultPosition();	
			scriptOfSelectedObject.addChild(selected, currLeftRightOnObject, currTopDownOnObject);
		}
	}