• Network
    • Mạng cơ bản
    • Hyper-V
    • Linux
    • Windown Server 2012
  • Security
    • Basic Hacking
    • Deface
    • DDOS
    • Kali Linux / Parrot
    • SQL Injection
    • Virus-Trojan-Rat
  • Thủ thuật
    • Khóa Học Miễn Phí
    • Code
    • Mẹo Vặt Máy Tính
    • Facebook
    • Windows 7/8/10
    • Đồ Họa
    • Video
  • Software
    • Phần mềm máy tính
    • Phần mềm điện thoại
  • MMO
    • Advertisers – Publishers
    • Affiliate Program
    • Kiếm tiền bằng điện thoại
    • Pay Per Click – PPC
  • Tin tức
  • Kiến thức
AnonyViet
  • Network
    • Mạng cơ bản
    • Hyper-V
    • Linux
    • Windown Server 2012
  • Security
    • Basic Hacking
    • Deface
    • DDOS
    • Kali Linux / Parrot
    • SQL Injection
    • Virus-Trojan-Rat
  • Thủ thuật
    • Khóa Học Miễn Phí
    • Code
    • Mẹo Vặt Máy Tính
    • Facebook
    • Windows 7/8/10
    • Đồ Họa
    • Video
  • Software
    • Phần mềm máy tính
    • Phần mềm điện thoại
  • MMO
    • Advertisers – Publishers
    • Affiliate Program
    • Kiếm tiền bằng điện thoại
    • Pay Per Click – PPC
  • Tin tức
  • Kiến thức
No Result
View All Result
  • Network
    • Mạng cơ bản
    • Hyper-V
    • Linux
    • Windown Server 2012
  • Security
    • Basic Hacking
    • Deface
    • DDOS
    • Kali Linux / Parrot
    • SQL Injection
    • Virus-Trojan-Rat
  • Thủ thuật
    • Khóa Học Miễn Phí
    • Code
    • Mẹo Vặt Máy Tính
    • Facebook
    • Windows 7/8/10
    • Đồ Họa
    • Video
  • Software
    • Phần mềm máy tính
    • Phần mềm điện thoại
  • MMO
    • Advertisers – Publishers
    • Affiliate Program
    • Kiếm tiền bằng điện thoại
    • Pay Per Click – PPC
  • Tin tức
  • Kiến thức
No Result
View All Result
AnonyViet
No Result
View All Result

[Lập Trình Game] Bài 10: Tạo Kẻ Thù trong lập trình Godot – Phần 1

AnonyViet by AnonyViet
22/04/2020
in Code
0

Trong bài này mình sẽ hướng dẫn các bạn tạo kẻ thù cho nhân vật của chúng ta bằng lập trình game Godot. Kẻ thù sẽ làm cho nhân vật bị mất máu hoặc bạn phải chiến đấu với kẻ thù. Và phần này có vài đoạn có thể là sẽ rất rất khó và không thành công nên mấy bạn chuẩn bị tâm lý nha.

Và chúng ta cùng bắt đầu thôi.

Các bài viết liên quan

[Godot RPG] #3: Tấn Công & Object 10

[Godot RPG] #3: Tấn Công & Object

20/08/2020
[Godot RPG] #2: Nhân vật 11

[Godot RPG] #2: Nhân vật

16/08/2020 - Updated on 20/08/2020
[Godot Engine] Export sang Windows, Linux, MacOS, Android 12

[Godot Engine] Export sang Windows, Linux, MacOS, Android

16/08/2020
hoc lap trinh game can gi

Học Lập Trình Game Cần Gì? Có Khó Không? Học Bao Lâu?

12/08/2020

Tạo kẻ thủ

Đầu  tiên tạo Sence mới và bao gồm kinematicbody 2D  nút con là AnimatedSprite và CollsionShape2D rồi nhấn Ctrl + S lưu lại.

Tạo Kẻ Thù trong lập trình Godot

Nếu bạn nào đang sài asset của anonyviet thì có asset của enemy ở: asset-player > NPC > asset kẻ thù

Link download Asset

Chọn cái nào cũng được.

Tạo SpriteFrame mới

Tạo Animation là move

download asset tạo kẻ thù godot

Nếu ảnh mờ các bạn Import lại nha

Tiếp theo set collision cho nó, ở đây mình set bên dưới không set bên trên để phần trên có thể để nhân vật nhảy lên mà tiêu diệt nó

set collision

Lock nó lại và tạo script mới và script này sẽ có tên là enemy

tạo script enemy

