• 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 13: AnimationPlayer, SpriteSheet và Tấn Công Kẻ Thù

AnonyViet by AnonyViet
15/06/2020 - Updated on 24/07/2025
in Code
A A
0

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

  1. Animation
  2. Attack Enemy Và Layer/Mask
  3. Câu hỏi thường gặp
    1. AnimationPlayer là gì và nó hoạt động như thế nào trong bài viết?
    2. Spritesheet là gì và vai trò của nó trong việc tạo animation?
    3. Làm thế nào để thiết lập số frame (Vframes và Hframes) cho một Spritesheet trong Godot?

Tiếp nối phần 12 trong phần này mình sẽ hướng dẫn các bạn về:

Tham gia kênh Telegram của AnonyViet 👉 Link 👈
  • Tấn công kẻ thù (attack enemy)
  • Kẻ thù tấn công
  • Spritesheet
  • AnimationPlayer
  • Mask/Layer

Đầu tiên các bạn tải cho mình animation slash tức là animation chém vì trong asset kia không có animation tấn công nên chúng ta sẽ lấy cái khác.

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

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

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? 72

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

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

Bạn có thể download ở dưới:

Download

Hoặc save ảnh này

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

Note: Trước khi đi vào bài thì ở bài tạo menu chỗ trò chơi mới thì mình sơ suất code lỗi 1 dòng

godot engine AnimationPlayer, SpriteSheet và Tấn Công Kẻ Thù

Ở PackedSence các bạn đổi lại thành:

export(String,FILE,"*.tscn") var BoSenceVao

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

Animation

Đầu tiên chúng ta sẽ setup animation cho nó. Ở sence Player chúng ta sẽ xài Node AnimationPlayer. Đây là nút dùng để chứa và chạy tài nguyên (animation) giải thích thì khó hiểu nhưng mà khi làm thì sẽ hiểu nhé.

Các bạn tạo node animation và tạo 1 cái animation mới

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

Mình sẽ để tên nó là chem

Và ở đây chúng ta vẫn chưa có 1 nút nào chứa tài ngyên chém (animation chém) vì vậy chúng ta phải tạo 1 nút để AnimationPlayer có thể chạy cái tài nguyên đó(chạy animation). Ở đây mình sẽ tạo 1 cái nút là sprite rồi bỏ ảnh chém vào.

Ở đây các bạn có thể thấy nó là dạng sprite sheet

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

Chúng ta sẽ vào bảng Inspector của nút mới tạo.

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

Và ở Animation thì có 4 cái:

  • Vframes: Chiều dọc của frame
  • Hframes: Chiều ngang của frame
  • Frame: Số frame đang ở hiện tại
  • FrameCoord: Khi bạn thay đổi chỉ số tọa độ thì frame sẽ tự động điều chỉnh đến số tọa độ mà bạn chỉnh sửa

À ai chưa biết frame là gì thì frame là: Khung

Vd thì nhìn dưới ảnh những số mình vẽ = 1 frame nhé.

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

Tiếp đến chúng ta sẽ set frame cho nó.

VFrame là chiều dọc vậy chúng ta sẽ đếm frame theo chiều dọc và Hframe là chiều ngang thì chúng ta cũng đếm từ chiều ngang đếm được bao nhiều thì điền vào bấy nhiêu.

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

Vậy :

  • Vframes của mình là 6
  • Hframes là 5

Lưu ý: Nếu frame của bạn bị lệch không theo thứ tự tức là:

  1. Bạn set Vframes và Hframse chưa chính xác
  2. Spritesheet sai vị trí

Rồi sau đó bạn nhấn hide cái nút chém đi nhé, biều tưởng mắt bên phải nút

Vậy là đã xong và tiếp theo chúng ta sẽ sử dụng AnimationPlayer để chạy animation chém

Đầu tiên:

Ở Animation chem vừa tạo các bạn nhấn Add Track > Poperty Track

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

Chọn cho mình cái nút mà chúng ta vừa tạo ở trên

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

