c# - CS1061:“变换”不包含“LocalScale”的定义
问题描述
我正在学习做一些游戏开发,而且我是 C 系列的新手,所以我不知道它的要求是什么。谢谢大家的帮助!我也尝试在发布之前对此进行研究,但找不到任何解决方案。
这是错误:Assets\Scripts\Player.cs(12,21):错误 CS1061:“Transform”不包含“LocalScale”的定义,并且没有可访问的扩展方法“LocalScale”接受“Transform”类型的第一个参数可以找到(您是否缺少 using 指令或程序集引用?)
这是代码:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Player : MonoBehaviour {
Transform GFX;
float flipX;
void Start() {
GFX = GetComponentInChildren<SpriteRenderer>().transform;
flipX = GFX.LocalScale.x;
}
void Update() {
float horz = System.Math.Sign(Input.GetAxisRaw("Horizontal"));
if(Mathf.Abs(horz) > 0)
{
GFX.LocalScale = new Vector2(flipX * horz, GFX.LocalScale.y);
}
}
}
PS我尝试对代码使用括号,结果很奇怪,它不会包含代码。所以我省略了它们。对不起 :D
解决方案
https://docs.unity3d.com/ScriptReference/Transform-localScale.html
这只是一个大小写错误。这是localScale
和不是LocalScale