PDA

View Full Version : [KT] Giãi đáp dãy số Add vật phẩm trong file .lua



hongphuc89
29-12-14, 07:37 AM
Pro nào biết giải thích dùm e nhé. trong file liguan.lua ( Lể Quan) có dòng nay:

function tbLiGuan:TuiTanThu()
me. AddItem(18,1,351,1)
end

Dòng đó là Add túi tân thủ, Túi tân thủ thì có đường dẫn là " gamesever\script\event\minievent\newplayergift.lua"

Vây cho hõi dãy số me. AddItem(18,1,351,1) -> 18,1,351,1 nằm ở đâu vậy máy Bác Pro nào biết chỉ dùm em ví dụ mình muốn add thêm những thứ khác thì mình xem Dãy số đó ở đâu ạh

Thank....(:| :(

__Jie__
29-12-14, 08:09 AM
Tất cả item đều được qui định ở setting\item được chia làm nhiều loại bao gồm trang bị , vật phẩm , ngựa , phi phong ....
Túi tân thủ được gọi là vật phẩm và nằm ở setting\item\001\other\scriptitem.txt.

Copy vào exle sẽ thấy rõ giá trị của 4 số P G D L

hongphuc89
29-12-14, 08:21 AM
4 số P G D L là gì hã Jie ? :(

hongphuc89
29-12-14, 08:27 AM
a đã tìm thấy dòng này cũa nó trong: setting\item\001\other\scriptitem.txt.

Túi Tân Thủ Túi Tân Thủ 18 1 351 1 \image\item\other\scriptitem\shengdanlihe.spr 7 Quà cho Tân thủ. Khi luyện đến đẳng cấp nhất định, có thể mở Túi Tân Thủ để nhận thưởng 0 1 1 2821109 1 1 newplayergift 1

có phải newplayergift này là tên file .lua trong event/minievemt không jie vậy muốn thêm vật phẩm khác chẳng hạng như thẻ GM chăng hạng thi thêm tên file và thêm dãy số giống như đây: 18 1 351 1 đúng không? Jie

__Jie__
29-12-14, 11:39 AM
18,1,351,1 được gọi theo thứ tự P G D L ( cái này mình viết tắt vì cũng chẳng nhớ chính xác đầy đủ của nó ).
Bạn vào file setting\item\001\other\scriptitem.txt. sẽ thấy các cột khai báo trên đầu sẽ có/
Muốn add 1 item mới bạn chỉ cần viết hàm me.AddItem(P,G,D,L); là được
Còn newplaygift được qui định ở cột class nghĩa là khi bạn sử dụng item này GS sẽ gọi đến file có class tương ứng.

Không nhất thiết file lua phải được đặt tên theo class name . Chỉ cần khai báo đúng với class được nhắc đến.

Ví dụ file newplaygift.lua

Nếu khai báo local tbGift = Item:GetClass("classdemo");

Nếu trong file newplaygift.lua khai báo là classdemo thì trong scriptitem sẽ để là classdemo.

hongphuc89
29-12-14, 11:50 AM
18,1,351,1 được gọi theo thứ tự P G D L ( cái này mình viết tắt vì cũng chẳng nhớ chính xác đầy đủ của nó ).
Bạn vào file setting\item\001\other\scriptitem.txt. sẽ thấy các cột khai báo trên đầu sẽ có/
Muốn add 1 item mới bạn chỉ cần viết hàm me.AddItem(P,G,D,L); là được
Còn newplaygift được qui định ở cột class nghĩa là khi bạn sử dụng item này GS sẽ gọi đến file có class tương ứng.

Không nhất thiết file lua phải được đặt tên theo class name . Chỉ cần khai báo đúng với class được nhắc đến.

Ví dụ file newplaygift.lua

Nếu khai báo local tbGift = Item:GetClass("classdemo");

Nếu trong file newplaygift.lua khai báo là classdemo thì trong scriptitem sẽ để là classdemo.




Thank Jie nhé ...................................

--- Chế độ gộp bài viết ---

Cái đó là mới khai báo trong file newplaygift.lua thôi còn mình muốn khái báo thêm ở lể Quan thì sao hã Jie :( vd: muốn add thêm vật phẩm và nhận tại lể quan giống như nhận Túi tân thủ thi thêm làm sao ha Jie Pro .....

__Jie__
29-12-14, 12:36 PM
function tbLiGuan:TuiTanThu()
me. AddItem(18,1,351,1)
end
bạn để ý sẽ thấy tbLiGuan:TuiTanThu()
giải thích : tbLiGuan: là tên dc gọi ở trên ví dụ local tbLiGuan = Npc:GetLass("liguan").
Có thể tạm hiểu tbLiGuan được đại diện cho class liguan trong file lua này

TuiTanThu() là hàm khi bạn viết xong 1 hàm bạn cần 1 dòng để gọi cho nó thường nằm ở OnDialog kéo lên sẽ thấy
local tbOpt =
{
{"Nhận Item Bất Ki", self.TuiTanThu, self},
{"Kết thúc đối thoại"}
}
Trên là 1 ví dụ khi click vào Nhận Item Bất Kì sẽ gọi đến hàm TuiTanThu

hongphuc89
29-12-14, 01:47 PM
function tbLiGuan:TuiTanThu()
me. AddItem(18,1,351,1)
end
bạn để ý sẽ thấy tbLiGuan:TuiTanThu()
giải thích : tbLiGuan: là tên dc gọi ở trên ví dụ local tbLiGuan = Npc:GetLass("liguan").
Có thể tạm hiểu tbLiGuan được đại diện cho class liguan trong file lua này

TuiTanThu() là hàm khi bạn viết xong 1 hàm bạn cần 1 dòng để gọi cho nó thường nằm ở OnDialog kéo lên sẽ thấy
local tbOpt =
{
{"Nhận Item Bất Ki", self.TuiTanThu, self},
{"Kết thúc đối thoại"}
}
Trên là 1 ví dụ khi click vào Nhận Item Bất Kì sẽ gọi đến hàm TuiTanThu

Thank jie nhé............................

hongphuc89
29-12-14, 03:58 PM
Mà Jie ơi mình khai báo thêm đã ok rồi có 1 số vật phẩm minh khai giống như hàm add túi tân thủ thi ok có 1 số khai rồi vào Game nhận không đc còn khai báo và đông bộ ở đâu không Jea :(

hongphuc89
29-12-14, 04:05 PM
Có những vật phẩm nhận được mà mở không đc :( fix sao hã Jie VD: như thêm cái rương vào nhận được cái Rương đó nhận ra bình thương đến lúc mở thì mở không được :( mở không được cái Rương đó làm sao hã Jie....

nghichtu91
29-12-14, 04:44 PM
Có những vật phẩm nhận được mà mở không đc :( fix sao hã Jie VD: như thêm cái rương vào nhận được cái Rương đó nhận ra bình thương đến lúc mở thì mở không được :( mở không được cái Rương đó làm sao hã Jie....

viết script cho item đó chứ sao .......................... 8->

hongphuc89
29-12-14, 05:00 PM
WOW~ cám ơn đã có sự góp mặt cũa thêm 1 Pro nũa nghichtu91 viết Script sao day :( hd phụ đi nghichtu91 v:(

nghichtu91
29-12-14, 05:04 PM
WOW~ cám ơn đã có sự góp mặt cũa thêm 1 Pro nũa nghichtu91 viết Script sao day :( hd phụ đi nghichtu91 v:(

giờ đi chơi cái đã tối tinh sau :D

hongphuc89
29-12-14, 05:50 PM
giờ đi chơi cái đã tối tinh sau :D

Like nghichtu91 hẹn tối onl nhé ^^!

hongphuc89
30-12-14, 09:42 AM
rồi làm sao mở được cái Rương đó đây viết Script la sao đay Pro ơi đâu rồi Jie đâu :(8->

nghichtu91
30-12-14, 10:00 AM
rồi làm sao mở được cái Rương đó đây viết Script la sao đay Pro ơi đâu rồi Jie đâu :(8->

viết script , đã có người chỉ rồi mà. ko thì các script tương tự trên sv đó rồi viết.

__Jie__
30-12-14, 10:12 AM
local tbItem = Item:GetClass("ruongthanbi");

function tbItem:OnUse();
if me.CountFreeBagCell() < 1 then
me.Msg("Túi của bạn đã đầy, cần ít nhất 1 ô trống.");
return 0;
end
me.AddItem(18,1,1,10);
return 1;
end
Xong 1 script đơn giản

hongphuc89
30-12-14, 11:55 AM
local tbItem = Item:GetClass("ruongthanbi");

function tbItem:OnUse();
if me.CountFreeBagCell() < 1 then
me.Msg("Túi của bạn đã đầy, cần ít nhất 1 ô trống.");
return 0;
end
me.AddItem(18,1,1,10);
return 1;
end
Xong 1 script đơn giản

Dãy số này ở đâu hã Jie vd trong rương nó có món đồ thì dãy số nào la vật pham trong rương chản hang như vũ khí đi, kiếm,thương,chùy,tiển.nỏ gì đó thi làm sao hã Jie....

__Jie__
30-12-14, 12:36 PM
Dùng lệnh AddItem để tạo vật phẩm khi sử dụng . Cách dùng cũng giống như đôi với túi tân thủ

hongphuc89
30-12-14, 12:59 PM
Rồi ok hiễu rồi Thank Jie đã hổ Trợ Jie rất Pro nhé ^^! Like ok rồi giờ cho Phúc hõi Cái thư mục nào chứ các Item Vd:

Kiếm,Thương,Chùy,Đao,Côn,Phi đao,Tụ tiển ...các loại vũ khí mình tìm nhưng nó thiếu nằm ở đâu jie nói mình biết với :(

vd_tt
30-12-14, 01:31 PM
sao tự nhiên thấy lạnh sống lưng thế nhỉ #-o

NhanVT
30-12-14, 01:48 PM
eo ôi :))
h khiếp ko dám support ai
\setting\item\001\equip: trang bị
\setting\item\001\other: vật phẩm đạo cụ khác
:-$

hongphuc89
30-12-14, 02:31 PM
sao lại nói gì kỳ vậy Nhan VT nè :) còn ở đâu nũa không ?...

anhnhianh
30-12-14, 05:02 PM
bác hongphuc89 hỏi nhiều câu khó đỡ quá =)) kiểu này các pro cũng chịu thua =))

hongphuc89
30-12-14, 07:27 PM
bác hongphuc89 hỏi nhiều câu khó đỡ quá =)) kiểu này các pro cũng chịu thua =))

Like Bác anhnhianh

30000000000