Rồi tìm cho mình cái frame

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

Ở đây nghĩa là AnimationPlayer sẽ truy cập vào nút animation chém và sẽ lấy tài nguyên từ đó tạo thành 1 animation hoặc có thể hiểu là AnimationPlayer sẽ chạy frame theo cách mà bạn muốn từ frame 0-5 hoặc 5-1 hoặc 5-10 v.v…

Xem thêm:  Share Code Web giới thiệu bản thân AboutMe2 cực đẹp

Ở đây mình sẽ giải thích cho các bạn 1 số tool trong AnimationPlayer

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

  • Màu đỏ: Thời Gian chạy Frame
  • Màu Xanh Sáng: Chỉnh độ nhìn thời gian
  • Màu Xanh Lá Cây: Chỉnh kiểu chạy Frame liên tục hay cắt đứt,vv
  • Mà Đen: Lặp lại Animation
  • Mà Xanh Đậm: Chạy Animation khi bắt đầu

Rồi tiếp đến các bạn nhấn chuột phải vào Track mới tạo nhấn insert key

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

Ở đây mình sẽ Insert 5 cái Keys tức là 5 cái frame đầu tiên.

Lưu Ý: Frame đầu tiên sẽ là = 0

Các bạn nhấn vô Keys rồi bên bảng Inspector ở cái Value là giá trị frame nhé.Muốn chạy frame nào thì điền vô và nhớ cái đầu tiên sẽ = 0

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

ở mấy cái tiếp theo các bạn chỉnh lên 0-5 nghĩa là sẽ chạy 5 cái frame đầu tiên trong ảnh chém

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

Ở đây mình set thời gian lại thành 0.5 cho ngắn à và khi set time với cái này thì các bạn nên chọn từ 0.1-1 giây thôi nhé đừng có chọn 1-10 giây

Tiếp đến chúng ta sẽ phải unhide nó nghĩa là phải hiện nó lên khi chém và ẩn khi kết thúc

Vì vậy các bạn Add thêm Track cho mình là Visible, đây là chức năng ẩn hiện trong inspector phần Canvas Item của nút

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

Ở đây mình sẽ Insert 2 Keys 1 keys là lúc bắt đầu chém tức là 0.1 thì nó sẽ hiện lên và 1 keys ở cuối tức là 0.4 sau khi chém xong sẽ ẩn

Ở Keys đầu tiên sẽ tick vào ô value là On và Keys cuối thì không tick

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

Tiếp đến các bạn nhấn nút Play để xem Animation

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

Nó sẽ biến mất 1 cách hoàn hảo, nhưng nhược điểm ở đây là frame thứ 5 sẽ không xuất hiện vì cùng khoản thời gian là 0.4 nó đã bị ẩn bởi Track Visible vì vậy bạn có thể chỉnh thời gian lên 0.6 và  để cái keys mà Frame ẩn đi lên 0.5 là sẽ chạy đầy đủ frame.

Vậy là đã xong phần setup Animation tiếp theo chúng ta sẽ làm phần “Tấn công kẻ thù”

Attack Enemy Và Layer/Mask

