// Denne klassen benyttes for å sette opp en kamp.
// ...
import java.awt.*;

public class Kamp{
static int counter;
// Oppsett variabler
public int iProH, iProU, iProB;
public int iProHFolk, iProUFolk, iProBFolk;
public int iProHEkspert, iProUEkspert, iProBEkspert;
public int iProHEgendefinert, iProUEgendefinert, iProBEgendefinert;
public int iProVerdiTilfeldig;

private String sLag;
private String sResultat;
private String sTilfeldig;
// public boolean bResultat;

	// Konstruktor for nytt objekt
	public Kamp(){
	counter++;
        iProH = 33; iProU = 34; iProB=33;
	iProHFolk = 33 ; iProUFolk = 34; iProBFolk = 33;
	iProHEkspert = 33 ; iProUEkspert = 34 ; iProBEkspert = 33;
    iProHEgendefinert = 33 ; iProUEgendefinert = 34 ; iProBEgendefinert = 33;
	sLag = counter+" Lag A vs Lag B";
    sResultat = " ";
	sTilfeldig = " ";
        // setTilfeldigResultat();
	}
        // Konstruktor for nytt objekt, med setting av prosenter
        public Kamp(int proH, int proU, int proB ){
        counter++;
        // Bygger opp fordelingsnøkkel til å bli lik 100%
        int total = proH+proU+proB;
        proH = 100 * proH/total;
        proB = 100 * proB/total;
        proU = 100 -proH-proB;

        iProH = proH; iProU = proU; iProB=proB;
        iProHFolk = 33 ; iProUFolk = 34; iProBFolk = 33;
        iProHEkspert = 33 ; iProUEkspert = 34 ; iProBEkspert = 33;
        iProHEgendefinert = 33 ; iProUEgendefinert = 34 ; iProBEgendefinert = 33;
        sLag = counter+" Lag A vs Lag B";
        sResultat = " ";
        setTilfeldigResultat();
        }

	// Skifter til folkerekke for trekning
        public void BrukFolkerekke(){
         iProH = iProHFolk; iProU = iProUFolk; iProB = iProBFolk;
        }
        // Skifter til eksperttips for trekning
        public void BrukEksperttips(){
         iProH = iProHEkspert; iProU = iProUEkspert; iProB = iProBEkspert;
        }
        // Skifter til Egendefinert tips for trekning
        public void BrukEgendefinert(){
         iProH = iProHEgendefinert; iProU = iProUEgendefinert; iProB = iProBEgendefinert;
        }

        // Bergener gjennomsnitt for folkerekke og eksperttips.
        public void BrukBegge(){
         iProH = iProHEkspert + iProHFolk;
         iProU = iProUEkspert + iProUFolk;
         iProB = iProBEkspert + iProBFolk;
         // Bygger så opp fordelingsnøkkel til å bli lik 100%
         int total = iProH + iProU + iProB;
         iProH = 100 * iProH/total;
         iProB = 100 * iProB/total;
         iProU = 100 -iProH-iProB;
        }

        // Skifter ut prosenter for folkerekken
        public void setLag(String Lag ){
        // Bygger opp lag
        sLag = Lag;
        }

        // Skifter ut prosenter for folkerekken
        public void setFolkerekkeProsenter(int proH, int proU, int proB ){
        // Bygger opp fordelingsnøkkel til å bli lik 100%
        int total = proH+proU+proB;
        proH = 100 * proH/total;
        proB = 100 * proB/total;
        proU = 100 -proH-proB;

        iProHFolk = proH; iProUFolk = proU; iProBFolk=proB;
        }

        // Skifter ut prosenter for ekpserttips
        public void setEksperttipsProsenter(int proH, int proU, int proB ){
        // Bygger opp fordelingsnøkkel til å bli lik 100%
        int total = proH+proU+proB;
        proH = 100 * proH/total;
        proB = 100 * proB/total;
        proU = 100 -proH-proB;

        iProHEkspert = proH; iProUEkspert = proU; iProBEkspert=proB;
        }

        // Skifter ut prosenter for Egendefinert
         public void setEgendefinertProsenter(int proH, int proU, int proB ){
         // Bygger opp fordelingsnøkkel til å bli lik 100%
         int total = proH+proU+proB;
         proH = 100 * proH/total;
         proB = 100 * proB/total;
         proU = 100 -proH-proB;

         iProHEgendefinert = proH; iProUEgendefinert = proU; iProBEgendefinert=proB;
         }

	// Metode for å sette resultat på kampen
	public void setResultat(String KampResultat){
	this.sResultat = KampResultat;
	}

        // Metode for å kontrollere og returnere resultat mot streng
        public boolean Resultat(String s){
        if (sResultat == s) {
          return true ;
        }
        else{
          return false;
        }
        }


        // Metode for å sette tilfeldig resultat
        public void setTilfeldigResultat(){
        int x = (int) (Math.random() * 100) + 1;
        // System.out.println("Bruker :" + iProH + " " + iProU + " " + iProB );
        if (x <= this.iProH ){
        sTilfeldig = "H";
        iProVerdiTilfeldig = iProHFolk;
        }
        else if (x >= (this.iProH + this.iProU)){
        sTilfeldig = "B";
        iProVerdiTilfeldig = iProBFolk;
        }
        else{
        sTilfeldig = "U";
        iProVerdiTilfeldig = iProUFolk;
        }
        }
		
		// Metode for å returnere det tilfeldige resultat
		public String getTilfeldig()
		{
			return this.sTilfeldig;
		} 
				// Metode for å returnere det tilfeldige resultat
		public String getLag()
		{
			return this.sLag;
		} 

// Main klasse for test av klassen
	public static void main(String [] args){


      int x1 = Integer.parseInt(args[0]);
      int x2 = Integer.parseInt(args[1]);
      int x3 = Integer.parseInt(args[2]);

	 
	
        System.out.println("Test :" + args[0]+args[1]+args[2]);
        if (args != null){
        Kamp denne = new Kamp(x1, x2, x3);
                System.out.println("Test :" + denne.sTilfeldig);
        }
        else{
        Kamp denne = new Kamp();
                System.out.println("Test :" + denne.sTilfeldig);
        }
	}
}
