- Mesaj
- 203
- Çözümler
- 22
- Beğeni
- 84
- Puan
- 479
- Ticaret Puanı
- 0
Questi :
Bakınız :
Buradaki sayılar sizin length.h nizdeki sayılar :
Hangisi takılı iken değiştirmesini istemiyorsanız onları ekleyin. Ancak benim eklediğim türde yeterlidir. Değiştirme yaptıktan sonra her karakteri bayrağına ışınlama ekledim karakter değiştirme yerine.
Onuda : warp_to_village() bu kısmı silerek iptal edebilirsiniz.
Peki neden c++ bölümüne açtım konuyu?
Quest aşılırsa falan diye gerçi bu quest aşılsa ne olur ne gibi bir bugu olur bilmiyorum ama :
Srcdende engelini atalım :
YONETİCİLER İSTERSE QUEST BÖLÜMÜNEDE TAŞIYABİLİR.
Şöylede bir kanıt bırakayım:
Linkleri görebilmek için
giriş yap veya kayıt ol.
Lua (Quest):
quest karakter_yuzugu begin
state start begin
when 40002.use begin
if pc . count_item ( 40002 ) < 1 then
say_title ( " Bug Kontrol " )
say_title( " Envanterindeki nesne kaybolmuş. " )
return
end
say_title("Karakter Değiştirme Yüzüğü ")
say_title("Lütfen karakter değişimi yapmadan önce")
say_title("tüm itemlerinizi çıkarınız.")
say_title("NOT: Yüzük kullanıldıktan sonra silinir.")
local s = select("Savaşçı ","Ninja ","Sura ","Şaman ","Kapat ")
if pc . count_item ( 40002 ) < 1 then
say_title ( "Bug Kontrol" )
say_title( "Bug denediniz." )
return
end
if pc.is_engaged() then
say_title("Değişim Tılsımı ")
say_reward("Sadece bekar karakterler karakter")
say_reward("değiştirebilirler.")
----"12345678901234567890123456789012345678901234567890"|
say("Eğer evliysen, karakter değiştirmeden önce")
say("boşanmak zorundasın.")
say("")
return;
end
if pc.is_married() then
say_title("Değişim Tılsımı ")
say_reward("Sadece bekar karakterler karakter")
say_reward("değiştirebilirler.")
----"12345678901234567890123456789012345678901234567890"|
say("Eğer evliysen, karakter değiştirmeden önce")
say("boşanmak zorundasın.")
return;
end
if pc.is_polymorphed() then
say_title("Değişim Tılsımı ")
say_reward("Dönüşmüş haldeyken tılsımı kullanamazsın.")
say("")
say("Dönüşmüş karakterler karakter değiştiremezler.")
say("")
return
end
local WEAR_BODY_INDEX = 0
local WEAR_HEAD_INDEX = 1
local WEAR_WEAPON_INDEX = 4
local WEAR_COSTUME_BODY_INDEX = 19
local WEAR_COSTUME_HAIR_INDEX = 20
local WEAR_COSTUME_WEAPON_INDEX = 21
local WEAR_COSTUME_MOUNT_INDEX = 22
if pc.get_wear(WEAR_BODY_INDEX) != nil then
say_title("Değişim Tılsımı ")
say_reward("Zırh giyili iken tılsımı kullanamazsın.")
say("")
say("Zırh giyen karakterler karakter değiştiremezler.")
say("")
return
end
if pc.get_wear(WEAR_HEAD_INDEX) != nil then
say_title("Değişim Tılsımı ")
say_reward("Kask giyili iken tılsımı kullanamazsın.")
say("")
say("Kask giyen karakterler karakter değiştiremezler.")
say("")
return
end
if pc.get_wear(WEAR_WEAPON_INDEX) != nil then
say_title("Değişim Tılsımı ")
say_reward("Silah giyili iken tılsımı kullanamazsın.")
say("")
say("Silah giyen karakterler karakter değiştiremezler.")
say("")
return
end
if pc.get_wear(WEAR_COSTUME_BODY_INDEX) != nil then
say_title("Değişim Tılsımı ")
say_reward("Kostüm giyili iken tılsımı kullanamazsın.")
say("")
say("Kostüm giyen karakterler karakter değiştiremezler.")
say("")
return
end
if pc.get_wear(WEAR_COSTUME_HAIR_INDEX) != nil then
say_title("Değişim Tılsımı ")
say_reward("Saç stili giyili iken tılsımı kullanamazsın.")
say("")
say("Saç stili giyen karakterler karakter değiştiremezler.")
say("")
return
end
if pc.get_wear(WEAR_COSTUME_WEAPON_INDEX) != nil then
say_title("Değişim Tılsımı ")
say_reward("Silah kostümü giyili iken tılsımı kullanamazsın.")
say("")
say("Silah kostümü giyen karakterler karakter değiştiremezler.")
say("")
return
end
if pc.get_wear(WEAR_COSTUME_MOUNT_INDEX) != nil then
say_title("Değişim Tılsımı ")
say_reward("Binek giyili iken tılsımı kullanamazsın.")
say("")
say("Binek giyen karakterler karakter değiştiremezler.")
say("")
return
end
if s == 1 then ---------------- Savasci karakter
say_title("Karakter Değiştirme Yüzüğü ")
say_reward ( "Savaşçı karakterini mi tercih ediyorsun? ")
say_title("Seçim senin elinde sadece bir kez seçebilirsin...")
local b = select("Evet","Hayır ")
if b == 1 then
pc.polymorph (4 , 36000000000)
setskin ( NOWINDOW )
pc . change_sex ( )
pc . polymorph ( "20032" )
pc.remove_item ( 40002 )
pc.clear_skill()
pc.set_skill_group(0)
set_quest_state("skill_group","run")
warp_to_village()
syschat("|cff00ff00[SİSTEM] |cffffffffLütfen karakter atmayı unutmayınız..")
end
end
if s == 2 then ---------------- Ninja karakter
say_title("Karakter Değiştirme Yüzüğü ")
say_reward ( "Ninja karakterimi tercih ediyorsun? ")
say_title("Seçim senin elinde sadece bir kez seçebilirsin...")
local b = select("Evet","Hayır ")
if b == 1 then
pc.polymorph (5 , 36000000000)
setskin ( NOWINDOW )
pc . change_sex ( )
pc . polymorph ( "20032" )
pc.remove_item ( 40002 )
pc.clear_skill()
pc.set_skill_group(0)
set_quest_state("skill_group","run")
warp_to_village()
end
end
if s == 3 then ---------------- Sura karakter
say_title("Karakter Değiştirme Yüzüğü ")
say_reward ( "Sura karakterimi tercih ediyorsun? ")
say_title("Seçim senin elinde sadece bir kez seçebilirsin...")
local b = select("Evet","Hayır ")
if b == 1 then
pc.polymorph (6 , 36000000000)
setskin ( NOWINDOW )
pc . change_sex ( )
pc . polymorph ( "20032" )
pc.remove_item ( 40002 )
pc.clear_skill()
pc.set_skill_group(0)
set_quest_state("skill_group","run")
warp_to_village()
end
end
if s == 4 then ---------------- Saman karakter
say_title("Karakter Değiştirme Yüzüğü ")
say_reward ( "Şaman karakterimi tercih ediyorsun? ")
say_title("Seçim senin elinde sadece bir kez seçebilirsin...")
local b = select("Evet","Hayır ")
if b == 1 then
pc.polymorph (7 , 36000000000)
setskin ( NOWINDOW )
pc . change_sex ( )
pc . polymorph ( "20032" )
pc.remove_item ( 40002 )
pc.clear_skill()
pc.set_skill_group(0)
set_quest_state("skill_group","run")
warp_to_village()
end
end
end
end
end
Bakınız :

