- Home /
Pipe in a Snowboarding Infinite Runner not staying connected
I'm making a game that's essentially a snowboarding infinite runner and I came across an issue. I have a model for basic pipes and I'm trying to instantiate the upcoming pipe parts so that I can tell it to spawn different kinds of pipes (Ramps, turns, etc) when the assets are made. The problem is, there is inevitably always a noticeable break in the pipes, seen in the image.
The player does have the ability to control their speed and the movement of the pipes is controlled by this. This seems to cause this break the most frequently. I've tried several things but nothing works. Here is my code currently for the pipe script. It's a bit messy atm and I apologize for that. I'm getting real stressed out about this and I'm running out of ideas.
public class Game_PipeMover : MonoBehaviour
{
public GameObject otherPipe;
public GameObject spawnedPipe;
public bool isSpawner;
public bool movePipeTransform;
bool sentOutSpawnMessage;
private void Start()
{
if(!isSpawner)
{
}
}
private void FixedUpdate()
{
if(isSpawner)
{
if(GameManager.instance.spawnPipe)
{
GameObject newPipe = Instantiate(spawnedPipe, transform.position, transform.rotation);
newPipe.transform.position = GameManager.instance.currentPipe.transform.position + new Vector3(0f, 0f, 240f);
// newPipe.transform.localPosition = new Vector3(pos.x, pos.y, pos.z + GameManager.instance.spawnZDifference);
// newPipe.transform.parent = transform;
//newPipe.GetComponent<Game_PipeMover>().isSpawner = false;
GameManager.instance.spawnPipe = false;
}
}
else
{
if(transform.localPosition.z <= 100f && !sentOutSpawnMessage)
{
sentOutSpawnMessage = true;
GameManager.instance.currentPipe = gameObject;
GameManager.instance.spawnPipe = true;
}
if(transform.localPosition.z <= -130f)
{
Destroy(gameObject);
//transform.localPosition = transform.localPosition = new Vector3(0f, -1.52f, 340f);
}
Vector3 mov;
mov = new Vector3(0f, 0f, -1f);
GetComponent<Rigidbody>().velocity = (mov * (GameManager.instance.speedMultiplyer * (80f)));
}
}
}
Your answer
Follow this Question
Related Questions
Game Object seems to move on it's own 0 Answers
Transform.position.x new vector3 NOT changing object position 1 Answer
Infinite Runner Movement 2 Answers
Make a simple tree 1 Answer