• Kiến thức
  • Network
  • Security
  • Software
  • Thủ thuật
  • Tin học văn phòng
  • Tin tức
  • Mail ảo tạm thời miễn phí
  • Tools tra cứu thông tin
  • Công cụ đổi số thành chữ
AnonyViet
  • Tin tức
  • Network
    • Mạng cơ bản
    • Hyper-V
    • Linux
    • Windown Server 2012
  • Security
    • Basic Hacking
    • Deface
    • Kali Linux / Parrot
    • SQL Injection
  • Thủ thuật
    • Khóa Học Miễn Phí
    • Code
    • Mẹo Vặt Máy Tính
    • Facebook
    • Windows 7/8/10/11
    • Đồ Họa
    • Video
  • Software
    • Phần mềm máy tính
    • Phần mềm điện thoại
  • Tin học văn phòng
  • Kiến thức
  • MMO
    • Advertisers – Publishers
    • Affiliate Program
    • Kiếm tiền bằng điện thoại
    • Pay Per Click – PPC
No Result
View All Result
  • Tin tức
  • Network
    • Mạng cơ bản
    • Hyper-V
    • Linux
    • Windown Server 2012
  • Security
    • Basic Hacking
    • Deface
    • Kali Linux / Parrot
    • SQL Injection
  • Thủ thuật
    • Khóa Học Miễn Phí
    • Code
    • Mẹo Vặt Máy Tính
    • Facebook
    • Windows 7/8/10/11
    • Đồ Họa
    • Video
  • Software
    • Phần mềm máy tính
    • Phần mềm điện thoại
  • Tin học văn phòng
  • Kiến thức
  • MMO
    • Advertisers – Publishers
    • Affiliate Program
    • Kiếm tiền bằng điện thoại
    • Pay Per Click – PPC
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 - Updated on 24/07/2025
in Code
A A
0

Mục lục bài viết

  1. Tạo kẻ thủ
  2. Câu hỏi thường gặp
    1. Tôi cần chuẩn bị gì trước khi bắt đầu bài học này?
    2. Làm thế nào để kẻ thù di chuyển sang trái và phải tự động?
    3. Nếu kẻ thù di chuyển quá chậm hoặc quá nhanh thì sao?

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.

📢 Tham gia kênh Telegram của AnonyViet
👉 Vào Telegram AnonyViet
Cập nhật bài mới, tools hay và thủ thuật IT nhanh nhất

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

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

Có nên dùng Unity để lập trình game không? 9

Có nên dùng Unity để lập trình game không?

07/04/2022 - Updated on 25/07/2025
godot lap trinh game

Có nên học Godot Engine để lập trình Game không?

15/03/2022 - Updated on 25/07/2025
hoc lap trinh game de khong

Học lập trình Game dễ không? Tiềm năng của ngành lập trình game?

09/03/2022 - Updated on 25/07/2025
Có nên dùng Game Maker Studio để làm Game trong năm không? 10

Có nên dùng Game Maker Studio để làm Game trong năm không?

03/03/2022 - Updated on 25/07/2025

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ù

Xem thêm:  Mã hóa BCrypt là gì?

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.

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 6

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 7

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 8

ở  đâ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à:

Xem thêm:  Code pháo hoa trang trí cho Website dịp tết

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

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

Câu hỏi thường gặp

Tôi cần chuẩn bị gì trước khi bắt đầu bài học này?

Bạn cần có kiến thức cơ bản về lập trình Godot Engine và đã làm quen với việc tạo Scene và sử dụng các Node cơ bản như KinematicBody2D, AnimatedSprite, và CollisionShape2D.

Xem thêm:  [Lập Trình Game] Bài 13: AnimationPlayer, SpriteSheet và Tấn Công Kẻ Thù

Làm thế nào để kẻ thù di chuyển sang trái và phải tự động?

Sử dụng hàm is_on_wall() để kiểm tra va chạm với tường. Khi va chạm, đảo ngược giá trị biến điều khiển hướng di chuyển (ví dụ: vitri = vitri * -1) và sử dụng $AnimatedSprite.flip_h để lật hình ảnh kẻ thù.

Nếu kẻ thù di chuyển quá chậm hoặc quá nhanh thì sao?

Điều chỉnh giá trị Tocdo trong script của kẻ thù để thay đổi tốc độ. Hãy đảm bảo đã thêm FLOOR vào hàm move_and_slide() và kiểm tra xem giá trị delta đã được sử dụng chính xác để điều chỉnh tốc độ theo khung hình.

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

