|
|
#!/bin/bash
|
|
|
lescript=`basename $0 .sh`
|
|
|
flag=$TMP_PATH/bot_$lescript.flag
|
|
|
|
|
|
#
|
|
|
# TOOLS
|
|
|
#
|
|
|
function debug
|
|
|
{
|
|
|
if [ -f $FLAG_PATH/debug ]
|
|
|
then
|
|
|
echo $1
|
|
|
fi
|
|
|
}
|
|
|
|
|
|
function sortie
|
|
|
{
|
|
|
exit $1
|
|
|
}
|
|
|
|
|
|
function succes
|
|
|
{
|
|
|
debug "SUCCES"
|
|
|
sortie 0
|
|
|
}
|
|
|
|
|
|
function echec
|
|
|
{
|
|
|
debug "ECHEC"
|
|
|
exit 1
|
|
|
}
|
|
|
|
|
|
#
|
|
|
# PARAMETRES PAR FICHIER FLAGS
|
|
|
#
|
|
|
if [ -f $FLAG_PATH/no_blocks ]
|
|
|
then
|
|
|
debug "No blocks"
|
|
|
echec
|
|
|
fi
|
|
|
|
|
|
while IFS='' read -r line || [[ -n "$line" ]]; do
|
|
|
|
|
|
NAME=`echo $line | awk '{print $1}'`
|
|
|
BLOCK=`echo $line | awk '{print $2}'`
|
|
|
HEIGHT=`echo $line | awk '{print $3}'`
|
|
|
NBTX=`echo $line | awk '{print $4}'`
|
|
|
|
|
|
#
|
|
|
# TEST DU FLAG
|
|
|
#
|
|
|
flag=$FLAG_PATH/bot_${lescript}_${BLOCK}.flag
|
|
|
if [ -f $flag ]
|
|
|
then
|
|
|
debug "${lescript}_${BLOCK} already done"
|
|
|
continue
|
|
|
fi
|
|
|
touch $flag
|
|
|
|
|
|
if [ ! -f $DATA_PATH/nonce/$BLOCK.png ]
|
|
|
then
|
|
|
#
|
|
|
# Si c'est la première fois que l'on dessine le block
|
|
|
# On choisit la méthode qui découle du nonce
|
|
|
#
|
|
|
cd $APPS_PATH/nonce
|
|
|
nbmethodes=`cat $DATA_PATH/nonce_methods_list.txt | wc -l`
|
|
|
lenonce=`php robot.php $BLOCK`
|
|
|
lamethode=$((lenonce % nbmethodes))
|
|
|
if [ $lamethode -eq 0 ]
|
|
|
then
|
|
|
lamethode=$nbmethodes
|
|
|
fi
|
|
|
LISTE_METHODE=`cat $DATA_PATH/nonce_methods_list.txt | head -n $lamethode | tail -1`
|
|
|
else
|
|
|
#
|
|
|
# CHOISIR UNE METHODE2 AU HASARD
|
|
|
#
|
|
|
LISTE_METHODE=`ls $APPS_PATH/methode2 | grep -v robot | shuf`
|
|
|
if [ $NBTX -lt 10 ]
|
|
|
then
|
|
|
LISTE_METHODE=`ls $APPS_PATH/methode2 | grep -v robot | grep -v treemap | grep -v mondrian | shuf`
|
|
|
fi
|
|
|
fi
|
|
|
|
|
|
cd $APPS_PATH/methode2
|
|
|
for METHODE in $LISTE_METHODE
|
|
|
do
|
|
|
if [ ! -d $DATA_PATH/$METHODE ]
|
|
|
then
|
|
|
mkdir -p $DATA_PATH/$METHODE
|
|
|
fi
|
|
|
echo $BLOCK $NAME $METHODE
|
|
|
if [ ! -f $DATA_PATH/$METHODE/$BLOCK.png ]
|
|
|
then
|
|
|
php robot.php $METHODE $BLOCK $((RANDOM % 6)) $2
|
|
|
cp $DATA_PATH/last/$BLOCK.png $DATA_PATH/$METHODE/$BLOCK.png
|
|
|
cp $DATA_PATH/last/$BLOCK.png $DATA_PATH/hasard/$BLOCK.png
|
|
|
fi
|
|
|
done
|
|
|
cd - >> /dev/null
|
|
|
|
|
|
if [ ! -f $DATA_PATH/nonce/$BLOCK.png ]
|
|
|
then
|
|
|
cp $DATA_PATH/last/$BLOCK.png $DATA_PATH/nonce/$BLOCK.png
|
|
|
fi
|
|
|
|
|
|
rm -f $flag
|
|
|
|
|
|
done < $DATA_PATH/block_list.txt
|
|
|
|
|
|
#
|
|
|
# List of finished blocks
|
|
|
#
|
|
|
rm -f $DATA_PATH/finished_block_list.txt
|
|
|
grep -v CACHE $DATA_PATH/block_list.txt >> $DATA_PATH/finished_block_list.txt
|
|
|
|
|
|
#
|
|
|
# SORTIE AVEC SUCCES
|
|
|
#
|
|
|
succes
|