Chúng ta sẽ tạo thêm những biến sau

var Vitri = 1
var  vantoc = Vector2.ZERO //hoặc Vector2() đều giống như nhau
var  Tocdo = tùy bạn
var Trongluc = tùy bạn
var  FLOOR = Vector2(0,-1)

ở đây const là câu lệnh dùng để lock số lại, nghĩa là khi bạn khai báo biến với const thì nó sẽ khóa số đó lại và không bao giờ có thể chỉnh sửa giá trị của nó được.

Xem thêm:  [Lập trình Game] Bài 5: Lập trình chuyển động nhân vật

code tạo enemy kẻ thù godot engine

Tiếp theo chúng ta sẽ tạo hàm chuyển động vật lý

Và sẽ code như sau

Gán trọng lực cho nó

vantoc.y  =  trongluc

Gán tốc độ cho nó

vantoc.x  += tocdo * delta * vitri  (Ở đây * delta để giảm tốc độ của kẻ thù)

Thêm câu lệnh move_and_slide để có thể di chuyển

vantoc = move_and_slide(vantoc)

Tiếp theo bạn sẽ instance nó ra ngoài sence của chúng ta:

[Lập Trình Game] Bài 10: Tạo Kẻ Thù trong lập trình Godot - Phần 1 7

Và instance nó ra

[Lập Trình Game] Bài 10: Tạo Kẻ Thù trong lập trình Godot - Phần 1 8

Chạy game các bạn sẽ thấy nó di chuyển

[Lập Trình Game] Bài 10: Tạo Kẻ Thù trong lập trình Godot - Phần 1 9

ở  đây mình để chế độ nhìn thấy collsionshape nên không có gì đâu nha

Tiếp theo chúng ta sẽ code để nó có thể di chuyển sang trái, và animation

Và ở đây mình sẽ có 1 lệnh là:

if is_on_wall() : is_on_wall() là câu lệnh chả về true (là trả về đúng)  nếu Body có ở trên Wall, và nó chỉ thực hiên khi được gọi bằng move_and_slide

Và tiếp theo bên dưới if is_on_wall() chúng ta sẽ code thêm 1 dòng là:

vitri = vitri * -1 và dòng này khi chạm 1 cái gì đó vitri đang là 1 thì nó sẽ * -1 và nó sẽ di chuyển ngược lại

À và các bạn chạy game lên thấy nhân vật chạy chậm thì kiểm tra ở move_and_slide đã có FLOOR chưa nhé nếu chưa thì thêm vào nếu có rồi mà vẫn chậm thì chỉnh lại speed tầm 20-30

Và tiếp theo chúng ta sẽ code animation cho nó nhé

if vitri == 1:
$AnimatedSprite.flip_h = false
else:
$AnimatedSprite.flip_h = true

2 dòng trên là 2 dòng sẽ thay đổi hình ảnh của kẻ thù, flip_h = false là ảnh sẽ lật sang phải còn flip_h = true là sang trái

Xem thêm:  [Lập Trình Game] Bài 6: Ghi chú và Lực ma sát kiểm soát tốc độ nhân vật

if vitri == 1 : nghĩa là vị trí đang bằng 1 mà = 1 thì nó sẽ di chuyển sang phải mà con enemy của chún ta di chuyển sang phải đầu tiên nên flip_h sẽ = false

Và ngược lại

Rồi các bạn gọi animation move cho mình nhé

$AnimatedSprite.play("Move")

cách tạo enemy

Của mình sau khi chạy game đã ổn

Và bài sau mình sẽ hướng dẫn các bạn tạo raycast để kẻ thù có thể di chuyển trên tilemap như dưới ảnh mà ko bị rớt

code kẻ thù trong godot engine

Tags: GodotGODOT ENGINElập trình gamethiết kế game
Previous Post

Bản Update mới nhất của Windows 10 bị lỗi kết nối Wifi chậm

Next Post

[Lập trình game] Bài 11: Kẻ Thù Raycast2D trong Godot – Phần 2

AnonyViet

AnonyViet

Kiến thức như một ngọn lửa, càng chia sẽ nó sẽ càng bùng cháy!

Related Posts

môi trường ảo python windows
Code

Cách thiết lập môi trường ảo Python trên Windows 10

17/01/2021
Các kiểu dữ liệu cơ bản trong Python 13
Code

Các kiểu dữ liệu cơ bản trong Python

12/01/2021
Top 5 Ngôn Ngữ Lập Trình Hacker Mũ Trắng Nên Học
Code

Top 5 Ngôn Ngữ Lập Trình Hacker Mũ Trắng Nên Học

