PDA

View Full Version : [JX] Source code - Xin hướng dẫn thêm hàm



gacon237
05-06-21, 10:44 PM
Hi anh em,

Hiện tại mình đang nghiên cứu trên source HTVL và mình muốn lấy GoldItem theo id nhưng sử dụng hàm bên dưới thì GameServer báo ko có hàm này

function getgolditem()
Input("itemid")
end

function itemid(num)
GetGoldItem(num)
end

Vậy có cách nào add thêm hàm Input như ở trên ko ae ? hay có code nào khác giúp mình với :D
Cảm ơn.

vietprivate01
06-06-21, 09:24 AM
hàm input chưa có nên nó gọi không đc báo lỗi ở gs phải code thêm vào nó liên quan tới s3client phần ui và core sv và core client
Với lại suorce HTVL này có 1 lỗi skills nghiêm trọng chiêu thức lưu thủy xài 1 lúc là nó bị đơ gs vào k đc nữa phải tắt bật lại mới vào đc :D

gacon237
06-06-21, 09:58 AM
hàm input chưa có nên nó gọi không đc báo lỗi ở gs phải code thêm vào nó liên quan tới s3client phần ui và core sv và core client
Với lại suorce HTVL này có 1 lỗi skills nghiêm trọng chiêu thức lưu thủy xài 1 lúc là nó bị đơ gs vào k đc nữa phải tắt bật lại mới vào đc :D

Vậy làm cách nào để add thêm 1 hàm mới vào souce bác :D

lengoctuan.dl
07-06-21, 08:23 AM
Vậy làm cách nào để add thêm 1 hàm mới vào souce bác :D

Bạn vào trong CoreServer mở Sources\Core\Src\ScriptFuns.cpp tìm TLua_Funcs GameScriptFuns[] = định nghĩa thêm hàm ở đây

Ví dụ mình thêm hàm {"AddItemIdx", LuaAddItemIdx},

Tên này để gọi trong file script lua AddItemIdx

Nội dung hàm

int LuaAddItemIdx(Lua_State * L)
{
int nParamNum = Lua_GetTopIndex(L);
if (nParamNum < 2)
{
Lua_PushNumber(L, 0);
return 1;
}
int nIdx = (int)Lua_ValueToNumber(L, 1);
if (nIdx < 0 || nIdx >= MAX_ITEM)
return 0;
int nIndex = ItemSet.Add(&Item[nIdx]);
if (nIndex <= 0)
{
Lua_PushNumber(L, 0);
return 1;
}

Lua_PushNumber(L, nIndex);
return 1;
}

Nếu không hiểu inbox skype lengoctuan.dl mình hướng dẫn thêm cho