AnonyViet

20 năm kinh nghiệm trong lĩnh vực Security, các chứng chỉ:OSCP, CCNA, CCNP, CISSP. 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

cdoe tuyet trang trang tri website
Code

Chia sẻ Code tuyết rơi cho Website đón Giáng Sinh

16/12/2025
Opal: Tạo ứng dụng AI không cần viết code 11
Code

Opal: Tạo ứng dụng AI không cần viết code

03/08/2025
xoa spam comment wordpress
Code

Cách xóa nhanh tất cả Bình luận rác trên WordPress

14/07/2025 - Updated on 25/07/2025
Code pháo hoa trang trí cho Website dịp tết 12
Code

Code pháo hoa trang trí cho Website dịp tết

25/01/2025 - Updated on 25/07/2025
Code Hiệu Ứng Pháo Hoa Theo Chuột - Trang Trí Website Tết 13
Code

Code Hiệu Ứng Pháo Hoa Theo Chuột – Trang Trí Website Tết

24/12/2024 - Updated on 24/07/2025
chuyen giao dien website sang trang den
Code

Code chuyển giao diện Website sang nền trắng đen để tưởng nhớ hoặc để Quốc tang

20/07/2024 - Updated on 24/07/2025
guest

guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

0 Comments
oldest
newest
Inline Feedbacks
View all comments

Liên hệ Quảng Cáo

Lien he AnonyViet

Bài viết mới

Cách khóa máy tính bằng điện thoại Android từ xa 2

Cách khóa máy tính bằng điện thoại Android từ xa

by Thanh Kim
26/02/2026
0

cách kết nối điện thoại với TV Samsung

Cách kết nối điện thoại với TV Samsung không cần dây cáp

by Thanh Kim
25/02/2026
0

cách tạo video Seedance 2.0 miễn phí

Cách tạo video Seedance 2.0 miễn phí 12s, không logo

by Thanh Kim
24/02/2026
0

Những nâng cấp đáng tiền trên siêu phẩm Samsung Galaxy S26 Series

Samsung Galaxy S26 Series có mấy màu và đâu là sắc thái gây bão trong năm 2026?

by Lan Ngọc
24/02/2026 - Updated on 26/02/2026
0

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 hệ

Email: support[@]anonyviet.com

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

 

DMCA.com Protection Status

Bình luận gần đây

  • 45555 trong Sự trỗi dậy của “Người ngoài hành tinh”: Alienware Aurora AC16250 “Vũ khí” tối thượng định hình Gaming năm 2026
  • 45555 trong Cách làm mờ ảnh trên iPhone sau khi chụp cực đơn giản
  • vatuan13 trong Hướng dẫn cài OpenClaw – AI Trợ lý cá nhân trên máy tính
  • vatuan13 trong Hướng dẫn thiết lập định vị giả trên Zalo
  • AnonyViet trong Hướng Dẫn Cấu Hình OpenClaw Trên VPS Ubuntu 2.5G RAM (giá chỉ 18$/năm)
  • hùng lê trong Hướng Dẫn Cấu Hình OpenClaw Trên VPS Ubuntu 2.5G RAM (giá chỉ 18$/năm)
  • Kelvin trong Hướng dẫn thi chứng chỉ bảo mật CTIGA miễn phí 100%
  • Minh trong Hướng dẫn kết nối OpenClaw với Whatsapp
  • AnonyViet trong Hướng Dẫn Cấu Hình OpenClaw Trên VPS Ubuntu 2.5G RAM (giá chỉ 18$/năm)
  • congdk trong Hướng Dẫn Cấu Hình OpenClaw Trên VPS Ubuntu 2.5G RAM (giá chỉ 18$/năm)
  • AnonyViet trong Hướng dẫn cài OpenClaw – AI Trợ lý cá nhân trên máy tính
  • AnonyViet trong Hướng dẫn cài OpenClaw – AI Trợ lý cá nhân trên máy tính
  • Tran Minh trong Hướng dẫn cài OpenClaw – AI Trợ lý cá nhân trên máy tính
  • AnonyViet trong Chia sẻ key SwifDoo PDF Pro miễn phí bản quyền lên đến 1 năm
  • Kerya Kuznetsov trong Chia sẻ key SwifDoo PDF Pro miễn phí bản quyền lên đến 1 năm
  • AnonyViet trong Chia sẻ key SwifDoo PDF Pro miễn phí bản quyền lên đến 1 năm
  • 1234560987 trong Chia sẻ key SwifDoo PDF Pro miễn phí bản quyền lên đến 1 năm
  • Lim trong Tổng hợp các Website tạo VISA ảo (virtual card) để mua hàng Online
  • Linh trong Cách dùng bot tự động verify để đăng ký ChatGPT K12, Spotify Student,…
  • Thịnh trong Tải và kích hoạt Office 2021 Free với tool OfficeSavior