Và đến phần tiếp theo và trong phần này sẽ có những cái phải làm như sau.

  1. Hitbox Player: cái này sẽ là cái mà dùng để kiếm tra player sẽ tấn công vào cái gì đó.Ở trong đây thì nó sẽ kiểm tra player tấn công vào hurtbox enemy.Nghĩa là chúng ta dùng nút Hitbox Player để xác nhận rằng nó có va chạm với Hurtbox cuả Quái nếu nó xác nhận rằng hitbox của player có va chạm với hurtbox của Quái thì nó sẽ gây ra sát thương cho quái [Lập Trình Game] Bài 13: AnimationPlayer, SpriteSheet và Tấn Công Kẻ Thù 53
  2. Hurtbox Player:Kiểm tra nếu hitbox của Quái va chạm vào thì sẽ gây sát thương cho player
  3. Hitbox Enemy: Dùng để va chạm với Hurtbox của Player để gây damage
  4. Hurtbox Enemy: Kiểm tra xem hitbox của player có va chạm không.Có thể hiểu là kiểm tra xem Player có đánh trúng quái không -_-.
  5. Đó là Layer và Mask:
    Layer và Mask là 2 cái dùng để chọn cái nào va chạm với cái nào.
    – Layer = Tên Layer
    – Mask = Chọn cái layer mà bạn muốn nó va chạmVD: Ở Player mình sẽ để là Layer 2 và Mask 2
    Và Quái sẽ là Layer 3 và Mask 3.
    Ở đây mình cả 2 cái đều ko liên quan tới nhau vậy nghĩa là 2 cái sẽ không va chạm mà đi qa nhau.Bây giờ mình muốn 2 cái khi chạm nhau sẽ không đi qua nhau và sẽ va chạm với nhau thì mình chỉ cần đổi lại mask thành mục tiêu muốn va chạm.
    Player thì mình sẽ chọn Mask 3 tức là Layer 3 là Enemy
    Quái thì chọn Mask 2 tức là Layer 2 là Player
    Khi đó nó sẽ va chạm với nhau mà không bước qua đời nhau [Lập Trình Game] Bài 13: AnimationPlayer, SpriteSheet và Tấn Công Kẻ Thù 54
Xem thêm:  Tổng hợp mã nguồn 150 đồ án C#

Tiếp:

Các bạn tạo 1 sence mới và nút root là Area2D đổi tên thành hitbox  và nút con là collsion2D và ko set collsionshape cho nó nhé rồi lưu lại. Vậy là xong cái hitbox

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

Tiếp đến cái Hurtbox làm tương tự

À và chúng ta set mask layer cho nó nữa

Các bạn vô Project > Project Setting > Layer Names> 2D Render % & 2D Physic thì Render = Layer, Physic = Mask và tên cả 2 cái phải giống nhau để dễ phân biệt nhé.

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

Ở đây mình sẽ set là

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

Set 2 cái giống hệt nhau nha.

Tới cái hitbox thì đổi layer/mask lại thành không có cái nào nha

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

Rồi tiếp đó vô Sence Player và Instance 2 nút là Hitbox và HurtBox

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

Ở Hitbox và Hurtbox chuột phải chọn editable as children nghĩa là cho phép bạn chỉnh sử nút này như 1 nút con mà không ảnh hướng tới nút chính

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

Ở Hurtbox thì chọn collsion2D và setcollsion shape cho mình nhé

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

Và ở Hitbox & Hurtbox các bạn set Layer cho nó nhé

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

Còn cái mask thì Hitbox Player -> Hurtbox Enemy

HurtBoxPlayer thì để layer là Hurtbox Player ko set mask vì hurt box không va chạm với cái gì cả nhiệm vụ của nó chỉ là nhận chứ không làm

Rồi đến Quái chúng ta cũng làm tương tự nhưng layer là enemy

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

Ở enemy các bạn set collion shape hit box & hurt box giống CollsionShape của nó đều đc

Tiếp đến sẽ set collsion shape hitbox cho Player:

Các bạn nhấn Add track > Poperty track > Hitbox > CollisionShape2D > Disabled

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

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

Disabled là chức năng vô hiệu hóa collsion ở đây chúng ta sẽ dùng chức năng này để tạo hitbox cho player.

À ở đây Keys frame của mình từ 20-24 và nút chém thì Flip H = True nhé.

Các bạn sẽ căn cho mình khi nào chém thì collsionshape sẽ kích hoạt và khi nào không kích hoạt nhé

Vậy là đã xong phần hitbox & hurtbox tiếp đến là code

Ở hitbox tạo cho mình 1 cái script là HitboxPlayer

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

Ở đây chúng ta sẽ code phần biến là export damage để đưa giá trị ra bên ngoài inspector cho dễ edit ~

export (int) var damage = 10

Tiếp đến chúng ta sẽ kết nối tín hiệu cho nó để biết rằng nó có va chạm hay không còn cái mask/layer là để cái này va chạm với cái kia,

