Cho một sprite tan biến từng mảng nhỏ, có viền cháy sáng ở chỗ đang tan: kẻ địch chết, vật phẩm biến mất. Tiếp...
#include <njin_fx.h>
Các thuộc tính Public | |
| rgba | edge_color {1.0f, 0.55f, 0.1f, 1.0f} |
| Màu viền cháy. a là độ đậm, 0 là bỏ viền. | |
| f32 | edge_width = 0.08f |
| Độ dày viền, tính theo thang ngẫu nhiên 0..1. 0 là bỏ viền. | |
| f32 | grain = 2.0f |
| Cỡ mỗi mảng, tính bằng pixel của ảnh sprite. 1 là từng pixel, lớn hơn là mảng to. | |
| f32 | seed = 0.0f |
| Đổi hình mẫu tan biến. Cho mỗi kẻ địch một giá trị riêng để chúng không tan giống hệt nhau. | |
| f32 | duration = 0.6f |
| Thời gian tan hết, giây. | |
| f32 | time = 0.0f |
| Thời gian đã trôi qua, do engine cập nhật. | |
| bool | reverse = false |
| true: hiện ra dần thay vì tan biến. | |
| bool | destroy_when_done = false |
| Hủy entity khi tan hết. Không áp dụng cho reverse. | |
Cho một sprite tan biến từng mảng nhỏ, có viền cháy sáng ở chỗ đang tan: kẻ địch chết, vật phẩm biến mất.
Đặt reverse thì ngược lại, sprite hiện ra dần.
Mỗi mảng có một số ngẫu nhiên cố định (từ hàm băm, không cần ảnh nhiễu); mảng nào có số nhỏ hơn ngưỡng đang chạy từ 0 đến 1 thì biến mất. Hình dáng sprite được giữ nguyên, chỉ bớt mảng. Module sprite cập nhật time theo delta() (nên dừng trong hitstop).
Khi hết giờ:
Dùng chung được với njin::flash_fx: nháy trắng rồi tan biến. Dùng sprite_dissolve() cho gọn.