Buradaki sayılar sizin length.h nizdeki sayılar :

Hangisi takılı iken değiştirmesini istemiyorsanız onları ekleyin. Ancak benim eklediğim türde yeterlidir. Değiştirme yaptıktan sonra her karakteri bayrağına ışınlama ekledim karakter değiştirme yerine.
Onuda : warp_to_village() bu kısmı silerek iptal edebilirsiniz.
Peki neden c++ bölümüne açtım konuyu?
Quest aşılırsa falan diye gerçi bu quest aşılsa ne olur ne gibi bir bugu olur bilmiyorum ama :
Srcdende engelini atalım :
Linkleri görebilmek için
giriş yap veya kayıt ol.
C++:
int pc_change_sex(lua_State* L)
{
//@fixme246 BEGIN
LPCHARACTER ch = CQuestManager::instance().GetCurrentCharacterPtr();
if (CQuestManager::instance().GetCurrentCharacterPtr()->GetWear(WEAR_COSTUME_BODY) || (CQuestManager::instance().GetCurrentCharacterPtr()->GetWear(WEAR_COSTUME_HAIR)) || (CQuestManager::instance().GetCurrentCharacterPtr()->GetWear(WEAR_COSTUME_MOUNT)) || (CQuestManager::instance().GetCurrentCharacterPtr()->GetWear(WEAR_COSTUME_WEAPON)))
{
ch->ChatPacket(CHAT_TYPE_INFO, "Cinsiyet değiştirebilmek için kostümlerini çıkartmalısın.");
lua_pushboolean(L, false);
return 1;
}
//@fixme246 END
lua_pushnumber(L, CQuestManager::instance().GetCurrentCharacterPtr()->ChangeSex());
return 1;
}
YONETİCİLER İSTERSE QUEST BÖLÜMÜNEDE TAŞIYABİLİR.
Şöylede bir kanıt bırakayım:

Son düzenleme: