- 29/8/09
- 2,654
- 5,688
Hôm nay tớ sẽ giải thích làm thế nào để sử dụng Grimex Object Merger, một công cụ rất hữu ích.
Object Merger là một trình cắm của JassNewgen ngoài ra nó còn có thể giúp tạo hoặc di chuyển dữ liệu trong Object của một bản đồ. Di chuyển dữ liệu đối tượng từ bản đồ này sang bản đồ kia. và có ích trong những trường hợp rất cụ thể. Tớ sẽ tập trung vào việc tạo ra các dữ liệu đối tượng mới, thay thế.
Tạo dữ liệu đối tượng mới với ObjectMerger được thực hiện với một dòng lệnh. Để chạy một lệnh ObjectMerger hiện tại, lưu các bản đồ. Thoát khỏi bản đồ. Mở bản đồ. Dữ liệu mới của bạn sẽ được ở đó.
Những gì đơn giản có thể làm. ví dụ cậu làm một spell pack bao gồm 4 kỹ năng. cậu có thể sử dụng Object Merger để thực điều đó tạo ra 4 kỹ năng theo rawcode chính tay cậu điều chỉnh
Hướng dẫn này sẽ dạy cho cậu những cấu trúc cơ bản của một lệnh ObjectMerger để tạo ra các dữ liệu đối tượng mới.
Yêu cầu
//! là cho phép jasshelper biết rằng dòng lệnh đó để thực hiện.
ví dụ: tớ muốn thực hiện 1 ability tớ sẽ ghi là.
mã này đã chỉ định rằng nó sẽ tạo Object theo phần kỹ năng.
tất nhiên! nó sẽ yêu cầu một rawcode gốc hoặc gọi là Base On
tớ sẽ base từ kỹ năng Storm Bolt với rawcode mặc định nó là AHtb
trong khi đó tớ sẽ đặt rawcode base từ AHtb sẽ là A000
như thế này chúng ta đã hoàn thành phần Object Merger. nhưng đừng vội vàng. những gì mình tạo ra cần phải chỉnh sửa thông số của nó theo đúng ý của mình.
các cậu sử dụng jassnewgen sẽ để ý có một phần (##) đó là id của thông số đó trong Object Merger
những phần xanh là đại biểu thông số real/integer/string
phần màu xám thông số code ObjectMerger
Ability
anam << một thông số chỉ định tên kỹ năng đa số các object kỹ năng đều là anam , tên bằng string cần ghi bằng "ghi vào đây ". ngoài ra các Real/Integer mình sẽ không cần thêm ""
ví dụ
anam"Name" alev 4 . nhớ rằng nếu các thông số có level phần 1 phần 2 mình sẽ đặt thông số đó bằng cách <type> <level> <real> ví dụ tớ muốn thay đổi damage của Storm Bolt lv 3 bằng 200 damage tớ sẽ ghi là Htb1 1 200.00
Chú ý:
khi 1 bản đồ chứa code đó mình save xong nó sẽ hoạt động trong phần jasshelper nhưng sẽ không hoạt động nếu jasshelper đang trong giai đoạn disable. và khi đó đã save xong thì mình sẽ không thấy ability vừa được tạo cần phải tắt WE mở lại mới thấy kết quả, và nếu rawcode có sẵn trong bản đồ bị trùng với rawcode do ObjectMerger tạo thì sẽ gây lên tình trạng ghi đè raw mới vào raw cũ.
mình có thể disable mã Object Merger đó bằng cách disable trigger hoặc
chưa disable
đã disable
demo
Object Merger là một trình cắm của JassNewgen ngoài ra nó còn có thể giúp tạo hoặc di chuyển dữ liệu trong Object của một bản đồ. Di chuyển dữ liệu đối tượng từ bản đồ này sang bản đồ kia. và có ích trong những trường hợp rất cụ thể. Tớ sẽ tập trung vào việc tạo ra các dữ liệu đối tượng mới, thay thế.
Tạo dữ liệu đối tượng mới với ObjectMerger được thực hiện với một dòng lệnh. Để chạy một lệnh ObjectMerger hiện tại, lưu các bản đồ. Thoát khỏi bản đồ. Mở bản đồ. Dữ liệu mới của bạn sẽ được ở đó.
Những gì đơn giản có thể làm. ví dụ cậu làm một spell pack bao gồm 4 kỹ năng. cậu có thể sử dụng Object Merger để thực điều đó tạo ra 4 kỹ năng theo rawcode chính tay cậu điều chỉnh
Hướng dẫn này sẽ dạy cho cậu những cấu trúc cơ bản của một lệnh ObjectMerger để tạo ra các dữ liệu đối tượng mới.
Yêu cầu
- Jassnewgen
- Grimex (Đi kèm với NewGen)
Mã:
[COLOR=#808080]
//! external ObjectMerger
[/COLOR]
//! là cho phép jasshelper biết rằng dòng lệnh đó để thực hiện.
- w3u units
- w3t items
- w3b destructables
- w3d doodads
- w3a abilities
- w3h buffs
- w3q upgrades
ví dụ: tớ muốn thực hiện 1 ability tớ sẽ ghi là.
mã này đã chỉ định rằng nó sẽ tạo Object theo phần kỹ năng.
Mã:
[COLOR=#808080]
//! external ObjectMerger [B]w3a[/B]
[/COLOR]
tất nhiên! nó sẽ yêu cầu một rawcode gốc hoặc gọi là Base On
tớ sẽ base từ kỹ năng Storm Bolt với rawcode mặc định nó là AHtb
trong khi đó tớ sẽ đặt rawcode base từ AHtb sẽ là A000
Mã:
[COLOR=#808080]
//! external ObjectMerger w3a [B]AHtb[/B] [B]A000[/B]
[/COLOR]
như thế này chúng ta đã hoàn thành phần Object Merger. nhưng đừng vội vàng. những gì mình tạo ra cần phải chỉnh sửa thông số của nó theo đúng ý của mình.
các cậu sử dụng jassnewgen sẽ để ý có một phần (##) đó là id của thông số đó trong Object Merger
những phần xanh là đại biểu thông số real/integer/string
phần màu xám thông số code ObjectMerger
Ability
Mã:
[COLOR=#808080]
//! external ObjectMerger w3a [B]AHtb[/B] [B]A000[/B] anam [/COLOR][COLOR=#0000cd]"Bolt"[/COLOR][COLOR=#808080] aret [/COLOR][COLOR=#0000cd]"Learn Bolt - [|cffffcc00Level %d|r]"[/COLOR][COLOR=#808080] arut [/COLOR][COLOR=#0000cd]"info"[/COLOR][COLOR=#808080] aub1 1 [/COLOR][COLOR=#0000cd]"info 1 "[/COLOR][COLOR=#808080] aub1 2[/COLOR][COLOR=#0000cd] "info 2 "[/COLOR][COLOR=#808080] aub1 3 [/COLOR][COLOR=#0000cd]"info 3 "[/COLOR][COLOR=#808080] aub1 4 [/COLOR][COLOR=#0000cd]"info 4 "[/COLOR][COLOR=#808080] alev 4 amcs 1 [/COLOR][COLOR=#0000cd]75[/COLOR][COLOR=#808080] amcs 2 [/COLOR][COLOR=#0000cd]85[/COLOR][COLOR=#808080] amcs 3 [/COLOR][COLOR=#0000cd]95[/COLOR][COLOR=#808080] amcs 4 [/COLOR][COLOR=#0000cd]105[/COLOR][COLOR=#808080] acdn 1 [/COLOR][COLOR=#0000cd]2[/COLOR][COLOR=#808080] acdn 2 [/COLOR][COLOR=#0000cd]3[/COLOR][COLOR=#808080] acdn 3 [/COLOR][COLOR=#0000cd]4[/COLOR][COLOR=#808080] acdn 4 [/COLOR][COLOR=#0000cd]5[/COLOR][COLOR=#808080] Htb1 1 [/COLOR][COLOR=#0000cd]100 [/COLOR][COLOR=#808080]Htb1 2[/COLOR][COLOR=#0000cd] 125[/COLOR][COLOR=#808080] Htb1 3 [/COLOR][COLOR=#0000cd]150[/COLOR][COLOR=#808080] Htb1 4 [/COLOR][COLOR=#0000cd]175[/COLOR][COLOR=#808080] aher 1 abuf 1 [/COLOR][COLOR=#0000cd]B000[/COLOR][COLOR=#808080] abuf 2 [/COLOR][COLOR=#0000cd]B000[/COLOR][COLOR=#808080] abuf 3[/COLOR][COLOR=#0000cd] B000[/COLOR][COLOR=#808080] abuf 4 [/COLOR][COLOR=#0000cd]B000[/COLOR][COLOR=#808080] atar 1 [/COLOR][COLOR=#0000cd]air[/COLOR][COLOR=#808080] atar 2 [/COLOR][COLOR=#0000cd]air,ground[/COLOR][COLOR=#808080] atar 3 [/COLOR][COLOR=#0000cd]air,ground,debris[/COLOR][COLOR=#808080] atar 4 [/COLOR][COLOR=#0000cd]air,ground,debris,enemy,neutral,organic aart[/COLOR][COLOR=#808080] "[/COLOR][COLOR=#0000ff]ReplaceableTextures\CommandButtons\BTNDivineIntervention.blp[/COLOR][COLOR=#808080]"[/COLOR]
Mã:
[COLOR=#a9a9a9]//! external ObjectMerger w3h [B]BSTN B000[/B] ftip [/COLOR][COLOR=#0000ff]"Bolt Buff"[/COLOR][COLOR=#a9a9a9] fart [/COLOR][COLOR=#0000ff]"ReplaceableTextures\CommandButtons\BTNDivineIntervention.blp"[/COLOR][COLOR=#a9a9a9][COLOR=#0000ff]
[/COLOR][/COLOR]
anam << một thông số chỉ định tên kỹ năng đa số các object kỹ năng đều là anam , tên bằng string cần ghi bằng "ghi vào đây ". ngoài ra các Real/Integer mình sẽ không cần thêm ""
ví dụ
anam"Name" alev 4 . nhớ rằng nếu các thông số có level phần 1 phần 2 mình sẽ đặt thông số đó bằng cách <type> <level> <real> ví dụ tớ muốn thay đổi damage của Storm Bolt lv 3 bằng 200 damage tớ sẽ ghi là Htb1 1 200.00
Chú ý:
khi 1 bản đồ chứa code đó mình save xong nó sẽ hoạt động trong phần jasshelper nhưng sẽ không hoạt động nếu jasshelper đang trong giai đoạn disable. và khi đó đã save xong thì mình sẽ không thấy ability vừa được tạo cần phải tắt WE mở lại mới thấy kết quả, và nếu rawcode có sẵn trong bản đồ bị trùng với rawcode do ObjectMerger tạo thì sẽ gây lên tình trạng ghi đè raw mới vào raw cũ.
mình có thể disable mã Object Merger đó bằng cách disable trigger hoặc
chưa disable
Mã:
[COLOR=#0000ff][COLOR=#A9A9A9]//! external ObjectMerger[/COLOR]
[/COLOR]
Mã:
[COLOR=#0000ff][COLOR=#008000]////! external ObjectMerger[/COLOR]
[/COLOR]
Chỉnh sửa cuối:


