Giao diện game bắt bóng

Một phần của tài liệu (LUẬN văn THẠC sĩ) một số đề xuất về dạy và học lập trình trong môn tin học ở các trường trung học phổ thông (Trang 92)

3.4.7 Lập trình

Sau khi phân tích các chức năng và xây dựng xong kịch bản trò chơi, chúng ta đi vào lập trình game theo lần lƣợt các bƣớc sau:

Bước 1: Mở phần mềm Alice, mở một dự án mới (File  new world) và chọn một template (ví dụ grass).

Bước 2: Click vào nút , trong thƣ viện các đối tƣợng (local gallery) chọn Sports sau đó chọn các đối tƣợng sử dụng trong game gồm quả bóng (baseball) và găng tay (baseballglove2) bằng cách kéo thả các đối tƣợng vào template.

Bước 3: Thay đổi kích thƣớc của quả bóng và găng tay bằng cách bấm vào nút ở phía bên phải giao diện Alice, sau đó click vào từng đồi tƣợng, giữ chuột trái kéo thả để đƣợc kích thƣớc mong muốn. Thay đổi vị trí của quả bóng và găng tay (có vị trí nhƣ hình bên dƣới) bằng cách bấm chọn nút rồi click và đối tƣợng, giữ chuột trái di chuyển đối tƣợng đến vị trí mới rồi thả.

Hình 3.45: Đặt vị trí cho các đối tượng

Bước 4: Tại cửa sổ object tree, click phải chuột vào baseballGlove2  methods  orient to  camera, click chuột phải vào baseball  methods  move to  baseballGlove2.

Bước 5: Click chuột phải vào baseball  methods  orient to  camera.

Bước 6: Click chuột phải bào baseball lần nữa  methods  move  forward  other: nhập vào 20  ok.

Khi chơi game, nếu quả bóng di chuyển 20 mét về phía trƣớc nó sẽ bị bắt bởi găng tay. Sau đó click

Bước 7: Thiết lập ngƣời dùng điều khiển găng tay:

Click vào nút “create new event” (để tạo sự kiện mới)  when a key is typed. Bấm vào any key chọn right. Click chuột phải vào khối sự kiện này  change to  while a key is pressed.

Bước 8: Tại cửa sổ object tree, click vào baseballglove2, sau đó chọn tab methods.

Click vào kéo phƣơng thức “move” vào “During”  chọn right  other: gõ vào 1. Bấm vào more, thiết lập style sang abruptly và duration về 1 giây.

Hình 3.47: Thiết lập các thông số cho sự kiện click phím mũi tên sang phải

Bước 9: Kéo thả cả sự kiện trong hình 40 vào clipboard , sau đó kéo toàn bộ vòng lặp ở clipboard và thả phía dƣới sự kiện trƣớc nhƣ tạo 1 bản sao sau đó thay đổi phím mũi tên sang phải thành phím mũi tên sang trái và thay đổi vị trí right thành left. Lúc này chúng ta đã thiết lập đƣợc 2 sự kiện là bấm phím mũi tên phải và bấm phím mũi tên trái (nhƣ hình dƣới).

Hình 3.48: Thiết lập sự kiện bấm mũi tên sang phải và sang trái

Bước 10: Click vào bassball tại object tree, click nút rồi click vào nút “more controls”. Sau đó click vào nút “drop dummy at selected object”. Tại của sổ object tree đổi tên dummy thành startPosition và bấm .

Bước 11: Tại object tree bấm bassball, bấm tab method. Click phƣơng thức move to

Kéo thả phƣơng thức move, chọn backward, điền vào 20 mét. Việc này giúp di chuyển quả bóng trở lại găng tay.

Bước 12: Tạo vị trí ném bóng khác nhau bằng cách tạo vị trí ban đầu ngẫu nhiên cho

quả bóng:

Click vào nút create a new variable:

Hình 3.49: Tạo biến ngẫu nhiên

- Đặt tên cho biến là randomDistance. Bấm chọn Number.

Kéo thả biến mới vào giữa 2 dòng code đã viết ở trên và thiết lập giá trị “set value” bằng 1:

Hình 3.50: Chèn và thiết lập biến ngẫu nhiên

Bước 13: Tạo số ngẫu nhiên:

Trong object tree click vào world, click vào tab function, kéo thả random number tại vị trí số 1 của set value to. Click vào more  minimum  other gõ vào -5. Tiếp tục click vào more  maximum  other, gõ vào 5.

Bước 14: Trong object tree click trở lại baseball. Trong tab methods kéo thả move vào

