how to make a script when an object collides with an object it makes another object rise

I’m trying to make it so when I shoot a target the target is destroyed and I have a blocker raise up to unlock a separate area. I can’t get it to make the other object rise, but I have the target disappear. This is what I have so far:

void OnCollisionEnter(Collision theCollision){

	if (theCollision.gameObject) {
		Destroy (gameObject);
		RaiseBlocker();
	}
}

void RaiseBlocker(){
	curMoveProportion += (Time.deltaTime / moveTime);
	if(curMoveProportion >= 1){
		if(targetPos == targetPos1){
			targetPos = targetPos2;
		} else {
			targetPos = targetPos1;
		}
		prevPos = transform.position;
		curMoveProportion = 0;
	}
	transform.position = Vector3.Lerp(prevPos, targetPos, curMoveProportion);
}

agoallenallenallen is right, your code is strange. The script on the target should hold a reference of the object to raise. Then when your target is shot you tell the object-to-raise…to raise.

Destroy(gameObject) should be after RaiseBlocker. Functions execute the script in order.