C#数据类型
数值类:sbyte,short,int,long,byte,ushort,uint,ulong,float,double,decimal
特殊类:bool,char,string
复杂类(自定义类型):枚举,结构体,类
枚举
关键字:enum。书写位置:命名空间中、类或结构体中。
语法:
注意点:自定义类型时第一个常量的值是0,后面依次加1,若在中间用=赋值依然是后面依次加1,最后一个常量后的逗号可写可不写
配合switch的使用:
结构体
关键字:struct
书写位置:一般是在命名空间中
用法:
注意点:构造函数必须为所有内部成员赋值,this可以区分内部变量与函数参数
判断与循环
与C语言几乎一样,但条件的值只能是bool类型不能像C语言中用0与1。
面向对象
含义
用程序语言去形容现实中的事物
类
类的语法及简单用法
类的命名:帕斯卡,单词首字母均大写
类的继承
语法及虚函数重写
用法及里氏替换原则
抽象类
作用:形容现实世界中比较抽象的东西,如物品、动物等,用来被继承
关键字:abstract(在class前加上就可)
特点:比起普通类它可以有抽象方法,抽象方法无方法体,子类中必须配合override重写(有别于虚函数)
静态类
作用:可以装固定的用法像数学方法,及不变的量像重力加速度等;
语法
用法:用类名点出即可。
接口
作用:形容一种行为,如飞翔,跑步等。
关键字:interface
可以包含方法、属性、索性器、事件;用来被继承。
Unity
素材导入注意点(文件要解压缩)
场景创作:利用Rule tile和animated tile(水流动画)
人物导入后:加rigidbody2D使其获得重力同时要给设置好的地面加碰撞体这样就可以让人站在上面了
人物移动:先导入新的输入系统再创建input action再在任务代码中创建变量及实例化通过 inputDirection = inputControl.Playergame.Move.ReadValue<Vector2>();
来读取按键,根据它的x中改变velocity来实现左右移动
攻击及跳跃通过
按键一被按下去时加等于函数方法实现,跳跃的时候就给刚体加一个突然的力并且用Physics2D.OverlapCircle检测是否在地面不在地面就把不能给力改变摩擦力实现跳起来时不贴墙,攻击的时候就执行动画,在动画中加触发器用OnTriggerEnter实现敌人扣血。