class BombModel { /* ==================================================================================================================== * Tidslogikk * ==================================================================================================================== * Variabler og funksjoner som lager "klokka" i bomben. Strengen "time" er den som blir presentert i "BombView". * Hver gang den skal oppdateres (veldig ofte!) så gjøres strengen om til et array, indeksene i arrayet blir oppdatert * med variablene t0, t1, t3 og t4. Så blir arrayet gjort om til en streng igjen for å vise oppdatert tid. * * Det er ikke viktig å forstå denne litt knotete logikken! Men litt gøy da */ private String time = "00:00"; private char[] timeArr = time.toCharArray(); private int t0 = 0, t1 = 0, t3 = 0, t4 = 0; private int initialTime = 0; private int endTime = 0; public int updateTimer(){ if (t4 == 0){ t4 = 9; if (t3 == 0){ t3 = 9; if (t1 == 0){ t1 = 9; if (t0 == 0){ return 1; } t0 -= 1; return 0; } t1 -= 1; return 0; } t3 -= 1; return 0; } t4 -= 1; return 0; } public String updateTime(){ timeArr[0] = (char) (t0 + '0'); timeArr[1] = (char) (t1 + '0'); timeArr[3] = (char) (t3 + '0'); timeArr[4] = (char) (t4 + '0'); time = String.valueOf(timeArr); return time; } public void cutTime(){ if (t0 != 0) t0 = t0/2; else { t1 = t1/2; } updateTime(); } public String getTime(){ return time; } public int getT1(){ return t1; } public void setT0(int t){ t0 = t; } public void setT1(int t){ t1 = t; } public int getInitialTime(){ return initialTime; } public int getEndTime(){ return endTime; } public void setInit(int t){ initialTime = t; } /* ======================================================================== * Slutt på tidslogikk! * ========================================================================*/ }