Files
UltimateFishing2020/Assets/Scripts/Assembly-CSharp/TextureMovementDemo.cs
2026-03-04 10:03:45 +08:00

56 lines
1.1 KiB
C#

using UnityEngine;
public class TextureMovementDemo : MonoBehaviour
{
public float movementSpeed = 0.5f;
public Sprite[] spriteArray;
private int currentSpriteIndex;
private Renderer materialRenderer;
private Material material;
private SpriteRenderer spriteRenderer;
private void Start()
{
materialRenderer = GetComponent<Renderer>();
material = materialRenderer.material;
spriteRenderer = GetComponent<SpriteRenderer>();
if (spriteArray.Length != 0)
{
spriteRenderer.sprite = spriteArray[currentSpriteIndex];
}
}
private void Update()
{
float x = Time.time * movementSpeed;
material.SetTextureOffset("_MainTex", new Vector2(x, 0f));
if (Input.GetKeyDown(KeyCode.RightArrow))
{
ChangeSprite(1);
}
else if (Input.GetKeyDown(KeyCode.LeftArrow))
{
ChangeSprite(-1);
}
}
private void ChangeSprite(int direction)
{
currentSpriteIndex += direction;
if (currentSpriteIndex < 0)
{
currentSpriteIndex = 0;
}
else if (currentSpriteIndex >= spriteArray.Length)
{
currentSpriteIndex = spriteArray.Length - 1;
}
spriteRenderer.sprite = spriteArray[currentSpriteIndex];
}
}