int类型下两个整数相除若有小数则小数部分会被舍弃
int类型和float运算需要用float类型来接收(多个数据类型运算,返回结果是数据类型中大的)
folat xxx = 3+ 1.5f;
print(xxx);
+可以用来连接两个string
string res1 = "叔叔我啊,";
string res2 = "最喜欢钱了";
string RES = res1 +res2;
print(RES);
控制台输出结果为:叔叔我啊,最喜欢钱了
int类型下两个整数相除若有小数则小数部分会被舍弃
int类型和float运算需要用float类型来接收(多个数据类型运算,返回结果是数据类型中大的)
folat xxx = 3+ 1.5f;
print(xxx);
+可以用来连接两个string
string res1 = "叔叔我啊,";
string res2 = "最喜欢钱了";
string RES = res1 +res2;
print(RES);
控制台输出结果为:叔叔我啊,最喜欢钱了
int 整数类型,变量声明后后续不能更改
初始化:给变量赋值
第一段是命名空间(namespace);其下面的为类,public class后的为类名
第三段为Start方法,只能执行一次,一般用其执行初始化。
第四段为Update方法,每一帧进行调用
有*代表没有保存
保存
点击untity左上角File里的Save as(另存为)即可
文件名与类名须保持一致
重命名
重命名按F12
重命名后脚本不会跟着改变这时需要前往VS手动修改使之与之相等在public class后的单词即所谓
要经常保存代码也是一样(Ctrl+s)
每次修改代码后返回until看右下角有没有应该加载在转,如果有则说明until正在识别新代码。如果没有则说明代码有问题(可能是没有保存或until无法识别你的代码)
无法识别你的代码解决方法:重启until
-------------------------------------------------
创建脚本
1.在Assets中选择create在其找到folder点击。
2.在其创建的文件夹(folder)右键选择create在其中选择C# scinpt并回车然后双击确认
斜杠代表注释,代码须符合语法结构否则无法运行
绿色为注解
运行
在unity中点击Hierarchy在其找到Great Empty点击生成Game Object把其脚本复制到上面(把Assets中需要复制的文件拖动到Inspector里)
在其控制台(VS)中输入(print)中填写要输入的东西后在其括号后加入;,然后点击左上角的保存。(这一步全以英文输入法来编写)
然后返回到unity点其播放按钮,并双击Maximi On Play。在运行成功后在左上方找到Window在里面点击General找到Console点击或点左下角的感叹号
第一段是命名空间(namespace);其下面的为类,public class后的为类名
第三段为Start方法,只能执行一次,一般用其执行初始化。
第四段为Update方法,每一帧进行调用
创建:
1.打开unity创建新的unity并保存
2.找到Assets并右键选择Creat里的C#script
--------------------------------------------------
在unity中找到Edit选择其中的Preferences在其中找到External Tools,找到External Script Editor选择VS。
--------------------------------------------------
1.打开unity创建新的unity并保存
2.找到Assets并右键选择Creat里的C#script
update是一秒50帧率
print(1);//正常输出
Debug.Log(2);//正常输出
Debug.LogWarning(3);//警告输出黄色
Debug.LogError(4);//报错输出红色
F2 快捷键修改文件名
Debug,log();
Debug,logWarning();
Debug,logError();
帧数
unity 支持那些编程语言 c#script
lundao ziji shenbu de le nishi bushi edihuang a unity are inconsistent line endings in the 'Assets/Scripts/Learn05_access
获取物体四种方式
1.public GameObject gameob;
拖拽获取
2.transform.Find("需要查找的名字 ")
只能获取子物体或子子物体
3.GameObject.Find("需要查找的名字")
但是消耗内存,是遍历(需要保证名字是唯一的)
4.GameObjcet.FindWitgTag("player")
用标签来获取,先指定标签如一个player
枚举类型
enum RoleType
{
}
获取组件的方法。
GameObject. Destroy ()
销毁组件的方法。
switch是判断“i”等于好几种情况中的一个下作出的动作
// switch case
int i = 10;switch (i) {
case 1:
print("i==1");
break;
case 2:
print("i=2");
break;
case 3:
print( "i==3");
break;
default:
print("default");
break;
}
case语句可以有多个的,但是default语句只有一个,也可以不添加。
一定要带上break,break是跳出语句。
不过可以挨在一起写,会输出两个值。
int hp = 100;
if (hp <=0 && hp <=20) {
print("可以使用医疗箱");
}
else if (hp <= 80) i
print("可以使用绷带");
}
else {
print("可以使用能量饮料");
}
}
switch (heroType) {
case HeroType.Soldier:
print("战士发动技能");
break;
case HeroType. Master:
print("法师发动技能");
break;
case HeroType.Assassin:
print("刺客发动技能");
break;
case HeroType. Shooter:
print("射手发动技能");
break;
case HeroType.Tank :
print("坦克发动技能");
break;
}
加血量:
定义初始血量为100;
当0<=血量<=20时,输出“可以使用医疗险”;
当血量<=80时,输出“可以使用绷带”;
都不满足的情况下,输出“可以使用能量饮料”。
int hp = 100;
if (hp <=0 && hp <=20) {
print("可以使用医疗箱");
}
else if (hp <= 80) {
print("可以使用绷带");
}
else {
print("可以使用能量饮料");
}
}
定义英雄种类;
如果(英雄种类是1)就,,,,;
如果不是1,是2,就,,,;
如果不是1,是3,就,,,,;
(以此类推)if后面可以跟多个else if
上面if没有加大括号等价于下面这个if带大括号
声明一个枚举类型,便于阅读后续代码
||逻辑或
只要一个满足条件,就可以输出true。
只要有一个敌人没有死亡,就生成敌人。
运算符
数学运算符:+,-,*,/,%
赋值运算符:=,+=,-=,*=,/=,%=
(a+=b 等价于 a=a+b)
比较运算符:>,>=,<,<=,==,!=
逻辑运算符(bool):!,&&,||
!取反,例:
会输出相反的值。
&& 逻辑与,需要两边都有bool值,并集,只有两边的条件同时满足的情况下才会输出true,只有一个满足或者都不满足的话,输出为false。
print(true && true);
print(false && true);
print(true && false);
print(false && false);
int player1hp = 0;
int player2hp= 0;
if(player1hp<=0 && player2hp<=0){
print("GameOver");
}
||逻辑或