Ở đây chúng ta sẽ xài area enterd thay vì body bởi vì hitbox sẽ và chạm với hurtbox và cả 2 đều là area2d nên sẽ xài area enterd.

Ở phần code chúng ta sẽ code để nhận biết kẻ thù va chạm với chúng ta và gây sát thương cho nó.

Đến phần sence của con quái ở cái hurtbox các bạn kết nối tín hiệu là area enter để nhận biết hitbox của player va chạm với nó kết nối vào kinematicbody ý

Xem thêm:  Code Website Tỏ Tình chắc chắn thành công 100%

Ở phần trước mình đã hướng dẫn các bạn tạo máu cho quái rồi.

Tiếp đến phần hàm mới kết nối gõ:

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

     health -= area.damage

     if health <= 0:

               queue_free()

health = máu và -= area.damage là gọi cái damage của player sẽ trừ đi máu của Quái dòng if health <= 0 nghĩa là nếu máu <= 0 thì biến mất queue_free là lệnh giúp bạn làm điều đó ngoài ra còn 1 số lệnh giống queue_free() là:

  • queue_free()
  • free()
  • remove_child

Mỗi cái đều có cách dùng riêng và không phải cái nào cũng giống nhau đâu nhé ^^

Tiếp đến là con Quái tấn công. Các bạn tạo damage cho nó rồi sau đó qua sence player

Ở cái hurtbox thì các bạn cũng connect như ở Enemy Sence

À ở cái hitbox á, các bạn cũng có thể xài chung 1 script nha cho cả 2 cái đều được nó sẽ không thay đổi giá trị nếu bạn thay đổi giá trị ở ngoài bảng Inspector, thêm script vào hitbox enemy nha vì enemy chưa có damage ở cái hitbox.

Tiếp đến code cái hàm mới connect

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

health -= area.damage

if health <= 0:

get_tree().change_scene("res://tscn/title screen/TitleMenu.tscn")

ở đây cũng như vừa nãy  nhưng khác ở cái là get_tree().change_sence() ở cái Player chúng ta sẽ không dùng queue_free() hay cái gì mà:

  1. Đưa về màn hình chính sau khi chết
  2. Làm 1 cái màn hình end game sau đó tạo 2 nút vè màn hình chính hoặc chơi lại

Ở đây mình sẽ làm tạm 1 cái label để xem cái máu là bao nhiêu.

Tạo node mới > Canvas layer > Label

Canvaslayer là nút giúp bạn hiện thị mấy cái như label trên màn hình, theo màn hình ý

Label thì là cái label :v

Rồi vô code tạo hàm func _process(delta):

Rồi dùng $ gọi nút $CanvasLayer/Label.set_text() .

Set_text() dùng để set ký tự cho label hoặc mấy cái tương tự. Nếu bạn set_text(health) thì nó sẽ báo lỗi là không thể convert int to string nghĩa là không thể chuyển đổi giá trị interger sang string.

Để hiển thị máu các bạn làm như sau:

$CanvasLayer/Label.set_text(str(health))

Str() giúp bạn đổi giá trị số sang chữ.

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

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

Vậy đến đây là hết rồi hẹn gặp lại tỏng bài tiếp theo nhé!

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

AnimationPlayer là gì và nó hoạt động như thế nào trong bài viết?

AnimationPlayer là một node trong Godot Engine dùng để quản lý và phát các animation. Trong bài viết, nó được sử dụng để phát animation chém của nhân vật, bằng cách liên kết với một Sprite và điều khiển frame của Sprite đó thông qua các keyframes.

Spritesheet là gì và vai trò của nó trong việc tạo animation?

Spritesheet là một ảnh chứa nhiều frame animation của cùng một đối tượng. Trong bài viết, spritesheet chứa các frame của animation chém, AnimationPlayer sẽ đọc thông tin từ spritesheet này để tạo ra hiệu ứng animation.

Làm thế nào để thiết lập số frame (Vframes và Hframes) cho một Spritesheet trong Godot?