27/11/2020 - Updated on 30/11/2020
Xoá các File trùng lặp bằng Python
Code

Viết chương trình Xoá các File trùng lặp bằng Python

22/10/2020
viet ung dung chat bang python
Code

Cách viết ứng dụng chat đơn giản bằng Python

15/10/2020 - Updated on 16/10/2020
ứng dụng tra số điện thoại thuộc Quốc gia nào
Code

Viết ứng dụng tra số điện thoại thuộc Quốc gia nào bằng Python

11/10/2020 - Updated on 13/10/2020
Next Post
Raycast2D

[Lập trình game] Bài 11: Kẻ Thù Raycast2D trong Godot - Phần 2

guest
guest

Website này sử dụng Akismet để hạn chế spam. Tìm hiểu bình luận của bạn được duyệt như thế nào.

0 Comments
Inline Feedbacks
View all comments

Liên hệ Quảng Cáo

Lien he AnonyViet

Đối tác

Fshare

Các bài mới

Ping of Death ddos

Ping of Death là gì? Thực hiện Ping of Death để DDOS như thế nào?

24/01/2021
Download Burp Suite 2020.12 Pro Full Key - Cách Active bản quyền 14

Download Burp Suite 2020.12 Pro Full Key – Cách Active bản quyền

24/01/2021
Cách chọn thức ăn theo Nhóm Máu để cường tăng sức khỏe

Cách chọn Thức Ăn theo Nhóm Máu để cường tăng sức khỏe

23/01/2021
Cách cài đặt Docker trên Ubuntu 20.04 LTS 15

Cách cài đặt Docker trên Ubuntu 20.04 LTS

23/01/2021
logo seed4me

Nhận bản quyền License 6 tháng VPN của Seed4Me

23/01/2021

Ads

Giới thiệu

AnonyViet

AnonyViet

Nơi chia sẻ những kiến thức mà bạn chưa từng được học trên ghế nhà trường!

Chúng tôi sẵn sàng đón những ý kiến đóng góp, cũng như bài viết của các bạn gửi đến AnonyViet.

Hãy cùng AnonyViet xây dựng một cộng đồng CNTT lớn mạnh nhất!

Giới thiệu

AnonyViet là Website chia sẻ miễn phí tất cả các kiến thức về công nghệ thông tin. AnonyViet cung cấp mọi giải pháp về mạng máy tính, phần mềm, đồ họa và MMO.

Liên kết

Game B52 |  Tải game đổi thưởng online | Chơi game bài hot 2020 | Chơi game bài đổi thưởng online | Gam Víp | 88vin link

Liên hệ đặt Ads: [email protected]

Liên hệ

Email: anonyviet.com[@]gmail.com

1409 Hill Street #01-01A
Old Hill Street Police Station
Singapore 179369

Bài viết mới

  • Ping of Death là gì? Thực hiện Ping of Death để DDOS như thế nào?
  • Download Burp Suite 2020.12 Pro Full Key – Cách Active bản quyền
  • Cách chọn Thức Ăn theo Nhóm Máu để cường tăng sức khỏe
  • Cách cài đặt Docker trên Ubuntu 20.04 LTS
  • Nhận bản quyền License 6 tháng VPN của Seed4Me
  • 11 Tiện ích Chrome tăng năng suất học tập cho Học Sinh Sinh Viên
  • Giới thiệu về AnonyViet
  • Liên hệ Quảng cáo
  • Privacy & Policy
  • Contact

© 2019 AnonyViet - Chúng tôi mang đến cho bạn những kiến thức bổ ích về Công nghệ.

No Result
View All Result
  • Network
    • Mạng cơ bản
    • Hyper-V
    • Linux
    • Windown Server 2012
  • Security
    • Basic Hacking
    • Deface
    • DDOS
    • Kali Linux / Parrot
    • SQL Injection
    • Virus-Trojan-Rat
  • Thủ thuật
    • Khóa Học Miễn Phí
    • Code
    • Mẹo Vặt Máy Tính
    • Facebook
    • Windows 7/8/10
    • Đồ Họa
    • Video
  • Software
    • Phần mềm máy tính
    • Phần mềm điện thoại
  • MMO
    • Advertisers – Publishers
    • Affiliate Program
    • Kiếm tiền bằng điện thoại
    • Pay Per Click – PPC
  • Tin tức
  • Kiến thức

© 2019 AnonyViet - Chúng tôi mang đến cho bạn những kiến thức bổ ích về Công nghệ.

wpDiscuz