int process_client_message(char *message) { float px, py, pz; int deg, id; char buf[MESSAGE_LENGTH]; if(message == NULL) { fprintf(stderr, "NULL while attempting to process client message.\n"); } sscanf(message, "%s", buf); if(strcmp(buf, "player") == 0) { sscanf(message, "player %f %f %f %d %d", &px, &py, &pz, °, &id); setPlayerPosition(id, px, py, pz, deg); player_flag[id] = 1; } else { fprintf(stderr, "unexpected message from client...\n"); } return 0; }
void TimelineCursor::mouseDrag(const MouseEvent &e) { if(_showCursor) { _currentXCoords = e.x; setPlayerPosition(_currentXCoords); repaint(); } }
void TimelineCursor::mouseDown(const MouseEvent &e) { if(_showCursor) { setMouseCursor(MouseCursor::IBeamCursor); _xScale = (float) ((_trackLength / getWidth() * _zoomRatio)); setPlayerPosition(e.x); _stopTimer = false; startTimer(40); repaint(); } }
int process_server_message(char *message, char *result) { float px, py, pz; int x, y, z, deg, id; char buf[MESSAGE_LENGTH]; if(message == NULL || result == NULL) { fprintf(stderr, "NULL while attempting to process server message.\n"); } sscanf(message, "%s", buf); printf("m: %s\n", message); if(strcmp(buf, "done") == 0) { strcpy(result, buf); return 0; } if(strcmp(buf, "player") == 0) { sscanf(message, "player %f %f %f %d %d", &px, &py, &pz, °, &id); setPlayerPosition(id,px,py,pz,deg); } if(strcmp(buf, "mob") == 0) { sscanf(message, "mob %f %f %f %d %d", &px, &py, &pz, °, &id); setMobPosition(id,px,py,pz,deg); } if(strcmp(buf, "sun") == 0) { sscanf(message, "sun %f %f %f", &px, &py, &pz); setLightPosition(px,py,pz); } if(strcmp(buf, "dig") == 0) { sscanf(message, "dig %d %d %d", &x, &y, &z); world[x][y][z] = EMPTY; trimout(); } if(strcmp(buf, "cloud") == 0) { sscanf(message, "cloud %d %d %d %d", &x, &y, &z, &id); world[x][y][z] = id; } return 0; }