vị trí dòng dƣới randomDistance  right  expressions  randomDistance, thiết lập duration là 0 và asSeenBy là camera.

Bước 15: Hiển thị điểm

Click vào nút . Kéo thanh cuộn chọn đến nút create 3D text, gõ vào chữ: Score: 0, đổi tên text đó thành score. Thay đổi kích thƣớc và vị trí cho text cho phù hợp (kéo text lên phía trên và ở góc phải màn hình world). Sau đó click

Bước 16: Thiết lập tăng điểm

Trong object tree chọn score, chọn tab methods, bấm vào create new method đặt tên nó là incrementScore.

Ở tab properties, click vào create new variable, đặt tên là value ở ô Name, bấm chọn Number và thiết lập Value là 0. Sau đó kéo thả value vào phƣơng thức incrementScore vừa xây dựng, để cộng điểm cho ngƣời chơi ta thiết lập increment score.value bằng 1:

Bước 17: Hiển thị điểm mới:

Kéo thả text từ properties chọn default string. Ở object tree click vào world, chọn functions sau đó kéo thả a joined with b và chọn tiếp default string.

Thay đổi default string đầu tiên thành “Score:”

Kéo what as a string từ functions của world thả vào trong defaults string còn lại, lựa chọn score  value.

Hình 3.52: Hiển thị điểm mới

Click vào world trong object tree  methods  create new method: ở ô Name gõ tên checkForCatch.

Kéo thả cấu trúc if/else , thiết lập true. Sau đó chọn tab functions, kéo thả a<b vào true, chọn 1 cho cả a và b.

Trong tab functions của baseball kéo thả distance to vào vị trí số 1 đầu tiên, chọn baseballGlove2, thiết lập số 1 thứ 2 là 0.3.

Bước 18.1: Thiết lập điều kiện

Tại object tree chọn score, bấm methods, kéo thả incrementScore vào sau if. Nếu không bắt đƣợc quả bóng, để quả bóng ko ra khỏi tầm nhìn: dƣới methods của baseball kéo thả phƣơng thức move vào dƣới else, chọn backward, chọn 5 mét.

Hình 3.53: Thiết lập điều kiện khi không bắt được bóng

Sau đó click vào tab world.myFirstMethod.

Bước 18.2: Chơi thử

Click vào world chọn tab methods. Kéo thả CheckForCatch xuống phía dƣới:

Hình 3.54: Gọi đến sự kiện CheckForCatch

Sau đó bấm nút Play để chơi. Nếu bắt đƣợc bóng, điểm sẽ tăng lên, nếu không bắt đƣợc quả bóng sẽ tiếp tục di chuyển, bấm restart để chơi lại.

Bước 19: Thiết lập tiếp tục chơi cho đến khi bắt đƣợc bóng ít nhất 5 lần liên tục:

Kéo thả vòng while vào trong my first method chọn true. Tại object tree chọn world sau đó chọn functions, kéo thả a<b chọn expressions  score.value và chọn 5.

Hình 3.55: Thiết lập cho người chơi chơi đến khi bắt được 5 lần liên tiếp thì thắng

Bước 20: Kiểm tra và thông báo thắng cuộc

Nếu ngƣời chơi bắt đƣợc bóng 5 lần liên tiếp thì thông báo ngƣời chơi thắng cuộc. Trong object tree click chọn score, chọn tab properties, sau đó kéo thả text xuống dƣới vòng lặp while, chọn other, gõ vào “You win!”.

Hình 3.56: Thiết lập vào hiển thị thông báo thắng cuộc.

Đến đây, chƣơng trình lập trình trò chơi bắt bóng đã hoàn tất, chúng ta có thể click vào play để bắt đầu chơi.

KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN

Qua quá trình nghiên cứu và thực hiện luận văn “Một số đề xuất về dạy và học lập trình trong môn Tin học ở các trƣờng THPT”, tôi đã đạt đƣợc những kết quả chính cũng nhƣ hƣớng phát triển của luận văn trong thời gian tới nhƣ sau:

Các kết quả chính đạt đƣợc và đóng góp trong luận văn.

- Tìm hiểu về thực trạng dạy và học lập trình ở các trƣờng THPT trên địa bàn thành phố Vĩnh Yên tỉnh Vĩnh Phúc.

- Nghiên cứu chƣơng trình dạy lập trình cho học sinh THPT ở các nƣớc tiên tiến, từ đó rút ra bài học kinh nghiệm để giải quyết khắc phục các thực trạng trên và nâng cao hiệu quả trong dạy và học lập trình.

