U
tab 01Căn bản11 bài — chạm để mở
04 / 11 · 4 phút
Căn bản

Rẽ nhánh và lặp

dự án của bạn tới lúc này

Bài đọc cuối cùng. Vòng lặp lồng nhau ở đây sẽ thành lưới khối ở bài 08.

Bài C# cuối cùng. Hai cấu trúc — rẽ nhánh và lặp lại — bao quát gần hết code gameplay.

sơ đồ động

if chọn một con đường. for chạy cùng một khối lệnh với số lần đã biết trước.

Rẽ nhánh

C# script
if (hp <= 0)          Die();
else if (hp < 30)     PlayLowHealthSound();
else                  /*vẫn khoẻ */ ;

//ghép điều kiện
if (isGrounded && Input.GetKeyDown(KeyCode.Space)) Jump();   //hoặc
if (isStunned || isDead) return;

Lặp lại

C# script
//chạy 5 lần
for (int i = 0; i < 5; i++)
    Debug.Log("cube " + i);

//lưới 4x4 = 16 lần
for (int x = 0; x < 4; x++)
    for (int z = 0; z < 4; z++)
        Debug.Log(x + "," + z);

List — nhiều thứ cùng lúc

needs: using System.Collections.Generic;
using System.Collections.Generic;

public List<GameObject> characters = new List<GameObject>();

void Start()
{
    characters.Add(knight);                 //đếm số lượng
    Debug.Log(characters.Count);
    GameObject first = characters[0];       // đếm từ 0

    foreach (GameObject c in characters)    // duyệt hết
        c.SetActive(false);
}
  • Chỉ số đếm từ 0, nên list 3 phần tử có chỉ số 0, 1, 2.

  • Dùng for khi cần con số i; dùng foreach khi chỉ cần từng phần tử.

  • List public hiện trong Inspector thành danh sách ô kéo-thả — đó chính là cách phần đổi nhân vật sẽ hoạt động.