예제 #1
0
    public int posibleFelicidad(Comerciante comerciante_)
    {
        float felicidad, beneficios = 0;
        float distancia = comerciante_.getMovimiento().distance(actualPos);

        if (comerciante_.getMadera() != 0 || comerciante_.getTabaco() != 0 || comerciante_.getComida() != 0)
        {
            if (tipoActual == tipos.COMERCIO)
            {
                beneficios = comerciante_.getMadera() * precioMadera + comerciante_.getTabaco() * precioTabaco + comerciante_.getComida() * precioComida;
            }
        }

        else
        {
            if (tipoActual != tipos.COMERCIO)
            {
                beneficios = 1000000;
            }
        }
        felicidad = ((60 / distancia) + (40 * beneficios)) / (100 * competencia);
        //felicidad = (beneficios) / 100;
        //Debug.Log("FELICIDAD" + " " + transform.name + " " + comerciante_.transform.name+ " " +  felicidad + " " + tipoActual);
        return(Mathf.CeilToInt(felicidad));
    }
예제 #2
0
 // Update is called once per frame
 void Update()
 {
     if (comerciante != null)
     {
         nameText.text   = comerciante.name;
         oroText.text    = comerciante.getOro().ToString();
         maderaText.text = comerciante.getMadera().ToString();
         comidaText.text = comerciante.getComida().ToString();
         tabacoText.text = comerciante.getTabaco().ToString();
     }
 }
예제 #3
0
    public void comerciarConBarco(Comerciante comerciante)
    {
        if (tipoActual == tipos.COMERCIO)
        {
            //COMERCIO MADERA
            if (comerciante.getMadera() > 0)
            {
                this.madera += comerciante.getMadera();
                comerciante.setOro(comerciante.getMadera() * precioMadera);
                this.oro -= comerciante.getMadera() * precioMadera;
                comerciante.setMadera(0);
            }

            //COMERCIO TABACO
            if (comerciante.getTabaco() > 0)
            {
                this.tabaco += comerciante.getTabaco();
                comerciante.setOro(comerciante.getTabaco() * precioTabaco);
                this.oro -= comerciante.getTabaco() * precioTabaco;
                comerciante.setTabaco(0);
            }
            //COMERCIO COMIDA ??
            if (comerciante.getComida() > 0)
            {
                this.comida += comerciante.getComida();
                comerciante.setOro(comerciante.getComida() * precioComida);
                this.oro -= comerciante.getComida() * precioComida;
                comerciante.setComida(0);
            }
        }
        else
        {
            obtenerRecursos(comerciante);
        }

        reducirCompetencia();
    }
예제 #4
0
    public void obtenerRecursos(Comerciante comerciante)
    {
        switch (tipoActual)
        {
        case tipos.COMIDA:
            comida -= 500;
            comerciante.setComida(comerciante.getComida() + 500);
            break;

        case tipos.TABACO:
            tabaco -= 500;
            comerciante.setTabaco(comerciante.getTabaco() + 500);
            break;

        case tipos.MADERA:
            madera -= 500;
            comerciante.setMadera(comerciante.getMadera() + 500);
            break;
        }
        comerciante.desvalijado = false;
    }