kết quả xổ số hôm nay 33win Ae888 kubet kubet 8kbet 99ok xin88 good88 kubet fm88 kubet thailand vip66 xoso66 https://tp88fun.com/ hello88 qq88 Xoso66 Vip66 hitclub bong99 XOSO66 new882.info Thabet fun88 nhà cái uy tín sunwin sunwin rikvip hitclub sunwin go88 12bet v9bet betvisa betvisa vin777 vin777 ee88 bet88 abc8 c54 https://keonhacai.fund/ sunwin cakhiatv socolive Xoso66 zx88 88vv fun88.supply EE88 FB88 https://da88.design/ https://fun88.supply/ gem88 F8BET80 https://q23win.com/ 32win https://lc88.jpn.com/ u888 8xbet W88 link 58win 58WIN ax88 https://bbet88b.com/ OK9 SHBET https://xx88.center/ vswin 789PCOM NHÀ CÁI MMOO TT88COM GO 99 RR88 ABC8 https://nowgoal.ws/ https://tylekeonhacai.me/ https://keonhacai.org.vc/ https://xx88.ac/ xx88.me.uk XN88 NOHU90 68WIN GO99 AF88 HM88 HZ88 https://xx88.asia/ 789f NOHU HITCLUB Sunwin 58WIN MV88 888NEW AZ888 PG99 TD88 12bet v9bet X88 NOHU90 Thabet vip66 7mcn hm88 SODO Casino xoso66 DA88 9BET https://daga.rocks https://c168.info/ GK88 LC88 Game SH BET WIN678 tài xỉu online uy tín sv368 X88 KÈO NHÀ CÁI 888slot luongsontv cola tv colatv trực tiếp bóng đá colatv trực tiếp bóng đá colatv colatv truc tiep bong da colatv colatv bóng đá trực tiếp xoilac cakhia SH BET https://jun88sr.com/ GVUI TR88 NOHU90 TG88 188BET 188BET Link Rik88 https://qq88pro.vip/ https://kjcgaming.com GO99 https://nohutm.com 6789 789Win 12bet https://tiendanutrisalud.com/ https://go8.red/ https://www.78wind.love/ tr88 99win lc88 cm88 Game bài đổi thưởng uy tín 23win clubv 7m https://urr88.com/ b52club tỷ lệ nhà cái game nổ hũ https://f8bet.luxury/ https://kjcgaming.com/ https://888newcasino.com/ Kết quả bóng đá v9bet game bài đổi thưởng SODO Mig8 sv388 vsbet mcw casino game bài 68win link hit club game bai tg88 kèo nhà cái 5 9 win Exness ログイン Sunwin UU88 VIN777 HUBET nổ hũ uy tín Go88 https://bancadoithuong.codes/ https://danhdeonline.blog/ Xocdia88 https://nhacaiuytin10.uk.com/ https://keonhacai88.tv/ https://keonhacai.loans/ https://gamebaidoithuong.io/ https://keonhacai.kiwi/ 789club 8kbet sodo casino F168 ok 8386 nk88 Tr88 https://jun88pl.com/ kèo nhà cái S8 xx88 V9BET hytw3339 tài xỉu Sun52 king52 x88 https://918xxy.com/ Luckywin https://sc88.info/ https://go99bet.live/ https://tt88.ae.org/ kjc https://socolive.stream/ F168 Nhà cái 789BET keo nha cai 5 SC88 https://lc88.bio/ F168 8us https://www.open8808.com/ c168 fly88 trang chủ sc88 hytw3339 ok9 Kkwin https://go99.mx/ f168 79king Sunwin nhà cái MB66 Luck8 Alo789 hello88 f168 mb66 MV88 sc88 11uu vn23 8DAY ko66 789win 88CLB kèo nhà cái TẢI SUNWIN Thabet tg88 c168 CM88

©2026 AnonyViet - Chúng tôi mang đến cho bạn những kiến thức bổ ích về CNTT

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

©2026 AnonyViet - Chúng tôi mang đến cho bạn những kiến thức bổ ích về CNTT

wpDiscuz