Çözüldü Quest Core Dumped

Bu konu çözüme ulaştırılmıştır. Çözüm için konuya yazılan tüm yorumları okumayı unutmayın. Eğer konudaki yorumlar sorununuzu çözmediyse yeni bir konu açabilirsiniz.
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.

LethalStrikeR

Yardımsever Üye
Yardımsever Üye
Üye
Mesaj
688
Çözümler
41
Beğeni
163
Puan
609
Starting..
Abort trap (core dumped)
Failed: ./all_quests/isinlanma_tahtasi.lua
All quests are done; succes: 79, fail 1.
root@//:/usr/home/game/share/locale/turkey/quest #

Lua dosyasının içeriği şu şekilde;
isinlanma_tahtasi.lua:
quest teleport begin
    state start begin
        when login begin
            cmdchat("teleport_q "..q.getcurrentquestindex())
        end
        when button or info begin
            local idx = getinput("teleportidx")
            if idx == "3" then
                syschat("Joan Bölgesine Işınlanıyorsun (Sarı Krallık)")
                pc.warp(63800,166400)
            elseif idx == "4" then
                syschat("Bokjung Bölgesine Işınlanıyorsun (Sarı Krallık)")
                pc.warp(145500,240000)
            elseif idx == "723" then
                syschat("Waryong Bölgesine Işınlanıyorsun (Sarı Krallık Lonca Bölgesi)")
                pc.warp(221900,9200)
            elseif idx == "823" then
                syschat("Songpa Bölgesine Işınlanıyorsun (Sarı Krallık Lonca Bölgesi)")
                pc.warp(204800,204800)
            elseif idx == "1" then
                syschat("Pyungmoo Bölgsine Işınlanıyorsun (Mavi Krallık)")
                pc.warp(959900,269200)
            elseif idx == "2" then
                syschat("Bakra Bölgesine Işınlanıyorsun (Mavi Krallık)")
                pc.warp(863900,246000)
            elseif idx == "340" then
                syschat("Imha Bölgesine Işınlanıyorsun (Mavi Krallık Lonca Bölgesi)")
                pc.warp(271800,13000)
            elseif idx == "400" then
                syschat("Daeyami Bölgesine Işınlanıyorsun (Mavi Krallık Lonca Bölgesi)")
                pc.warp(204800,204800)
            elseif idx == "5" then
                syschat("Yongan Bölgesine Işınlanıyorsun (Kırmızı Krallık)")
                pc.warp(474300,954800)
            elseif idx == "6" then
                syschat("Jayang Bölgesine Işınlanıyorsun (Kırmızı Krallık)")
                pc.warp(353100,882900)
            elseif idx == "110" then
                syschat("Jungrang Bölgesine Işınlanıyorsun (Kırmızı Krallık Lonca Bölgesi)")
                pc.warp(135600,4300)
            elseif idx == "120" then
                syschat("Miryang Bölgesine Işınlanıyorsun (Kırmızı Krallık Lonca Bölgesi)")
                pc.warp(204800,204800)
            elseif idx == "7" then
                if pc.get_level() < 15 then
                    syschat(string.format("Seviyeniz Yeterli Değil. Gereken Seviye %s",15))
                    return
                end
                syschat("Seungryong Vadisine Işınlanıyorsun (Tarafsız Bölge)")
                if pc.get_empire() == 1 then
                    pc.warp(402100,673900)
                elseif pc.get_empire() == 2 then
                    pc.warp(270400,739900)
                elseif pc.get_empire() == 3 then
                    pc.warp(321300,808000)
                end
            elseif idx == "8" then
                if pc.get_level() < 20 then
                    syschat(string.format("Seviyeniz Yeterli Değil. Gereken Seviye %s",20))
                    return
                end
                syschat("Yongbi Çölüne Işınlanıyorsun (Tarafsız Bölge)")
                if pc.get_empire() == 1 then
                    pc.warp(217800,627200)
                elseif pc.get_empire() == 2 then
                    pc.warp(221900,502700)
                elseif pc.get_empire() == 3 then
                    pc.warp(344000,502500)
                end
            elseif idx == "12" then
                if pc.get_level() < 40 then
                    syschat(string.format("Seviyeniz Yeterli Değil. Gereken Seviye %s",40))
                    return
                end
                syschat("Sohan Dağına Işınlanıyorsun (Tarafsız Bölge)")
                if pc.get_empire() == 1 then
                    pc.warp(434200,290600)
                elseif pc.get_empire() == 2 then
                    pc.warp(375200,174900)
                elseif pc.get_empire() == 3 then
                    pc.warp(491800,173600)
                end
            elseif idx == "9" then
                if pc.get_level() < 30 then
                    syschat(string.format("Seviyeniz Yeterli Değil. Gereken Seviye %s",30))
                    return
                end
                syschat("Hwang Tapınağına Işınlanıyorsun (Tarafsız Bölge)")
                pc.warp(553700,145000)
            elseif idx == "13" then  
                if pc.get_level() < 45 then
                    syschat(string.format("Seviyeniz Yeterli Değil. Gereken Seviye %s",45))
                    return
                end
                syschat("Doyyumhwan'a Işınlanıyorsun (Tarafsız Bölge)")
                if pc.get_empire() == 1 then
                    pc.warp(599400,756300)
                elseif pc.get_empire() == 2 then
                    pc.warp(597800,622200)
                elseif pc.get_empire() == 3 then
                    pc.warp(730700,689800)
                end
            elseif idx == "249" then
                syschat("Yılan Vadisine Işınlanıyorsun (Tarafsız Bölge)")
                pc.warp(1059000,726200)
            elseif idx == "17" then
                if pc.get_level() < 70 then
                    syschat(string.format("Seviyeniz Yeterli Değil. Gereken Seviye %s",70))
                    return
                end
                syschat("Devler Diyarına Işınlanıyorsun (Tarafsız Bölge)")
                pc.warp(828300,763500)
            elseif idx == "15" then
                if pc.get_level() < 55 then
                    syschat(string.format("Seviyeniz Yeterli Değil. Gereken Seviye %s",55))
                    return
                end
                syschat("Hayalet Ormana Işınlanıyorsun (Tarafsız Bölge)")
                pc.warp(288700,5700)
            elseif idx == "16" then
                if pc.get_level() < 60 then
                    syschat(string.format("Seviyeniz Yeterli Değil. Gereken Seviye %s",60))
                    return
                end
                syschat("Kızıl Ormana Işınlanıyorsun (Tarafsız Bölge)")
                pc.warp(1119900,70800)
            elseif idx == "25" then
                if pc.get_level() < 90 then
                    syschat(string.format("Seviyeniz Yeterli Değil. Gereken Seviye %s",90))
                    return
                end
                syschat("Ejderha Ateşi Burnuna Işınlanıyorsun (Tarafsız Bölge)")
                pc.warp(1104300,1788500)
            elseif idx == "26" then
                if pc.get_level() < 90 then
                    syschat(string.format("Seviyeniz Yeterli Değil. Gereken Seviye %s",90))
                    return
                end
                syschat("Nefrit Körfezine Işınlanıyorsun (Tarafsız Bölge)")
                pc.warp(1086900,1655800)
            elseif idx == "27" then
                if pc.get_level() < 90 then
                    syschat(string.format("Seviyeniz Yeterli Değil. Gereken Seviye %s",90))
                    return
                end
                syschat("Yıldırım Dağlarına Işınlanıyorsun (Tarafsız Bölge)")
                pc.warp(1134500,1654600)
            elseif idx == "28" then
                if pc.get_level() < 90 then
                    syschat(string.format("Seviyeniz Yeterli Değil. Gereken Seviye %s",90))
                    return
                end
                syschat("Gautama Uçurumuna Işınlanıyorsun (Tarafsız Bölge)")
                pc.warp(1226300,1681100)
            elseif idx == "29" then
                syschat("Normal Maymun Zindanına Işınlanıyorsun (Tarafsız Bölge)")
                pc.warp(135200,652500)
            elseif idx == "30" then
                syschat("Zor Maymun Zindanına Işınlanıyorsun (Tarafsız Bölge)")
                pc.warp(135200,730000)
            elseif idx == "10" then
                if pc.get_level() < 35 then
                    syschat(string.format("Seviyeniz Yeterli Değil. Gereken Seviye %s",35))
                    return
                end
                syschat("Örümcek Zindanı (1)'e Işınlanıyorsun (Tarafsız Bölge)")
                pc.warp(60000,496000)
            elseif idx == "14" then
                if pc.get_level() < 50 then
                    syschat(string.format("Seviyeniz Yeterli Değil. Gereken Seviye %s",50))
                    return
                end
                syschat("Örümcek Zindanı (2)'ye Işınlanıyorsun (Tarafsız Bölge)")
                pc.warp(704100,464100)
            elseif idx == "32" then
                syschat("Örümcek Zindanı (3)'e Işınlanıyorsun (Tarafsız Bölge)")
                pc.warp(51200,563200)
            elseif idx == "11" then
                if pc.get_level() < 40 then
                    syschat(string.format("Seviyeniz Yeterli Değil. Gereken Seviye %s",40))
                    return
                end
                syschat("Şeytan Kulesine Işınlanıyorsun (Tarafsız Bölge)")
                pc.warp(590500,110500)
            elseif idx == "33" then
                if pc.get_level() < 60 then
                    syschat(string.format("Seviyeniz Yeterli Değil. Gereken Seviye %s",60))
                    return
                end
                syschat("Şeytan Mezarlığı Girişine Işınlanıyorsun (Tarafsız Bölge)")
                pc.warp(591300,99500)
            elseif idx == "18" then
                if pc.get_level() < 75 then
                    syschat(string.format("Seviyeniz Yeterli Değil. Gereken Seviye %s",75))
                    return
                end
                syschat("Sürgün Mağarası Girişine Işınlanıyorsun (Tarafsız Bölge)")
                pc.warp(284400,810700)
            elseif idx == "34" then
                syschat("Kırmızı Ejderha Kalesi Girişine Işınlanıyorsun (Tarafsız Bölge)")
                pc.warp(597600,706900)
            elseif idx == "35" then
                syschat("Nemerenin Gözetleme Kulesi Girişine Işınlanıyorsun (Tarafsız Bölge)")
                pc.warp(432792,165998)
            elseif idx == "36" then
                syschat("Meley İni Girişine Işınlanıyorsun (Tarafsız Bölge)")
                pc.warp(597100,698900)
            elseif idx == "37" then
                if pc.get_level() < 95 then
                    syschat(string.format("Seviyeniz Yeterli Değil. Gereken Seviye %s",95))
                    return
                end
                syschat("Ochao Tapınağı Girişine Işınlanıyorsun (Tarafsız Bölge)")
                pc.warp(1277900,1734700)
            elseif idx == "38" then
                syschat("Greenmont Bölgesine Işınlanıyorsun (Ortak Bölge)")
                pc.warp(2159800,2533100)
            else
                syschat("Bilinmeyen bir haritaya ışınlanmaya çalışıyorsun.")
            end
        end
    end
end
 
sadece bu questi okudup hangi satırda olduğunu söyler misiniz
Lua (Quest):
QUEST : teleport

STATE : start

WHEN  : login

WHEN  : button or

WHEN  : info

Calls undeclared function! :

getinput

Abort (core dumped)

Bu hatayı veriyor. Fakat ben questlib.lua dosyasına getinput fonksyonunu ekledim.
 
Son düzenleme:
Getinputla çektiğin teleportidx bir yerde tanımlı değil o yüzden core dump alıyorsun. Sanırım idx mapindex çekiyor, GetMapIndex kullanabilirsin
 
Lua (Quest):
QUEST : teleport

STATE : start

WHEN  : login

WHEN  : button or

WHEN  : info

Calls undeclared function! :

getinput

Abort (core dumped)

Bu hatayı veriyor. Fakat ben questlib.lua dosyasına getinput fonksyonunu ekledim.
Quest_function dosyasına "getinput" fonksiyonu eklenmemiş. Sorun çözüldü.
 
Çözüm
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.
Geri
Üst