Izzane Skrevet 9. mars 2008 Skrevet 9. mars 2008 (endret) Hallo. Når jeg prøvde å lage en liten cfg fil gikk alt dårlig. Dette er koden jeg hadde før public int GetCLAttack(int ItemID) { if (ItemID == -1) { return 1; } String ItemName = GetItemName(ItemID); String ItemName2 = ItemName.replaceAll("Bronze", ""); ItemName2 = ItemName2.replaceAll("Iron", ""); ItemName2 = ItemName2.replaceAll("Steel", ""); ItemName2 = ItemName2.replaceAll("Black", ""); ItemName2 = ItemName2.replaceAll("Mithril", ""); ItemName2 = ItemName2.replaceAll("Adamant", ""); ItemName2 = ItemName2.replaceAll("Rune", ""); ItemName2 = ItemName2.replaceAll("Granite", ""); ItemName2 = ItemName2.replaceAll("Dragon", ""); ItemName2 = ItemName2.replaceAll("Crystal", ""); ItemName2 = ItemName2.trim(); if (ItemName2.startsWith("claws") || ItemName2.startsWith("dagger") || ItemName2.startsWith("sword") || ItemName2.startsWith("scimitar") || ItemName2.startsWith("mace") || ItemName2.startsWith("longsword") || ItemName2.startsWith("battleaxe") || ItemName2.startsWith("warhammer") || ItemName2.startsWith("2h sword") || ItemName2.startsWith("harlberd")) { if (ItemName.startsWith("Bronze")) { return 1; } else if (ItemName.startsWith("Iron")) { return 1; } else if (ItemName.startsWith("Steel")) { return 5; } else if (ItemName.startsWith("Black")) { return 10; } else if (ItemName.startsWith("Mithril")) { return 20; } else if (ItemName.startsWith("Adamant")) { return 30; } else if (ItemName.startsWith("Rune")) { return 40; } else if (ItemName.startsWith("Dragon")) { return 60; } } else if (ItemName.startsWith("Granite")) { return 50; } else if (ItemName.endsWith("whip") || ItemName.endsWith("Ahrims staff") || ItemName.endsWith("Torags hammers") || ItemName.endsWith("Veracs flail") || ItemName.endsWith("Guthans warspear") || ItemName.endsWith("Dharoks greataxe")) { return 70; } return 1; } public int GetCLDefence(int ItemID) { if (ItemID == -1) { return 1; } String ItemName = GetItemName(ItemID); String ItemName2 = ItemName.replaceAll("Bronze", ""); ItemName2 = ItemName2.replaceAll("Iron", ""); ItemName2 = ItemName2.replaceAll("Steel", ""); ItemName2 = ItemName2.replaceAll("Black", ""); ItemName2 = ItemName2.replaceAll("Mithril", ""); ItemName2 = ItemName2.replaceAll("Adamant", ""); ItemName2 = ItemName2.replaceAll("Rune", ""); ItemName2 = ItemName2.replaceAll("Granite", ""); ItemName2 = ItemName2.replaceAll("Dragon", ""); ItemName2 = ItemName2.replaceAll("Crystal", ""); ItemName2 = ItemName2.trim(); if (ItemName2.startsWith("claws") || ItemName2.startsWith("dagger") || ItemName2.startsWith("sword") || ItemName2.startsWith("scimitar") || ItemName2.startsWith("mace") || ItemName2.startsWith("longsword") || ItemName2.startsWith("battleaxe") || ItemName2.startsWith("warhammer") || ItemName2.startsWith("2h sword") || ItemName2.startsWith("harlberd")) { //It's a weapon, weapons don't required defence ! } else if (ItemName.startsWith("Ahrims") || ItemName.startsWith("Karil") || ItemName.startsWith("Torag") || ItemName.startsWith("Verac") || ItemName.endsWith("Guthan") || ItemName.endsWith("Dharok")) { if (ItemName.endsWith("staff") || ItemName.endsWith("crossbow") || ItemName.endsWith("hammers") || ItemName.endsWith("flail") || ItemName.endsWith("warspear") || ItemName.endsWith("greataxe")) { //No defence for the barrow weapons } else { return 70; } } else { if (ItemName.startsWith("Bronze")) { return 1; } else if (ItemName.startsWith("Iron")) { return 1; } else if (ItemName.startsWith("Steel")) { return 5; } else if (ItemName.startsWith("Black")) { return 10; } else if (ItemName.startsWith("Mithril")) { return 20; } else if (ItemName.startsWith("Adamant")) { return 30; } else if (ItemName.startsWith("Rune")) { return 40; } else if (ItemName.startsWith("Dragon")) { return 60; } } return 1; } public int GetCLStrength(int ItemID) { if (ItemID == -1) { return 1; } String ItemName = GetItemName(ItemID); if (ItemName.startsWith("Granite")) { return 50; } else if (ItemName.startsWith("Torags hammers") || ItemName.endsWith("Dharoks greataxe")) { return 70; } return 1; } public int GetCLMagic(int ItemID) { if (ItemID == -1) { return 1; } String ItemName = GetItemName(ItemID); if (ItemName.startsWith("Ahrim")) { return 70; } return 1; } public int GetCLRanged(int ItemID) { if (ItemID == -1) { return 1; } String ItemName = GetItemName(ItemID); if (ItemName.startsWith("Karil")) { return 70; } if (ItemName.startsWith("Crystal")) { return 90; } return 1; } Jeg endret dette til: public int GetCLAttack(int ItemID) { WieldHandler.GetCLAttack(); return 1; } public int GetCLDefence(int ItemID) { WieldHandler.GetCLDefence(); return 1; } public int GetCLStrength(int ItemID) { WieldHandler.GetCLStrength(); return 1; } public int GetCLMagic(int ItemID) { WieldHandler.GetCLMagic(); return 1; } public int GetCLRanged(int ItemID) { WieldHandler.GetCLRanged(); return 1; } og lagde en ny *.java fil kallt WieldHandler.java Inni der er dette: import java.io.*; import java.util.StringTokenizer; public class WieldHandler { public static String FirstLine; public static String LastLine; public static int lvlReq; public static void GetAttack(int itemID) { String line = ""; String token = ""; String token2 = ""; String token2_2 = ""; String[] token3 = new String[5]; boolean EndOfFile = false; int ReadMode = 0; BufferedReader characterfile = null; try { characterfile = new BufferedReader(new FileReader("GetAttack.cfg")); } catch(FileNotFoundException fileex) { misc.println("GetAttack.cfg: file not found."); } try { line = characterfile.readLine(); } catch(IOException ioexception) { misc.println("GetAttack.cfg: error loading file."); } while(EndOfFile == false && line != null) { line = line.trim(); int spot = line.indexOf("="); if (spot > -1) { token = line.substring(0, spot); token = token.trim(); token2 = line.substring(spot + 1); token2 = token2.trim(); token2_2 = token2.replaceAll("\t\t", "\t"); token2_2 = token2_2.replaceAll("\t\t", "\t"); token2_2 = token2_2.replaceAll("\t\t", "\t"); token2_2 = token2_2.replaceAll("\t\t", "\t"); token2_2 = token2_2.replaceAll("\t\t", "\t"); token3 = token2_2.split("\t"); if (token.equals("Item")) { if (itemID == Integer.parseInt(token3[0])) { if (Integer.parseInt(token3[1]) != -1) { FirstLine = (token3[1]); } else { FirstLine = "Unknown"; } if (Integer.parseInt(token3[2]) != -1) { LastLine = (token3[2]); } else { LastLine = "Unknown"; } if (Integer.parseInt(token3[3]) != -1) { lvlReq = Integer.parseInt(token3[3]); } else { lvlReq = 1; } } } } else { if (line.equals("[EOF]")) { try { characterfile.close(); } catch(IOException ioexception) { } } } try { line = characterfile.readLine(); } catch(IOException ioexception1) { EndOfFile = true; } } try { characterfile.close(); } catch(IOException ioexception) { } } public static void GetDefence(int itemID) { String line = ""; String token = ""; String token2 = ""; String token2_2 = ""; String[] token3 = new String[5]; boolean EndOfFile = false; int ReadMode = 0; BufferedReader characterfile = null; try { characterfile = new BufferedReader(new FileReader("GetDefence.cfg")); } catch(FileNotFoundException fileex) { misc.println("GetDefence.cfg: file not found."); } try { line = characterfile.readLine(); } catch(IOException ioexception) { misc.println("GetDefence.cfg: error loading file."); } while(EndOfFile == false && line != null) { line = line.trim(); int spot = line.indexOf("="); if (spot > -1) { token = line.substring(0, spot); token = token.trim(); token2 = line.substring(spot + 1); token2 = token2.trim(); token2_2 = token2.replaceAll("\t\t", "\t"); token2_2 = token2_2.replaceAll("\t\t", "\t"); token2_2 = token2_2.replaceAll("\t\t", "\t"); token2_2 = token2_2.replaceAll("\t\t", "\t"); token2_2 = token2_2.replaceAll("\t\t", "\t"); token3 = token2_2.split("\t"); if (token.equals("Item")) { if (itemID == Integer.parseInt(token3[0])) { if (Integer.parseInt(token3[1]) != -1) { FirstLine = (token3[1]); } else { FirstLine = "Unknown"; } if (Integer.parseInt(token3[2]) != -1) { LastLine = (token3[2]); } else { LastLine = "Unknown"; } if (Integer.parseInt(token3[3]) != -1) { lvlReq = Integer.parseInt(token3[3]); } else { lvlReq = 1; } } } } else { if (line.equals("[EOF]")) { try { characterfile.close(); } catch(IOException ioexception) { } } } try { line = characterfile.readLine(); } catch(IOException ioexception1) { EndOfFile = true; } } try { characterfile.close(); } catch(IOException ioexception) { } } public static void GetStrength(int itemID) { String line = ""; String token = ""; String token2 = ""; String token2_2 = ""; String[] token3 = new String[5]; boolean EndOfFile = false; int ReadMode = 0; BufferedReader characterfile = null; try { characterfile = new BufferedReader(new FileReader("GetStrength.cfg")); } catch(FileNotFoundException fileex) { misc.println("GetStrength.cfg: file not found."); } try { line = characterfile.readLine(); } catch(IOException ioexception) { misc.println("GetStrength.cfg: error loading file."); } while(EndOfFile == false && line != null) { line = line.trim(); int spot = line.indexOf("="); if (spot > -1) { token = line.substring(0, spot); token = token.trim(); token2 = line.substring(spot + 1); token2 = token2.trim(); token2_2 = token2.replaceAll("\t\t", "\t"); token2_2 = token2_2.replaceAll("\t\t", "\t"); token2_2 = token2_2.replaceAll("\t\t", "\t"); token2_2 = token2_2.replaceAll("\t\t", "\t"); token2_2 = token2_2.replaceAll("\t\t", "\t"); token3 = token2_2.split("\t"); if (token.equals("Item")) { if (itemID == Integer.parseInt(token3[0])) { if (Integer.parseInt(token3[1]) != -1) { FirstLine = (token3[1]); } else { FirstLine = "Unknown"; } if (Integer.parseInt(token3[2]) != -1) { lvlReq = Integer.parseInt(token3[2]); } else { lvlReq = 1; } } } } else { if (line.equals("[EOF]")) { try { characterfile.close(); } catch(IOException ioexception) { } } } try { line = characterfile.readLine(); } catch(IOException ioexception1) { EndOfFile = true; } } try { characterfile.close(); } catch(IOException ioexception) { } } public static void GetMagic(int itemID) { String line = ""; String token = ""; String token2 = ""; String token2_2 = ""; String[] token3 = new String[5]; boolean EndOfFile = false; int ReadMode = 0; BufferedReader characterfile = null; try { characterfile = new BufferedReader(new FileReader("GetMagic.cfg")); } catch(FileNotFoundException fileex) { misc.println("GetMagic.cfg: file not found."); } try { line = characterfile.readLine(); } catch(IOException ioexception) { misc.println("GetMagic.cfg: error loading file."); } while(EndOfFile == false && line != null) { line = line.trim(); int spot = line.indexOf("="); if (spot > -1) { token = line.substring(0, spot); token = token.trim(); token2 = line.substring(spot + 1); token2 = token2.trim(); token2_2 = token2.replaceAll("\t\t", "\t"); token2_2 = token2_2.replaceAll("\t\t", "\t"); token2_2 = token2_2.replaceAll("\t\t", "\t"); token2_2 = token2_2.replaceAll("\t\t", "\t"); token2_2 = token2_2.replaceAll("\t\t", "\t"); token3 = token2_2.split("\t"); if (token.equals("Item")) { if (itemID == Integer.parseInt(token3[0])) { if (Integer.parseInt(token3[1]) != -1) { FirstLine = (token3[1]); } else { FirstLine = "Unknown"; } if (Integer.parseInt(token3[2]) != -1) { lvlReq = Integer.parseInt(token3[2]); } else { lvlReq = 1; } } } } else { if (line.equals("[EOF]")) { try { characterfile.close(); } catch(IOException ioexception) { } } } try { line = characterfile.readLine(); } catch(IOException ioexception1) { EndOfFile = true; } } try { characterfile.close(); } catch(IOException ioexception) { } } public static void GetRanged(int itemID) { String line = ""; String token = ""; String token2 = ""; String token2_2 = ""; String[] token3 = new String[5]; boolean EndOfFile = false; int ReadMode = 0; BufferedReader characterfile = null; try { characterfile = new BufferedReader(new FileReader("GetRanged.cfg")); } catch(FileNotFoundException fileex) { misc.println("GetRanged.cfg: file not found."); } try { line = characterfile.readLine(); } catch(IOException ioexception) { misc.println("GetRanged.cfg: error loading file."); } while(EndOfFile == false && line != null) { line = line.trim(); int spot = line.indexOf("="); if (spot > -1) { token = line.substring(0, spot); token = token.trim(); token2 = line.substring(spot + 1); token2 = token2.trim(); token2_2 = token2.replaceAll("\t\t", "\t"); token2_2 = token2_2.replaceAll("\t\t", "\t"); token2_2 = token2_2.replaceAll("\t\t", "\t"); token2_2 = token2_2.replaceAll("\t\t", "\t"); token2_2 = token2_2.replaceAll("\t\t", "\t"); token3 = token2_2.split("\t"); if (token.equals("Item")) { if (itemID == Integer.parseInt(token3[0])) { if (Integer.parseInt(token3[1]) != -1) { FirstLine = (token3[1]); } else { FirstLine = "Unknown"; } if (Integer.parseInt(token3[2]) != -1) { lvlReq = Integer.parseInt(token3[2]); } else { lvlReq = 1; } } } } else { if (line.equals("[EOF]")) { try { characterfile.close(); } catch(IOException ioexception) { } } } try { line = characterfile.readLine(); } catch(IOException ioexception1) { EndOfFile = true; } } try { characterfile.close(); } catch(IOException ioexception) { } } public int GetCLAttack(int ItemID) { client c = (client) server.playerHandler.players[ItemID]; if (ItemID == -1) { return 1; } String ItemName = c.GetItemName(ItemID); String ItemName2 = ItemName.replaceAll(FirstLine, ""); ItemName2 = ItemName2.trim(); if (ItemName2.startsWith(LastLine)) { if (ItemName.startsWith(FirstLine)) { return lvlReq; } } return 1; } public int GetCLDefence(int ItemID) { client c = (client) server.playerHandler.players[ItemID]; if (ItemID == -1) { return 1; } String ItemName = c.GetItemName(ItemID); String ItemName2 = ItemName.replaceAll(FirstLine, ""); ItemName2 = ItemName2.trim(); if (ItemName.startsWith(FirstLine)) { if (ItemName.endsWith(LastLine)) { return lvlReq; } } return 1; } public int GetCLStrength(int ItemID) { client c = (client) server.playerHandler.players[ItemID]; if (ItemID == -1) { return 1; } String ItemName = c.GetItemName(ItemID); if (ItemName.startsWith(FirstLine)) { return lvlReq; } return 1; } public int GetCLMagic(int ItemID) { client c = (client) server.playerHandler.players[ItemID]; if (ItemID == -1) { return 1; } String ItemName = c.GetItemName(ItemID); if (ItemName.startsWith(FirstLine)) { return lvlReq; } return 1; } public int GetCLRanged(int ItemID) { client c = (client) server.playerHandler.players[ItemID]; if (ItemID == -1) { return 1; } String ItemName = c.GetItemName(ItemID); if (ItemName.startsWith(FirstLine)) { return lvlReq; } return 1; } } Hva har jeg gjort feil? Håper noen har tid til å svare. - Marius Endret 9. mars 2008 av Izzane
steingrim Skrevet 9. mars 2008 Skrevet 9. mars 2008 Aiai, så mye kode orker jeg ikke lese. La oss starte fra en annen vinkel: hva er problemet?
Izzane Skrevet 9. mars 2008 Forfatter Skrevet 9. mars 2008 før hadde jeg dette: public int GetCLStrength(int ItemID) { if (ItemID == -1) { return 1; } String ItemName = GetItemName(ItemID); if (ItemName.startsWith("Granite")) { return 50; } else if (ItemName.startsWith("Torags hammers") || ItemName.endsWith("Dharoks greataxe")) { return 70; } return 1; } i den nye fila har jeg nå dette public int GetCLStrength(int ItemID) { client c = (client) server.playerHandler.players[ItemID]; if (ItemID == -1) { return 1; } String ItemName = c.GetItemName(ItemID); if (ItemName.startsWith(FirstLine)) { return lvlReq; } return 1; } og den gamle koden gjorde jeg bare til dette public int GetCLStrength(int ItemID) { WieldHandler.GetCLStrength(); return 1; } Ser du en eller annen feil? - Marius
steingrim Skrevet 9. mars 2008 Skrevet 9. mars 2008 Det er rimelig vanskelig for meg å skjønne hva du vil Hva er det som ikke fungerer? Hva er forventet resultat og hva er det du faktisk får?
Izzane Skrevet 9. mars 2008 Forfatter Skrevet 9. mars 2008 Her er hele greia: metoder jeg brukte: getclattack, getcldefence, getclstrength, getclmagic, getclranged i client.java hele wieldhandler.javaRune_Abyss.zip
pgdx Skrevet 9. mars 2008 Skrevet 9. mars 2008 Må stille meg på siden til steingrim og si at det er vanskelig å forstå hva du egentlig vil. Vi vet du har hatt mye kode før, og har kanskje mer, kanskje mindre kode nå. Vi vet ingenting om koden før virket, eller om koden nå fungerer. Langt mindre vet vi hva koden skal. Så: Vennligst svar på samtlige spørsmål: Hva for et program vil du lage? Hva feiler? Kompilering eller logisk feil? Exceptions? NullPointer? Hvorfor henviser du til gammel kode? Fungerte den? Og i så tilfelle, hvorfor har du byttet den ut?
pgdx Skrevet 9. mars 2008 Skrevet 9. mars 2008 Jeg skumleste koden din nå, og ble mer forvirret enn før jeg leste den. Hvorfor returnerer alle metodene dine 1? Og du bør vurdere å kommentere metodene dine slik: /** Gets strength to m and returns it as an integer * @param m the mage to find strength * @return the mage's strength */ public int getStrength(Mage m) { return m.getStrength(); }
___ Skrevet 11. mars 2008 Skrevet 11. mars 2008 Når jeg prøvde å lage en liten cfg fil gikk alt dårlig. Denne havner på min topp-10 liste over elendige feilbeskrivelser i denne gruppa. Dessuten gikk musehjulet mitt en smule varmt pga all scrollingen som måtte til for å finne reply-knappen. Les forumregler, og kom tilbake når du har lært deg god forumskikk. Werner
pgdx Skrevet 11. mars 2008 Skrevet 11. mars 2008 Når jeg prøvde å lage en liten cfg fil gikk alt dårlig.Denne havner på min topp-10 liste over elendige feilbeskrivelser i denne gruppa.Cut him some slack! Han prøvde jo tross alt bare å lage en liten cfg-fil, men alt gikk dårlig.
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå