=$any) {
$jp=-$any;
}
for ($k = -$anx; $k <= $anx; $k++) {
$km=$k-1;
if ($km<-$anx) {
$km=$anx;
}
$kp=$k+1;
if ($kp>$anx) {
$kp=-$anx;
}
if ($w[$j][$k]==0) {
#leuchten die Nachbarn?
if (($j+2*$any)%2==0) {
$pw=$z[$jm][$kp]+$z[$jm][$k] +$z[$j][$km]+$z[$j][$kp] +$z[$jp][$kp]+$z[$jp][$k];
} else {
$pw=$z[$jm][$km]+$z[$jm][$k] +$z[$j][$km]+$z[$j][$kp] +$z[$jp][$km]+$z[$jp][$k];
}
# wenn genug Nachbarn leuchten oder spontan zu leuchten ist, Leuchten anschalten
$p=mt_rand(1,100000)/100;
if (($pw>=$nb) or ($p<=$wl)) {
$zz[$j][$k]=1;
}
}
}
}
for ($j = -$any; $j < $any; $j++) {
for ($k = -$anx; $k <= $anx; $k++) {
# falls es leuchtet oder pausiert hochzählen
if (($zz[$j][$k]==1) OR ($w[$j][$k]>0)) {
$w[$j][$k]=$w[$j][$k]+1;
}
# falls Leuchtdauer zuende:
#if (($w[$j][$k]<$gd) AND ($w[$j][$k]>0)) {
# $w[$j][$k]=$w[$j][$k]+1;
if ($w[$j][$k]>$ld) {
$zz[$j][$k]=0;
}
#}
# falls Gesamtdauer zuende
if ($w[$j][$k]>=$gd){
$w[$j][$k]=0;
$zz[$j][$k]=0;
}
# an oder aus als Animationswert
if ($zz[$j][$k]==1) {
$values[$j][$k].='1;';
} else {
$values[$j][$k].='0;';
}
}
}
$z=$zz;
}
# hexagonale Anordnung ...
for ($j = -$any; $j < $any; $j++) {
$py=round($j*$abs*$ky);
$ox=-$abs/2*(($j+2*$any)%2);
for ($k = -$anx; $k <= $anx; $k++) {
$px=round($k*$abs+$ox);
$value=$values[$j][$k].'0';
#
$j $k
$raus.="\n";
}
}
# Speicher schon mal leeren
unset($z);
unset($zz);
unset($w);
unset($values);
# Da das sehr effizient zu komprimieren ist:
# Bild in Speicher schreiben
ob_start();
echo " \n";
?>