// Start is called before the first frame update void Start() { if (!TryGetComponent(out BlockComponent)) { var component = GetComponentInParent <DataBlockComponent>(); Position = new Vector2Int(component.WorldTileX, component.WorldTileY); BlockComponent = component; SoundLoader loader = gameObject.AddComponent <SoundLoader>(); loader.LoadAll(BlockComponent.DataBlock); } else { Position = new Vector2Int(BlockComponent.WorldTileX, BlockComponent.WorldTileY); GUID = BlockComponent.DataBlock.GUID; } var allowMovement = GetComponent <AllowTileMovement>(); if (allowMovement != null) { allowMovement.AllowMovement = true; } TileMovingObjectScript.MoveableMoved += Jetstream_SpongebobPlayerPositionChanged; TileMovingObjectScript.MoveableMoving += TileMovingObjectScript_MoveableMoving; }