summaryrefslogtreecommitdiff
path: root/src/graphics_cs_x11.c
diff options
context:
space:
mode:
authorepoch <epoch@hacking.allowed.org>2018-02-19 05:44:49 -0600
committerepoch <epoch@hacking.allowed.org>2018-02-19 05:44:49 -0600
commit971d138dd26db47fab83643bd19b36f224902bf9 (patch)
treecfe8641286678f4ce664d3beeef1a68f0185737b /src/graphics_cs_x11.c
parent5d5b97c95fad361b5f7e1014683d4c13cdbcae31 (diff)
downloadhackvr-971d138dd26db47fab83643bd19b36f224902bf9.tar.gz
hackvr-971d138dd26db47fab83643bd19b36f224902bf9.zip
added relative movement and absolute movement to rotate and move. added group name globbing to most commands somewhere.
Diffstat (limited to 'src/graphics_cs_x11.c')
-rw-r--r--src/graphics_cs_x11.c25
1 files changed, 13 insertions, 12 deletions
diff --git a/src/graphics_cs_x11.c b/src/graphics_cs_x11.c
index 1e55899..3b30d82 100644
--- a/src/graphics_cs_x11.c
+++ b/src/graphics_cs_x11.c
@@ -247,7 +247,8 @@ void x11_keypress_handler(XKeyEvent *xkey,int x,int y) {
tmprad2=d2r((degrees){global.camera.r.y.d});
tmpx=WALK_SPEED*sin(tmprad.r);//cos(0)==1
tmpz=WALK_SPEED*cos(tmprad2.r);//sin(0)==0
- snprintf(line,sizeof(line)-1,"%s move %f 0 %f\n",global.user,tmpx,tmpz);
+ snprintf(line,sizeof(line)-1,"%s move +%f +0 +%f\n",global.user,tmpx,tmpz);
+ snprintf(line,sizeof(line)-1,"%s move forward\n",global.user);
selfcommand(line);
break;
case XK_Down:
@@ -255,7 +256,7 @@ void x11_keypress_handler(XKeyEvent *xkey,int x,int y) {
tmprad2=d2r((degrees){global.camera.r.y.d+180});
tmpx=WALK_SPEED*sin(tmprad.r);
tmpz=WALK_SPEED*cos(tmprad2.r);
- snprintf(line,sizeof(line)-1,"%s move %f 0 %f\n",global.user,tmpx,tmpz);
+ snprintf(line,sizeof(line)-1,"%s move +%f +0 +%f\n",global.user,tmpx,tmpz);
selfcommand(line);
break;
case XK_Left:
@@ -263,7 +264,7 @@ void x11_keypress_handler(XKeyEvent *xkey,int x,int y) {
tmprad2=d2r((degrees){global.camera.r.y.d+90});
tmpx=WALK_SPEED*sin(tmprad.r);
tmpz=WALK_SPEED*cos(tmprad2.r);
- snprintf(line,sizeof(line)-1,"%s move %f 0 %f\n",global.user,tmpx,tmpz);
+ snprintf(line,sizeof(line)-1,"%s move +%f +0 +%f\n",global.user,tmpx,tmpz);
selfcommand(line);
break;
case XK_Right:
@@ -271,39 +272,39 @@ void x11_keypress_handler(XKeyEvent *xkey,int x,int y) {
tmprad2=d2r((degrees){global.camera.r.y.d+270});
tmpx=WALK_SPEED*sin(tmprad.r);
tmpz=WALK_SPEED*cos(tmprad2.r);
- snprintf(line,sizeof(line)-1,"%s move %f 0 %f\n",global.user,tmpx,tmpz);
+ snprintf(line,sizeof(line)-1,"%s move +%f +0 +%f\n",global.user,tmpx,tmpz);
selfcommand(line);
break;
case XK_w:
- snprintf(line,sizeof(line)-1,"%s move 0 1 0\n",global.user);
+ snprintf(line,sizeof(line)-1,"%s move +0 +1 +0\n",global.user);
selfcommand(line);
break;
case XK_s:
- snprintf(line,sizeof(line)-1,"%s move 0 -1 0\n",global.user);
+ snprintf(line,sizeof(line)-1,"%s move +0 +-1 +0\n",global.user);
selfcommand(line);
break;
case XK_r:
- snprintf(line,sizeof(line)-1,"%s rotate %d 0 0\n",global.user,global.camera.r.x.d+ROTATE_STEP);
+ snprintf(line,sizeof(line)-1,"%s rotate +%d +0 +0\n",global.user,global.camera.r.x.d+ROTATE_STEP);
selfcommand(line);
break;
case XK_y:
- snprintf(line,sizeof(line)-1,"%s rotate %d 0 0\n",global.user,global.camera.r.x.d-ROTATE_STEP);
+ snprintf(line,sizeof(line)-1,"%s rotate +%d +0 +0\n",global.user,global.camera.r.x.d-ROTATE_STEP);
selfcommand(line);
break;
case XK_q:
- snprintf(line,sizeof(line)-1,"%s rotate 0 %d 0\n",global.user,global.camera.r.y.d+ROTATE_STEP);
+ snprintf(line,sizeof(line)-1,"%s rotate +0 +%d +0\n",global.user,global.camera.r.y.d+ROTATE_STEP);
selfcommand(line);
break;
case XK_e:
- snprintf(line,sizeof(line)-1,"%s rotate 0 %d 0\n",global.user,global.camera.r.y.d-ROTATE_STEP);
+ snprintf(line,sizeof(line)-1,"%s rotate +0 +%d +0\n",global.user,global.camera.r.y.d-ROTATE_STEP);
selfcommand(line);
break;
case XK_u:
- snprintf(line,sizeof(line)-1,"%s rotate 0 0 %d\n",global.user,global.camera.r.z.d+ROTATE_STEP);
+ snprintf(line,sizeof(line)-1,"%s rotate +0 +0 +%d\n",global.user,global.camera.r.z.d+ROTATE_STEP);
selfcommand(line);
break;
case XK_o:
- snprintf(line,sizeof(line)-1,"%s rotate 0 0 %d\n",global.user,global.camera.r.z.d-ROTATE_STEP);
+ snprintf(line,sizeof(line)-1,"%s rotate +0 +0 +%d\n",global.user,global.camera.r.z.d-ROTATE_STEP);
selfcommand(line);
break;
case XK_p: