← Back to ratslair.com
aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xndoom.sh91
1 files changed, 91 insertions, 0 deletions
diff --git a/ndoom.sh b/ndoom.sh
new file mode 100755
index 0000000..cab2a5d
--- /dev/null
+++ b/ndoom.sh
@@ -0,0 +1,91 @@
+#!/bin/ksh93
+readonly PI=3.1415926535897932384626
+sw=10
+sh=5
+w=0
+h=0
+x=3
+y=3
+dx=0
+dy=0
+a=2
+quit=0
+stepX=0
+stepY=0
+sa=$(echo "($PI / 6) * -1" | bc -l)
+ba=$(echo "$PI / 6" | bc -l)
+
+mapSize=8
+map=( 1 1 1 1 1 1 1 1 \
+ 1 0 0 0 0 0 0 1 \
+ 1 0 0 0 0 0 0 1 \
+ 1 0 0 0 0 0 0 1 \
+ 1 0 0 0 0 0 0 1 \
+ 1 0 0 0 0 0 0 1 \
+ 1 0 0 0 0 0 0 1 \
+ 1 0 0 0 0 0 0 1 \
+ 1 1 1 1 1 1 1 1 )
+
+function dd {
+ if [ $1 -eq 0 ]
+ then
+ ox=$2
+ ddx=$(echo "$ox / 1" | bc)
+ rx=$(echo "a=($ox - $ddx); b=(1 - a); if(a > 0.5) a=($ox + b) else a=$ddx; a/1" | bc)
+ echo $rx
+ elif [ $1 -eq 1 ]
+ then
+ oy=$2
+ ddy=$(echo "$oy / 1" | bc)
+ ry=$(echo "a=($oy - $ddy); b=(1 - a); if(a > 0.5) a=($oy + b) else a=$ddy; a/1" | bc)
+ echo $ry
+ fi
+}
+
+function dir {
+ if [ $(echo "$1 < ($PI * 0.5)" | bc) -eq 1 ]
+ then
+ stepX=1
+ stepY=1
+ elif [ $(echo "$1 > ($PI * 0.5)" | bc -l) -eq 1 ] && [ $(echo "$1 < $PI" | bc -l) -eq 1 ]
+ then
+ stepX=-1
+ stepY=1
+ elif [ $(echo "$1 > $PI" | bc -l) -eq 1 ] && [ $(echo "$1 < ($PI * 1.5)" | bc -l) -eq 1 ]
+ then
+ stepX=-1
+ stepY=-1
+ else
+ stepX=1
+ stepY=-1
+ fi
+}
+
+#while [ $h -lt $sh ]
+#do
+# while [ $w -lt $sw ]
+# do
+# echo -n '#'
+# ((w++))
+# done
+# echo -ne '\n'
+# ((h++))
+# w=0
+#done
+
+while [ !$quit ]
+do
+# while [ !$(echo "$sa == $ba" | bc) ]
+# do
+ # hit=0
+ # ra=$(echo "$a + $sa" | bc)
+ # dir $ra
+ # dx=$(dd 0 $x)
+ # dy=$(dd 1 $y)
+ # sideX=$(echo "if ($x > $dx) $x - $dx else $dx - $x" | bc)
+ # sideY=$(echo "if ($y > $dy) $y - $dy else $dy - $y" | bc)
+ sa=$(echo "$sD + ($PI / 180)" | bc -l)
+ # echo $sideX
+# done
+ break
+done