39708人加入学习
(83人评价)
Unity中的C#编程 - 零基础(Unity 2017)

完成于2017-11-06

价格 免费

数组:存储一组同类型的数据。

用法:类型[] 数组名 = {数组值}

数组引用:数组名[索引]  索引从0开始

[展开全文]
晨星 · 2019-11-11 · 该任务已被删除 0

transform.Find 查找子物体

GameObject.find 根据名字查找

FindWithTag

 

 

[展开全文]
wdnmdlj · 2019-11-08 · 该任务已被删除 0

返回值

return res;

int res =Add(10,67);

print()

[展开全文]
爱无言 · 2019-11-08 · 该任务已被删除 0

使用Vector3 pos创建一个位置参数

通过参数控制方法里变得东西  创建不同位置的敌人

CreateEnemy(new Vector3(1,1,1));

CreateEnemy(new Vector3(3,3,4));

[展开全文]
爱无言 · 2019-11-08 · 该任务已被删除 0

枚举类型

int roleType=0;//0代表魔法师 1战士 2 坦克....

enum RoleType{

Mag,

Solidier,

Wizard,

}

RoleType rt = RoleType.Mag;

rt =RoleType.Solidier;

[展开全文]
爱无言 · 2019-11-08 · 该任务已被删除 0

返回值 方法名 (参数){方法体}

创建方法然后调用方法

[展开全文]
爱无言 · 2019-11-07 · 该任务已被删除 0

数组的的三种表达方式

[展开全文]
爱无言 · 2019-11-07 · 该任务已被删除 0

运算符

数学运算符:+-*/%

赋值运算符:= += -= *= /= %= 

a+=b   ——>  a=a+b;运算+赋值

比较运算符(bool)

> >= < <= == =!

&&逻辑与操作

|| 逻辑或操作

! 去反赋值

bool isDead=false;

print(!true);

print(!false);

print(!isDead);

if(isDead){

}

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")}

 

[展开全文]
Gracie · 2019-11-06 · 该任务已被删除 0

脚本中变量的定义

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Player2 : MonoBehaviour {
    //类里面生命的public变量都可以在控制面板上反映出来 变量值以第一次价值的脚本值为准,当脚本中的变量值与控制面板值不一致时,脚本输出以控制面板值为准
    public int hp;

    // Use this for initialization
    void Start () {
        
    }
    
    // Update is called once per frame
    void Update () {
        
    }
}

`

[展开全文]
Gracie · 2019-11-06 · 该任务已被删除 0

Unity中脚本的基本结构

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

命名空间,灰色表示没有使用

使用的类必须在相应的命名空间,使用类之前必须要启用相应的命名空间。

//继承自MonoBehaviour类 void Start 和Void Update 是方法

public class C#Project : MonoBehaviour {

    // Use this for initialization
    void Start () {
        
    }
    
    // Update is called once per frame
    void Update () {
        
    }
}
  命名空间控制着类的使用,没有命名空间无法使用类

命名空间 类 方法 变量 对象 运算和调用

[展开全文]
Gracie · 2019-11-06 · 该任务已被删除 0

创建脚本和附加脚本

1.创建脚本的方法

Project窗口空白处创建

Add Componetny中创建

2.添加脚本的方法

 

[展开全文]
Gracie · 2019-11-06 · 该任务已被删除 0

类中不仅可以包含字段,还可以包含方法,

……

class Enemy{

public string name;

public int hp;

//添加移动的方法

public void Move(){

//Enemy 没有继承

print(name+“正在移动”)

}

}

方法也需要设置为public,方便外面调用

[展开全文]
Gracie · 2019-11-06 · 该任务已被删除 0

public class LearnCsharp2 : MonoBehaviour
{
}
void Start() {
    int hp = 100;

//“enemy”利用类的声明变量,可以叫做对象,
    Enemy enemy1=new Enemy();//构造对象

print
}
class Enemy {
    string name;
    int hp;    
}

[展开全文]
Gracie · 2019-11-06 · 该任务已被删除 0

public(声明) class(关键字) LearnCsharp2(类名) : MonoBehaviour(继承的类) {//类的内容

//:+类名表示继承自某个类
}

void Start() {
    int hp = 100;
    Enemy enemy1(类的声明)=new Enemy();类的创建
}

//

class Enemy (类的定义){
    string name;

int hp;

//字段和方法
}

[展开全文]
Gracie · 2019-11-06 · 该任务已被删除 0

void Add (int a,int b){

int res=a+b;

return res;

//同一方法内不能定义同一变量

[展开全文]
Gracie · 2019-11-05 · 该任务已被删除 0

方法参数

void Start(){

CreateEnemy(new Vector3(1,1,1));

//定义位置

}

void CreateEnemy(Vector3 pos)

//定义方法(类型 名称)

{

print("创建敌人");

print("创建敌人位置");

print("设置敌人的初始属性");

)

//

[展开全文]
Gracie · 2019-11-05 · 该任务已被删除 0

4.枚举类型

int rolwType=0;//0代表魔法师 1 战士2 巫师3坦克…… 数字与角色对应关系不容易记忆和理解

class外进行枚举类型定义

enum RoleType{

Mag,

Soldier,

Wizard

}

enumEnemyType{

Type1,

Type2,

Type3

}

public class LearnCsharp:MonoBehaviour

//enum是定义枚举类型的关键字 RoleType是名字 {}中的内容是取值,值与值之间通过逗号分割

void Start(){

RoleType rt=RoleType.Mag;

rt=RoleType.Soldier;

}

//命令调用语句里面没有生命过的角色类型,是不是编辑器版本的问题?

 

[展开全文]
Gracie · 2019-11-05 · 该任务已被删除 0

类命名首字母大写 驼峰命名 LearnCshape

//方法method

void Start(){} start方法

void Update(){} update方法

//返回值 方法名(参数){

方法体}

void Start(){

Test()

}//方法的调用

void Test(){

print("Test方法被调用了");

}//方法的定义

3.创建敌人的方法 通过调用,避免代码的重复书写

void Start(){

CreatEnemy();

}//调用敌人的方法

void CreatEnemy(){

print("创建敌人");

print("设置敌人位置");

print("设置敌人的初识属性");

}//敌人生成的方法

[展开全文]
Gracie · 2019-11-05 · 该任务已被删除 0

int[]hps=new int[8]{10102,2,2,32,3,2,312,3};//

for(int i =0;i<8;i++){

print(hps[i])

//通过Length可以访问数组的长度,hps调用数组信息

for(int i=0;i<hps.Length;i++){

print(hps[i])

[展开全文]
Gracie · 2019-11-05 · 该任务已被删除 0

先定义一个类型  

然后用 switch(l类型){

     case 类型.数据

           break;

   case 类型.数据

           break;

   case 类型.数据

           break;

   case 类型.数据

           break;

}

 

switch(heroType){
case HeroType.Soldier:
break;
case HeroType.Master:
break;
case HeroType.shooter:
break;
}

 

[展开全文]
朋朋 · 2019-11-03 · 该任务已被删除 0

授课教师

SiKi学院老师

课程特色

下载资料(2)
视频(37)