Bạn cần xác định số frame theo chiều dọc (Vframes) và chiều ngang (Hframes) của spritesheet trong Inspector của node Sprite. Số lượng frame cần khớp với cấu trúc của spritesheet để animation được hiển thị chính xác.

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

Opal: Tạo ứng dụng AI không cần viết code 73
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 74
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 75
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
Hướng dẫn Active Wordfence Security Premium miễn phí 76
Code

Hướng dẫn Active Wordfence Security Premium miễn phí

07/06/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

Hướng dẫn tạo Gemini Enterprise miễn phí 30 ngày 15

Hướng dẫn tạo Gemini Enterprise miễn phí 30 ngày

by Thanh Kim
02/12/2025
0

Hướng dẫn bật tính năng phát hiện té ngã trên Apple Watch 16

Hướng dẫn bật tính năng phát hiện té ngã trên Apple Watch

by Thanh Kim
02/12/2025
0

Cách tạo ảnh vừa chạy KPI vừa khóc bằng Gemini cho 12 con giáp 17

Cách tạo ảnh vừa chạy KPI vừa khóc bằng Gemini cho 12 con giáp

by Thanh Kim
01/12/2025
0

Cách nhận 10TB TeleBox dung lượng miễn phí 18

Cách nhận 10TB TeleBox dung lượng miễn phí

by Thanh Kim
30/11/2025
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

  • Hoa Tran trong Cách tạo infographic bằng Gemini đẹp như dân chuyên nghiệp
  • minh trong Share key Driver Booster v13 Pro miễn phí 6 tháng
  • Thành Mạnh trong Hướng dẫn cách nhận 1 năm ChatGPT Go miễn phí
  • Tùng trong Share key Driver Booster v13 Pro miễn phí 6 tháng
  • thien trong Share key Driver Booster v13 Pro miễn phí 6 tháng
  • Leo trong Hướng dẫn cách nhận 1 năm ChatGPT Go miễn phí
  • Bạn Kiên2014 đẹp trai trong Hướng dẫn cách nhận 1 năm ChatGPT Go miễn phí
  • AnonyViet trong Hướng dẫn cách nhận 1 năm ChatGPT Go miễn phí
  • 45555 trong Cách tạo ứng dụng sửa ảnh bằng Google AI Studio không cần code
  • tung trong Hướng dẫn cách nhận 1 năm ChatGPT Go miễn phí
  • AnonyViet trong Hướng dẫn cách nhận 1 năm ChatGPT Go miễn phí
  • Thư trong Hướng dẫn cách nhận 1 năm ChatGPT Go miễn phí
  • AnonyViet trong Hướng dẫn cách nhận 1 năm ChatGPT Go miễn phí
  • Minh trong Hướng dẫn cách nhận 1 năm ChatGPT Go miễn phí
  • 45555 trong Cách tạo ứng dụng sửa ảnh bằng Google AI Studio không cần code
  • AnonyViet trong Hướng dẫn cách nhận 1 năm ChatGPT Go miễn phí
  • Duy trong Hướng dẫn cách nhận 1 năm ChatGPT Go miễn phí
  • John T. Samuel trong Hướng dẫn cách nhận 1 năm ChatGPT Go miễn phí
  • ggfgf trong Cách Auto kiếm điểm Microsoft Rewards để nhận quà
  • lam trong Share key Driver Booster v13 Pro miễn phí 6 tháng

