Sói Đẹp Trai
06-02-15, 11:03 PM
Đây chính là 2 cái script mình đã sử dụng. Mình sẽ hướng dẫn các bạn chi tiết cách cài đặt nó không phụ thuộc vào code chỉ cần các bạn khai báo các loại thú cưỡi và kỵ thuật tương ứng của nó vào vị trí mình bôi đỏ là được.
1. Kỵ thuật tổng hợp:
--Script kÜ thu§t t±ng hþp
--Author: Hoàng Steven
--*********************--
x910016_g_scriptId=910016
--*********************--
x910016_g_RiderRecipe={}
x910016_g_RiderRecipe[30050000] = { RecipeId=446, NeedLevel=1, Impact=18 } --KÜ thu§t: Løc Hành Ðiêu
--*********************--
--**********************************--
--* Read Recipe *--
--**********************************--
function x910016_ReadRecipe(sceneId,selfId,RecipeIndex)
--*********************--
local RecipeFlag=IsPrescrLearned(sceneId,selfId,RecipeIn dex)
--*********************--
if RecipeFlag<1 then
SetPrescription(sceneId,selfId,RecipeIndex,1)
Msg2Player(sceneId,selfId,"H÷c cách ði«u khi¬n thú cßÞi m¾i!",MSG2PLAYER_PARA)
return 1
else
Msg2Player(sceneId,selfId,"Ðã h÷c ðßþc công thÑc này!",MSG2PLAYER_PARA)
return 0
end
--*********************--
return 0
--*********************--
end
--**********************************--
--* Is Skill Like Script *--
--**********************************--
function x910016_IsSkillLikeScript(sceneId,selfId)
--*********************--
return 1
--*********************--
end
--**********************************--
--* Cancel Impacts *--
--**********************************--
function x910016_CancelImpacts(sceneId,selfId)
--*********************--
return 0
--*********************--
end
--**********************************--
--* On Condition Check *--
--**********************************--
function x910016_OnConditionCheck(sceneId,selfId)
--*********************--
if LuaFnVerifyUsedItem(sceneId,selfId)~=1 then
return 0
end
--*********************--
local ItemIndex=LuaFnGetItemIndexOfUsedItem(sceneId,self Id)
local Recipe=x910016_g_RiderRecipe[ItemIndex]
if not Recipe then
return
end
--*********************--
if LuaFnIsPrescrLearned(sceneId,selfId,Recipe.RecipeI d)>0 then
x910016_NotifyFailTips(sceneId,selfId,"Các hÕ ðã h÷c công thÑc này r°i!")
return 0
end
--*********************--
return 1
--*********************--
end
--**********************************--
--* On Deplete *--
--**********************************--
function x910016_OnDeplete(sceneId,selfId)
--*********************--
if LuaFnDepletingUsedItem(sceneId,selfId) > 0 then
return 1
end
--*********************--
return 0
--*********************--
end
--**********************************--
--* On Activate Once *--
--**********************************--
function x910016_OnActivateOnce(sceneId,selfId)
--*********************--
local ItemIndex=LuaFnGetItemIndexOfUsedItem(sceneId,self Id)
local Recipe=x910016_g_RiderRecipe[ItemIndex]
if not Recipe then
return 0
end
--*********************--
x910016_ReadRecipe(sceneId,selfId,Recipe.RecipeId)
--*********************--
LuaFnSendSpecificImpactToUnit(sceneId,selfId,selfI d,selfId,Recipe.Impact,0)
--*********************--
return 1
--*********************--
end
--**********************************--
--* On Activate Each Tick *--
--**********************************--
function x910016_OnActivateEachTick(sceneId,selfId)
--*********************--
return 1
--*********************--
end
--**********************************--
--* Notify Fail Tips *--
--**********************************--
function x910016_NotifyFailTips(sceneId,selfId,Tip)
--*********************--
BeginEvent(sceneId)
AddText(sceneId,Tip)
EndEvent(sceneId)
DispatchMissionTips(sceneId,selfId)
--*********************--
end
Như cái code trên khi bạn thêm cái kỵ thuật nào ứng với con thú nào thì bạn chỉ cần khai báo tương ứng tại cái mảng bôi đỏ kia là được. Chỉ số của nó là ID của cuốn kỵ thuật, còn các thông số khác bạn tham khảo bên trên.
ID kỵ thuật sử dụng (không phải sách học kỵ thuật) khai báo trong file ItemCompound.txt nhé.
2. Thú cưỡi tổng hợp
--Thú cßÞi
--Author: Hoàng Steven
--*********************--
x910015_g_scriptId=910015
--*********************--
--*********************--
x910015_g_Rider={} --Impact cüa thú cßÞi (StandardImpact.txt)
--*********************--
--*****Thú cßÞi bình th߶ng*****--
x910015_g_Rider[10141000]={Impact=4912,RecipeId=446} --Løc Hành Ðiêu (VC)
--*********************--
x910015_g_Mount_Pos=108 --V¸ trí ô thú cßÞi trên ng߶i nhân v§t
--*********************--
--**********************************--
--* On Default Event *--
--**********************************--
function x910015_OnDefaultEvent(sceneId,selfId,bagIndex)
end
--**********************************--
--* Is Skill Like Script *--
--**********************************--
function x910015_IsSkillLikeScript(sceneId,selfId)
--*********************--
return 1
--*********************--
end
--**********************************--
--* Cancel Impacts *--
--**********************************--
function x910015_CancelImpacts(sceneId,selfId)
--*********************--
local nIndex=LuaFnGetItemTableIndexByIndex(sceneId,selfI d,x910015_g_Mount_Pos) --Index thú cßÞi ðang trang b¸ trên ng߶i
--*********************--
if not x910015_g_Rider[nIndex] then
return 0
end
--*********************--
if LuaFnCancelSpecificImpact(sceneId,selfId,x910015_g _Rider[nIndex].Impact)>0 then --Hüy bö trÕng thái cßÞi hi®n tÕi
return 1
else
return 0
end
--*********************--
end
--**********************************--
--* On Condition Check *--
--**********************************--
function x910015_OnConditionCheck(sceneId,selfId)
--*********************--
local nIndex=LuaFnGetItemTableIndexByIndex(sceneId,selfI d,x910015_g_Mount_Pos) --Index thú cßÞi ðang trang b¸ trên ng߶i
--*********************--
if LuaFnIsPrescrLearned(sceneId,selfId,x910015_g_Ride r[nIndex].RecipeId)<1 then --Chßa có kÜ thu§t
x910015_ShowTips(sceneId,selfId,"Các hÕ chßa h÷c kÛ nång ði«u khi¬n thú cßÞi này!") --Thông báo chßa trang b¸ thú cßÞi
return 0
end
--*********************--
if LuaFnGetItemTableIndexByIndex(sceneId,selfId,x9100 15_g_Mount_Pos)~=0 then --Có trang b¸ thú cßÞi
return 1
end
--*********************--
x910015_ShowTips(sceneId,selfId,"Các hÕ c¥n trang b¸ thú cßÞi!") --Thông báo chßa trang b¸ thú cßÞi
--*********************--
return 0
--*********************--
end
--**********************************--
--* On Deplete *--
--**********************************--
function x910015_OnDeplete(sceneId,selfId)
--*********************--
return 1
--*********************--
end
--**********************************--
--* On Activate Once *--
--**********************************--
function x910015_OnActivateOnce(sceneId,selfId)
--*********************--
local nIndex=LuaFnGetItemTableIndexByIndex(sceneId,selfI d,x910015_g_Mount_Pos) --Index thú cßÞi ðang trang b¸ trên ng߶i
--*********************--
if not x910015_g_Rider[nIndex] then --Chßa c§p nh§t thú cßÞi
x910015_ShowTips(sceneId,selfId,"Thú cßÞi này hi®n chßa ðßþc c§p nh¤t!")
return 0
end
--*********************--
LuaFnSendSpecificImpactToUnit(sceneId,selfId,selfI d,selfId,x910015_g_Rider[nIndex].Impact,0)
--*********************--
x910015_ShowTips(sceneId,selfId,"Tri®u h°i thú cßÞi thành công!")
--*********************--
return 1
--*********************--
end
--**********************************--
--* On Activate Each Tick *--
--**********************************--
function x910015_OnActivateEachTick(sceneId,selfId)
--*********************--
return 1
--*********************--
end
--**********************************--
--* Show Tips *--
--**********************************--
function x910015_ShowTips(sceneId,selfId,Tip)
--*********************--
BeginEvent(sceneId)
AddText(sceneId,Tip)
EndEvent(sceneId)
DispatchMissionTips(sceneId,selfId)
--*********************--
end
Xin giải thích cái hàm x910015_g_Rider[10141000]={Impact=4912,RecipeId=446} --Løc Hành Ðiêu (VC) một chút.
Đây chính là con thú cưỡi Lục Hành Điêu, cái Impact kia chính là hình ảnh của nó khi cưỡi lên, chi tiết tham khảo StandardImpact.txt, còn cái RecipeId chính là ID kỵ thuật tương ứng. Chỉ số của cái mảng này chính là ID của con thú cưỡi trong EquipBase.txt
Chốt lại ở đây bạn chỉ cần quan tâm đến con thú cưỡi có hình ảnh như nào (quan tâm đến stdimpact), kỵ thuật ID bao nhiêu (tham khảo ItemCompound), ID thú cưỡi trong EquipBase và sách kỵ thuật trong CommonItem như thế nào. Và quan trọng phải biết cho code nó vận hành. Các bạn để ý cả 2 file EquipBase và CommonItem cái cột quy định Script cho thú cưỡi và kỵ thuật nhé.
Không nhận gạch đá dưới mọi hình thức.
1. Kỵ thuật tổng hợp:
--Script kÜ thu§t t±ng hþp
--Author: Hoàng Steven
--*********************--
x910016_g_scriptId=910016
--*********************--
x910016_g_RiderRecipe={}
x910016_g_RiderRecipe[30050000] = { RecipeId=446, NeedLevel=1, Impact=18 } --KÜ thu§t: Løc Hành Ðiêu
--*********************--
--**********************************--
--* Read Recipe *--
--**********************************--
function x910016_ReadRecipe(sceneId,selfId,RecipeIndex)
--*********************--
local RecipeFlag=IsPrescrLearned(sceneId,selfId,RecipeIn dex)
--*********************--
if RecipeFlag<1 then
SetPrescription(sceneId,selfId,RecipeIndex,1)
Msg2Player(sceneId,selfId,"H÷c cách ði«u khi¬n thú cßÞi m¾i!",MSG2PLAYER_PARA)
return 1
else
Msg2Player(sceneId,selfId,"Ðã h÷c ðßþc công thÑc này!",MSG2PLAYER_PARA)
return 0
end
--*********************--
return 0
--*********************--
end
--**********************************--
--* Is Skill Like Script *--
--**********************************--
function x910016_IsSkillLikeScript(sceneId,selfId)
--*********************--
return 1
--*********************--
end
--**********************************--
--* Cancel Impacts *--
--**********************************--
function x910016_CancelImpacts(sceneId,selfId)
--*********************--
return 0
--*********************--
end
--**********************************--
--* On Condition Check *--
--**********************************--
function x910016_OnConditionCheck(sceneId,selfId)
--*********************--
if LuaFnVerifyUsedItem(sceneId,selfId)~=1 then
return 0
end
--*********************--
local ItemIndex=LuaFnGetItemIndexOfUsedItem(sceneId,self Id)
local Recipe=x910016_g_RiderRecipe[ItemIndex]
if not Recipe then
return
end
--*********************--
if LuaFnIsPrescrLearned(sceneId,selfId,Recipe.RecipeI d)>0 then
x910016_NotifyFailTips(sceneId,selfId,"Các hÕ ðã h÷c công thÑc này r°i!")
return 0
end
--*********************--
return 1
--*********************--
end
--**********************************--
--* On Deplete *--
--**********************************--
function x910016_OnDeplete(sceneId,selfId)
--*********************--
if LuaFnDepletingUsedItem(sceneId,selfId) > 0 then
return 1
end
--*********************--
return 0
--*********************--
end
--**********************************--
--* On Activate Once *--
--**********************************--
function x910016_OnActivateOnce(sceneId,selfId)
--*********************--
local ItemIndex=LuaFnGetItemIndexOfUsedItem(sceneId,self Id)
local Recipe=x910016_g_RiderRecipe[ItemIndex]
if not Recipe then
return 0
end
--*********************--
x910016_ReadRecipe(sceneId,selfId,Recipe.RecipeId)
--*********************--
LuaFnSendSpecificImpactToUnit(sceneId,selfId,selfI d,selfId,Recipe.Impact,0)
--*********************--
return 1
--*********************--
end
--**********************************--
--* On Activate Each Tick *--
--**********************************--
function x910016_OnActivateEachTick(sceneId,selfId)
--*********************--
return 1
--*********************--
end
--**********************************--
--* Notify Fail Tips *--
--**********************************--
function x910016_NotifyFailTips(sceneId,selfId,Tip)
--*********************--
BeginEvent(sceneId)
AddText(sceneId,Tip)
EndEvent(sceneId)
DispatchMissionTips(sceneId,selfId)
--*********************--
end
Như cái code trên khi bạn thêm cái kỵ thuật nào ứng với con thú nào thì bạn chỉ cần khai báo tương ứng tại cái mảng bôi đỏ kia là được. Chỉ số của nó là ID của cuốn kỵ thuật, còn các thông số khác bạn tham khảo bên trên.
ID kỵ thuật sử dụng (không phải sách học kỵ thuật) khai báo trong file ItemCompound.txt nhé.
2. Thú cưỡi tổng hợp
--Thú cßÞi
--Author: Hoàng Steven
--*********************--
x910015_g_scriptId=910015
--*********************--
--*********************--
x910015_g_Rider={} --Impact cüa thú cßÞi (StandardImpact.txt)
--*********************--
--*****Thú cßÞi bình th߶ng*****--
x910015_g_Rider[10141000]={Impact=4912,RecipeId=446} --Løc Hành Ðiêu (VC)
--*********************--
x910015_g_Mount_Pos=108 --V¸ trí ô thú cßÞi trên ng߶i nhân v§t
--*********************--
--**********************************--
--* On Default Event *--
--**********************************--
function x910015_OnDefaultEvent(sceneId,selfId,bagIndex)
end
--**********************************--
--* Is Skill Like Script *--
--**********************************--
function x910015_IsSkillLikeScript(sceneId,selfId)
--*********************--
return 1
--*********************--
end
--**********************************--
--* Cancel Impacts *--
--**********************************--
function x910015_CancelImpacts(sceneId,selfId)
--*********************--
local nIndex=LuaFnGetItemTableIndexByIndex(sceneId,selfI d,x910015_g_Mount_Pos) --Index thú cßÞi ðang trang b¸ trên ng߶i
--*********************--
if not x910015_g_Rider[nIndex] then
return 0
end
--*********************--
if LuaFnCancelSpecificImpact(sceneId,selfId,x910015_g _Rider[nIndex].Impact)>0 then --Hüy bö trÕng thái cßÞi hi®n tÕi
return 1
else
return 0
end
--*********************--
end
--**********************************--
--* On Condition Check *--
--**********************************--
function x910015_OnConditionCheck(sceneId,selfId)
--*********************--
local nIndex=LuaFnGetItemTableIndexByIndex(sceneId,selfI d,x910015_g_Mount_Pos) --Index thú cßÞi ðang trang b¸ trên ng߶i
--*********************--
if LuaFnIsPrescrLearned(sceneId,selfId,x910015_g_Ride r[nIndex].RecipeId)<1 then --Chßa có kÜ thu§t
x910015_ShowTips(sceneId,selfId,"Các hÕ chßa h÷c kÛ nång ði«u khi¬n thú cßÞi này!") --Thông báo chßa trang b¸ thú cßÞi
return 0
end
--*********************--
if LuaFnGetItemTableIndexByIndex(sceneId,selfId,x9100 15_g_Mount_Pos)~=0 then --Có trang b¸ thú cßÞi
return 1
end
--*********************--
x910015_ShowTips(sceneId,selfId,"Các hÕ c¥n trang b¸ thú cßÞi!") --Thông báo chßa trang b¸ thú cßÞi
--*********************--
return 0
--*********************--
end
--**********************************--
--* On Deplete *--
--**********************************--
function x910015_OnDeplete(sceneId,selfId)
--*********************--
return 1
--*********************--
end
--**********************************--
--* On Activate Once *--
--**********************************--
function x910015_OnActivateOnce(sceneId,selfId)
--*********************--
local nIndex=LuaFnGetItemTableIndexByIndex(sceneId,selfI d,x910015_g_Mount_Pos) --Index thú cßÞi ðang trang b¸ trên ng߶i
--*********************--
if not x910015_g_Rider[nIndex] then --Chßa c§p nh§t thú cßÞi
x910015_ShowTips(sceneId,selfId,"Thú cßÞi này hi®n chßa ðßþc c§p nh¤t!")
return 0
end
--*********************--
LuaFnSendSpecificImpactToUnit(sceneId,selfId,selfI d,selfId,x910015_g_Rider[nIndex].Impact,0)
--*********************--
x910015_ShowTips(sceneId,selfId,"Tri®u h°i thú cßÞi thành công!")
--*********************--
return 1
--*********************--
end
--**********************************--
--* On Activate Each Tick *--
--**********************************--
function x910015_OnActivateEachTick(sceneId,selfId)
--*********************--
return 1
--*********************--
end
--**********************************--
--* Show Tips *--
--**********************************--
function x910015_ShowTips(sceneId,selfId,Tip)
--*********************--
BeginEvent(sceneId)
AddText(sceneId,Tip)
EndEvent(sceneId)
DispatchMissionTips(sceneId,selfId)
--*********************--
end
Xin giải thích cái hàm x910015_g_Rider[10141000]={Impact=4912,RecipeId=446} --Løc Hành Ðiêu (VC) một chút.
Đây chính là con thú cưỡi Lục Hành Điêu, cái Impact kia chính là hình ảnh của nó khi cưỡi lên, chi tiết tham khảo StandardImpact.txt, còn cái RecipeId chính là ID kỵ thuật tương ứng. Chỉ số của cái mảng này chính là ID của con thú cưỡi trong EquipBase.txt
Chốt lại ở đây bạn chỉ cần quan tâm đến con thú cưỡi có hình ảnh như nào (quan tâm đến stdimpact), kỵ thuật ID bao nhiêu (tham khảo ItemCompound), ID thú cưỡi trong EquipBase và sách kỵ thuật trong CommonItem như thế nào. Và quan trọng phải biết cho code nó vận hành. Các bạn để ý cả 2 file EquipBase và CommonItem cái cột quy định Script cho thú cưỡi và kỵ thuật nhé.
Không nhận gạch đá dưới mọi hình thức.