[Công nghệ Thông tin] -- [Web] -- [Công nghệ phần mềm] -- [PhoThong] -- [TỪ ĐIỂN] -- [Game] -- [Học viên cũ] -- [10.000 giờ]
--------------- <> -----------------
---  KHOA HỌC - CÔNG NGHỆ - GIÁO DỤC - VIỆC LÀM ---
---  Nhận làm website, web app, chạy quảng cáo, digital marketing --->>>  LIÊN HỆ...

Tìm kiếm trong Blog

Lập trình Scratch (10) - Phát thông điệp

Bài trước: Lập trình Scratch (9) - Thời gian thực thi lệnh 
-----

10. Phát thông điệp

Bình thường, để khởi chạy một khối lệnh, bạn phải bấm chuột vào lá cờ màu xanh, bấm chuột vào khối lệnh, hoặc bấm một phím nào đó.

Tuy nhiên, có một cách khác để khởi chạy một  (hoặc nhiều) khối lệnh là sử dụng thông điệp (message).

Quá trình được thực hiện như sau:

- Bước 1, bạn sẽ tạo ra một thông điệp.

- Bước 2, phát đi thông điệp.

- Bước 3, thành phần nào nhận được thông điệp sẽ khởi chạy, hoặc thực thi một việc gì đó.

Về lý thuyết, các khối lệnh nhận được thông điệp sẽ ngay lập tức được thực thi. Tuy nhiên, chúng ta vẫn có thể lập trình để có thể kiểm soát được thời điểm thực thi này.

10. Broadcast messages

Sending messages allows you to start arbitrary pieces of code. If there are multiple receivers, they apparently all start at the same time. In reality, however, control is rapidly being switched between the different processes.

10.1 Nhiều bộ nhận thông điệp

Chúng ta cùng tạo một thông điệp và gửi tới 2 bộ nhận thông điệp.

- Bạn tạo một nhân vật (sprite1)

- Thêm khối lệnh broadcast message1 

- Bấm chuột vào message1, chọn New message để tạo thông điệp mới (đặt tên là ThongDiep1).

- Thêm tiếp khối lệnh sau:

- Bấm khối lệnh broadcast ThongDiep1 để thực thi và quan sát kết quả. Nếu chạy được, bạn sẽ thấy chú mèo thông báo là “Đã nhận ThongDiep1”. Vậy là bạn đã tạo và gửi được thông điệp thành công.

- Tạo thêm một nhân vật nữa (thêm một chú mèo, đặt tên là sprite2).

- Thêm đoạn mã sau, cho nhân vật mới thêm


- Bấm khối lệnh broadcast ThongDiep1 để thực thi và quan sát kết quả. Nếu chạy được, cả 2 chú mèo đều thông báo là “Đã nhận: ThongDiep1. Vậy là bạn đã tạo và gửi được thông điệp tới 2 nhân vật thành công.

Bài tập 10a. Bạn hãy tạo 3 nhân vật khác nhau, sau đó tạo một thông điệp để gửi tới 3 nhân vật này. Nhân vật nào nhận được thông điệp thì thông báo là: Tên nhân vật: đã nhận được thông điệp. Ví dụ: Mèo: đã nhận được thông điệp, Sư tử: đã nhận được thông điệp, Voi: đã nhận được thông điệp.

Bài tập 10b. Bài tập Tình huống

Tình huống: Dàn nhạc biểu diễn

Trường bạn đang chuẩn bị cho một buổi biểu diễn văn nghệ. Bạn là nhạc trưởng, và các nhân vật lập trình của bạn là các thành viên trong dàn nhạc.

Dàn nhạc của bạn có 3 thành viên chính:

- Nhân vật 1: Chú Chim Họa Mi (người hát chính).

- Nhân vật 2: Cây Đàn Guitar (người đệm nhạc).

- Nhân vật 3: Hoa Mai (người nhảy múa phụ họa).

Nhiệm vụ của bạn:

Bạn cần lập trình để tất cả 3 thành viên này bắt đầu biểu diễn “đúng lúc” bạn ra hiệu lệnh.

Bước 1: Tạo tín hiệu bắt đầu.

- Tạo một thông điệp mới (message) và đặt tên là "Bắt đầu Biểu diễn".

- Lập trình để khi bạn bấm vào lá cờ màu xanh (hoặc một phím bất kỳ), nhân vật Nhạc trưởng sẽ phát đi thông điệp "Bắt đầu Biểu diễn".

Bước 2: Lập trình cho các thành viên.

- Lập trình cho nhân vật chú Chim Họa Mi: Khi nhận được thông điệp "Bắt đầu Biểu diễn", Chim Họa Mi sẽ nói (hoặc phát ra âm thanh) một câu như: "Chào các bạn, mời các bạn nghe hát!" trong 2 giây.

- Lập trình cho nhân vật Cây Đàn Guitar: Khi nhận được thông điệp "Bắt đầu Biểu diễn", Guitar sẽ chơi một đoạn nhạc ngắn (hoặc chỉ cần thay đổi hình dạng/màu sắc) để đệm.

- Lập trình cho nhân vật Hoa Mai: Khi nhận được thông điệp "Bắt đầu Biểu diễn", Hoa sẽ thực hiện một động tác chuyển động (ví dụ: quay 5 vòng hoặc thay đổi trang phục).

Mục tiêu:

Khi bạn bấm nút Khởi chạy, hãy quan sát xem cả 3 nhân vật (Chim, Đàn, Hoa) có cùng lúc nhận được lệnh và thực hiện nhiệm vụ của mình không.

-----
Bài sau: