diff --git a/Ohj2HT/src/Luokat/Reissu.java b/Ohj2HT/src/Luokat/Reissu.java index 52659508fb237b831e43a1a4df32915a6ff09858..dc0346084cdaaff887ee797a32a607e3d0f3eb89 100644 --- a/Ohj2HT/src/Luokat/Reissu.java +++ b/Ohj2HT/src/Luokat/Reissu.java @@ -175,7 +175,12 @@ public class Reissu { this.keli = t[3]; int tagi = Integer.parseInt(t[0]); this.reissunTag = tagi; - SeuraavanReissunTag++; + if (reissunTag > SeuraavanReissunTag) { + this.reissunTag = SeuraavanReissunTag +1; + } + else { + SeuraavanReissunTag++; + } this.poistetaanko = false; } diff --git a/Ohj2HT/src/Luokat/Saaliit.java b/Ohj2HT/src/Luokat/Saaliit.java index a5f9d3593e7cdbe8643d9a1e8789995cd5828b03..29034946995d25b9dec86632f485cb39c4b63cf6 100644 --- a/Ohj2HT/src/Luokat/Saaliit.java +++ b/Ohj2HT/src/Luokat/Saaliit.java @@ -1,5 +1,7 @@ package Luokat; +import fi.jyu.mit.fxgui.Dialogs; + import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -96,4 +98,30 @@ public class Saaliit { Saalis s3 = new Saalis("iso", "kuha", "lippa", "hopea"); saaliit.lisaa(s3); } + + public void poista(int saaliinId) { + int poistettava = binHaku(saaliinId); + if (poistettava == -1) { + return; + } + saaliit[poistettava] = null; + } + + public int binHaku(int key) { + int alin = 0; + int ylin = index - 1; + while (alin <= ylin){ + int keski = (alin + ylin) / 2; + if (saaliit[keski].getSaaliinId() == key){ + return keski; + } + if (saaliit[keski].getSaaliinId() < key){ + alin = keski + 1; + } + if (saaliit[keski].getSaaliinId() > key){ + ylin = keski - 1; + } + } + return -1; + } } diff --git a/Ohj2HT/src/Luokat/Saalis.java b/Ohj2HT/src/Luokat/Saalis.java index 1a5faaea38facf5590b38b1f1cdace42eacd09cb..84f49ddf9153d8b60b41b939e6218ccac8adfd2a 100644 --- a/Ohj2HT/src/Luokat/Saalis.java +++ b/Ohj2HT/src/Luokat/Saalis.java @@ -21,7 +21,12 @@ public class Saalis { tiedotLuku[i] = Integer.parseInt(tiedot[i]); } this.saaliinId = tiedotLuku[0]; - seuraavanSaaliinId = tiedotLuku[0]+1; + if (this.saaliinId > seuraavanSaaliinId) { + seuraavanSaaliinId = this.saaliinId + 1; + } + else { + seuraavanSaaliinId++; + } laji = l.getValueFromId(tiedotLuku[1]); koko = k.getValueFromId(tiedotLuku[2]); reissunTagi = tiedotLuku[3]; diff --git a/Ohj2HT/src/fxKalenteri/KalenteriGUIController.java b/Ohj2HT/src/fxKalenteri/KalenteriGUIController.java index fbef7530f0dc0d7ba0fb6972ecab9345e04376e8..857c9bef3f63db99f1363e245723505e69d97038 100644 --- a/Ohj2HT/src/fxKalenteri/KalenteriGUIController.java +++ b/Ohj2HT/src/fxKalenteri/KalenteriGUIController.java @@ -170,6 +170,7 @@ public class KalenteriGUIController implements Initializable { for (Saalis s: valittuReissu.getSaaliit()){ kalenteri.getKalaLaskuri().vahenna(kalenteri.getLajiTulkki().getIdFromValue(s.getLaji())); kalenteri.getVieheLaskuri().vahenna(kalenteri.getVieheTulkki().getIdFromValue(s.getViehe().tyyppi())); + kalenteri.getSaaliit().poista(s.getSaaliinId()); } kalenteri.getReissut().removeReissu(); System.out.println("Jälkeen " + kalenteri.getReissut().getReissut().size()); diff --git a/kalaLaskuri.dat b/kalaLaskuri.dat index d2a0b179e8e16684a226bd1b08f2d20d184956a5..0be46e80c22e9d9b071247619529bc36592e1595 100644 --- a/kalaLaskuri.dat +++ b/kalaLaskuri.dat @@ -2,5 +2,5 @@ 2|2 3|1 4|1 -5|2 -6|1 +5|1 +6|0 diff --git a/reissut.dat b/reissut.dat index c7154035d264e8b55291c762539cd0057507a6b2..03715b05fe873521a5ca9dc5b5e11e85c3641ab3 100644 --- a/reissut.dat +++ b/reissut.dat @@ -1,6 +1,5 @@ 1|17.11.2025|Vuontee|aurinkoinen 2|16.11.2025|Tikkakoski|sateinen 3|11.05.2025|Laukaa|aurinkoinen -4|20.03.2025|Keljo|aurinkoinen 5|19.03.2025|Rovaniemi|Aurinkoinen 7|12.03.2024|Laukaa|Pilvinen diff --git a/saaliit.dat b/saaliit.dat index 805da72be0a4e428b1508814c3002e8295773ea5..1c6ca5c50e3815a1e1772717cd5773f2fef5d6d3 100644 --- a/saaliit.dat +++ b/saaliit.dat @@ -1,11 +1,9 @@ -5|1|3|1|3|sininen -6|2|1|1|1|hopea 2|1|3|2|2|Fire tiger 3|2|1|2|1|hopea 4|4|1|3|1|vihreä -5|6|3|4|1|kuparinen -5|5|1|4|3|musta +6|2|1|1|1|hopea 7|5|1|5|1|kupari 8|3|2|6|1|hopeinen 9|1|2|7|1|sininen 10|3|3|7|2|keltainen +11|1|3|1|3|sininen diff --git a/vieheLaskuri.dat b/vieheLaskuri.dat index 3a979cc06a212ba999f68b58801947bfad18c9d4..6d7f15d982010b7689b01b205fc7b9976d375fe6 100644 --- a/vieheLaskuri.dat +++ b/vieheLaskuri.dat @@ -1,3 +1,3 @@ -1|6 +1|5 2|1 -3|2 +3|1