-->

  • Construct 2 Game Development by Example - Chương 2 - Phần 2



    Bài 3. Mouse input

    Mouse input rất quan trọng đối với các game PC. Ở môi trường khác, nó cần nhiều mã. May mắn thay, trong C2 chuột rất dễ sử dụng.

    1. Thêm chức năng chuột

    Điều đầu tiên ta phải làm là thêm chức năng chuột tới project. Nháy đúp chuột vào nền layout và biểu tượng Mouse.


    Điều này sẽ thêm chức năng chuột cho project.

    Điều chúng ta cần làm tiếp theo là gán một vài chức năng chuột cho sprite. Mở event sheet và kích vào Add event.


    Những gì chúng ta sẽ làm là xoay đối tượng đến vị trí chuột. chọn System:



    2. Thiết lập lệnh Every tick

    Trong cửa sổ Add event, chúng ta cần truy cập lệnh Every tick.


    Trong mỗi trò chơi, có một thứ được gọi là vòng lặp. đây là một vòng lặp, nó liên tục cập nhật thông tin. Khi ta đặt một đoạn mã hoặc một logic vào trong vòng lặp, nó sẽ liên tục kiểm tra xem nó có đúng hay không. Logic bao gồm các yếu tố như điều khiển, va chạm, điểm số, và hầu như tất cả các phần khác của trò chơi. Trong môi trường lập trình khác, vòng lặp trò chơi cực kì quan trọng và việc truy cập nó có thể rất khác nhau tùy vào môi trường.

    Chúng ta cần truy cập tính năng Every tick bởi vì chúng ta cần liên tục kiểm tra xem chuột đang ở đâu. Trong khi chuột di chuyển xung quanh màn hình, máy tính sẽ kiểm tra xem vị trí của nó. Nếu chúng ta ko sử dụng chức năng Every tick hoặc vòng lặp trò chơi thì sprite chỉ xoay một lần thay vì liên tục. bạn thường sử dụng Every tick cho các chức năng mà yêu cầu sự chú ý thường xuyên. Đối với hầu hết các chức năng khác cần được gọi một lần, bạn có thể sử dụng các chức năng khác. Vì vậy, hãy tiếp tục và kích vào Every tick.



    3. Xoay sprite sang vị trí chuột

    Bây giờ ta đã thêm sự kiện Every tick, ta cần thêm hành động. hành động này sẽ xoay sprite sang vị trí con chuột. để làm điều này, kích vào Add event. Bạn sẽ có màn hình như sau:


    Lần này chúng ta sẽ chọn Sprite. Nếu chúng ta muốn xoay sprite, chúng ta phải truy cập sprite thông qua cửa sổ Add action. Chúng ta không thể sử dụng chức năng chuột để xoay sprite.


    Trong cửa sổ Add action được hiển thị ở màn hình trước, chúng ta có thể thấy nhiều lựa chọn để xoay sprite. Đối với ví dụ này, chúng ta sẽ chọn Set angle toward position. Thao tác này sẽ mở hộp thoại Parameters for Sprite: Set angle toward position:


    Ở cửa sổ trước, bạn sẽ thấy 2 lựa chọn: X và Y. điều bạn cần làm đó là điền từ Mouse sau đó chèn một khoảng thời gian. Như bạn thấy, bạn có một số lựa chọn khác nhau, lựa chọn X và Y cho tùy chọn tương ứng, ko phải Absolute X và Absolute Y:


    Sau đó, nhấn Done và event sheet của bạn sẽ trông như thế này:


    Hãy test thử game. Bạn có thể thấy đối tượng sẽ xoay tới kích chuột.

    3. Quay sprite về hướng con trỏ chuột

    Có một vấn đề phổ biến phát sinh đó là khi bạn làm sprite quay về vị trí chuột thì đồ họa dường như bị tắt. điều này có nghĩa là đối tượng có thể bị nghiêng hoặc ngược lại và đối tượng không thể hướng về chuột chính xác. Vâng, có một lí do đơn giản cho vấn đề này. Code hoạt động không hoàn hảo; nó chỉ là đồ họa không được đặt vào C2 một cách chính xác.nếu bạn kích vào đối tượng, bạn có thể thấy nơi mà đối tượng quay vào.


    Như bạn có thể thấy trong ảnh chụp màn hình sau, có một đường chỉ nhỏ bên phải. đường này luôn hướng mặt về phía con chuột.



    Nếu chúng ta muốn xoay hình ảnh, chúng ta có thể làm điều đó trong C2; nháy đúp chuột vào sprite. Điều này sẽ đưa bạn đến chỉnh sửa sprite, nơi bạn có thể thay đổi hướng xoay, va chạm, và nhiều tính chất khác của sprite:



    Tiếp tục và kích vào biểu tượng cho hướng xoay, nó ở phía trên và hiển thị mũi tên uốn cong xung quanh vòng tròn. Xoay đối tượng của bạn để nó đối mặt với phía bên phải. điều này sẽ thay đổi đối tượng của bạn sang hướng bên phải.


    Ở màn hình trước, ta có thể thấy đối tượng đã xoay đúng hướng. Nếu bạn test thử game bạn sẽ thấy nó hoạt động.



    WAITING FOR LUV
    Bạn có muốn cải thiện khả năng thiết kế đồ họa của mình? Chắc hẳn các bạn cũng biết, nếu các dòng code là linh hồn của một trò chơi, thì đồ họa chính là bộ mặt của trò chơi đó. Đồ họa đẹp, dễ nhìn sẽ khiến trò chơi của bạn tăng tỉ lệ hấp dẫn người xem đến 90%. Hiện tại có hai công cụ hỗ trợ thiết kế đồ họa game tiện nhất mà mình biết, đó là Photoshop và Illustrator. Mình sẽ cố gắng tìm kiếm và chia sẻ các đồ họa game miễn phí cho các bạn tại blog này; tuy nhiên, một trò chơi mà 100% do chính mình tạo ra vẫn hơn là đi cóp nhặt hình ảnh từ nơi khác đúng không nào. Tiện đây, mình có chia sẻ một khóa học thiết kế đồ họa Game 2D cho Mobile. Các bạn có thể tham khảo dưới đây để được giảm 40% học phí nhé.


    Bài 5. Touch control input

    Điều khiển chạm quan trọng cho game mobile. nó thật sự rất quan trọng vì rất nhiều trò chơi HTML5 chạy tốt trên mobile, trong khi Flash thì không. Mở một tệp C2 mới và chèn thêm một sprite. Sau đó nháy đúp chuột vào nền layout để mở cửa sổ Insert New Object. Tại đây thêm chức năng Touch:



    Một khi bạn đã thêm chức năng Touch, chuyển sang event sheet và thêm sự kiện Touch:


    Nháy đúp chuột vào biểu tượng Touch sẽ đưa bạn tới trang Add event.


    Một khi bạn làm xong điều này, tiếp tục và chọn On any touch end:



    Kích vào Done:


    Bây giờ thêm hành động và kích vào Sprite ở cửa sổ Add action.


    Trong cửa sổ Add action tiếp theo, cuộn xuống và lựa chọn Set position ở danh sách Size & Position:


    Trong Parameters for Sprite: Set position, thiết lập vị trí tới Touch XTouch Y, giống như cách bạn thêm vị trí chuột. cái này sẽ di chuyển vị trí X và Y của sprite tớ nơi mà bạn chọn.


    Hãy thử test game ngay cả khi bạn đang sử dụng máy tính. Nút chuột và các lệnh chạm được đồng bộ hóa để kiểm tra và kích chuột sẽ mô phỏng chạm.

    Tổng kết

    Trong chương này chúng ta đã học được cách sử dụng bàn phím và sử dụng chuột. ngoài  ra chúng ta đã khám phá ra những tính năng mà C2 phải cung cấp, chẳng hạn như đầu vào bàn phím và xoay góc. Tôi đã giới thiệu ý tưởng về vòng lặp và cách mà C2 truy cập chúng. Chúng tôi cũng đã đề cập đến cảm ứng.


    Trong chương tiếp theo tôi sẽ giới thiệu về các biến để tăng độ phức tạp cho trò chơi của chúng ta.



    Bản dịch do construct2vn.ga thực hiện
    Ai sao chép hay chia sẻ hãy ghi nguồn và đưa link www.construct2vn.ga vào đầu bài chia sẻ nhé

  • DONATE TINH THẦN CHO BLOG TẠI ĐÂY

    Nếu các bạn thấy blog có ích hãy ủng hộ blog hàng ngày tại đây. Chỉ cần thi thoảng chơi game và tìm bug cho tụi mình là được. Đây là ủng hộ tinh thần, không phải tiền mặt, vật chất và không bắt buộc. Xin chân thành cảm ơn ahihi. Chúc các bạn một ngày zui zẻ.

    TELEPHONE

    02273 7x2 xxx
    02273 xxx 27x

    MOBILE

    0162 x15 xx33