- Mesaj
- 865
- Çözümler
- 35
- Beğeni
- 613
- Puan
- 909
- Ticaret Puanı
- 0
arkadaşlar resmi göstereyim:
videosu:
levelı çektiği bölüm:
item.get_socket(0) ile çekiyor levelı.
bu fonksiyonu da martyninkini, aeldradakini falan da denedim en son hali şu an hepsinde
item proto:
sizce sıkıntı ne olabilir:
Linkleri görebilmek için
giriş yap veya kayıt ol.
videosu:
Linkleri görebilmek için
giriş yap veya kayıt ol.
levelı çektiği bölüm:
Lua (Quest):
quest new_pet_system begin
state start begin
when 71035.use begin
-- mob vnum, exp százalék
pet.give_exp(21000, 20)
chat("Exp adás..")
end
when 53050.use begin
------------- INICIALIZÁCIÓ -------------
local pet_level = item.get_socket(0) -- pet szintje
local pet_exp = item.get_socket(1) -- pet expje
local available_points = item.get_socket(2) -- elérheto pontok
local skill_hp = item.get_attr_value(0) -- Mennyei HP értéke
local skill_monster = item.get_attr_value(1) -- Mennyei ero értéke
local hp_step = 500 -- 1 pont ennyi hp-t ad (Csak számolásra van, ha ezt átírod nem változik meg a bónusz)
local monster_step = 1 -- 1 pont ennyi szörnyet ad (Csak számolásra van, ha ezt átírod nem változik meg a bónusz)
local points_on_skill1 = skill_hp * 10 / hp_step -- Ezt ne változtasd, ezzel jön ki hány pont van a képességen
local points_on_skill2 = skill_monster / monster_step -- Ezt ne változtasd, ezzel jön ki hány pont van a képességen
local mob_vnum = item.get_value(0) -- A Value0 értékben van tárolva a mob vnum
-----------------------------------------
if pet.count_summoned() < 1 then
pet.summon(mob_vnum, "PET", false)
return
end
say_title("Pet:")
say("Seviye: "..pet_level.." / 100")
say("Exp: "..pet_exp.."%")
say("Mevcut puanlar: "..available_points)
local menu = 0
menu = select("Bilgi", "Yetenekler", "Evcil Hayvan Bilgileri", "Gönder", "Kapat")
if menu == 1 then
say_title("Bilgi")
--blablabla
elseif menu == 2 then
say_title("Yetenekler")
say("Mevcut puanlar: "..available_points)
local skill_array = {"Cennet Elesi ("..points_on_skill1.."pont)", "Cehennem Erosu ("..points_on_skill2.."pont)"}
local skills = select(skill_array[1], skill_array[2])
say_title(skill_array[skills])
say("Mevcut Puan: "..available_points)
say("Puan kullan!")
local modify_type = select("Puan ekle", "Puan eksilt", "Iptal")
if modify_type == 3 then
return
end
say_title("Miktar:")
local input_point = tonumber(input())
if input == 0 then
return
end
--item.pet_give_exp
if modify_type == 1 then
item.pet_set_bonus(skills-1, input_point)
else
item.pet_set_bonus(skills-1, -input_point)
end
--Újrahívás, hogy frissüljön a bónusz
if true == pet.is_summon(mob_vnum) then
pet.unsummon(mob_vnum)
pet.summon(mob_vnum, "PET", false)
end
elseif menu == 3 then
say_title("Pet bilgisi ")
--blablabla
elseif menu == 4 then
if true == pet.is_summon(mob_vnum) then
pet.unsummon(mob_vnum)
end
end
end
end
end
item.get_socket(0) ile çekiyor levelı.
questlua_item.cpp:
int item_get_socket(lua_State* L)
{
CQuestManager& q = CQuestManager::instance();
if (q.GetCurrentItem() && lua_isnumber(L, 1))
{
int idx = static_cast<int>(lua_tonumber(L, 1));
if (idx < 0 || idx >= ITEM_SOCKET_MAX_NUM)
lua_pushnumber(L, 0);
else
lua_pushnumber(L, q.GetCurrentItem()->GetSocket(idx)); // Already handles 0 or negative values.
}
else
{
lua_pushnumber(L, 0);
}
return 1;
}
bu fonksiyonu da martyninkini, aeldradakini falan da denedim en son hali şu an hepsinde
item proto:
Python:
53050 ¹°±«(¹«¼Ó¼º) ITEM_QUEST 0 1 ANTI_DROP | ANTI_SELL | ANTI_GIVE | ANTI_STACK | ANTI_MYSHOP LOG NONE NONE 0 0 0 0 0 LIMIT_NONE 0 LIMIT_NONE 0 APPLY_NONE 0 APPLY_NONE 0 APPLY_NONE 0 34134 0 0 0 0 0 0 0 0