©2025 AnonyViet - Chúng tôi mang đến cho bạ những kiến thức bổ ích về CNTT Công nghệ kết quả xổ số hôm nay xoilac 8xbet https://fun88.social 33win Ae888 kubet kubet 8kbet 99ok xin88 good88 xn88 kubet cakhiatv f8bet https://qq883a.com/ XX88 fm88 xin88 https://918xxy.com/ kubet thailand vip66 xoso66 https://tp88fun.com/ hello88 qq88 Xoso66 Vip66 hitclub bong99 XOSO66 new882.info Hi88 8day Thabet 33win Bk8 fun88 789win w88 nhà cái uy tín Go88 sunwin sunwin jun88 rikvip hitclub sunwin go88 s666 sv388 12bet v9bet betvisa betvisa vin777 vin777 ee88 bet88 abc8 c54 i9bet ok365 ae888 https://keonhacai.fund/ sunwin https://ok9393.com/ cakhiatv socolive QQ88 TP88 Xoso66 zx88 88vv mu88 com 8kbet https://qq88pro.vip/ fun88.supply king88 sv388 v9bet s666 https://max88rl.com/ https://ok365rl.com/ EE88 FB88 TYPHU88 https://da88.design/ Kkwin 79king xin88 https://fun88.supply/ thapcamtv https://rr88.navy/ gem88 F8BET80 sa88 https://q23win.com/ 32win 789WIN https://lc88.jpn.com/ 68win luongsontv luongsontv https://nohutm.com SODO fun88 sunwin u888 https://nohumo.com 8xbet W88 link cola tv colatv trực tiếp bóng dá colatv trực tiếp bóng dá colatv colatv truc tiep bong da colatv colatv bóng dá trực tiếp 58win https://s68win.com/ 58WIN NOHU90 https://hm8805.com/ GK88 188bet ax88 8KBET 69VN 33WIN 32win Kuwin https://bbet88b.com/ OK9 SHBET https://xx88.center/ vswin 789PCOM NHÀ CÁI MMOO bắn cá TT88COM GO 99 https://k8cc.wiki/ RR88 RR88 kèo nhà cái 5 789f 188bet w88 Gem88 Thabet jun88 kclub vip79 dv88 Gi8 For88 Rikbet 8kbet 6ff Kkwin HZ88 tv88 ABC8 https://ww88.me/ https://nowgoal.ws/ https://tylekeonhacai.me/ https://keonhacai.org.vc/ https://xx88.ac/ xx88.me.uk gem88 king88 ae888 bj88 good88 https://xx88.today/ PG88 NH88 XN88 NH88 ST666 xn88 https://pg666.baby/ 88xx 98win 69VN 888NEW TV88 XN88 NN88 MV88 MV66 XN88 NOHU90 TV88 68WIN GO99 AF88 HM88 HZ88 https://xx88.asia/ 789f NOHU HITCLUB Sunwin 58WIN MV88 tv88 888NEW AZ888 https://rr88.pizza/ GO8 789win PG99 https://u888wl.com/ 789F Rik88 x88 x88 HZ88 x88 cakhia TD88 SODO66 SODO CASINO https://kjcgaming.com/ bet88 SODO66 x88 https://uu-88.net/ KUBET11 fb68 88vv 23win RS88 RR99 ok9 OK9 VankhanhTV 12bet v9bet betvisa betvisa vin777 vin777 ee88 bet88 abc8 c54 888New QQ88 tải X8 nhà cái HD88 Casino ww88 vb88 tic88 X88 Kclub COBET zx88 kingfun https://lc88.bio/ OK9 789Win 79king https://pg999.baby/ SODO66 zx88 MM88 NOHU90 SH BET 789win Mv66 KUBET88 EE88 Thapcam TV Vebo TV pagcor W88 PG88 xx88.promo hm88 Kubet Sodo66 8KBET https://f8bet.luxury/ SODO CASINO 888new VIP66 188v KUWIN ev88 https://uu88.company/ 789F k8cc Thabet Casino HM88 https://22vip.news/ 13win RR99 KJC win678 sunwin NH88 999slot win678 AF88 GO99 8kbet 8kbet x88 mk8th.net vip66 xoso66 78winbiz.com mn88 f168biz.com mk8.ac F168 bet88 https://rr88.africa/ 888slot 888slot https://fun88lv.com/ mb66-t.com UU88 WIN678 AX88 MM88 789F 7mcn Nhà cái MB66 VB88 LC88 GO99 HUBET 28bet hm88 NH88 sodo casino Sunwin Nổ hũ au88 F168 f168 keo nha cai https://88go.center/ Exness ログイン 789 club https://7m.net.vc/ nhà cái 789bet SODO Casino Go8 https://79kingg.me/ s8 kkwin F168 BL555 xoso66 ae888 ax88 28BET 58Win 789F 99ok LC88 98WIN TD88 Mig8 C54 Vin777 SV388 DA88 9BET kjc F168 LC88 9win 789F 789F FR8896 wm9378 Exness login 33win trang chủ QQ88 HM88 SONCLUB S8 https://daga.rocks https://x88.ru.com/ xoso66 sv368pro nhà cái bj88 s8.com SODO colatv truc tiep bong da gavangtv gavangtv trực tiếp bóng rổ đánh đề online 789F S8 8kbet https://23wincasino.com/ https://nohu90.surf/ Bj66 XX88 3king win55 http://cm88.uk.net/ f168 Wvip 88CLB 888new https://c168.info/ Thabet Casino https://new8822.com/ https://c168b.com/ https://c168.today/ v88 https://go8.tips/ mv88 https://urr88.com/ GK88 win678 LC88 Game SHBET SHBET SH BET 789win kèo nhà cái THABET https://99okgroup.com/ S8 68WIN https://mm88.today/ mu88 casino https://lienminhkjc.com/ WIN678 tài xỉu online uy tín Game bài đổi thưởng uy tín vn88 game bai SHBET

