/*
* Tactic is the legal property of its developers, whose names are too 
numerous
* to list here.  Please refer to the COPYRIGHT file distributed with this
* source distribution.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
*
* See README for more informations
*
* NbEnnemyUnitLow.cpp
*
* ...
* Date 16/03/06
*
*/

#include "NbEnnemyUnitLow.h"
#include "DebugAI.h"

using namespace std;

NbEnnemyUnitLow::NbEnnemyUnitLow(void){
	name = NB_ENNEMY_UNIT_LOW;
}

NbEnnemyUnitLow::NbEnnemyUnitLow(NbEnnemis* aFuzzyNumber){
	fuzzyNumber = aFuzzyNumber;
	fuzzyNumber->addFV(this);
	name = NB_ENNEMY_UNIT_LOW;
}

NbEnnemyUnitLow::NbEnnemyUnitLow(float myValue){
	name = NB_ENNEMY_UNIT_LOW;
	value = myValue;
	// ici il y a juste abstractFuzzyValue à changer par le FuzzyvalueName qui 
    //convient
}


NbEnnemyUnitLow::~NbEnnemyUnitLow(){}

void NbEnnemyUnitLow::update(){
     float val = this->fuzzyNumber->getValue();
     if(val>=40 && val<=50) val = 1-(val-40)/10;
     else if (val<40) val = 1;
     else val = 0;
     this->setValue(val);
	 DebugAI::trace('v', toString());
	// Update l'attribut value en executant la fonction afine qui représente la 
    //FuzzyValue
	// à partir de la valeur récupèrée via fuzzyNumber->getValue
}


