Açık kaynak kodlu bir programdaki hatayı düzeltmek

Katılım
4 Ağustos 2016
Mesajlar
50
Çözümler
2
Daha fazla  
Cinsiyet
Erkek
Merhabalar. Program yazmakta iyi değilim. Ancak oynadığım bir oyunun editöründe bir hata var. Açık kaynak kodlu bir editör. Resmi atarak anlatmayı deneyeceğim.



Burada could not find file cpatch assets System mınd. Png olarak yazıyor. Ancak programın bunu mınd. Png olarak değil de mind. Png olarak araması gerekiyor o yüzden bulamıyor. Bu hatayı düzeltmemin bir yolu var mı ya da assets System yazan klasöre girip o cloaking. Png yazan dosyayı cloakıng. Png olarak değiştirmemin bir yolu var mı?
 
Geliştirici(Developer) ile iletişime geçmen gerekiyor diye biliyorum hatayı bildirirsen kendisine düzeltecektir
 
Hata bildir kısmından aynı açıklamayı yaparak iletmeni öneririm.

Ama programın geliştiricisi bu uygulamayı geliştirmeyi bıraktı o yüzden kendim düzeltmeye çalışıyorum.
Program Java dili ile yazılmış. Sonu ".Jar" olan dosyayı. ZIP yapıp içine girdim. System klasörünü buldum. İçindeki dosyaları da buldum. Bu dosyaları örneğin cloaking olan dosyayı cloakıng olarak değiştirsem sorun düzelir mi acaba?


Tamamdır arkadaşlar sorunu hallettim. Öncelikle o jar dosyasını aldım ve internete jar to ZIP yazdım. Jar dosyasını ZIP'e dönüştürdüm. Sonra ZIP dosyasındaki o yolu bulup (eski dosyaların ismini değiştirmeden) yeni dosyalar ekledim. İsimlerini örneğin mind yazan dosyayı aldım mınd yapıp yenisini ekledim. Sonra kaydettim internete bu seferde ZIP to jar yazıp ZIP'i jara dönüştürdüm. Sonra açtım ve baktımki çalışıyor .
 
Son düzenleme:
Kodlarla bir yerlere birkaç resim eklenmiş ancak o resmin dosya konumu yanlış ya da o resim uygulamaya yüklenmemiş. Kod yazacak bir şey yok. O resimleri bulmalı ve konumunu değiştirmelisiniz. Resimlerin konumu ../assets/system olmalı.
 
Bence dosya isimlerinde sorun yok. Program sistem dili Türkçe olduğu için nedense i'leri ı'ya çevirip dosya içerisinde arıyor. Eğer cloaking.png'yi olan cloakıng.png yaparsanız sistem dili Türkçe olmayan bilgisayarlarda ı harfi olmadığı için benzer sorun ortaya çıkar.

Merak edip kaynak kodları inceledim.

[Systems.java] dosyasının başı ve sonu.
[CODE lang="java" title="Systems.java"]package com.kartoflane.superluminal2.components.enums;

public enum Systems
{
EMPTY,
ARTILLERY,
BATTERY,
CLOAKING,
CLONEBAY,
DOORS,
DRONES,
ENGINES,
HACKING,
MEDBAY,
MIND,
OXYGEN,
PILOT,
SENSORS,
SHIELDS,
TELEPORTER,
WEAPONS;
//.
//.
//.

public String getIcon()
{
return "cpath:/assets/system/" + toString().toLowerCase() + ".png";
}

public String getSmallIcon()
{
return "cpath:/assets/smallsystem/" + toString().toLowerCase() + ".png";
}
}
[/CODE]


Java'nın isimlendirme kuralına göre sabitlerin (Static Final), tamemen büyük harfle ve Snake_Case ile yazılması önerilir.
Programın hiç bir yerinde "cloaking" geçmiyor. CLOAKING olarak yer alan enum dosyaya ihtiyaç duyduğu zaman toLowerCase methodu ile küçük harfe dönüştürülüyor.
Türkçe'de I'nın küçük hali ı olduğu için bahsettiğiniz sorunu yaşıyorsunuz.

Düzelmenin en basit yolu sistem dilinden bağımsız toLowerCase işlemi yapan başka bir methodun yazılması.
 
Son düzenleme:
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…