No Result
View All Result
  • ANONYVIET CẦN CÁC BẠN GIÚP SỨC
  • Chính sách
  • Mini Game AnonyViet và FShare Mừng xuân 2021
  • Privacy
  • Quảng cáo
  • Search
  • Search Results
  • Share Acc Nhaccuatui VIP 2020
  • Thành Viên VIP
    • Danh Sách Đặc Quyền Thành Viên VIP
  • Tiếp tục đi đến trang mới là tính năng gì
  • Trang chủ
  • Đang lấy thông tin dữ liệu
  • Đang đến địa chỉ đích
  • Đổi số thành chữ, đổi tiền ra chữ Online

©2025 AnonyViet - Chúng tôi mang đến cho bạ những kiến thức bổ ích về CNTT Công nghệ kết quả xổ số hôm nay xoilac 8xbet https://fun88.social 33win Ae888 kubet kubet 8kbet 99ok xin88 good88 xn88 kubet cakhiatv f8bet https://qq883a.com/ XX88 fm88 xin88 https://918xxy.com/ kubet thailand vip66 xoso66 https://tp88fun.com/ hello88 qq88 Xoso66 Vip66 hitclub bong99 XOSO66 new882.info Hi88 8day Thabet 33win Bk8 fun88 789win w88 nhà cái uy tín Go88 sunwin sunwin jun88 rikvip hitclub sunwin go88 s666 sv388 12bet v9bet betvisa betvisa vin777 vin777 ee88 bet88 abc8 c54 i9bet ok365 ae888 https://keonhacai.fund/ sunwin https://ok9393.com/ cakhiatv socolive QQ88 TP88 Xoso66 zx88 88vv mu88 com 8kbet https://qq88pro.vip/ fun88.supply king88 sv388 v9bet s666 https://max88rl.com/ https://ok365rl.com/ EE88 FB88 TYPHU88 https://da88.design/ Kkwin 79king xin88 https://fun88.supply/ thapcamtv https://rr88.navy/ gem88 F8BET80 sa88 https://q23win.com/ 32win 789WIN https://lc88.jpn.com/ 68win luongsontv luongsontv https://nohutm.com SODO fun88 sunwin u888 https://nohumo.com 8xbet W88 link cola tv colatv trực tiếp bóng dá colatv trực tiếp bóng dá colatv colatv truc tiep bong da colatv colatv bóng dá trực tiếp 58win https://s68win.com/ 58WIN NOHU90 https://hm8805.com/ GK88 188bet ax88 8KBET 69VN 33WIN 32win Kuwin https://bbet88b.com/ OK9 SHBET https://xx88.center/ vswin 789PCOM NHÀ CÁI MMOO bắn cá TT88COM GO 99 https://k8cc.wiki/ RR88 RR88 kèo nhà cái 5 789f 188bet w88 Gem88 Thabet jun88 kclub vip79 dv88 Gi8 For88 Rikbet 8kbet 6ff Kkwin HZ88 tv88 ABC8 https://ww88.me/ https://nowgoal.ws/ https://tylekeonhacai.me/ https://keonhacai.org.vc/ https://xx88.ac/ xx88.me.uk gem88 king88 ae888 bj88 good88 https://xx88.today/ PG88 NH88 XN88 NH88 ST666 xn88 https://pg666.baby/ 88xx 98win 69VN 888NEW TV88 XN88 NN88 MV88 MV66 XN88 NOHU90 TV88 68WIN GO99 AF88 HM88 HZ88 https://xx88.asia/ 789f NOHU HITCLUB Sunwin 58WIN MV88 tv88 888NEW AZ888 https://rr88.pizza/ GO8 789win PG99 https://u888wl.com/ 789F Rik88 x88 x88 HZ88 x88 cakhia TD88 SODO66 SODO CASINO https://kjcgaming.com/ bet88 SODO66 x88 https://uu-88.net/ KUBET11 fb68 88vv 23win RS88 RR99 ok9 OK9 VankhanhTV 12bet v9bet betvisa betvisa vin777 vin777 ee88 bet88 abc8 c54 888New QQ88 tải X8 nhà cái HD88 Casino ww88 vb88 tic88 X88 Kclub COBET zx88 kingfun https://lc88.bio/ OK9 789Win 79king https://pg999.baby/ SODO66 zx88 MM88 NOHU90 SH BET 789win Mv66 KUBET88 EE88 Thapcam TV Vebo TV pagcor W88 PG88 xx88.promo hm88 Kubet Sodo66 8KBET https://f8bet.luxury/ SODO CASINO 888new VIP66 188v KUWIN ev88 https://uu88.company/ 789F k8cc Thabet Casino HM88 https://22vip.news/ 13win RR99 KJC win678 sunwin NH88 999slot win678 AF88 GO99 8kbet 8kbet x88 mk8th.net vip66 xoso66 78winbiz.com mn88 f168biz.com mk8.ac F168 bet88 https://rr88.africa/ 888slot 888slot https://fun88lv.com/ mb66-t.com UU88 WIN678 AX88 MM88 789F 7mcn Nhà cái MB66 VB88 LC88 GO99 HUBET 28bet hm88 NH88 sodo casino Sunwin Nổ hũ au88 F168 f168 keo nha cai https://88go.center/ Exness ログイン 789 club https://7m.net.vc/ nhà cái 789bet SODO Casino Go8 https://79kingg.me/ s8 kkwin F168 BL555 xoso66 ae888 ax88 28BET 58Win 789F 99ok LC88 98WIN TD88 Mig8 C54 Vin777 SV388 DA88 9BET kjc F168 LC88 9win 789F 789F FR8896 wm9378 Exness login 33win trang chủ QQ88 HM88 SONCLUB S8 https://daga.rocks https://x88.ru.com/ xoso66 sv368pro nhà cái bj88 s8.com SODO colatv truc tiep bong da gavangtv gavangtv trực tiếp bóng rổ đánh đề online 789F S8 8kbet https://23wincasino.com/ https://nohu90.surf/ Bj66 XX88 3king win55 http://cm88.uk.net/ f168 Wvip 88CLB 888new https://c168.info/ Thabet Casino https://new8822.com/ https://c168b.com/ https://c168.today/ v88 https://go8.tips/ mv88 https://urr88.com/ GK88 win678 LC88 Game SHBET SHBET SH BET 789win kèo nhà cái THABET https://99okgroup.com/ S8 68WIN https://mm88.today/ mu88 casino https://lienminhkjc.com/ WIN678 tài xỉu online uy tín Game bài đổi thưởng uy tín vn88 game bai SHBET

wpDiscuz