- Nhận xét, đánh giá, so sánh chƣơng trình giảng dạy ở các nƣớc: Mỹ, Singapore, Ontario (Canada), Phần Lan, đề xuất chƣơng trình giảng dạy lập trình mới cho cả 3 khối lớp 10, 11, 12.

- Ứng dụng ngôn ngữ lập trình Code.org và Alice trong việc giảng dạy một số module lập trình nhƣ: biến, hàm, vòng lặp, cấu trúc điều khiển, lập trình hƣớng dối tƣợng, ...và kiểm tra đánh giá.

- Phân tích, thiết kế và ứng dụng Code.org để lập trình game Flappy Bird. - Phân tích, thiết kế và ứng dụng Alice để lập trình game bắt bóng.

Hƣớng phát triển

Đổi mới chƣơng trình dạy và học lập trình THPT hiện nay nhận đƣợc sự quan tâm của rất nhiều giáo viên và học sinh trong trƣờng THPT trên địa bàn tỉnh Vĩnh Phúc. Để giúp giáo viên thuận lợi hơn trong việc thực hiện giảng dạy theo chƣơng trình mới thì hƣớng phát triển của đề tài là: xây dựng giáo trình áp dụng ngôn ngữ Code.org và Alice để dạy lập trình ở khối 10 và bộ giáo trình giảng dạy lập trình lớp 11, 12 theo chƣơng trình mới, phát triển năng lực học sinh. Xây dựng những ứng dụng game thú vị phục vụ dạy học.

TÀI LIỆU THAM KHẢO

1. Canada Task Force, 2013. Future Tense: Adapting Canadian Education Systems for the 21'st Century, Canada: Action Canada.

2. Computing at School Working Group, 2012. Computer Science: A curriculum for School, s.l.: BCS, Microsoft, Google and Intellect.

3. Finnish National Board of Education, 2010. Vocational Qualification in Information and Communications Technology, Finland: www.oph.fi.

4. Ontario Ministry of Education, 2008. The Ontario Curriculum Grades 10 - 12:

Computer Studies. Ontario: Ontario.

5. University of Liege Psychology and Education, 2012. Survey of School: ICT in

Education, Finland: European Schoolnet.

6. Allen Tuckerr, A. V. C. S. D. M. F. D. J. J., 2003. CSTA K-12 Standards Curriculum, New York: ACM Order Department General Post Office.

7. Anja Balanskat, K. E., 2014 . Computer programming and coding - Priorities,

school curricula and initiatives across Europe, s.l.: European Schoolnet.

8. Chris Stephenson, A. V. B. H., 2005. The New Educational Imperative: Improving High School Computer Science Education, New York: Association for Computing Machinery, Inc (ACM).

9. Deborah Seehorn, S. C. B. F. I. L., 2011. CSTA K-12 Computer Science Standards, New York: Computer Science Teachers Association (CSTA) an.

10.Deirdre Butler, M. L. G. S. J. C., 2013. Building towards a Learning Society: A

National Digital Strategy for Schools, Ireland: Educational Research Center.

11.Education, U. o. L. P. a., 2012. Survey of schools: ICT in Education, s.l.: s.n.

12.Halinen, M. I., 2015. Curriculum reform in Finland. Finnish National Board of

Education.

13.Judith Gal-Ezer, D. H., 2000. Curriculum and Course Syllabi for a High-School

, Israel: Israel Ministry of Education.

14.Leanne M. Perry, R. C., 2014. The Role of Education Agents in Canada’s Education Systems, Canada: Council of Ministers of Education, Canada.

15.Linda Sturman, J. S., 2011. International Comparison of Computing in Schools, UK: National Foundation for Educational Research.

16.Ministry of Education, S., 2014. ICT Masterplans in the Singapore in the Singapore Education System, Singapore: Unesco.

17.Organization, S. A. M. o. E., 2010. Srtatus of ICT Intergration in Education in

Shoutheast Asian Countries, Bangkok: Shoutheast Asian Ministers of Education Organization.

18.Singapore Ministry of Education, 2007. Computer Applications Syllabus.

Singapore: Singapore Ministry of Education.

19.Studio Viiva Oy, V. K. O., 2003. National Core Curriculum for Upper Secondary Schools, Finland: Finnish National Board of Education.

Một phần của tài liệu (LUẬN văn THẠC sĩ) một số đề xuất về dạy và học lập trình trong môn tin học ở các trường trung học phổ thông (Trang 92)

Tải bản đầy đủ (PDF)

(101 trang)